Stop and recover work¶
Choose the control that matches what you want to stop. Closing a status view, stopping one agent round and stopping the daemon have different consequences.
| Action | What stops | What happens next |
|---|---|---|
Interrupt web, status, assignment, conversation or feed |
Only that view | The daemon and agents continue. |
Run dreamcatcher stop or select stop round on the web page |
The current agent round | The work waits for input unless a merged or closed pull request needs wrap-up. |
Run dreamcatcher cancel or select cancel assignment on the web page |
The assignment and any running round | You finish the pull request by hand. dreamcatcher runs no further rounds. |
Press Ctrl-C in the terminal running dreamcatcher run |
The daemon and all its current rounds | Work that still needs a round can recover after the daemon starts again. |
Stop one running round¶
Run the command that selects the work you want to stop:
dreamcatcher stop GH123 --assignment
dreamcatcher stop GH123 --conversation
Use --assignment for the newest assignment at the issue, or --conversation
for its issue conversation. You can instead run dreamcatcher web, open the
assignment or conversation, select stop round, and confirm. Both controls
are available only while the round is running and dreamcatcher has learned its
harness session. The round normally stops within about a second.
After an assignment round is stopped, an open pull request waits for a new comment or review from you. Add that feedback when you are ready to resume. If you merge or close the pull request instead, its wrap-up can start without a new post.
After a conversation round is stopped, post a new eligible issue comment to resume the discussion. The next round is an ordinary response to that input, not an automatic recovery of the stopped attempt.
Removing an assignment label does not stop an active assignment. For a conversation, removing its last matching label makes future batches and recovery ineligible, but does not cancel a round already running.
Take over an assignment's pull request¶
Cancel an assignment when you want to finish its pull request yourself. Run:
dreamcatcher cancel GH123
The command cancels the newest assignment at the issue. You can instead open the
assignment in dreamcatcher web, select cancel assignment, and confirm. A
cancel cannot be undone.
dreamcatcher asks a running round to stop, runs no further rounds for the
assignment, and stops relaying your comments and reviews on its pull request.
The assignment shows as cancelled on the web home page and in
dreamcatcher assignment, and dreamcatcher status counts it among the ended
assignments.
Carry on in the assignment's worktree, which still has the branch checked out. Once no round is running, and when dreamcatcher has learned the agent's harness session, the assignment page shows the worktree and the command that resumes that session by hand.
dreamcatcher leaves the pull request as it is, and while it is open it claims the issue as work outside dreamcatcher. If you merge it, GitHub closes the issue. If you close it without merging, the issue can receive a new assignment while it keeps its assignment label and stays assigned to you.
Restart an interrupted daemon¶
Pressing Ctrl-C in the dreamcatcher run terminal shuts the daemon down and
ends the rounds it owns. Start it again from the same main checkout:
dreamcatcher run --harness claude
Repeat any non-default --interval and --max-agents values you want; those
are options for each daemon run, not saved configuration. On startup
dreamcatcher also detects rounds orphaned by an earlier daemon. It records
them as interrupted and schedules the next required recovery or wrap-up when the
work is eligible. Recovery normally resumes the recorded harness session; you do
not need to use the hand-resume command.
Recover from errors and faults¶
One errored round gets an automatic recovery opportunity, and unrelated work can continue. Two consecutive errored rounds put that assignment or conversation in fault so dreamcatcher does not repeat the same failure forever.
Read the detail and feed to find the cause:
dreamcatcher assignment GH123
dreamcatcher feed GH123 --assignment
For a conversation, replace assignment and --assignment with conversation
and --conversation.
Fix the underlying problem first: for example, restore a missing credential, repair a project setup command or make a required service available. Then request another automatic recovery:
dreamcatcher retry GH123
retry preserves the failed rounds for diagnosis and requests recovery for the
newest faulted assignment and faulted conversation at that issue. It does not
start an agent itself; the daemon may recover the work on a later scheduler
update.
You can instead run dreamcatcher web, open the faulted assignment or
conversation, and select Retry. The control is available while the page
shows that work's status as fault, and it requests recovery for that one
assignment or conversation in the same way. The page records the request even
while the daemon is stopped, and recovery can start once the daemon runs again.
Repeated failures across multiple work items can trigger a 15-minute global cooldown. dreamcatcher keeps reporting status but starts no agent rounds during the cooldown. It survives a daemon restart and clears the current faults when it ends. A manual retry request still waits until an active cooldown is over.
For exact retry syntax and error conditions, see the
retry command reference.