代理式开发系统蓝图:Kiro 的规约驱动工作流
第一部分:解构 Kiro 范式:为代理式人工智能强制注入工程纪律
本部分报告将深入剖析 Kiro 的架构与哲学。其目标不仅是罗列功能,更是理解其设计背后的根本原因——即它作为一种工具的核心价值主张:为本质上混乱的人工智能驱动开发过程强加结构。
1.1 问题领域:弥合“灵感编码”与“可用代码”之间的鸿沟
Kiro 旨在解决一个核心挑战:通过快速提示生成的“灵感编码”(Vibe Coding)原型与健壮、文档齐全、可维护的生产级软件之间存在的巨大鸿沟 1。尽管初始的提示工程过程感觉快速且富有魔力,但它往往导致未经记录的假设、模糊的需求、不清晰的系统设计和高昂的技术债 1。
Kiro 的明确使命是通过引入“结构化的人工智能编码” 5 和“成熟的工程实践” 5 来解决这一问题。它优化的目标是“长期可维护性”,而非“初始输出速度” 1。这与大多数优先考虑即时代码生成的 AI 编程助手形成了鲜明的对比叙事 4。
这种定位揭示了 Kiro 的一个根本特性:它销售的是一种方法论,而不仅仅是一个工具。其文档反复将“灵感编码”与“规约驱动开发”(Spec-Driven Development)进行对比 3,并强调 Kiro 强制执行一个特定的、严谨的工作流程 7。这表明 Kiro 的核心产品并非其底层的 AI 模型(它使用 Claude Sonnet) 5 或其编辑器(它基于 Code OSS 构建) 4。其独特的价值主张在于对开发流程的强制执行。它扮演着一个自动化的、代理式的“工程经理”或“技术主管”角色,确保最佳实践得到遵守。因此,复刻 Kiro 的关键不在于复制其用户界面,而在于复制其流程执行引擎。基于 Agno 的实现方案必须被设计成一个有状态的编排器,引导用户完成预定义的步骤序列,并在进入下一步之前验证每一步的输出。
1.2 架构核心:三阶段规约驱动工作流
Kiro 功能的核心是其需求 -> 设计 -> 任务的流水线。本节将详细分解这一流程。
1.2.1 第一阶段:需求生成 (requirements.md)
● 流程:该流程始于一个高层次的用户提示,例如“为产品添加一个评论系统”。Kiro 并不会直接生成代码,而是首先将其转化为明确、可测试的需求 1。
● 产物:输出是一个名为 requirements.md 的文件。该文件包含用户故事(User Stories),以及至关重要的、使用 EARS(Easy Approach to Requirements Syntax)符号编写的验收标准(Acceptance Criteria) 1。这种做法强制要求在项目初期就明确需求,使提示中的隐含假设变得明确 9。
● 意义:此步骤在尝试构建“如何做”之前,首先将“做什么”进行了编码化,有效防止了需求模糊和范围蔓延。它相当于产品经理编写的初始规格说明文档。
1.2.2 第二阶段:技术设计生成 (design.md)
● 流程:在需求获得批准后,Kiro 会分析现有代码库和 requirements.md 文件,以生成一份完整的技术设计方案 1。
● 产物:输出是一个名为 design.md 的文件。该文件包含数据流图(使用 Mermaid.js 语法)、TypeScript 接口定义、数据库模式变更(包括迁移、索引和关系)以及 API 合约(端点、请求/响应格式) 1。这相当于一个工程师在编写代码前进行的白板设计会议 1。
● 意义:此阶段创建了一个具体的架构蓝图,AI 代理将严格遵循此蓝图进行开发,从而确保了实现的一致性。
1.2.3 第三阶段:任务分解 (tasks.md)
● 流程:系统将技术设计分解为一系列原子化的、有顺序的任务 1。
● 产物:输出是一个名为 tasks.md 的文件。该文件列出了离散的实现步骤,并明确了依赖顺序、测试用例(单元测试、集成测试、可访问性检查)和代码审查检查点 1。每个任务都与一个需求相关联,以实现完全的可追溯性 9。
● 意义:此阶段创建了一个细粒度的、可审计的工作计划。它允许增量式地实现和审查,这与人类开发者处理复杂功能的方式非常相似 1。
这一系列 Markdown 文件的生成与维护模式,不仅仅是文档记录。Kiro 的文档指出,这些规约与代码“保持同步” 1。开发者既可以编写代码后让 Kiro 更新规约,也可以手动更新规约来刷新任务列表 9。这表明这些文件并非静态文档,而是整个代理流程中活跃的、权威的状态表示。这个基于文件的系统充当了一个简单、人类可读且版本可控的状态管理机制。它是所有代理读取和写入的“单一事实来源”,避免了复杂的内存状态或专有数据库格式,使得整个过程透明且易于调试。因此,我们的 Agno 复刻版必须采纳这一模式。系统的核心将是一个 Agno
Workflow,它负责编排各个代理,而这些代理将把特定的 Markdown 文件作为其主要输入和输出。文件 I/O 和 Markdown 解析将成为我们代理的基础 Tools。
1.3 关键功能赋能器:Steering、Hooks 和 MCP
Kiro 通过几个关键功能来增强其核心工作流,为代理提供上下文并实现自动化。
● 代理引导 (Agent Steering)
○ 机制:通过三个引导文件为项目提供全局上下文:product.md(定义产品愿景、功能和目标用户)、structure.md(记录项目目录结构和组织)和 tech.md(记录技术栈、开发工具和编码标准) 6。这些文件在项目启动时配置一次。
○ 目的:引导文件充当一个持久的、高层次的提示,指导所有后续的代理交互,确保行为一致性并减少重复的上下文提供 5。这给予了用户对 AI 行为的“最大控制权” 6。
● 代理挂钩 (Agent Hooks)
○ 机制:事件驱动的自动化。当特定事件(如“文件保存”、“文件创建”或手动触发)发生时,会触发代理执行后台任务 2。
○ 目的:Hooks 用于自动化处理那些“关键但繁琐”的任务,例如生成文档、更新 README、运行测试或执行代码质量检查 3。通过委托这些重复性工作,Hooks 极大地提升了开发者的生产力 5。
● 模型上下文协议 (Model Context Protocol, MCP)
○ 机制:这是一个用于连接专门化模型和外部数据源/工具(如安全模型、性能分析模型、Figma、AWS 服务)的协议 1。
○ 目的:MCP 是 Kiro 的可扩展性层。它允许系统集成领域特定的知识和能力,超越了核心大语言模型的一般能力 8。
这三个功能共同构成了一个分层的上下文管理系统,在不同的时间尺度和抽象层次上运作。
1. 第一层(静态/项目级) :Steering Files 为整个项目生命周期提供永久性的、低粒度的上下文(例如,“始终使用函数式编程模式”)。
2. 第二层(动态/功能级) :Spec Files(requirements、design、tasks)为当前正在开发的功能提供高粒度的上下文。这个上下文随着功能的构建而演变。
3. 第三层(外部/工具级) :MCP 从外部 API 和数据源提供实时的、按需的上下文(例如,“从 Figma 获取最新的 UI 设计”)。
在我们的 Agno 复刻版中,必须构建一个类似的多层上下文系统。Steering 可以通过 Agno 的 Knowledge(RAG)功能加载引导文件来实现。Specs 将由核心 Workflow 通过将文件内容作为上下文传递给代理来管理。MCP 则可以通过创建与外部 API 交互的自定义 Agno Tools 来复刻。
1.4 Kiro 用户体验:监督式与自动驾驶式协作
Kiro 提供了两种主要的操作模式,以平衡速度与控制。
● 监督模式 (Supervised Mode) :这是默认模式。在此模式下,Kiro 在执行任何变更之前,会将其计划和建议的代码变更(以 diff 形式)呈现给用户,等待明确批准 5。这确保了开发者始终保持完全的控制权。
● 自动驾驶模式 (Autopilot Mode) :在此模式下,Kiro 可以自主执行大型任务,无需用户进行步步确认,从而加速了基础性或非关键性工作的开发进程 5。
这种双模式方法承认了在软件开发中对速度和安全性的双重需求。它通过使 AI 的行为透明化和可审计(通过代码 diff)来建立信任 5,同时在需要时允许完全自动化。这种人机协同的设计对于在专业工程环境中获得采纳至关重要。对于我们的复刻项目,初始的最小可行 Kiro(MVK)应默认专注于实现一个“监督模式”。Agno 工作流应在关键节点(例如,生成规约后、应用代码变更前)暂停,并等待来自简单命令行或 Web 界面的用户输入。“自动驾驶”功能可以作为未来的增强项。
引用的著作
1. AWS Kiro AI: The First True AI IDE for Production-Ready Code | by Tahir - Medium, 访问时间为 七月 15, 2025, medium.com/@tahirbalar…
2. AWS launches Kiro, an IDE powered by AI agents | Constellation Research Inc., 访问时间为 七月 15, 2025, www.constellationr.com/blog-news/i…
3. Amazon Releases Kiro: An AI IDE That Empowers Developers with Agentic Automation, 访问时间为 七月 15, 2025, www.marktechpost.com/2025/07/15/…
4. AWS previews Kiro IDE for devs over vibe coding - The Register, 访问时间为 七月 15, 2025, www.theregister.com/2025/07/14/…
5. Kiro: The AI IDE for prototype to production, 访问时间为 七月 15, 2025, kiro.dev/
6. Kiro - The New Agentic AI IDE from AWS - DEV Community, 访问时间为 七月 15, 2025, dev.to/aws-builder…
7. Amazon's new Claude-powered spec-driven IDE (Kiro) feels like a game-changer. Thoughts? : r/ClaudeAI - Reddit, 访问时间为 七月 15, 2025, www.reddit.com/r/ClaudeAI/…
8. Kiro Agentic AI IDE: Beyond a Coding Assistant - Full Stack Software Development with Spec Driven AI | AWS re:Post, 访问时间为 七月 15, 2025, repost.aws/articles/AR…
9. Introducing Kiro, 访问时间为 七月 15, 2025, kiro.dev/blog/introd…
10. Meet Kiro! - DEV Community, 访问时间为 七月 15, 2025, dev.to/aspittel/me…
11. Comprehensive Comparison of AI Agent Frameworks | by Mohith Charan | Medium, 访问时间为 七月 15, 2025, medium.com/@mohitchara…
12. agno-agi/agno: Full-stack framework for building Multi-Agent Systems with memory, knowledge and reasoning. - GitHub, 访问时间为 七月 15, 2025, github.com/agno-agi/ag…
13. Unleashing the Power of Agno: Building Multi-Modal Agents with a Lightweight Python Library - RPABOTS.WORLD, 访问时间为 七月 15, 2025, rpabotsworld.com/agno-buildi…
14. Meet Agno AI: The Lightning-Fast Framework Transforming AI Agent Development, 访问时间为 七月 15, 2025, viveksinghpathania.medium.com/meet-agno-a…
15. What is Agno? - Agno, 访问时间为 七月 15, 2025, docs.agno.com
16. Agentic Framework Deep Dive Series (Part 2): Agno | by Devi - Medium, 访问时间为 七月 15, 2025, medium.com/@devipriyak…
17. Agno Tutorial | Anyone can now build AI Agents with Python! - YouTube, 访问时间为 七月 15, 2025, www.youtube.com/watch?v=T3C…
18. Building Your First Agent With AGNO AGI ( Previously Phidata ) | For Complete Begineers, 访问时间为 七月 15, 2025, www.youtube.com/watch?v=s7K…