dream

Batch-execute SHIP-ready wishes overnight — pick wishes, orchestrate workers, review PRs, wake up to results.

272 stars

Best use case

dream is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Batch-execute SHIP-ready wishes overnight — pick wishes, orchestrate workers, review PRs, wake up to results.

Teams using dream should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/dream/SKILL.md --create-dirs "https://raw.githubusercontent.com/automagik-dev/genie/main/skills/dream/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/dream/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How dream Compares

Feature / AgentdreamStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Batch-execute SHIP-ready wishes overnight — pick wishes, orchestrate workers, review PRs, wake up to results.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# /dream — Overnight Batch Execution

Pick SHIP-ready wishes, build a dependency-ordered execution plan, spawn parallel workers, review PRs, merge to dev, run QA loop, produce a wake-up report.

## When to Use
- Human wants to queue multiple wishes for autonomous overnight execution
- Multiple SHIP-ready wishes exist in `.genie/brainstorm.md` under `Poured`

## Flow
1. **Pick wishes** from `.genie/brainstorm.md` in the shared worktree.
2. **Generate DREAM.md** with dependency-ordered execution plan.
3. **Human confirms** DREAM.md (may edit before run).
4. **Phase 1 — Execute:** dispatch workers per wish via `genie work`, collect outcomes.
5. **Phase 2 — Review + PR:** review each group, create PRs, fix valid issues, CI green.
6. **Phase 3 — Merge + QA:** merge to dev, spawn qa, QA loop until criteria proven.
7. **Phase 4 — Report:** write DREAM-REPORT.md as the wake-up artifact.

## Picker

1. Read `.genie/brainstorm.md`, locate the `Poured` section.
2. Parse each SHIP-ready entry in listed order, extracting `slug` and one-line description.
3. If no entries found, print `No SHIP-ready wishes found in .genie/brainstorm.md` and exit.
4. Display numbered list preserving original order:
   ```
   1. <slug> — <one-line description>
   ```
5. Prompt human to choose by number(s) (`1 3 5`) or `all`. Accept whitespace-separated numbers.
6. Emit selected set in order:
   ```
   - <slug>: .genie/wishes/<slug>/WISH.md
   ```

## DREAM.md Generation

1. For each selected wish, read `depends_on` from its `WISH.md`.
2. Compute topological sort across selected wishes. Assign `merge_order` as integer layers `1..N`:
   - Layer 1: wishes with no selected dependencies.
   - Increment layer when a wish depends on a lower layer.
   - Same-layer wishes are parallel.
3. Generate per-wish entry:

| Field | Value |
|-------|-------|
| `slug` | wish identifier |
| `branch` | `feat/<slug>` |
| `wish_path` | `.genie/wishes/<slug>/WISH.md` |
| `depends_on` | upstream slugs from WISH.md |
| `merge_order` | integer from topological layering |

4. Write to `.genie/DREAM.md` in the shared worktree.
5. Present for human confirmation before execution.

## Team Lifecycle

```
create dream team → hire agents → execute groups → review → PR to dev → merge → QA loop → disband
```

```bash
# Create a team for this dream session
genie team create dream-<date>

# Hire workers
genie team hire engineer       # one per wish
genie team hire reviewer       # one per PR
genie team hire fixer          # for FIX-FIRST gaps
genie team hire qa             # for QA loop on dev
```

## Phase 1: Execute

1. Create team: `genie team create dream-<date>`.
2. For each wish in DREAM.md, ordered by `merge_order` layer:
   - Same-layer wishes dispatch in parallel.
   - Dispatch workers via `genie work <agent> <slug>#<group>` — gets state tracking for free.
   - Parallel groups within a wish dispatched simultaneously.
3. Monitor via `genie status <slug>`. Mark groups done via `genie done <ref>`.
4. Workers signal completion via `genie send`.
5. If a group gets stuck, use `genie reset <ref>` to retry.

### Worker Contract

Each worker executes independently:

1. Read WISH.md from `wish_path`.
2. Self-refine task prompt via `/refine` (text mode).
3. Checkout branch: `git checkout -b <branch>`.
4. Implement execution groups from WISH.md.
5. Run local `/review` per group against acceptance criteria.
6. CI check: run CI. If fail → fix and retry (max 3 retries). Poll CI status — do not sleep.
   - After 3 failures: mark BLOCKED.
