Spec Coding、Vibe Coding、Skill、Codex——AI 编程这一年的几套玩法与工具。
一、工作流范式
Ai 工作流
AI 工作流把提示、工具、检索和人工审核串成可重复的步骤,而不是一次聊天碰运气。典型节点包括意图识别、知识检索、模型生成、校验器和回写系统。每步有明确输入输出,失败可重试或转人工。低代码编排适合业务人员改流程,代码编排适合要版本控制和测试的团队。
设计时先写验收标准:什么叫完成、哪些工具能调、最大花费多少。状态要持久化,长任务不能只靠会话内存。日志记录每步观察,方便复盘幻觉。和工作流引擎一样,要有超时、死信和幂等。评估用真实任务集回归,而不是演示对话。流程稳定后再谈换模型。AI 工作流的核心是约束,不是把更多模型堆进画布。
Ai编程工作流
AI 编程工作流把需求、上下文、生成、测试和审阅串起来。先给仓库地图和约束,再让模型改小范围 diff,跑测试,失败就带着日志重试。人工负责设计决策和合并。技能文件、编码规范和 CI 是给模型看的说明书。没有测试门禁的自动改代码,只是加快制造缺陷。
上下文要准:相关文件、接口和复现步骤,而不是整仓塞进窗口。一次任务一个目标,避免又重构又加功能。密钥和生产数据不要进提示。评估用真实工单回归。工作流稳定后,再把重复步骤写成钩子。AI 编程的产出是可审查的提交,不是聊天记录。把“能跑”定义成测试绿,协作才不会停在感觉良好。
Spec Coding
Spec Coding 强调先写可验证的规格:接口契约、验收标准、边界与错误码,再让人或模型按规格实现。规格可以是 OpenAPI、类型、测试用例或结构化 markdown。目标是减少“看起来能跑但需求漂移”。
和纯对话生成相比,规格提供单一事实源。CI 应用规格检查(契约测试、schema)。改需求先改规格再改代码。适合多 Agent 协作时对齐接口。
不要写成无法执行的空话文档。最小规格:输入输出、不变量、失败语义。与 TDD 接近,但受众包括代码生成器。团队评审规格比评审实现更便宜。
什么是规范驱动开发?SDD
规范驱动开发(SDD)先把可执行或可校验的规格写清楚,再生成或手写实现。规格可以是 OpenAPI、状态机、验收准则或形式化描述。目标是减少“口口相传的需求”在编码时走样。
和文档驱动不同,规格要能被测试或生成器消费。变更流程是改规格、再生代码或补测试,而不是先改实现再补文档。适合接口稳定、规则密集的领域,例如协议和计费。
团队要有评审规格的习惯,否则 SDD 会变成又一份没人看的 Markdown。工具链选对之后,回归应用规格用例,比只跑实现层单测更能抓住语义漂移。
什么是Vibe Coding,Spec Coding?
Vibe Coding 指凭感觉和对话让 AI 连续改代码,少写预先设计;Spec Coding 则先锁规格再实现。前者迭代快、适合探索原型,后者在接口稳定、合规和多人协作时更稳。
实践上常混合:先 vibe 出可运行草稿,再提炼规格与测试,避免无限聊天。Vibe 的风险是隐性耦合与安全漏洞进主分支。要用 diff、测试和类型系统当刹车。
选型看任务:UI 草稿、未知 API 探索用 vibe;支付、权限、数据模型用 spec。记录提示与决策,方便回放。两者都不是替代代码评审。
OpenSpec
OpenSpec 一类工具把变更规格写成结构化文档,再驱动实现、测试和评审。它强调先冻结“要改什么、验收是什么”,再让人或 Agent 动手,减少口头需求在编码中漂移。
规格应包含范围、非目标和验收例子。太大的规格无法评审,应拆成可独立合并的增量。和代码同库版本化,走同样的 pull request 流程。
落地时把规格检查接入 CI:缺验收条目就阻断。完成后回写实际偏差,形成下一次更好的模板。它不是又一份设计幻灯片,而是可执行的约束。
二、Skill 生态
自定义Skill
自定义 Skill 把可重复的操作说明、脚本和约束打包,供编码 Agent 在特定任务时加载。它比临时提示稳定:目录结构、触发条件和禁止事项写在仓库里,团队可评审版本。
好的 Skill 只做一件事,输入输出明确,并声明需要的工具权限。含糊的“尽量写好代码”不会改变模型行为。密钥和内部地址不要写进 Skill 正文。
发布前用几个真实任务试跑,看是否误触发或漏步骤。更新时保持向后兼容,或在说明里写破坏性变更。Skill 是流程资产,不是提示词收藏夹。
Skills-ECC
Skills-ECC 指嵌入式场景里把可复用能力做成技能包:错误校正、编码约定与通信校验放在同一套接口下。ECC 本身是差错控制编码,用冗余检测或纠正传输与存储错误。Flash、内存和工业总线都会用到。把它技能化,是为了在不同 MCU 项目里复用同一套编码、诊断和测试向量。
实现时要分清检错与纠错能力、开销和延迟。CRC 适合帧校验,汉明码适合短数据纠错,更强的 RS 码用于块数据。参数要写进协议文档,两端多项式不一致会表现为随机错包。测试要注入翻转位,确认能报错或恢复。和看门狗、重传策略一起看,编码不是唯一可靠性手段。版本升级时保持向后兼容的校验字段。
Superpowers
Superpowers 这类技能包把 Agent 的工作方式写成可复用流程:先澄清问题、再拆步骤、用测试约束实现、最后复核。它不是新模型,而是给智能体一套更高纪律的操作手册,减少直接改代码导致的遗漏。
使用时要把技能范围写窄,避免一条技能包办整个仓库。流程里应包含人类检查点,尤其是发布和数据迁移。与项目内的 AGENTS.md、编码规范一起生效时,优先级要说清楚。评估看任务一次成功率,而不是技能文件有多长。适合作为团队共享的工作习惯,而不是个人提示词收藏。
oh-my-opencode
oh-my-opencode 一类配置把 OpenCode 的主题、快捷键、MCP 和代理工作流收成可复制的个人发行版。目标是减少每次换机器都重新调环境,让 Agent 调用工具的默认策略稳定下来。
真正有价值的是技能脚本、权限白名单和模型路由,而不是皮肤。把密钥留在本机密钥环,配置仓库只放非敏感片段。升级上游时先看破坏性变更,再决定是否锁版本。
团队共享配置要约定目录结构和评审方式,避免每人一份分叉后无法合并。Agent 能改文件,不代表所有目录都该开放写入。
三、Codex
Codex
Codex 是 OpenAI 面向编程的模型与工具线,能根据自然语言生成、解释和修改代码。CLI/IDE 集成后可在仓库上下文里改文件、跑测试。适合脚手架、解释陌生代码与写单测草稿。
它不是编译器:输出必须 diff review,尤其是安全与并发。提示里给约束(语言版本、风格、测试命令)比空泛“写一个系统”有效。敏感密钥不要贴进提示。
和 Copilot、Claude Code 同类,差别在工作流与上下文窗口。团队应规定哪些目录允许自动改。用测试门禁兜底。把它当加速器,架构决策仍要人做。
Codex 插件
Codex 插件把编码代理接到 IDE 或编辑器里,让模型能读当前文件、跑命令和提交补丁。插件负责鉴权、工作区范围和 diff 预览,避免模型在聊天里空口改代码。对开发者来说,价值是把仓库上下文自动带上,而不是再复制粘贴。权限模型决定它能碰哪些文件和终端。
使用时先限定目录,敏感配置加入忽略。每次改动看 diff 再接受,测试失败就让它修而不是手工混进去。插件升级会改默认模型,要在团队里对齐版本。日志不要上传密钥。把它当结对程序员:你出任务边界,它出草稿。插件再强也替代不了代码评审,合并前的人仍要为行为负责。
Codex SubAgents子代理
Codex SubAgents 把大任务拆给专职子代理:有的只搜代码,有的只写测试,有的只做审查。主代理负责任务编排和汇总,子代理在隔离上下文里干活,避免把所有文件塞进同一个窗口。适合仓库大、步骤多、需要并行探索的场景。定义要写清输入、工具白名单和完成标准。
实践上子代理不要互相改同一文件,合并由主流程处理。超时和失败要冒泡。过多层级会让日志难读,两层通常够用。把成功案例收成技能,减少每次重新解释。评估看任务完成率和返工次数。SubAgents 是组织方式,不是更多模型的代名词。约束清楚时才加速,否则只是把混乱复制成多份对话。
四、应用案例
AI优选系统
AI 优选系统根据用户与上下文,从候选集里挑出更可能被接受的内容或商品。它不是单纯“最热”,而是结合召回、粗排、精排和重排,并注入业务约束(库存、合规、多样性)。
落地先把离线特征与在线特征对齐,避免训练和推理各算一套。评估用离线 AUC 不够,还要看线上点击、转化和伤害指标。冷启动用内容特征或探索流量,不要让头部内容永久垄断。模型要可回滚,特征变更要有版本。若引入大模型做解释或生成理由,应限制延迟并把结果当辅助,而不是唯一排序依据。
AI分诊系统
AI 分诊系统根据患者主诉、年龄和伴随症状给出科室建议,用来降低挂号盲目性。它是辅助决策,不能替代执业医师。输入要限制在必要字段,输出要带不确定度和转人工入口。
模型侧可用分类或检索增强,但必须有医疗知识约束和禁用症提示。高风险表述(胸痛、大出血、意识障碍)应直接导向急诊,而不是继续闲聊。日志要脱敏,训练数据不能含可识别病历。上线后持续用人工抽检校准科室准确率。责任边界写进产品文案:系统建议仅供参考,最终挂号由用户和医院流程决定。
AI 编程工作流速查:Spec Coding、Skill 与 Codex
https://lautung.com/archives/ai-coding-workflow
评论