在微醺的时刻与 Kiro 调制 “Soul Cocktail”
Source: Dev.to

我想在本文中探讨的三件事
这不是一篇“如何编码”的教程。我借助一个小小的黑客项目,分享一些动手实践以及在 AI 时代使用新工具 Kiro 构建产品的思考。
故事的主角是 Soul Cocktail。
在此尝试:
随意点击浏览。如果你有想法或反馈,我真的很想听到。


它起源于一次非常真实的情境。在一次 re:Invent 活动上,调酒师问我:
“你想喝点什么?”
…我愣住了,答不上来。
随后,我们把这个情景完整复现,用 Kiro 在一个晚上做了一个小型的 “按情绪点鸡尾酒” 应用。第二天我继续打磨,并把它发布成可分享的网页。
围绕这个小项目,我想讨论三件事:
- 背景与构建过程 – 在“有点微醺 + 时间紧迫 + 仅限 Kiro”的限制下,Soul Cocktail 是如何诞生的?
- 事后反思 – 为什么这样一个“并不复杂”的应用能够赢得现场投票?这对我在 AI 时代构建产品和开发的思路产生了怎样的影响?
- Kiro 的能力及我的使用方式 – 这次我到底是如何把 Kiro 接入本地项目的?除了“氛围编码”,还有哪些能力值得深入挖掘?
1. 小项目的背景与构建过程
1) 背景:被调酒师卡住的那一刻
在 re:Invent 活动上,调酒师问:
“你想喝点什么?”
我脑子一片空白。菜单上的每款鸡尾酒看起来都很诱人,但我只能说:
“我今天想喝点什么,但我不知道那杯饮料叫什么。”
这是一种常见的情形:你有情绪和偏好,但菜单并不是按 情绪 来组织的。你被迫在一长串选项中挑选,而此时你真的需要一个能快速理解你的帮助。
活动规则也很特殊:
- 每个人先拿一杯饮料放松。
- 在有限的时间内,使用 Kiro 进行氛围编码,从零开始构建一个演示。
- 最后,大家投票选出自己最喜欢的项目。
我们是现场唯一的全女性团队。我们没有去挤出一个“超级高级”的技术话题,而是保持简洁,贴合主题和当下情境:
那种点饮料时卡住的感觉不应该只是我的问题——那为什么不做一个小工具来专门解决它呢?
2) 按情绪点单:Soul Cocktail 的核心体验
Soul Cocktail 的目标变得一目了然:
当你想点鸡尾酒却说不出名字时,让一个小应用根据你的情绪帮你点单。
在 Kiro 中,我大致这样描述了体验:
- 一个带有“午夜酒吧”氛围的暗色 UI。
- 屏幕上漂浮的情绪气泡,用户可以选择最多三个。
- 点击 Generate 后,出现简短的 “正在调配你的灵魂鸡尾酒…” 提示。
- 最终呈现 Soul Cocktail 卡片,包含:
- 稍带诗意的鸡尾酒名称(例如 Silver Pulse)。
- 将所选情绪映射为“配料比例”。
- 简短说明这杯饮料为何适合今天的你。
- 一句小小的 Daily Spark 祝福。
我没有先创建一个新项目并手动编写所有样板代码,而是走了一条符合 Kiro 强项的路径:
# 1️⃣ 创建空文件夹
mkdir soul-cocktail && cd soul-cocktail
# 2️⃣ 在 Kiro 中打开它——它会为我初始化前端项目
随后我进入了 氛围编码:
| 谁负责什么? | 责任范围 |
|---|---|
| 我 | 整体体验、页面结构、情绪选择规则、结果卡片内容、氛围与文案语调 |
| Kiro | 组件结构、状态管理、样式、简单动画、基于我的反馈持续重构 |
在第一晚,我紧紧坚持一条规则:
先让核心流程跑通: 选择情绪 → 调配 → 获得结果。
3) 现场演示:不是我在讲解——大家一起玩
演示时,我没有站在台上逐步讲解实现细节,而是做了更简单的事:
- 邀请现场观众走到屏幕前,挑选自己的情绪气泡,点击 Generate,观看“今天的你”被调配成一杯 Soul Cocktail。
- 然后他们会看到自己的 Daily Spark 句子。
因为最终结果会影响观众投票,很多人在投票前已经亲身体验了“按情绪点单”。演示不再是抽象的,而是一次带有他们个人输入和输出的微型体验。
最终——在一堆技术含量更“重”的项目中——Soul Cocktail 当晚夺得第一名。
2. 事后反思
这个小项目让我重新思考在 AI 时代的构建方式
回到酒店——甚至回到家后——我一直在反复思考一个问题:
为什么这个“并不复杂”的小应用在那种场景下会获胜?
1️⃣ 人先于技术
两个关键原因:
-
它源自真实的用户时刻。
我们并不是为了炫技而发明情景,而是很多人当下真的会遇到的情境。我们不是在“教你调鸡尾酒”——我们在解决一个非常具体的问题:“我现在的心情是什么?” → “那今天,我喝这种饮品。”
-
体验简单且低摩擦。
你立刻就能明白怎么玩。点几下就得到结果,而这个结果与环境完美契合——人们真的已经在喝酒了。
换句话说,我不是从技术出发,而是从当时作为顾客的感受出发,然后使用 Kiro 将其转化为真实的东西。
2️⃣ 先构建,再打磨
时间有限,没人会给你整整一天去完整设计架构。我的选择是:
- 先得到端到端的体验。
- 让“心情 → 鸡尾酒”路径可用。
- 把细节和优化留到以后。
第二天我使用 Kiro:
- 整理代码和组件结构,使其不再只是演示,而是可维护的项目。
- 微调 UI 与交互节奏——背景色、过渡、按钮反馈。
- 让 Kiro 带我走“最简的交付路径”,把本地演示变成可分享的网页。
先把它做出来。 让真实用户去尝试。然后继续迭代。
3️⃣ 在 AI 时代,真正需要改变的是什么?
Soul Cocktail 给我的最大收获是:
有了像 Kiro 这样的 AI IDE,我们可以彻底重新分配人类与工具之间的工作。
| Kiro 能处理 | 人类可以专注 |
|---|---|
| • 代码生成 | • 捕捉真实生活瞬间 |
| • 重构 | • 用简洁、直接的产品形态响应 |
| • 样式细节 | • 感受用户反应、做决策、权衡取舍 |
| • 构建配置与部署指引 | • 理解人、情境、讲故事 |
很多 AI 讨论停留在“效率”层面——一个人可以写更多代码、完成更多工作。对我而言,更重要的是工具让我们:
- 更快把想法变成可运行的东西。
- 防止“有想法的人”被低层细节卡住。
……而且它们迫使我们去思考:
当大量细节工作被自动化时,人类价值应更强地体现在哪里?
对我来说,答案可能是:
- 理解人。
- 理解情境。
- 做决策。
- 讲故事。
4️⃣ Kiro 的能力以及我这次的使用方式
4.1 我实际用了哪些功能
本地项目感知
从一个空文件夹开始,我让 Kiro 初始化项目、生成组件并管理状态——而不是做一个“单文件云玩具”。这让后期的重构和部署更加自然。
氛围编码:对话式编码 + 迭代编辑
我几乎没有采用传统的“从空编辑器硬编码”。相反,我不断对 Kiro 说:
“我想要这个结构、这个流程、这种感觉。”
它写代码、我评估、我挑选。
为了更顺畅,我在项目里添加了本地 .kiro 目录,并在 Kiro 中打开它,这样它始终拥有项目上下文和规则。
部署指引
当我问:“本地能跑——最简的发布方式是什么?” Kiro 给出了清晰路径:
- 推送到仓库。
- 选择托管平台。
- 设置构建/输出。
- 部署。
它还帮我处理了构建命令、输出目录名等烦人细节。
与 Kiro 进一步交流后,我发现了针对这套特定配置的更快方式:
只需将项目文件夹(t
the one containing index.html) into the drop area at the bottom of the Netlify Projects page, and Netlify will automatically deploy it as a website.**
4.2 我接下来想要探索的内容