7. Only after CI green: `gh pr create --base dev`.
8. Report to lead via `genie send`:
   - Success: `DONE: PR at <url>. CI: green. Groups: N/N.`
   - Failure: `BLOCKED: <reason>. Groups: N/N.`

## Phase 2: Review + PR

**Trigger:** all execute workers have reported `DONE` or `BLOCKED`.

1. Leader creates PR to dev after all groups done for each wish.
2. Read bot comments critically — do not blindly accept automated suggestions.
3. Dispatch `/review` against wish acceptance criteria per PR.
4. On `FIX-FIRST`: dispatch `/fix` for valid issues (max 2 loops per PR).
5. On architectural issue: escalate immediately (no fix attempt), record in report.
6. CI must be green before proceeding. Poll CI status, do not sleep.
7. On `SHIP`: mark review-complete.

## Phase 3: Merge + QA

**Trigger:** all PRs reviewed and marked SHIP.

1. Merge PRs to dev in `merge_order`.
2. Spawn qa on dev branch: `genie spawn qa`.
3. QA loop: test against wish acceptance criteria → failures get `/report` → `/trace` → `/fix` → retest.
4. Each fix creates a new PR to dev, goes through review, merge, retest.
5. Continue until all wish criteria are proven or blocked.

## Phase 4: Report

Write to `.genie/DREAM-REPORT.md` in the shared worktree:

```markdown
# Dream Report — <date>

## Per-Wish Status

| merge_order | slug | PR link | CI | Review | Merged | QA |
|-------------|------|---------|----|--------|--------|----|
| 1 | slug-1 | #123 | green | SHIP | yes | verified |
| 2 | slug-2 | #124 | green | SHIP | yes | 2/3 criteria |

## Blocked Wishes
- `<slug>`: blocking reason.

## QA Findings
- `<slug>`: criteria X failed — traced to <root cause>, fix PR #125.

## Follow-ups
- Action items requiring human intervention.
```

After report is written:
```bash
genie team disband dream-<date>
```

## Rules
- Never early-stop: if a wish returns BLOCKED, record reason and continue with remaining wishes.
- Never skip Phase 2 — every DONE PR must be reviewed.
- Never skip Phase 3 — every merged PR must be QA-tested against wish criteria.
- Orchestrator never executes wish work directly — dispatch via `genie work`.
- Do not expand scope beyond what WISH.md defines.
- Always write DREAM-REPORT.md, even if all wishes BLOCKED.
- Poll CI status instead of sleeping — never use `sleep` in CI retry loops.
- Use `genie done`, `genie status`, and `genie reset` for state tracking.

Related Skills

work

272
from automagik-dev/genie

Execute an approved wish plan — orchestrate subagents per task group with fix loops, validation, and review handoff.

wish

272
from automagik-dev/genie

Convert an idea into a structured wish plan with scope, acceptance criteria, and execution groups for /work.

trace

272
from automagik-dev/genie

Dispatch trace subagent to investigate unknown issues — reproduces, traces, and reports root cause for /fix handoff.

review

272
from automagik-dev/genie

Validate plans, execution, or PRs against wish criteria — returns SHIP / FIX-FIRST / BLOCKED with severity-tagged gaps.

report

272
from automagik-dev/genie

Investigate bugs comprehensively — cascade through /trace, capture browser evidence, extract observability data, and auto-create a GitHub issue with all findings.

refine

272
from automagik-dev/genie

Transform a brief or prompt into a structured, production-ready prompt via prompt-optimizer. File or text mode.

learn

272
from automagik-dev/genie

Diagnose and fix agent behavioral surfaces when the user corrects a mistake — connects to Claude native memory.

genie

272
from automagik-dev/genie

Transform any Claude Code session into an Automagik Genie orchestrator — guide users through brainstorm, wish, team, and PR lifecycle.

fix

272
from automagik-dev/genie

Dispatch fix subagent for FIX-FIRST gaps from /review, re-review, and escalate after 2 failed loops.

docs

272
from automagik-dev/genie

Dispatch docs subagent to audit, generate, and validate documentation against the codebase.

council

272
from automagik-dev/genie

Brainstorm and critique with 10 specialist viewpoints. Use for architecture, plan reviews, or tradeoffs.

brainstorm

272
from automagik-dev/genie

Explore ambiguous or early-stage ideas interactively — tracks wish-readiness and crystallizes into a design for /wish.