JSUT DO ONCE
recorder + SPE-mcp = Perfect SOP!
LLM + SOP = JUST DO ONCE!
不要重复你自己, 只做一遍, 剩下的交给AI
写代码, 尤其是业务代码, 增加API/添加新的组件/重复的SQL.
你并没有成长, 你将你的时间浪费在你早就的会的地方, 你只是重复自己第一天就熟悉的工作.
或者说: 你在浪费你的生命.
DRY & SOP
DRY
DRY指导了软件开发抽象的基本原则: 用一个抽象的概念或者不冗余的架构来减少代码的重复.
但是, 很尴尬的事情是, 有些事情的重复是无法避免的
- 增加配置项
- 增加多语言
- 增加一个API接口
- 增加一张表
- 增加一个对外部依赖的Service服务
但是一直在一线工作的你也许会有这样一种感觉: 工作内容确实比较类似, 但是非要抽出一个特别抽象的概念会使的代码的架构异常晦涩, 合作的同事几乎难以明白, 主管在Review时也会不断地挑战你
SOP
SOP(standard operating procedure)是一个非常有趣的概念: 总是用同样的办法做同一件事情
SOP就是最终的抽象, 不允许做任何流程上的修改, 员工必须严格遵循此标准.
这是严苛的, 甚至是反人类的做法每一次的步骤都要和之前的步骤一致.
但是: 这种严苛和反人类是非常适合LLM的.
-
给出了每一个操作步骤的 WHERE & WHAT & HOW
-
LLM天生的泛化能力, LLM不是笨蛋, 天生具有强大的泛化能力
- 一个几乎完美的新手: 总是一点就通, 总是能够给你惊喜
- 一个思维跳跃的混蛋: 总是想要改掉你的垃圾代码, 总是添加了不需要的功能
VibeCoding无法解决重复
Vibe Coding, 听起来多美好的一个词汇, 只要说一说, AI就帮你生成了应用.
但是, 但是这不是没有代价的
你必须用足量的甚至超量的context给LLM, 才能获取令人满意的回答
很多时候, VibeCoding就是在扮演一个令人不悦的产品经理: 你必须要一遍一遍的重复你的要求, 甚至是严厉的批评和反对. 最重要的是: 很多人在不断地重复的Vibe一个Demo, 却鲜少将其用在自己的生产业务中.
为什么? 因为你给出的指令不够清晰!
是的, 因为你的指令不够清晰, 甚至可以说是混乱而且自相矛盾的.
- 增加XX功能
- 不要添加XX功能
这是不是你和LLM对话时最常用的几句话?
扪心自问: 在软件工程中, 这些信息足够充分吗?
添加哪些功能? 这些功能重要吗? 关联哪些其他的功能? 对于代码架构的挑战是什么? 哪些功能是最重要的? 排期如何? 是否要新增接口? 对于存储的需求是怎样的? 以后是否会有一些关联的拓展功能?
这就是VibeCoding无法解决的重复, 也就是说:
- 你几乎无法无法提供这些完美上下文
- LLM会"漂移": 一些不重要的功能反而优先实现了, 重要的功能却草草了事
LLM + SOP
所以以上的所有问题有没有解决方案?
有的! LLM + SOP 能够解决!
或者说: 能够解决掉最让你厌烦的重复的部分.
DRY的意思也可以是: 人类只做一次, 然后让AI去重复!
SOP的意思是: 人类做的这一次就是需要遵循的规范和标准!
然后, 你会发现: 原本需要费劲心思组织的上下文变成了非常具体的规则的约束.
- 去什么目录? 搜索什么变量? 怎么修改?
- 执行什么命令? 有什么样的返回?
- 怎样增加代码? 怎样删除代码? 怎样修改代码?
然后问题就变成了: 应该怎么提供这些信息呢?
recorder + SPE-mcp = 人类操作信息 + SOP生成器 = 一份几乎完美的SOP!
原本SOP的问题是: 太过于死板.
但是AI生成SOP + AI执行SOP的作用是: 利用LLM的泛化和学习能力, 将一个死板的SOP在执行时泛化到其他的任务.
recorder
recorder的作用就是记录人类的操作步骤: operation log, 包括增删改查以及命令行执行
几乎是完全无感知的, 因为他不需要你做任何的输出.
SPEC-mcp
根据 operation log 推测操作的目的, 并且总结操作步骤生成一个十分具有可读性的 SOP文档
LLM执行SOP
那么问题来了, 怎么让LLM执行SOP?
很简单, 主流的AI IDE都支持: @
简单来说只要你通过 @ 将SOP的内容载入上下文中, 那么就完成了.
如果你有一些特别需要嘱咐的内容: 只需要在聊天框中说出来.
一切都是丝滑无比, 而且最重要的是: 在SOP的约束下, 你甚至不需要用太过于高性能的模型来编程, 用一些次旗舰同样能获得极好的效果.
另外最重要的是: 不仅仅是写代码, SOP文档本身就可以作为项目文档提供给其他同事.
现在, Enjoy yourself, 去解放你自己吧.