Sentry Automation

Sentry is Omegon's long-running task executor. It consumes scheduled, webhook, file-watch, git, and manual triggers, claims actionable tasks from a board, runs bounded agent work, records outcomes, and exposes a local HTTP control plane.

Start Sentry

omegon sentry --config sentry.toml --control-port 7842

Health probes are available at /api/healthz and /api/readyz. Task APIs are exposed under /api/sentry/*.

Task Sources

  1. .omegon/tasks/ task tree
  2. sentry.toml file board
  3. Flynt vault boards when Omegon is running inside a Flynt vault

If both .omegon/tasks/ and sentry.toml exist, the task tree is authoritative and sentry.toml task entries are ignored.

File Config

[sentry]
max_concurrent = 2
log_retention_days = 30

[sentry.routing]
prefilter_model = "anthropic:claude-haiku-4-5-20251001"
light_model = "anthropic:claude-sonnet-4-6"
heavy_model = "anthropic:claude-opus-4-6"

[[task]]
name = "ci-check"
prompt = "Check CI status and summarize failures"
model = "auto"
max_turns = 10
timeout_secs = 300

[task.trigger.cron]
schedule = "*/30 * * * *"

[task.budget]
max_tokens_per_day = 500000
max_cost_per_day_usd = 5.00

Model Routing

Set model = "auto" on a task and configure [sentry.routing] to route simple or moderate prompts to light_model and complex prompts to heavy_model. The prefilter_model field is part of the routing contract; the current classifier uses local prompt heuristics, so treat it as forward-compatible metadata rather than a guarantee that a separate model call ran.

Budgets

Per-task budgets can cap daily token use and estimated daily cost. When a task is over budget, Sentry records the skip instead of launching another agent run.

Code-Act Status

The codebase includes an experimental code-act executor that generates and runs Python scripts through the existing bash execution path. It requires explicit opt-in with OMEGON_CODE_ACT=1 or --dangerously-bypass-permissions. It is not a stable public command yet, so use normal Sentry task execution unless a release note says otherwise.