说一个真事。
上个月我接了个内部工具的需求。不复杂,一个电商后台的库存管理模块。我用 AI 编程助手的 chat 模式写,prompt 一条一条发,代码一段一段出。
两周后回头看代码库------重复逻辑不少、变量命名不统一、同一个功能好几种实现方式。代码能跑,但维护起来头疼。
不是 AI 的问题。是我的问题------或者说,是「想到哪写到哪」这种开发方式的问题。
后来有人推荐了 Kiro。
Kiro 凭什么不一样
Kiro 是亚马逊云科技做的 AI IDE。第一眼看跟 VS Code 长得一样(事实上就是基于 VS Code 的)。但用起来完全不是一个思路。
核心区别在一个东西:Spec。
传统 chat 模式下,你跟 AI 的交互是:
scss
你:帮我写一个用户注册接口
AI:好的,这是代码... (200行)
你:不对,要加邮箱验证
AI:好的,改了... (又200行)
你:密码加密呢?
AI:补上了... (再200行)
在 Kiro 里,你跟 AI 的交互是:
arduino
你写一个 spec:
"用户注册接口。需要邮箱验证、密码 bcrypt 加密、
返回 JWT token、失败重试3次、写入 DynamoDB。"
Kiro 自动拆解成:
→ Requirements(需求清单 + 验收标准)
→ Design(API 设计 + 数据结构 + 错误处理)
→ Tasks(5 个实现步骤,按顺序执行)
你 review 完,点一下,逐步实现。
区别在哪?
chat 模式:你想一点,AI 做一点,你再想一点,AI 再改一点。最终代码是「补丁套补丁」。
Kiro spec 模式:你先想完整,AI 做完整。最终代码有清晰的设计意图。
三个月后回头看代码,chat 项目你得靠 git blame + 聊天记录才能理解当初为什么这么写。Kiro 项目直接看 spec 就行。
实测:写一个 OpenClaw 天气 Skill
说这么多不如上代码。我用 Kiro 给 OpenClaw(开源 AI 助手框架,最近掘金上很火的那个)写一个天气查询 Skill。
Spec 是这么写的
markdown
## Weather Skill for OpenClaw
给 OpenClaw 写天气查询功能。
- 支持中文城市名(北京/上海)和英文(Tokyo/Paris)
- 数据源 Open-Meteo,不需要 API Key
- 返回温度、湿度、体感温度、风速
- 用 Bash + curl + jq 实现
30 秒写完。Kiro 花了大概 5 秒钟,生成了:
Requirements(7 条):每条都有明确的验收标准。比如「输入'北京' → 返回坐标 (39.9, 116.4) ± 0.1°」。
Design:画出了 geocoding → fetch → format 的数据流,定义了每个函数的输入输出。
Tasks(5 个):按依赖关系排好序。
看看生成的代码
geocoding 函数(它考虑了 URL 编码和错误处理):
bash
get_coordinates() {
local city="$1"
local encoded
encoded=$(python3 -c "import urllib.parse; print(urllib.parse.quote('$city'))")
local resp
resp=$(curl -s "https://geocoding-api.open-meteo.com/v1/search?name=${encoded}&count=1&language=zh")
local lat lon
lat=$(echo "$resp" | jq -r '.results[0].latitude // empty')
lon=$(echo "$resp" | jq -r '.results[0].longitude // empty')
[[ -z "$lat" ]] && { echo "找不到: $city"; return 1; }
echo "${lat}|${lon}"
}
整个 Skill 15 分钟搞定。中间没有一次返工。
Hooks:比 Spec 更实用的功能
Spec 是 Kiro 的招牌,但我个人觉得 Hooks 才是日常最香的功能。
Hooks 就是「事件 → 自动动作」。举几个例子:
| 事件 | 自动动作 |
|---|---|
保存 .ts 文件 |
自动跑 TypeScript 类型检查 |
| 修改 DB schema | 自动更新 TypeScript 类型定义 |
| 修改 API 路由 | 自动更新 API 文档 |
| git commit | 自动生成单元测试 |
这些事以前要么手动做,要么写 CI 跑。现在 Kiro 在你保存文件的时候就自动干了。
跟传统 git hooks 的区别是:Kiro 的 hooks 跑的是 AI agent,所以它能理解代码语义,不是简单的文本替换。
Powers:AI 的「能力插件」
类似扩展市场,但不是给 IDE 加功能,是给 AI 加能力。
装了一个 Power,AI 就知道怎么用对应的服务。目前有几个值得关注的:
- Figma Design to Code:Figma 设计稿直接转前端代码
- IAM Policy Autopilot:分析你的代码,自动生成最小权限 IAM 策略(这个真省事)
- Strands Agent SDK:用亚马逊云科技的 Strands 框架构建 AI Agent
- Terraform:基础设施即代码,AI 帮你写 HCL
- CDK + CloudFormation:AI 帮你写 CDK 和 CloudFormation 模板
特别提一下 IAM Policy Autopilot------以前手写 IAM 策略是真的痛苦,文档几百页,action 几千个。现在这个 Power 分析你的代码调用了哪些云服务,自动生成对应的策略,最小权限原则,写完就能用。
价格
| 套餐 | 月费 | Credits |
|---|---|---|
| Free | $0 | 50 |
| Pro | $20 | 1,000 |
| Pro+ | $40 | 2,000 |
| Power | $200 | 10,000 |
新注册送 500 bonus credits(30 天有效)。
Free 够体验,日常开发建议 Pro。超出 credits 按 $0.04/credit 计费。
适合什么场景
- 正经项目、团队协作、需要长期维护 → Kiro 的 spec 模式
- 需要跟亚马逊云科技服务深度集成 → Kiro(Powers 全家桶)
- 快速原型、探索性开发 → chat 模式就够了
Kiro CLI 在终端里也能用,SSH 到服务器上也能跑:
bash
curl -fsSL https://cli.kiro.dev/install | bash
几个坑
- 国内网络。Kiro 服务器在海外,可能需要代理。WSL + 代理是一个解法
- Spec 需要适应。如果你习惯了 chat 式开发,第一次用 spec 模式会觉得「太重了」。但坚持两三天就会真香
- Autonomous Agent 还在 Preview。自主代理功能没有完全开放,需要 Pro 以上套餐
- Powers 还不够多。但质量不错,都是大厂官方出的
🔗 Kiro 官网:aws.amazon.com/cn/campaign... 🔗 下载 IDE:aws.amazon.com/cn/campaign... 🔗 CLI 安装:
curl -fsSL https://cli.kiro.dev/install | bash🔗 Powers 市场:aws.amazon.com/cn/campaign...