mirror of
https://github.com/0xWheatyz/handler.git
synced 2026-08-30 04:36:24 +00:00
Extend the model picker to schedules
schedules.model_id (migration 0013) pins every fired run of a recurring spawn to a registered model backend, exactly like a hand-spawned agent: the worker copies it into each firing's spawn payload, the launched agent records the pin, and resumes stay on the same backend. The Schedules form gets the same Model dropdown as the spawn form (Claude subscription by default), with a badge in the schedules table. Create/update routes fail fast on a missing or disabled backend so a stale selection bounces immediately instead of every firing failing asynchronously in Activity; a backend deleted later still fails each firing visibly rather than silently falling back to the subscription. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DzDofD7gP63WpeLG8vEdZu
This commit is contained in:
@@ -236,7 +236,9 @@ What the dashboard can now do (all state-changing actions require `ADMIN_TOKEN`)
|
||||
enqueues a `sync` command so the worker clones it. Manual mode (existing `root_dir`)
|
||||
still works; every project with a remote gets a **Pull now** button, and spawn always
|
||||
pulls first.
|
||||
- **Schedules** — recurring agent spawns: a name prefix, a prompt, and an interval. The
|
||||
- **Schedules** — recurring agent spawns: a name prefix, a prompt, an interval, and
|
||||
optionally a **model backend** (the same dropdown the spawn form has — every fired run
|
||||
spawns on it). The
|
||||
worker fires each due schedule as a normal queued `spawn` with a timestamped agent name
|
||||
(`nightly-20260710-090000`), so runs are fresh, stateless agents and show up in
|
||||
Activity. The canonical prompt keeps its state in the repo: *"Read @notes.md, continue
|
||||
|
||||
Reference in New Issue
Block a user