Goal
Make Dispatch usable by any harness with the same simple loop:
- ask Dispatch for one task
- if idle, stop before starting a model
- execute exactly that task
- report the result
- stop
Harnesses include OpenClaw, Hermes, Claude Code, Codex, OpenCode, and manual/CLI runners.
Problem
Too much required behavior currently lives outside Dispatch: cron prompts, helper scripts, heartbeat state, workflow repos, and harness-specific glue. That makes the product hard to explain and harder to run.
Non-goals
- Do not require upstream changes to any harness.
- Do not make Dispatch an agent runner.
- Do not make this OpenClaw-specific.
- Do not require a second runtime repo.
- Do not let worker tasks merge PRs.
Target contract
Dispatch owns task selection, queue state, claims, follow-up detection, stop conditions, and allowed/forbidden actions.
A harness only executes the returned task.
Child issues
Child issues will cover:
- task contract/schema
- next-task endpoint
- report endpoint
- PR follow-up detection
- groomer task mode
- harness docs/examples
- runtime sprawl cleanup
Acceptance criteria
- A generic harness can integrate with Dispatch using documented HTTP calls.
- A worker can get
implement, followup-pr, or idle.
- A groomer can get
groom or idle.
- Idle is cheap and does not require starting an LLM.
- Runtime prompts/scripts are no longer required from a second repo.
- Worker task contract explicitly forbids merge/groom/claim-another-issue actions.
- Existing queue behavior remains compatible while the new contract is introduced.
Goal
Make Dispatch usable by any harness with the same simple loop:
Harnesses include OpenClaw, Hermes, Claude Code, Codex, OpenCode, and manual/CLI runners.
Problem
Too much required behavior currently lives outside Dispatch: cron prompts, helper scripts, heartbeat state, workflow repos, and harness-specific glue. That makes the product hard to explain and harder to run.
Non-goals
Target contract
Dispatch owns task selection, queue state, claims, follow-up detection, stop conditions, and allowed/forbidden actions.
A harness only executes the returned task.
Child issues
Child issues will cover:
Acceptance criteria
implement,followup-pr, oridle.groomoridle.