AWS Amarathon 2025 回顾

通过规格驱动开发,从 Vibe 走向可行方案

回顾系列

场次笔记

AI 正在改变软件

  • 2023:帮助开发者更快地编写代码
  • 2024:生成更大段的代码并回答问题
  • 2025:在 human in the loop 的情况下端到端完成开发任务……AI 开发面临的挑战
  • 扩展 AI 开发规模:AI 编码工具擅长处理小型任务,但面对复杂项目时可能会失败
  • 控制能力有限:现有工具让人与 agent 协作及管理 agent 变得困难
  • 代码质量:要让项目从概念验证走向生产环境,同时保持质量控制,会变得越来越困难……Vibe
  • 快速、对话式的代码生成(CHOP)
  • 反复往返迭代
  • 短暂
  • 单一时间点的 prompt
  • 临时 context

迈向规格驱动开发之路

良好实践

  • 拆解大型问题:开发者学会了如何手动将大型问题拆解为较小的单元,并采用增量方式进行构建
  • 具体且清晰:要引导 AI 编码助手生成良好的输出,精确与清晰至关重要
  • Context 与 Prompt Engineering:提供正确的 context 是确保一致性和可控性的关键

Taskmaster

  • 一款搭配 Clauide、用于 AI 驱动开发的任务管理系统,设计上可与 Cursor AI 无缝协作
  • [ 1 ] 文档:
  • 配置指南:设置环境变量并自定义 Task Master
  • 教程:Task Master 入门分步指南
  • 命令参考:所有可用命令的完整列表
  • 任务结构:了解任务格式和功能
  • 交互示例:常见的 Cursor AI 交互示例
  • 迁移指南:迁移到新项目结构的指南
  • [ 2 ] Cursor 1.0+ 快速安装(一键安装):
  • 单击复制按钮(代码块右上角),然后粘贴到浏览器中:cursor://anysphere.cursor-deeplink/mc/install?name=taskmaster-aiconfig-eyJjIjI1biWSkI 1joibnB4I
  • 注意:单击链接后,仍需将 API key 添加到配置中。该链接会使用 placeholder key 安装 MCP server,你需要将其替换为实际的 API key
  • [ 3 ] 要求:
  • Taskmaster 的多条命令会使用 AI,而这些命令需要单独的 API key。只要添加 API key,就可以使用不同 AI 提供商的各种模型。例如,如果要使用 Clauide 3.7……从容编码理念
  • 编码不要有压力,而要有章法。
  • 编写 prompt 不要有噪声,而要有意图。
  • 构建不仅要快,更要流畅。Chat 对开发工具而言是一种糟糕的 UI 模式
  • 代码迫使人类精确表达。这是好事——计算机需要精确性。但它也迫使人类像机器一样思考。
  • 数十年来,我们一直试图通过让编程对人类更友好来解决这个问题。更高级的语言、可视化界面。每一步都有所帮助,但我们仍在把人类的想法翻译成计算机指令。
  • AI 本应改变一切。终于,纯英语可以成为一种编程语言——一种每个人都已经掌握的语言。没有语法,没有规则,只需说出你想要什么。
  • 第一波 AI 编码工具浪费了这个机会。它们能做出炫目的演示,却会生成垃圾软件。人们称它们“非常适合制作原型”,意思就是“不要将其用于任何实际用途”。
  • 许多人将问题归咎于 AI 模型,认为只要让模型变得更聪明就行。这是错误的。没错,更好的 AI 能更准确地猜测你的意思。但在构建严肃的软件时,你需要一种更好的方法。

书面规格让人们达成共识

使用 EARS notation 有助于为底层的……提供精确且结构化的指令

LLMs

什么是规格驱动开发?

  • 规格驱动开发:先明确再编码、迭代优化、通过持久文档生成代码
  • 投入时间了解自己要构建什么
  • 反复迭代并记录所构建内容的演变
  • 从短暂的 chat 转向可与利益相关者共享的持久文档……规格驱动开发
  • 定义愿景:创建清晰的需求和设计规格。
  • 做出架构决策:预先选择技术、模式和方法。
  • 带着 context 实现:使用 AI 生成满足书面规格的代码……Vibe
  • 通过 prompt 追赶实现结果
  • 快速、对话式的 AI 代码生成(CHOP)
  • 反复往返迭代
  • 短暂
  • 单一时间点……规格驱动
  • 专注于前期规划和意图
  • 将请求拆解为独立任务
  • Steering document 为 agentic……提供基础……从原型到生产环境的 AI IDE
  • Kiro 通过规格驱动开发为 AI 编码带来结构,帮助你发挥出最佳水平。