《我的 AI 原生开发流程:一个真实案例的完整复盘》用 BaoCut 的远程转录功能说明了一个看似矛盾的变化:AI 原生开发没有抛弃传统的软件流程,变化的是执行者。人从逐行写代码转向在关键节点做判断,Agent 则承担分析、设计、编码、调试和初步验证。

先判断值不值得做
需求来自一个 GitHub Issue:用户有两台电脑,希望在日常办公的电脑 B 上使用 BaoCut,把耗算力的转录任务交给性能更强的电脑 A。场景有价值,也符合产品定位,但这还不等于应该马上编码。
可行性分析要回答产品价值和技术成本。此前,一个用本地文本模型辅助拆分、对齐字幕的功能,技术上看似可行,完成后体验却很差,最终被砍掉,耗费了几天和大量 token。分析不能消灭误判,却能提高整项投入的期望值。
这次 Agent 结合代码库列出多个方案:方案 0 和 C 不必改代码,但要求用户自行搭建 ASR(Automatic Speech Recognition,自动语音识别)服务器;方案 B 对 Windows 不够友好;方案 A 能让安装 App 的用户直接启动转录服务。最终由人选择方案 A,并吸收方案 0 的 HTTP 转录 API。Agent 扩大备选空间,人依据产品判断和技术直觉拍板。
文档把不同 Session 接起来
方向确定后,下一项交付物是混合了产品与技术设计的文档,先写清需求、架构和接口,再进入编码。文档一头连接人,提供可审查和修改的载体;另一头连接不同的 Agent Session,把上一阶段的决策传给下一阶段。开发 Session 不必重听来龙去脉,只需读取确认后的设计文档。

理想情况下,可行性结论、设计方案、原型、代码和测试都应成为可版本管理的交付物。它们既是上下文,也是审计记录:需求从哪里来,Agent 产出了什么,人批准了什么。代价是文档必须与实现同步,否则过期文档会变成错误上下文。
高精度原型合并三次交接
传统流程把需求、交互原型和 UI 视觉拆给不同角色,每次交接都会损失信息。Agent 加 Design Skill(设计技能)可以把三者合成高精度原型,让人先在低成本阶段确认交互和视觉。
BaoCut 的首版原型把远程转录放进设置页面。随后几轮修改将列表改成 Tab,把“开启服务”和“访问其他节点”两个场景分开,增加服务状态图标,最后又因查看频繁而把入口移到主界面。每次修改只需描述预期变化,人的注意力便能留给布局是否清楚、交互是否自然。原型阶段改布局可能只需一句话;实现后再改,还会牵动逻辑、样式、状态管理和测试。
编码让位于自验证
设计文档和原型确认后,Agent 按里程碑安排顺序、编写代码、运行测试并截图检查界面。关键在于给 Agent 反馈循环,不要求一次写对:测试失败就调试,界面变化就截图确认,交给人之前先消化一轮错误。
当编码能在数小时内完成,瓶颈便移到代码两侧:左边是设计和确认,右边是测试、验证和部署。以前围绕数周开发周期设置的 PRD、估时和评审节奏也需要重新衡量,但确认本身不能删除。

人的最终验证要切换到普通用户视角,不按开发者预设的正确路径操作,而是凭直觉乱点、输入意外内容、观察提示和错误引导。这个案例没有逐行 Code Review(代码审查),而是用 Agent 自验证加人工黑盒测试完成两层确认。它不是通用豁免:金融系统核心逻辑等高风险代码仍需要审查,验证强度应由项目风险决定。
流程没变,角色和资产变了
完整路径仍是“可行性分析 → 设计文档 → 原型设计 → 编码实现 → 测试验证”。三个变化真正定义了 AI 原生开发:执行主体从人转向 Agent;多个确认环节可以合并提速,但不能省略;文档从附属品变成跨 Session 传递上下文的基础设施。

这也解释了为什么不必堆叠大量编码 Skills。模型已经能理解“分析可行性”“按方案写设计”“按原型实现”这类简单指令,更值得增强的是代码两侧:一类 Skill 加速原型和设计确认,另一类自动处理部署、发布、按里程碑推进等体力工作。
最终产出也随之改变。人的主要贡献不再是代码行数,而是连续做出几个不可替代的决定:要不要做,选哪条路,交互是否自然,结果是否真的可用。Agent 提高的是执行杠杆,判断力仍决定杠杆朝哪里发力。