关于 ce-brainstorm
ce-brainstorm 是通过对话梳理软件功能构想的技能,供规划和开发流程使用。它按工作规模决定以聊天结果收尾,或记录需求并交接给规划阶段。
主要功能
- 01通过对话探索功能
- 02评估工作规模并分流
- 03创建需求文档
- 04交接至规划阶段
适用场景
- 01在实现前梳理功能构想
- 02记录供后续规划使用的决定
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ everyinc/ compound-engineering-plugin --skill ce-brainstorm安装后在 Claude Code 中输入/ce-brainstorm确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/approaches.mdbakeoff.mdblindspot-pass.mdbrainstorm-sections.mddialogue.mdhandoff.mdhtml-rendering.mdinteraction-rules.mdmarkdown-rendering.mdmodel-tiers.mdoutput-mode.mdphase-0.mdplan-write.mdproduct-pressure-test.mdreasoning-elevation.mdsettled-decisions.mdsynthesis-summary.mduniversal-brainstorming.mdverdict-routing.mdvisual-probes.mdreferences/agents/slack-researcher.mdscripts/elevation-dispatch.shlight-webserver.jspacks-resolve.pypeer-job-runner.py详细介绍
头脑风暴:构思功能或改进
头脑风暴通过对话回答要构建什么(WHAT);随后,ce-plan 会在同一份统一计划产物中补充如何构建(HOW)。此技能不会实现代码。当前年份为 2026 年,用于确定产物的日期。
**结果:**产物的规模与工作量相称,ce-plan 可以据此继续推进,而无需臆造产品行为、范围边界或成功标准:轻量级工作以一段聊天内容收尾;如果值得创建文件,则在 <root>/plans/ 下生成一份仅含需求的统一计划。
**头脑风暴流程完成条件:**该产物已写入,且通过“准备进入规划”检查;或者,没有写入文件,因为对话未产生任何需要以稳定 ID 记录、供后续读者(规划者、评审者或未来读者)查阅的决策,并且用户也没有要求创建文件;此外,还必须已展示第 4 阶段的交接内容。
**轻量级工作以聊天内容收尾。**在分派任何工作之前,阶段 0.3 会根据请求和有限的行内读取内容判断工作层级;如果无法确定层级,就采用较重的层级。轻量级工作——规模小、边界明确、歧义少——以一段聊天内容收尾,不创建文件、不进行背景调研、不生成方案,也不验证声明。只有当某项决策值得用稳定 ID 记录、供后续读者查阅,或用户要求创建文件时,才创建文件。
以下三种情况应停止并转交处理,具体判断依据是 references/phase-0.md,而非记忆。这些情况各自以不同方式结束本次运行,因此不适用上文的完成条件:非软件类工作,此时由 references/universal-brainstorming.md 替代阶段 0.2–4;针对具名外部候选对象的评判问题,此时提供 ce-pov 交接;以及以上两者都不属于的情况——快速协助、事实问题或单步任务——直接回答。
功能描述由调用方提供,无论是用户撰写的,还是由调用技能传入的。如果没有功能描述,就询问用户想要探索什么;在收到描述之前不要继续。
mode:return-to-caller(由 lfg 等调用技能设置的前置标记):移除该标记,按原样进行对话,并用 references/handoff.md 规定的结构化返回内容替代阶段 4:不提供选项菜单,也不调用 lfg 或 ce-plan。
产物根目录
首次编写或读取 <root>/ 路径时,解析 <root>;不要提前解析。仅使用临时内容、且未触及任何 <root>/ 路径的无仓库运行,可完全跳过此步骤。
在编写任何产物路径之前,先解析 CE 产物根目录 <root>。
- 读取
<repo-root>/.compound-engineering/config.yaml中的docs_root(<repo-root>=git rev-parse --show-toplevel)。不要从config.local.yaml读取。未设置时,<root>与之前相同,为docs。 - 验证已设置的值:它必须是相对于仓库的目录,经过符号链接解析后的实际路径必须位于仓库内,且不能是仓库根目录,也不能位于
.git/下。否则停止并报错,指出docs_root及其值——绝不能回退到docs。 - 使用
<root>作为唯一的产物位置:如果目录不存在则创建;将每个路径拼接为<root>/<subdir>,其中子目录由此技能指定;绝不要同时读取docs。
brainstorm_output 和 brainstorm_model 按以下规则解析:
从两个仓库配置文件中解析普通 CE yaml 键。
- 读取
<repo-root>/.compound-engineering/config.local.yaml,然后读取config.yaml(<repo-root>=git rev-parse --show-toplevel)。跳过不存在的文件。Git 忽略规则不会影响解析。 - 采用第一个有效(未注释)值。对于标量,空值视为未设置;无效值则继续检查下一层,之后使用技能默认值。对于列表和映射,只要键存在——包括空列表或空映射——就会替换整个键。
- 不要对
docs_root使用此规则——该键仅从config.yaml读取。
执行流程
各阶段按此顺序运行。每个阶段都会列出其正确运行所必需的文件:到达该阶段时再读取,不要仅凭此表执行工作。
| 阶段 | 先阅读 | 只有这些文件才包含的内容 |
|---|---|---|
| 第一个问题之前,以及整个运行期间——包括非软件路线 | 阅读 references/interaction-rules.md | 核心原则和交互规则:每轮只问一个问题、只询问环境无法确定的决策、阻塞问题工具的默认行为及覆盖该默认行为的视觉探查门槛、何时问题确实开放,以及此技能在此处完整说明的唯一 ce-prototype 路由测试 |
| 将对话中的某项决策视为已确定之前 | 阅读 references/settled-decisions.md | 确定性测试;跳过此步骤会导致再次询问已决定的问题,或将未经审查的断言提升为已确定事项 |
| 0.0 输出模式 | references/output-mode.md | OUTPUT_FORMAT 的优先级;令牌解析约定 |
| 0.1–0.4 恢复、分类、路由、确定范围 | references/phase-0.md | 恢复扫描;停止并路由分类;范围层级;连贯工作门槛(这是否是一项完整的工作?);两个触发条件(视觉或空间特征;不熟悉的领域);任务列表 |
| 1 理解想法 | references/dialogue.md | 上下文扫描和信息核查;选择加入的 Slack 研究员;压力测试;盲点和视觉探查门槛;与现有 CONCEPTS.md 及已验证代码的冲突门槛;Phase 1.3 退出条件 |
| 2–2.6 方案、综合、验证 | references/approaches.md,以及撰写综合内容前阅读 references/synthesis-summary.md | 方案生成;模型提升;范围综合;声明核验器 |
| 3 编写计划 | references/plan-write.md,然后阅读 references/brainstorm-sections.md 和对应格式的渲染参考 | 是否需要文档;章节约定;规划就绪检查 |
| 4 交接 | references/handoff.md | 选项集合及其显示条件;渲染模式规则;按选择分发,包括传递给 ce-plan 的内容;结束摘要 |
即使不读取任何文件,以下规则也始终适用:
OUTPUT_FORMAT 具有排他性——只能是 Markdown 或 HTML,不能两者兼有。格式按优先顺序取第一个适用项:本提示中的请求、用户此前表达的偏好、配置,最后是 Markdown;包括无头运行在内的所有运行都遵循此规则。
在头脑风暴路线中写入文件时,产物约定不变:写入 <root>/plans/YYYY-MM-DD-HHMM-<type>-<topic>-plan.<md|html>,其中 HHMM 取写入时的本地时钟时间;frontmatter 包含 artifact_contract: ce-unified-plan/v1 和 product_contract_source: ce-brainstorm;正文由目标概要和产品约定组成。不要输出目标启动块或读者索引。非软件路线不写入此类内容。
写入文件时,只要规划就绪检查中仍有任何检查未通过,就不得宣布文件已写入,也不得进入 Phase 4;聊天结果则无需运行检查,直接进入 Phase 4(交接)。临时拼凑的交接菜单是另一种隐性失败:它会显示本应隐藏的选项,并将错误的输入传递给下一个技能。
Phase 1.1 信息核查、Phase 2.6 声明核验器和选择加入的 Slack 研究员,都按任务形态分层,绝不硬编码模型名称;分发其中任何一项之前,请阅读 references/model-tiers.md。模型提升是单独的机制(references/reasoning-elevation.md)。