Help us improve
Share bugs, ideas, or general feedback.
From ddd-workflow
Brainstorms ideas from scratch to produce a design plan for greenfield projects. Guides with clarifying questions, multiple options, and a review gate before writing plan.md and invoking spec generation.
npx claudepluginhub applepig/ddd-workflowHow this skill is triggered — by the user, by Claude, or both
Slash command
/ddd-workflow:ddd.brainstormingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
透過自然的協作對話,把想法變成完整的設計與規格。先理解專案脈絡,然後一次一題地追問以釐清想法。理解清楚後呈現設計、取得使用者同意。
Guides collaborative brainstorming to refine ideas into approved designs and specs before any implementation of features, components, or changes. Enforces checklist and hard gates.
Guides structured brainstorming before any creative work: explores user intent, requirements, and design before implementation. Prevents wasted effort from unexamined assumptions.
Guides collaborative brainstorming to refine ideas into validated designs before implementing features or components. Explores intent, proposes approaches, and iterates sections.
Share bugs, ideas, or general feedback.
透過自然的協作對話,把想法變成完整的設計與規格。先理解專案脈絡,然後一次一題地追問以釐清想法。理解清楚後呈現設計、取得使用者同意。
適用範圍:greenfield——新專案、新模組、沒既有 code 可參考的情境。從一張白紙生出結構。如果是在既有專案中延伸或修改功能(brownfield),改用 /ddd.plan。
改編自 Anthropic superpowers:brainstorming skill,加上 DDD 工作流的契約(SSOT 路徑、AskUserQuestion 強制、終點導向 /ddd.spec)。
在呈現設計並獲得使用者明確同意前,嚴禁 invoke 任何實作 skill、撰寫程式碼、建立專案 scaffold、或做任何實作行為。這條規則適用於每一個專案,不論你覺得它有多簡單。 嚴禁自行假設商業邏輯——需求模糊時必須提問。每個專案都要走這個流程。一個 todo list、一個單函式工具、一個設定檔變更——全部都要。「簡單」的專案正是未經檢驗的假設最容易造成浪費的地方。設計可以很短(真正簡單的專案寫幾句話就好),但你必須呈現給使用者確認。
你必須為以下每個項目建立 task 並依序完成:
AskUserQuestion;能從 codebase 得到的答案自己查docs/<編號>-<名稱>/plan.md/ddd.spec 撰寫 spec.md — invoke /ddd.spec skill,規劃結論填入 spec 的「背景」與「ADR」段落digraph ddd_brainstorming {
"探索專案 context" [shape=box];
"逐一追問釐清需求" [shape=box];
"提出 2-3 個方案" [shape=box];
"分段呈現設計" [shape=box];
"使用者同意設計?" [shape=diamond];
"寫入 plan.md" [shape=box];
"Plan Self-Review\n(inline 修正)" [shape=box];
"使用者審閱 plan.md?" [shape=diamond];
"接續 /ddd.spec 撰寫 spec.md" [shape=doublecircle];
"探索專案 context" -> "逐一追問釐清需求";
"逐一追問釐清需求" -> "提出 2-3 個方案";
"提出 2-3 個方案" -> "分段呈現設計";
"分段呈現設計" -> "使用者同意設計?";
"使用者同意設計?" -> "分段呈現設計" [label="否,修正"];
"使用者同意設計?" -> "寫入 plan.md" [label="是"];
"寫入 plan.md" -> "Plan Self-Review\n(inline 修正)";
"Plan Self-Review\n(inline 修正)" -> "使用者審閱 plan.md?";
"使用者審閱 plan.md?" -> "寫入 plan.md" [label="要求修改"];
"使用者審閱 plan.md?" -> "接續 /ddd.spec 撰寫 spec.md" [label="通過"];
}
終止狀態是完成 /ddd.spec 流程。 plan.md 確認後直接 invoke /ddd.spec 接續撰寫 spec.md,不要結束讓使用者自己跑。不要 invoke /ddd.tasks、/ddd.work,或任何其他實作 skill。
AskUserQuestion 工具——不可用一般對話文字代替。這確保流程在決策點明確暫停、等待使用者輸入(AGENTS.md 規定)AskUserQuestion 的選項格式呈現——開放式問題只在無法預判答案範圍時使用AskUserQuestion 收斂方向。docs/<編號>-<名稱>/plan.md
寫完 plan.md 後,用新鮮的眼光檢查:
發現問題直接 inline 修正,不需要重跑整個流程——修了就往下走。
Self-Review 通過後,請使用者審閱 plan.md 才能繼續:
「Plan 已寫入
docs/<編號>-<名稱>/plan.md。請你審閱一下,有任何想調整的地方告訴我,確認後我們就進入/ddd.spec寫正式規格。」
等使用者回應。如果要求修改,改完後重跑 Plan Self-Review。使用者確認後才能進下一步。
/ddd.spec skill 撰寫 spec.md,規劃結論填入 spec 的「背景」與「ADR」段落/ddd.spec 是唯一的下一步# <功能名稱>
## 背景 (Background)
為什麼要做這個功能、解決什麼痛點
## 粗略目標 (High-level Goals)
- 條列式描述預期達成的目標
## 可能的方向 (Potential Directions)
- 方案 A(推薦):...
- 優點:...
- 缺點:...
- 方案 B:...
## 待釐清事項 (Open Questions)
- 尚未解決的技術或規格問題
- 若有需調研的,直接用原生工具查完再寫進來
## 下一步 (Next Step)
建議直接寫 spec,或說明還缺什麼資訊
AskUserQuestion — 不可用對話文字代替(AGENTS.md)AskUserQuestiondocs/<編號>-<名稱>/plan.mddocs/<編號>-<名稱>/research.md——技術調研寫這裡,不要塞進 plan.md/ddd.spec 流程完成、使用者確認規格後,依 spec 內 Milestones 複雜度引導使用者執行 /ddd.work 或 /ddd.tasks。
在任何中途回合若準備收尾但尚未結束流程,仍需用 AskUserQuestion 提供 2-4 個具體下一步選項。
如有技術問題需要調研,直接用原生工具(Explore agent、WebSearch、WebFetch)進行,將結論記錄在同資料夾的 research.md 中。