> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ngram.space/llms.txt
> Use this file to discover all available pages before exploring further.

# Turn an intention into a routine

> Create scheduled work with an inspectable schedule, delivery route, and stop control.

Automations are persisted routines that the daemon schedules. Each run can invoke cognition, use tools, and deliver a result. Saving a routine in a one-shot conversation does not start a scheduler.

## Create a routine

Ask the Entity for a small, explicit routine:

```text theme={null}
Every morning at 9am, review the current project notes and send me a short
summary here. Show me the schedule and delivery destination after saving it.
```

The `create_automation` tool accepts a name, description, schedule, and optional delivery and context fields. Its result includes the saved identifier and resolved cron expression. Review those values before relying on the routine.

The schedule parser accepts supported phrases and cron forms. Interpretation follows the runtime scheduling environment, so verify its timezone when moving a routine between hosts.

## Run the scheduler

```bash theme={null}
uv run ngram run rook
```

Or use `uv run ngram worker rook` for a headless service. `talk` and `ask` do not run the presence daemon. A routine created without it remains stored until a scheduler picks it up.

## Inspect and change routines

| Tool                 | Purpose                          |
| -------------------- | -------------------------------- |
| `list_automations`   | Inspect stored routines          |
| `edit_automation`    | Change a supported routine field |
| `toggle_automation`  | Enable or disable one routine    |
| `run_automation_now` | Request an immediate execution   |
| `delete_automation`  | Remove a routine                 |

Telegram `/routines` provides a convenient inspection view. Use the returned routine ID for edits and inspect the result after changing it.

## Delivery and failure

When possible, an omitted delivery destination is resolved from the current conversation. An explicitly supplied destination can route output elsewhere. Confirm the actual platform and destination before scheduling outbound messages.

Routines track run results and consecutive failures. Entity automation settings control enablement, capacity, failure limits, and optional suggestions. Treat a recorded run as something to inspect, not proof that every external effect succeeded.

## Stop scheduled model use

Disable the individual routine when you no longer want it. Use the shared **Pause inference** control to skip automation execution along with other model-backed activity. Stopping the worker stops the scheduler entirely.

Routine execution can consume provider credits and use external tools even while no one is chatting. Keep the description, tools, frequency, and destination proportional to the task.
