写Spec太慢?Claude Code能帮你自动搞定吗?Kiro Spec生成,上下文工程难不难?

2025-10-15 09:35:21 作者:Vali编辑部

亚马逊最近推出的Kiro IDE开发平台引发了不少关注,特别是其中名为"Spec"的交互功能,让不少开发者感到耳目一新。这个系统通过结构化文档和分阶段审批流程,将原本自由发挥的AI编码过程变成了可追溯、可控制的工程化流程。不少开发者表示,这种将需求、设计、实施三阶段分离的模式,让AI生成代码的准确性有了明显提升。

从实际使用情况来看,Kiro的Spec工作流确实体现了软件工程中的"关注点分离"原则。它强制AI将一个复杂问题分解为三个独立但又环环相扣的阶段,确保每一步都足够专注和深入。这种分阶段的模式让开发者能够更清晰地掌控整个开发过程,避免了传统AI开发中常见的方向偏移问题。

在需求阶段,AI需要先完成初步需求文档的创建。这个过程要求AI将用户模糊的想法转化为具体可执行的文档,而不是通过一连串问题来引导。这种直接生成文档的方式,让开发者能够更快地获得一个讨论和反馈的基础。文档完成后,AI必须主动请求用户审核,形成"反馈-修改-批准"的循环,直到获得明确同意才能进入下一阶段。

设计阶段的核心任务是创建技术方案文档。基于已批准的需求,AI需要生成详细的设计文档,涵盖系统架构、数据模型、错误处理等多个方面。为了增强可读性,文档中还鼓励使用图表工具。这个阶段同样需要用户审批,确保设计方案符合实际需求。如果发现需求问题,AI会主动提议返回上一阶段进行调整。

实施阶段是整个流程的最后一步,AI需要将设计方案分解为具体的编码任务。这些任务要写给另一个AI执行,因此必须具体到函数和文件层面。任务规划需要遵循测试驱动原则,确保每一步都建立在前一步的基础上。最终生成的编码任务清单,需要经过用户批准后才能启动实际的编码工作。

从实际测试来看,这种结构化流程确实提升了AI生成代码的质量。在测试中,Kiro的Spec工作流成功将一个模糊的功能想法,转化为一份清晰、详尽的编码任务清单。这种标准化流程让开发者能够更系统地控制AI生成代码的过程,避免了传统自由发挥模式下可能出现的偏差。

不过,实际使用中也暴露出一些问题。首先是Kiro目前无法联网搜索,这对现代开发来说是个短板。很多开发者都习惯在项目中查阅官方文档,这个功能的缺失让流程不够完善。其次是上下文限制问题,当开发内容超出AI对话窗口的容量时,整个流程就会重置,这对需要长时间记忆的Spec工作流来说是个挑战。

另一个值得关注的现象是,有人在GitHub上开源了Spec的系统提示词。这个发现让开发者们看到了亚马逊如何将复杂开发过程标准化。这提示我们,Kiro的Spec工作流其实可以移植到其他AI开发工具中,比如Claude Code。结合Claude Code更强大的AI能力和更长的上下文支持,可以弥补Kiro当前的技术限制。

在实际测试中,有人尝试将Spec工作流应用于Claude Code,成功创建了一个商业文档撰写的HITL(Human-in-the-Loop)工作流Agent。这个Agent具备UI界面、流程可视化、支持用户意图变更等特性,展示了Spec工作流的灵活性。这种跨平台的适配性证明了优秀的软件工程方法论具有很强的普适性。

测试结果显示,Spec工作流在Claude Code中运行良好。需求阶段自动生成了102行的详细需求文档,覆盖了9大功能模块。设计阶段创建了299行的综合设计文档,包含系统架构图、组件设计、数据模型等技术选型。实施阶段生成了190行的任务清单,分解为12个主要模块和44个具体开发步骤。

最终按照tasks.md的指引,成功创建了一个单文件的完整解决方案(business_doc_agent.py,387行)。这个解决方案包含了所有核心功能:数据模型、AI集成、Gradio界面等,还生成了requirements.txt依赖文件。最终一键交付了一个完整Python应用,支持中文界面、实时HITL交互、多格式导出等复杂功能。

这次实践验证了Spec工作流的可行性。它不仅适用于Kiro,同样可以在Claude Code等其他AI开发工具中发挥作用。这种结构化思维和质量控制方法,让AI生成代码的过程更加可控和可靠。对于需要AI工具辅助开发的用户来说,这种标准化流程无疑提供了更高效的解决方案。

从第三方评测角度看,Spec工作流确实展现了其优势。它通过分阶段审批、结构化文档、用户主导等机制,让AI生成代码的过程更加透明和可控。虽然目前还存在一些技术限制,但这种工程化思维为AI开发工具提供了新的方向。对于追求效率和质量的开发者来说,这种标准化流程值得尝试。

总的来说,Kiro的Spec工作流为AI开发提供了新的可能性。它通过将复杂问题分解为可管理的阶段,让开发者能够更系统地控制AI生成代码的过程。这种结构化思维和质量控制方法,让AI工具从"自由发挥"转向"工程化开发",为开发者提供了更可靠的解决方案。