# CronScheduler

**Kind:** Class

**Source:** [`atloria-monorepo/libs/agent-core/src/tools/cron.tool.ts`](https://github.com/sherkety/atloria/blob/main/atloria-monorepo/libs/agent-core/src/tools/cron.tool.ts#L39)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `parseInterval` | `parseInterval(schedule: string)` | `number | null` |
| `create` | `create(schedule: string, message: string)` | `CronJob | null` |
| `delete` | `delete(id: string)` | `boolean` |
| `list` | `list()` | `Array<{ id: string; schedule: string; message: string; next_fire_at: number }>` |
| `dispose` | `dispose()` | `void` |

## Where it refuses work

- `CronScheduler` stops the work with an early return when `!job`, in 2 places.
- `CronScheduler` stops the work with an early return when `!schedule`.
- `CronScheduler` stops the work with an early return when `!match`.
- `CronScheduler` stops the work with an early return when `intervalMs === null`.
