从单文件到完整的 Chrome 扩展(使用 Kiro)

发布: (2025年12月2日 GMT+8 09:09)
6 min read
原文: Dev.to

Source: Dev.to

引言

最近出现了越来越多种类的编码代理,它们变得更加集成和全面。我有幸在业余时间以及工作中进行实现任务时尝试了几款,将这些代理整合进开发工作流。

我记得曾尝试过 CrewAI——一个多代理 AI 系统,并自己动手拼凑了一个编码代理。它还能接受,但并不是 CrewAI 的本意。随后 Codex 出现,以更少的错误和更好的上下文感知完成了相同的任务。这个学习过程很有价值,因为它会读取你的代码库并用正确的上下文进行准备。

后来我在 Devpost 上看到一个关于最新编码代理的黑客马拉松:Kiro

Kiro 是什么?

简而言之,Kiro 是一个 AI 驱动的集成开发环境。与 Codex 不同,它提供完整的编码环境和面向特定目的的功能,包括:

  • Agent hooks – 在你设定的触发器后自动运行的自动化(例如:相关文件变更时更新测试文件)。
  • Steering docs – 生成的文档,使 Kiro 和你对项目结构有更好的理解,尤其对遗留代码库非常有用。

你不必自己去阅读文档,只需向 Kiro 询问代码库即可。得益于 steering docs,它能够更准确地回答问题,例如“实时消息是如何处理的?”或“socket 监听器放在哪里?”。

规范驱动开发

Kiro 的一个关键区别点是 规范驱动开发(Spec‑Driven Development)。大多数编码代理遵循简单的“提示 → 代码”工作流,而 Kiro 还提供了更为完整的替代方案。

在规范模式下,Kiro 会:

  1. 思考你的请求并创建一个 spec 文件夹。
  2. 生成相关的规范文档供审阅,代码尚未编写。
  3. 列出将在自动执行的详细测试。
  4. 当你对规范满意后,便可从 tasks.md 开始任务。
  5. 修复测试过程中发现的任何错误。

Choosing spec mode

Spec documents

我构建的东西

我一直难以集中注意力,注意力持续时间短,且不断被社交媒体打断。看完一段关于多巴胺排毒的视频后,我意识到我的大脑已经习惯了频繁的高多巴胺奖励(例如 Reddit 浏览、短视频),这削弱了我对持续、低强度工作的享受。

解决方案提出了一个严格的 工作 → 奖励 系统并加入了游戏化元素。这激发了我项目的核心想法。

将生产力与乐趣结合的 Chrome 扩展

我创建了 “Soulful Sessions”,一个万圣节主题的 Chrome 扩展,将工作后奖励的原则与游戏化相结合。

核心概念:收集灵魂

你将扮演 Soul Shepherd(灵魂牧者),一个慈善的死神形象,收集灵魂并引导它们前往更好的地方。你的属性包括:

  • Spirit – 攻击力
  • Soulflow – 被动资源产生速率
  • Harmony – 暴击几率等价属性

游戏模式有两种:

  1. Idle – 根据你的属性被动生成 “Soul Embers”(主要货币)。
  2. Bosses – 对抗 “Stubborn Souls”(顽固灵魂)——阻止前进的 boss。每个 boss 都有独特的名称、背景故事和 Soul Resolve(HP)。

专注会话

你通过完成 Focus Sessions(专注会话)来击败顽固灵魂:

  • 会话期间,访问受限站点(例如 facebook.com)会触发警告并在访问时降低奖励。
  • 被阻止的站点(例如 youtube.com)会重定向到特殊页面,彻底防止分心。

会话结束后,你会根据表现获得奖励:

  • Soul Embers – 用于升级和装饰。
  • Soul Insight – 用于升级的经验值(XP)。

休息模式(奖励阶段)

在休息模式中,你可以:

  • 消耗 Soul Embers 来升级技能(费用呈指数增长)。
  • 购买装饰品,如 Themes(主题)和 Sprites(精灵),即灵魂牧者的可解锁皮肤。
  • 分配通过升级获得的技能点。

这就是整个扩展的核心,全部使用 Kiro 的规范驱动工作流构建完成。

Back to Blog

相关文章

阅读更多 »

切换账户

@blink_c5eb0afe3975https://dev.to/blink_c5eb0afe3975 正如大家所知,我正重新开始记录我的进展,我认为最好在一个不同的…

Strands 代理 + Agent Core AWS

入门指南:Amazon Bedrock AgentCore 目录 - 前置要求(requisitos‑previos) - 工具包安装(instalación‑del‑toolkit) - 创建…