Spike 是一种结构化的技术调研方法,用于降低不确定性,帮助团队在信息不完整的情况下做出可执行的决策。其核心要求是:每一次调研都必须回答一个具体、可衡量的问题,而不是进行泛泛的“探索 X”。
用途方面,Spike 适用于限时技术调研,包括可行性研究、架构探索、集成评估、性能分析和风险评估等。它强调通过聚焦实验或原型快速获取信息,最终产出一个明确的决策,而不是一份一般性的报告。
主要能力包括:强制定义问题、设置时间箱(默认 2 小时)、预先确定评估标准、进行聚焦调查、在 50% 时间点做检查点评估是否调整方向,并必须给出 GO / NO-GO / PIVOT / MORE-INFO 四种决策之一。同时要求基于发现创建后续任务,而非仅输出报告。
使用方式上,首先需要清晰定义问题(我们试图了解什么),然后设定小时级时间箱(多日评估应使用 deep-research),提前明确评估标准,通过实验或原型进行调查,在时间过半时评估进展并决定是否转向,最后输出强制结论。强制输出包括:决策(GO、NO-GO、PIVOT 或 MORE-INFO)、证据(测试内容与观察结果)、后续任务(若为 GO,则在 ohno 中创建)、报告(保存到 .claude/spikes/[date]-[slug].md)。
适用场景包括需要快速降低技术不确定性的调查,例如评估某个集成方案是否可行、探索架构选择、分析性能瓶颈或进行风险评估。不适用场景包括:多日评估(应使用 deep-research 并生成面向利益相关者的报告)、已经知道要构建什么(应直接进入实现)、以及缺陷调查(应使用 error-handling 或 /fix,因为缺陷有复现步骤,而 Spike 处理开放性问题)。
限制方面,Spike 严格限时,默认 2 小时,必须在结束时给出决策,即使信息不完整;它不适用于需要全面技术评估或多日调研的场景;它要求创建后续任务,而不仅仅是写报告。运行环境说明:在 Claude Code 中,通过 Task 工具以 subagent_type: "pokayokay:yokay-spike-runner" 派发 yokay-spike-runner;在 Codex 中没有子代理派发机制,需内联执行该代理角色,读取对应的 agents/yokay-<name>.md 并直接在当前会话中遵循其行为默认值、关键规则和输出契约。参考资料包括 spike-types.md(可行性、架构、集成、性能等类型)、question-patterns.md(如何构建好的 Spike 问题)、output-templates.md(报告模板与示例)。