The package is the only place
croner is imported in the monorepo. Every other consumer, the Routines ledger, the ticker, the REST layer, deals in precomputed epoch-ms timestamps, so swapping the tick library changes exactly one file (occurrence.ts).
A Routine cron spec is either a croner-parseable cron expression (5/6-field) or a one-shot
once@<ISO-8601>. The richer canonical cronSpec on a ScheduleRecord also encodes the Gateway’s every:<ms> / at:<iso> / @tz:<tz> forms via encodeCronSpec.Public API
Every export below comes from the. barrel (src/index.ts). There are no subpath exports.
Functions
Types & interfaces
Classes
Errors
All extendError and carry a readonly code for structural branching (never message prose).
Constants
Used by
Onlyapps/web depends on @clawboo/scheduler. @clawboo/db deliberately takes no dependency on it (board/ledger rows carry precomputed epoch-ms). Server consumers:
apps/web/server/lib/routines/,ticker.ts,wakeBridge.ts,openclawDispatch.ts(the Routines actuator).apps/web/server/lib/scheduleSource/,registry.ts,clawbooRoutineScheduleSource.ts,openClawGatewayCronScheduleSource.ts(the two concreteScheduleSourceimplementations).apps/web/server/api/schedules.ts, the/api/schedules*REST surface.apps/web/src/features/scheduler/scheduleHelpers.ts+apps/web/src/lib/schedulesClient.ts, the SPA scheduler tab (the types cross into the browser, which is why the package stays browser-safe).
Source
Barrel:packages/scheduler/src/index.ts. Modules: errors.ts, spec.ts, occurrence.ts, template.ts, records.ts, source.ts, multiplexer.ts.
See also
- Scheduling concept, Routines: team-task cron vs runtime-own-life cron.
- Schedules REST API,
/api/schedules*. - Routines tab, the Scheduler UI.
- Seams (internals),
ScheduleSource+CapabilitySourcemultiplexers. - Package overview