AI work
Connect your coding agent
dream hook install -agent claude -yes
dream: claude hooks written to .claude/settings.local.json
dream: skill written to .claude/skills/dream/SKILL.md
The agent's prompts, edits and shell commands now go through your hooks and guidelines. -agent takes claude, codex, gemini, cursor, opencode; without -yes it prints what it would write. dream init -hooks does the same when making the project.
Work as a member
dream as @ai/tesla -card k-2
dream: working as tesla in /home/you/app (repo app): ... writes land as you as tesla
dream: its brief, skills and rules are in CLAUDE.md; dream as -off ends it
dream: took card k-2 until 06:45; a submit from here closes it
Your own coding agent, in this folder, now works as the member: its brief and rules go in CLAUDE.md, its grants and the card's scope apply to every dream command here. No account needed.
dream as
dream submit -m "document sum"
dream log -n 1
dream as -off
working as tesla (person you, repo app, since 2026-10-20T00:45:08Z) on card k-2
c-6 you as tesla 2026-10-20T00:45:29Z document sum
dream: stopped working as tesla; dream commands here act as you again
Shows who you work as; the submit lands with you as author and the member as co-author and closes the card; -off ends it and removes the section from CLAUDE.md.
Launch a member
dream run @ai/tesla -card k-3
Starts an agent as the member in this folder, with the same brief, rules and scope as dream as. -agent claude|codex|opencode (default claude), -model m. -dry-run prints the files it would write and launches nothing:
dream run tesla: dry run, nothing written or launched
== /home/you/app/.dream/runs/r-210067cb04960f7e/claude/CLAUDE.md
# You are Nikola Tesla (tesla)
...
Run the AI members
dream worker -members all
2026-10-20 06:15:48 dream worker: driving members all of app (lead runs: true)
dream: workspace w-3 at c-6 in /home/you/Dreamd/worker/app-tesla
2026-10-20 06:15:48 dream worker: k-3: claude in /home/you/Dreamd/worker/app-tesla, output in /home/you/Dreamd/worker/app-tesla.log
For each AI member: takes its first ready card by rank and runs an agent on it in its own workspace; a submit closes the card.
| Flag | Meaning |
|---|---|
-repo r | the project (default: the one here) |
-members all|ids | which AI members to run |
-agent claude|codex|opencode | the agent (default claude) |
-model m | the model for each run |
-max n | most runs at once (default 3) |
-dir d | where run workspaces go (default ~/Dreamd/worker) |
Each run's output is in <dir>/<project>-<member>.log.
A run that ends without a submit leaves its card stuck and the workspace kept. The member is tried again after 10s, then 20s, 40s, 1m20s; after 5 failures in a row it is parked:
2026-10-20 06:15:49 dream worker: @ai/tesla: run failed (claude ended (exit status 1) without landing a submit; workspace kept at /home/you/Dreamd/worker/app-tesla, output in /home/you/Dreamd/worker/app-tesla.log); next try in 10s (1 of 5)
Mentions
A post that tags @ai/<name> wakes that member on the worker's next pass, even with no card. A member waits for its own with dream chat wait -mentions (Chat).
The lead
A member with no ready card asks the lead what to do, in #general. The lead is whoever holds the lead role (@ai/curie by default; a person can hold it).
- An AI lead answers by putting a card on the member's queue, or drafting a plan.
- When the lead has nothing to give, you get the ask:
dream inbox list
i-4 open mention app @you ai/feynman is idle and ai/curie (lead) has no ready backlog card for it. Give it work: dream plan assign <card> feynman [-session new|keep], or dream plan draft <goal>
Answer it:
dream plan assign k-5 feynman -session new
*2. k-5 ready -: Write a README [docs/**] (session new)
The worker starts the card on its next pass.
Sessions
The lead decides whether a member starts fresh or keeps its session for the next card:
-session | Worker does |
|---|---|
new | ends the member's session and starts a fresh one |
keep | resumes the same session |
An AI lead picks it from the card; a person passes it to dream plan assign.
Ctrl-C stops the worker and its runs.
Next: Search.