Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 14 additions & 5 deletions skills/brainstorming/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@ You MUST create a task for each of these items and complete them in order:
3. **Propose 2-3 approaches** — with trade-offs and your recommendation
4. **Present design** — in sections scaled to their complexity, get user approval after each section
5. **Write design doc** — save to `docs/plans/YYYY-MM-DD-<topic>-design.md` and commit
6. **Transition to implementation** — invoke writing-plans skill to create implementation plan
6. **Ask implementation gate** — ask: "Ready to set up for implementation?"
7. **Create isolated worktree** — invoke `using-git-worktrees`
8. **Create implementation plan** — invoke `writing-plans` and save to `docs/plans/YYYY-MM-DD-<topic>-plan.md`

## Process Flow

Expand All @@ -40,6 +42,8 @@ digraph brainstorming {
"Present design sections" [shape=box];
"User approves design?" [shape=diamond];
"Write design doc" [shape=box];
"Ready to set up implementation?" [shape=diamond];
"Invoke using-git-worktrees" [shape=box];
"Invoke writing-plans skill" [shape=doublecircle];

"Explore project context" -> "Ask clarifying questions";
Expand All @@ -48,11 +52,14 @@ digraph brainstorming {
"Present design sections" -> "User approves design?";
"User approves design?" -> "Present design sections" [label="no, revise"];
"User approves design?" -> "Write design doc" [label="yes"];
"Write design doc" -> "Invoke writing-plans skill";
"Write design doc" -> "Ready to set up implementation?";
"Ready to set up implementation?" -> "Invoke using-git-worktrees" [label="yes"];
"Ready to set up implementation?" -> "Present design sections" [label="not yet"];
Comment on lines +55 to +57
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Don't send "not yet" back into the design loop.

By this point the design is already approved and written. Routing "not yet" back to Present design sections implies the agent should reopen design review instead of simply stopping after the gate.

Suggested graph fix
     "Write design doc" -> "Ready to set up implementation?";
     "Ready to set up implementation?" -> "Invoke using-git-worktrees" [label="yes"];
-    "Ready to set up implementation?" -> "Present design sections" [label="not yet"];
+    "Ready to set up implementation?" -> "Done for now" [label="not yet"];
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
"Write design doc" -> "Ready to set up implementation?";
"Ready to set up implementation?" -> "Invoke using-git-worktrees" [label="yes"];
"Ready to set up implementation?" -> "Present design sections" [label="not yet"];
"Write design doc" -> "Ready to set up implementation?";
"Ready to set up implementation?" -> "Invoke using-git-worktrees" [label="yes"];
"Ready to set up implementation?" -> "Done for now" [label="not yet"];
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/brainstorming/SKILL.md` around lines 55 - 57, The `"not yet"`
transition from "Ready to set up implementation?" incorrectly routes back to
"Present design sections"; instead make the "not yet" outcome terminate the flow
(e.g., point it to a stop/exit node or remove the edge entirely) so the approved
design does not re-enter review; update the edge that currently reads `"Ready to
set up implementation?" -> "Present design sections" [label="not yet"];` to
point to a terminal node (or remove it) and ensure the "yes" path remains
`"Ready to set up implementation?" -> "Invoke using-git-worktrees"
[label="yes"];`.

"Invoke using-git-worktrees" -> "Invoke writing-plans skill";
}
```

**The terminal state is invoking writing-plans.** Do NOT invoke frontend-design, mcp-builder, or any other implementation skill. The ONLY skill you invoke after brainstorming is writing-plans.
**The terminal state is invoking writing-plans.** For implementation, invoke `using-git-worktrees` first, then `writing-plans`. Do NOT invoke unrelated implementation skills directly from brainstorming.

## The Process

Expand Down Expand Up @@ -83,8 +90,10 @@ digraph brainstorming {
- Commit the design document to git

**Implementation:**
- Invoke the writing-plans skill to create a detailed implementation plan
- Do NOT invoke any other skill. writing-plans is the next step.
- Ask: **"Ready to set up for implementation?"** and wait for confirmation
- Invoke `using-git-worktrees` to create an isolated workspace
- Invoke `writing-plans` to create a detailed implementation plan
- Ensure the plan is saved as `docs/plans/YYYY-MM-DD-<topic>-plan.md` (never overwrite `*-design.md`)

## Key Principles

Expand Down
2 changes: 1 addition & 1 deletion skills/writing-plans/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Assume they are a skilled developer, but know almost nothing about our toolset o

**Context:** This should be run in a dedicated worktree (created by brainstorming skill).

**Save plans to:** `docs/plans/YYYY-MM-DD-<feature-name>.md`
**Save plans to:** `docs/plans/YYYY-MM-DD-<feature-name>-plan.md` (never overwrite `*-design.md`)

## Bite-Sized Task Granularity

Expand Down