2026 年 9 月 24 日至 10 月 22 日,亚马逊云科技联合 InfoQ 与 CSDN 发起了「Kiro 鬼点子计划」,面向极客、企业开发者和脑洞爱好者征集"看似荒诞、实则惊艳"的创意项目。 活动设置了三条赛道——“无用之用”“无趣之趣”“无心之心”,不设商业价值门槛,只拼脑洞与温度。线上赛冠军可获得价值 2400 美元的 Kiro 订阅权益,所有参赛者均可获得电子证书与限定周边。
这场活动表面上是一场创意竞赛,但从工程视角看,它实际上是 Kiro 能力的一次公开压力测试。正如 InfoQ 所评论的:标准 CRUD 场景无法区分 AI 编程工具的优劣,真正有区分度的是那些没有先验分布的开放需求。
二、Kiro 技术架构解析
Kiro 是亚马逊云科技打造的 AI 智能体开发平台,核心理念是"规范驱动开发"(Spec-Driven Development)。 与传统 AI 编程工具"你给指令→AI 写代码→你 review"的线性流程不同,Kiro 引入了三层结构化的开发契约:
- Requirements(需求层):将自然语言描述拆解为具体的功能点,每个功能点附带 EARS 语法书写的验收标准。
- Design(设计层):生成技术方案,包括架构设计、数据模型、API 接口定义。
- Tasks(任务层):将设计拆解为可并行执行的离散任务清单,每项任务回指需求编号,形成完整的追溯链。
这种"先规划后编码"的流程,解决的是 AI 编程中日益突出的"正确性"问题——当需求模糊时,AI 生成的代码即使能运行,也未必符合真实意图。
Kiro 提供四种产品形态:IDE、CLI、Web 和 Kiro Crew。 其中 Kiro Web 于 2026 年 5 月发布,将完整的 AI Chat、Spec-Driven 开发和 Agent 能力搬到了浏览器端,无需安装任何客户端即可使用。 底层通信采用 ACP(Agent Client Protocol)标准协议,本地端走标准输入输出,Web 端则通过 WebSocket 扩展传输。
三、实战代码:Kiro CLI + Python 自动化集成
以下示例展示如何用 Python 脚本通过 Kiro CLI 的 ACP 协议构建一个轻量级 Agent 客户端,实现"鬼点子"创意的自动化提交与监控。
importjsonimportsubprocessimportsysimporttimefrompathlibimportPathclassKiroAgentClient:"""通过 ACP 协议与 Kiro CLI 通信的轻量客户端"""def__init__(self):self.process=subprocess.Popen(["kiro","agent"],stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE,text=True,bufsize=1)self.request_id=0def_send(self,method:str,params:dict=None)->dict:"""发送 JSON-RPC 请求"""self.request_id+=1payload={"jsonrpc":"2.0","id":self.request_id,"method":method,"params":paramsor{}}self.process.stdin.write(json.dumps(payload)+"\n")self.process.stdin.flush()response=json.loads(self.process.stdout.readline())returnresponsedefinitialize(self)->dict:"""初始化 ACP 会话"""returnself._send("initialize",{"protocolVersion":"1.0","clientInfo":{"name":"GhostIdeaBot","version":"0.1.0"}})defcreate_session(self)->str:"""创建新会话,返回 session_id"""resp=self._send("session/create")returnresp["result"]["sessionId"]defsubmit_prompt(self,session_id:str,prompt:str)->str:"""提交提示词,流式接收结果"""resp=self._send("session/prompt",{"sessionId":session_id,"prompt":prompt,"mode":"spec"# 使用 Spec 驱动模式})returnresp["result"].get("output","")defgenerate_ghost_idea_spec(self,idea:str)->str:"""将鬼点子转化为 Spec 文档"""spec_prompt=f""" 将以下创意点子转化为 Kiro Spec 格式: 创意描述:{idea}请生成: 1. requirements.md - 用户故事 + EARS 验收标准 2. design.md - 技术架构与数据模型 3. tasks.md - 可执行任务清单 要求: - 技术栈使用 Python 3.12 + FastAPI - 包含单元测试骨架 - 明确边界情况和错误处理 """returnself.submit_prompt("default",spec_prompt)defclose(self):self.process.terminate()defmain():client=KiroAgentClient()try:# 初始化init_result=client.initialize()print(f" Kiro ACP 初始化成功:{init_result}")# 提交鬼点子创意ghost_idea="做一个把每日 bug 日志自动写成十四行诗的 Agent,\ 每天早晨8点扫描项目日志,将错误信息转化为押韵的诗歌,\ 并通过邮件发送给开发团队。"print(f"\n 正在为创意生成 Spec...\n创意:{ghost_idea}\n")spec_output=client.generate_ghost_idea_spec(ghost_idea)print(spec_output)# 保存 Spec 到本地spec_dir=Path(".kiro/specs/bug-poet")spec_dir.mkdir(parents=True,exist_ok=True)(spec_dir/"requirements.md").write_text(spec_output)print(f"\n Spec 已保存至{spec_dir}")finally:client.close()if__name__=="__main__":main()代码解析
ACP 协议封装:
KiroAgentClient类通过subprocess启动kiro agent子进程,使用标准输入输出进行 JSON-RPC 2.0 通信。这与 KiroNotebook 的参考实现一致,完整流程不到百行代码。Spec 驱动工作流:
generate_ghost_idea_spec方法将自然语言创意转化为结构化 Spec,明确要求输出 requirements.md、design.md 和 tasks.md 三个文件,符合 Kiro 的规格文件规范。模式选择:
mode="spec"参数启用 Spec 驱动模式,Kiro 会先进行需求分析和设计,再执行代码生成,而非直接"氛围编程"。本地持久化:生成的 Spec 保存到
.kiro/specs/目录下,可纳入版本控制,实现需求与代码的双向追溯。
四、技术亮点总结
| 亮点 | 说明 |
|---|---|
| Spec 驱动开发 | 将模糊创意转化为结构化契约,降低 AI 生成偏差,提升代码可维护性 |
| ACP 开放协议 | 基于 JSON-RPC 2.0 的标准协议,第三方工具可无缝接入 Kiro 的 Agent 能力 |
| 多形态覆盖 | IDE/CLI/Web/Crew 四种入口,覆盖桌面开发、终端操作、浏览器即用和长期后台任务 |
| 事件驱动自动化 | Powers/Hooks 机制在文件保存、提交等事件触发时自动执行 lint、测试、文档更新 |
| 多模型支持 | 支持 Auto 自动调度,可切换 GPT、Claude、DeepSeek、Qwen 等模型 |
| 安全沙箱 | Agent 在独立沙箱中执行,命令执行前需用户确认,避免危险操作 |
五、个人思考
「鬼点子计划」的深层价值在于它提出了一个关键问题:当 AI 编程能力越来越强,我们如何确保生成的代码"做对了事",而不仅仅是"把事做对"?Kiro 的答案是回归软件工程的基本功——先写清楚需求,再动手编码。这与传统软件工程中"设计先行"的理念一脉相承,只是在 AI 时代被重新赋予了自动化执行的能力。
对于参赛者而言,不妨从"无心之心"赛道入手——用技术解决真实但被忽视的问题,比如为视障人士开发的语音导航 Agent,或是帮助独居老人进行日常安全检测的智能闹钟。这类项目既有温度,又能充分展示 Kiro 在复杂场景下的规划与执行能力。
活动线上赛提交截止时间为 2026 年 10 月 22 日,10 月 27 日公布结果。 如果你有一个藏在备忘录里很久的"有空就做"的点子,现在或许就是让它跑起来的最佳时机。