scheduler
Registered Go module (internal/modules/scheduler). One agent tool:
schedule.
At each cron fire, digitorn-background re-runs this session with an injected user message. The agent keeps accumulated session context. Schedules are durable across restarts.
| Property | Value |
|---|---|
| Module id | scheduler |
| Version | 1.0.0 |
| Tools | schedule |
| Blank-imported by | cmd/digitornd |
Enable in an app
tools:
modules:
scheduler: {}
capabilities:
grant:
- module: scheduler
Optional module config (also overridable via env):
| Field | Default / env | Meaning |
|---|---|---|
background_url | DIGITORN_BG_URL or http://127.0.0.1:8090 | Background ops base URL |
ops_token | DIGITORN_BG_OPS_TOKEN | Bearer token for ops |
default_reply | auto | Default reply when the tool omits it |
Tool: schedule
| Param | Type | Required | Description |
|---|---|---|---|
schedule | string | yes | 5-field cron: minute hour day-of-month month day-of-week |
message | string | yes | Instruction injected as the user message each fire |
context | string | no | Extra context alongside the message |
reply | string | no | auto, none, or stream |
reports | boolean | no | Dated downloadable folder per run under attachments |
Example cron strings: 0 9 * * * (09:00 daily), */15 * * * *
(every 15 minutes), 0 9 * * 1-5 (weekdays 09:00).
The handler POSTs to {background_url}/ops/schedules with
app_id, session_id, owner, and the params above. On success it
returns confirmation and metadata (id, next_run, schedule).
What this is not
| Claim | Reality |
|---|---|
cron_native.schedule / cancel_schedule / remind | Stub module; those tools do not exist |
runtime.scheduler: true alone | Schema field only; does not load this module |
One-shot when: "in 5m" / ISO timestamp scheduler API on this tool | This tool is recurring cron + session message only |
| Watcher loop dependency | No watch_* tools in Go; unrelated |
For app-level channel cron / webhook triggers, see Channels. For HTTP schedule management outside the agent, use the automations / background ops API.