用途
Brainstorming 是一项用于交互式探索想法的技能。它通过苏格拉底式问答(Socratic Q&A)帮助使用者深入理解问题,而非仓促进入实现阶段。其最终产物是一份逐步成长、最终可作为轻量级 pre-PRD 的文档,可继续输入到 /research 或 /create-plan。
主要能力
- 通过苏格拉底式问答系统性探索需求、约束与洞见。
- 每次仅提出一个问题(使用 AskUserQuestion),并附带推荐答案。
- 在会话过程中逐步构建文档,记录每次问答与相应洞见。
- 在探索结束后进行综合(Synthesis),输出关键决策、开放问题、已识别的约束和核心需求。
- 默认启用文件审查(file-review),可在综合后调用 /file-review:file-review <path> 并处理反馈。
- 支持学习记录(可选),通过 /learning capture 捕获重要洞见或模式。
- 支持交接(Handoff),可选择进入研究、制定计划或暂存。
使用方式
该技能在以下情况激活:
- 用户调用 /brainstorm 命令;
- 其他技能引用 REQUIRED SUB-SKILL: Use desplega:brainstorming;
- 用户希望在投入研究或规划前探索某个想法;
- 用户尚未准备好进行正式研究。
自主模式
由于 Brainstorming 本质上是交互式的,仅支持两种模式:
| 模式 | 行为 |
|---|---|
| Verbose(默认) | 完整的苏格拉底式探索,每次问一个问题,讨论丰富 |
| Critical | 提问较少,聚焦影响最大的领域,更快进入综合阶段 |
不支持 Autopilot 模式。若请求 Autopilot,则回退到 Critical,并附上原因说明。自主模式由调用命令传入;若未指定,默认使用 Verbose。
流程步骤
第 1 步:初始化文档
在 cc-plugin/base/skills/brainstorming/template.md 模板基础上,创建 thoughts/<username|shared>/brainstorms/YYYY-MM-DD-<topic>.md。路径选择:若上下文中已知用户名则使用该用户名(例如 thoughts/taras/brainstorms/),否则回退到 thoughts/shared/brainstorms/。填写 frontmatter 和 Context 部分,写入已知的 topic、上下文和初始想法。
可选子技能:若 ~/.agentic-learnings.json 存在,运行 /learning recall <current topic> 检查相关先前学习。
第 2 步:评估阶段(Assess Phase)
通过 AskUserQuestion 询问“What kind of exploration is this?”,选项为:1. Problem to solve;2. Idea to develop;3. Comparison to make;4. Workflow to improve;5. Other(describe)。随后更新文档的 exploration_type frontmatter 和 Context 部分。
第 3 步:探索阶段(Explore Phase)
进行苏格拉底式问答循环,逐步揭示需求、约束与洞见。规则:
- 每次仅通过 AskUserQuestion 提出一个问题。
- 每个问题都附带推荐答案,推荐答案为第一个选项并标注 “(Recommended)”,理由写在描述中。
- 区分事实与决策:能查到的事实不询问用户,而是启动后台子代理(依据 desplega:delegate-work,使用 Haiku locate / Sonnet analyze)并将答案记录为洞见;只有真正的决策(权衡、偏好、范围界定)才询问用户。
- 跟踪待解决的分支(frontier),可用简短的 TodoWrite 列表维护。当所有分支都已解决或被明确推迟时,探索结束。
- 每次回答后在文档的 ## Exploration 下追加新章节:
Q: [Your question]
[User's answer]
Insights: [Any observations, implications, or connections you noticed]
- 找出下一个最重要的问题以缩小范围或加深理解。
- 持续进行,直到用户表示满意或达到自然饱和。
问题策略:从宽泛开始(理解问题空间与目标),逐步收窄(约束、现有方案、非功能性需求),并探查边界(“什么会导致失败?”、“最简单的版本是什么?”、“你不打算解决什么?”)。
YAGNI 原则:在探索阶段抵制过早提出解决方案。若用户过早开始方案设计,简要认可后将其引导回需求层面,解决方案应留到综合阶段或后续的 /create-plan。
第 4 步:综合阶段(Synthesize Phase)
探索完成后,追加 ## Synthesis 章节,包含:
- Key Decisions(关键决策,含推迟项及其推荐默认值)
- Open Questions(仅限事实型问题,可由 /research 回答)
- Constraints Identified(已识别的约束)
- Core Requirements(核心需求,轻量级 PRD 风格)
以未决决策结束的 brainstorm 是不完整的。开放问题只能包含事实型条目;决策型问题必须在 Key Decisions 中解决,或记录为“Deferred, defaulting to X”。若用户提前结束会话且仍有未决决策,则一次性批量询问默认值,或将自身推荐记录为默认值并明确标注。
可选子技能:若出现重要洞见、模式、注意事项或决策,可考虑使用 desplega:learning 及 /learning capture 进行捕获。
第 5 步:交接阶段(Handoff Phase)
交接前,可提议对 brainstorm 文档运行 /review 以识别未探索的领域。随后通过 AskUserQuestion 询问“What's the next step?”,选项为:1. 基于本 brainstorm 开始研究(→ /research);2. 直接创建计划(→ /create-plan);3. 暂时结束(暂存 brainstorm)。根据答案,相应建议 /research 或 /create-plan 命令并传入 brainstorm 文件作为输入上下文,或将文档状态设为 parked / complete。
文档演进
brainstorm 文档在会话期间是活文档,从粗略开始,通过问答过程逐步结构化。最终应可作为独立上下文文档被他人阅读和理解。
审查集成
文件审查默认开启:综合后调用 /file-review:file-review <path> 以获取行内人工评论,并通过 file-review:process-review 技能处理反馈。
适用场景
- 在投入研究或规划前探索一个想法。
- 尚未准备好进行正式研究。
- 希望系统性地梳理需求、约束与决策。
限制
- 本质上是交互式的,不支持 Autopilot 模式;需要人工输入。
- 开放问题仅限事实型,决策型问题需在关键决策中解决或记录默认值。
- 关于收费、价格、平台等具体信息,资料暂未提供。