Run coding agents on your machine. Steer them from GitHub.
Dispatch agents to implement, coordinate and investigate your issues.
- Your own setup. Agents run in Claude Code or Codex on your machine, with nothing hosted and no new service to trust.
- Steer from anywhere. The conversation happens on GitHub, so you can steer from your phone while the agents keep working at home.
- Built for long-horizon work. Agents fan out where they can and converge where issues depend on each other, so a roadmap keeps moving without losing the plot.
acme/uploaderissues · pulls
dreamcatcher v9.5.0 ยท pid 4242
- preferred harness
- claude
- next update in
- 42s
- agent capacity
- 2 of 4 working 3 of 4 working 2 of 4 working 3 of 4 working 2 of 4 working 3 of 4 working 2 of 4 working
- Assignments
- #41 Stream uploads from disk PR #54 ready PR #54 merged idle working > ready for review round 3, merged, running 12s, last output 4s ago
- #42 Add retries to the upload client PR #57 draft PR #57 ready working idle > round 1, start, running 6m, last output 9s ago ready for review
- #43 Resume an interrupted upload PR #58 draft PR #58 ready waiting working idle waiting working > no round has run yet round 1, start, running 2m, last output 3s ago ready for review 1 new post to answer round 2, 1 post, running 40s, last output 6s ago
- Conversations
- #44 Why do large uploads time out? open working idle > round 1, 1 comment, running 3m, last output 15s ago round 1, answered, ran 4m
How it works¶
dreamcatcher runs on your own machine, as a daemon in your
repository's main checkout. It watches the repository through gh, and
starts each agent in Claude Code or Codex. The label on an issue says
which kind of work to start.
An assignment implements one issue in its own worktree and pull request. Review it as you would any pull request: leave review comments or line comments, or request a change. The agent addresses your feedback in its next round. Keep iterating, then merge when you are satisfied, or close it if the work should not land.
A campaign gives an agent called the lead several issues to shepherd. Gather them as sub-issues of one parent; some can run together and some can wait on others. The lead sets up assignments, reviews and merges their pull requests, and asks you on the parent when a decision is needed.
A conversation investigates one issue without changing code. Ask a question in an issue comment, and the agent answers on the issue. Each later question carries on the same conversation.
Several agents can work at once, up to a number that you set. Follow them all on a local web page, or in the terminal.
Start here¶
If you already use dreamcatcher, read Compatibility and upgrades before replacing your installation.
With uv installed:
uv tool install dreamcatcher
Then follow From issue to pull request for the complete setup and a first assignment. To try a campaign, follow From parent issue to merged pull requests, which uses the same setup.
Guides¶
- Review an assignment and give the agent feedback.
- Start a campaign to hand a parent issue's sub-issues to a lead.
- Discuss an issue without starting an implementation assignment.
- Stop and recover work.
- Run and monitor dreamcatcher.
- Configure labels and harnesses.
- Customise skills, starting with the ready-made ones from dream.
Reference¶
- Look up exact syntax and behaviour in the command reference.
- Find every accepted setting in the configuration reference.
- Write an assignment skill, a campaign skill or a conversation skill to the agent-facing contract.
- Plan upgrades with Compatibility and upgrades, and see user-visible changes in the changelog.