# Tools in Scheduled Runs

How the tool set differs when a run is started by the scheduler.

`scheduler-skill-creator` is the high-level skill that **creates** a scheduler skill body and calls `schedules(mode=write)` to bind it. New recurring / one-shot requests should activate that skill, not call the low-level tool directly.

The daemon-side runtime watches `~/.config/agenvoy/{tasks,crons}.json` with fsnotify and hot-reloads on Write / Create / Rename. Past-due tasks are auto-fired and removed on startup or reload; fire executes via `runtime.SetRunner(app.RunSkill)` → `exec/subagent.Exec`, an in-process subagent over the scheduler skill body.

Because a fire goes through `exec/subagent.Exec`, a scheduled run gets the subagent tool set: `subagents`, `edit_file`, `edit_tool`, `test_tool`, `edit_skill`, `write_result`, `html_template`, every `generate_*` tool, `open_file`, `schedules`, `store_secret` and `pkg_manage` are excluded, and the TUI-only Skills are unavailable. No parent run supplies a permission mode, so the run executes as allow-all and raises no tool confirmations.

The TUI `/cron` and `/task` commands were removed; use `/schedule`, which lists cron and one-shot entries together (`enter` fires one now, `d` deletes it, add / edit by asking the agent), plus `/sched-<name>` to manually trigger an existing scheduler skill body.