Kiro 是由 AWS 发布的 Agentic IDE,支持 spec‑driven development(规范驱动开发)。
规范驱动开发 的含义是:
- 先编写规范 – 定义问题、输入/输出、步骤、边缘情况。
- 让代理根据规范拆解任务并严格实现,而不是在每一步都依赖临时提示和人工记忆。
Kiro 提供了两个核心能力:Spec 和 Hook。
-
Spec – 类文档的格式,用于描述目的、I/O、正常流程以及约束。后续工作可以直接引用它,而无需重新解释所有细节:
“遵循此规范。”
-
Hook – 在特定事件触发时自动执行操作的规则(例如,保存时运行测试)。示例:
# .kiro/hooks.yml
on_save:
- run: npm test
on_commit:
- run: npm run lint
Hooks 能自动化重复性操作,强制执行约定,使开发流程更加顺畅。
TL;DR
- Start with a real user moment. → 从真实的用户情境开始。
- Build a minimal, frictionless experience first. → 首先构建最小化、无摩擦的体验。
- Use an AI IDE (Kiro) to generate, refactor, style, and ship fast. → 使用 AI IDE(Kiro)快速生成、重构、样式化并交付。
- Let humans focus on empathy, decisions, and storytelling. → 让人类专注于同理心、决策和叙事。
保存文件时的特定检查
- 当特定目录中的代码更改时,自动生成相应的测试。
- 在提交前验证是否符合规范。
这些升级将工作流的一部分从 “人们必须记得去做” 转变为 “IDE 自动完成”。
Soul Cocktail 体验
对于 Soul Cocktail,我主要使用 vibe coding 加上本地项目工作流。Spec 和 Hook 只稍作涉及。
但在日常工作和个人项目中,我希望有意识地将重复的工作流、产品规则和团队约定转化为 Specs——随后与 Hooks 结合——使这些经验成为 Kiro 中可复用、可共享的 “spec assets”,而不是仅存于我的脑中。
结语:从一杯酒开始,迈向更多的“小问题,小项目”
在回归日常生活后,Soul Cocktail 给我带来了一个非常直接的改变:
我开始更多地关注生活中那些小小的“卡住”时刻——
- 旅行时预订餐厅,
- 记下后来找不到的笔记,
- 不知道该先把什么放在优先级最高的位置——
我用类似的方式为自己构建了一些小项目,使用 Kiro 和其他 AI 工具快速交付它们。
它们都很小。有些工具可能只有我自己会使用。但它们不断提醒我:
AI 不仅仅意味着“更快的代码”。 它也是一个机会,让我不断自问:
我还能为自己的生活——以及他人的生活——构建多少个恰到好处的小东西?
Soul Cocktail 只是一杯酒。
接下来,我希望继续使用 Kiro 和其他 AI 工具,把更多 “小问题,小项目” 变成真实、可用的东西——并将这些实践分享给更多人。