搜yinheit-从 Vibe Coding 到 Harness × SDD 全栈开发实战-学习记录
从Vibe Coding到Harness × SDDAI全栈开发的范式跃迁与工程化落地一、Vibe Coding的浪漫与残酷2025年初Andrej Karpathy提出了一个引爆技术圈的概念——Vibe Coding氛围编程。它的本质是你不再逐行写代码而是描述你想要什么让AI去写你只看效果不看实现。在原型验证、一次性脚本这些低风险场景中Vibe Coding确实好用——简单、快、几乎没有认知负担。但浪漫很快被残酷现实击碎。当Vibe Coding被引入生产级代码库三个结构性缺陷迅速暴露问题维度Vibe Coding的典型表现信息损耗同一句话多次执行给出不同实现AI按自己的理解“猜”需求知识孤岛AI只知训练语料里的通用知识不懂团队历史决策和私有约束验证断档“能跑”就直接提交概率性错误顺着MR滑进主干更扎心的一组数据来自高德大模型应用平台出码率从53%提升到80%-90%但项目交付周期没有明显缩短。编码快了但Review慢了出码多了但返工也多了。出码率≠交付率——AI编程的瓶颈已经不再是模型本身的智力而是工程化能力。二、范式跃迁从“写代码”到“控工程”行业对“AI究竟怎么写代码才靠谱”这个问题的认知经历了清晰的演进Vibe Coding凭感觉写→ SDD规范驱动→ Harness Engineering工程化体系这不是三个并列选项而是三个递进阶段。Vibe Coding教会了我们“AI能写代码”但也暴露了“光让AI写代码不够”的残酷事实。SDD让规范成为AI的“唯一事实来源”SDDSpec-Driven Development规范驱动开发的核心思路是在AI写代码之前先把“你想要什么”严格地、结构化地写下来再让AI去实现。SDD的工作流包含四个阶段写Spec规范→ 描述“要做什么、满足什么约束”写Plan计划→ 拆成具体任务、定义验收标准生成代码→ AI按Spec和Plan实现验证→ 用Spec里定义的验收标准对照验收一份完整的SDD通常包含三个核心文档proposal.md需求提案描述“为什么要做”和“要做什么”spec.md技术规格包含组件设计、接口契约、数据结构tasks.md任务拆分每个task对应可执行的代码变更单元Harness给AI套上“工程缰绳”Harness Engineering不是简单的技术叠加而是一套给AI智能体设立边界、搭建运行环境、实现可控自治的系统级工程方法论。它的核心目标是让AI在复杂代码库中像资深工程师一样工作而非像刚入职的实习生。Harness思维的本质是给AI一个已有的实现作为参照让它照着复刻而不是凭空创造。三、四阶段实战指南结合实战经验从Vibe Coding到Harness × SDD的全栈落地可以分为四个阶段第一阶段Vibe Coding的“可控化”改造Vibe Coding最大的痛点是生成的代码“能跑但不规范”。破局点是让AI生成代码的同时强制生成规格文件。实战操作在Prompt中明确要求——“请为这个功能编写代码并同步生成openapi.yaml和package.json中的版本依赖锁”。工具链使用Cursor/Windsurf结合GitHub Copilot利用.cursorrules文件强行约束AI的输出结构。产物一份包含API契约、数据库SchemaPrisma/Entity以及基础单元测试的PR。第二阶段SDD的“契约”锚定规格驱动开发的核心是“契约即真理”。在AI生成大量代码后需要用规格来反向校验代码而不是用代码去解释规格。实战策略引入Confluent Schema RegistryKafka事件和StoplightREST API进行规格托管将openapi.yaml作为PR合并的硬性门槛利用Spectral对规格进行质量检查确保AI生成的API路径符合RESTful规范基于固化的规格使用Prism生成Mock Server前后端彻底解耦并行第三阶段Harness平台的全栈编排Harness在这里不仅是CI/CD它是连接“规格”与“运行时”的神经中枢。三个核心实践Harness CI在Pipeline中插入“规格合规性检查”步骤。如果AI生成的代码导致OpenAPI规格与现有生产环境规格冲突Pipeline直接Fail不构建镜像Harness CD GitOps部署新服务时Harness自动读取SDD中定义的SLO如P99延迟 100ms特性标志Feature Flags将AI生成的新功能用Harness FF包裹起来先在生产环境对内部员工或小流量用户开放而不是全量上线第四阶段持续验证闭环这是让系统“自愈”的关键。实战要点在Harness中定义“Verification”步骤利用其机器学习算法自动对比新版本部署后的黄金指标吞吐量、错误率、饱和度与历史基线如果验证失败如错误率飙升Harness自动触发回滚自动在Git中创建Issue将失败的监控截图和日志片段附着在Issue上四、Harness思维的核心让AI模仿而非凭空创造得物技术团队的实践揭示了一个关键洞察Agent 模型 Harness治理层原则核心执行点找相似实现在代码库中锚定功能最相似的现有模块作为参照物复用优先强制复用现存的组件、接口封装与底层数据结构模仿替换维持Controller/Service分层原貌锁定生成域精确框定需要参考的具体文件路径与代码行号提示词对比❌不推荐零约束“请实现一个结束语管理的CRUD接口及前端页面。”✅推荐Harness驱动“请参照现有的场景欢迎语功能后端接口/api/v1/feature/list前端入口FeatureTable/index.tsx:53-58实现结束语功能。数据结构、分层逻辑、命名规范必须保持一致。”五、写在最后Vibe Coding提供了无与伦比的生成效率而Harness × SDD则赋予了其企业级的工程骨架。这一技术架构的融合让全栈开发者从繁琐的“代码搬运工”与“流程救火队员”转型为真正的“AI架构师”。核心矛盾在于大模型本质是概率驱动的非确定性引擎而软件工程要求绝对的确定性。SDD与Harness的结合正是连接AI非确定性推理与软件工程确定性要求的桥梁。如果你还在Vibe Coding的舒适区里“随性编程”不妨试试这套方法论——把写代码的时间前置到写规约上。当AI出码率达到90%却没有真正提效时真正该升级的不是模型而是你的工程化思维。

相关新闻

老年人居住厨卫适老化改造方案及牛牛快装服务分析

老年人居住厨卫适老化改造方案及牛牛快装服务分析

老年人居住厨卫适老化改造方案及牛牛快装服务分析随着老龄化社会的到来,针对老年人居所的安全升级已成为家庭装修的重要议题。核心改造点通常集中在防滑处理、助力扶手安装及无障碍通行等细节的落实。在选择改造服务时,除了关注功能实现,还需…

2026/10/14 0:02:57 阅读更多 →
Vue2 SSE 流式对话完整前端代码

Vue2 SSE 流式对话完整前端代码

模板部分&#xff08;template&#xff09;<template><div class"chat-container"><!-- 对话列表容器&#xff0c;不频繁销毁气泡 --><div class"chat-left left" ref"chatScrollWrap"><!-- 单条AI气泡&#xff0c;多…

2026/10/14 0:50:13 阅读更多 →
轻松掌握MIFARE Classic图形化工具:3步操作Windows NFC工具完整教程

轻松掌握MIFARE Classic图形化工具:3步操作Windows NFC工具完整教程

轻松掌握MIFARE Classic图形化工具&#xff1a;3步操作Windows NFC工具完整教程 【免费下载链接】MifareOneTool A GUI Mifare Classic tool on Windows&#xff08;停工/最新版v1.7.0&#xff09; 项目地址: https://gitcode.com/gh_mirrors/mi/MifareOneTool 想要在Wi…

2026/10/13 8:46:44 阅读更多 →

最新新闻

栈与队列实战指南:从原理到源码的完整解析

栈与队列实战指南:从原理到源码的完整解析

栈与队列是数据结构里最基础也最容易被轻视的两个结构。很多初学者觉得它们“不就是个数组加点限制吗”&#xff0c;但实际工作中&#xff0c;从函数调用栈到消息队列&#xff0c;从浏览器的前进后退到操作系统的任务调度&#xff0c;到处都有它们的影子。面试的时候&#xff0…

2026/10/14 3:57:41 阅读更多 →
网络安全行业前景如何?入门方向、岗位选择与学习路径全解析

网络安全行业前景如何?入门方向、岗位选择与学习路径全解析

家里小孩突然跟我说&#xff0c;想学网络安全。我当时第一反应是愣了两秒&#xff0c;然后脑子里全是网上那些"月薪五万""黑客大佬""缺口百万"的段子&#xff0c;但转头又想到一些行业的负面新闻&#xff0c;心里有点打鼓。我相信很多家长遇到这…

2026/10/14 3:57:41 阅读更多 →
Magisk Manager 自定义更新通道:从 update.json 搭建到排错全指南

Magisk Manager 自定义更新通道:从 update.json 搭建到排错全指南

前不久有个朋友找我诉苦&#xff1a;他一直在用一个第三方编译版Magisk&#xff0c;每次官方有更新&#xff0c;他都要去发布页手动下载&#xff0c;再看更新日志里改了些什么。看了一半我就问他&#xff0c;你为什么不直接用Magisk Manager的自定义更新通道&#xff0c;把更新…

2026/10/14 3:57:41 阅读更多 →
大模型API计费与Key管理实战:从余额监控到密钥轮换

大模型API计费与Key管理实战:从余额监控到密钥轮换

1. 为什么“查计费面板、充值、换API Key”成了AI开发者的日常做AI应用开发的朋友&#xff0c;最近应该都有同一个体感&#xff1a;模型接口的账单比代码报错还让人紧张。应用跑得好好的&#xff0c;测试群里突然来一句“怎么又停了”&#xff0c;登录后台一看&#xff0c;不是…

2026/10/14 3:57:41 阅读更多 →
ITU-R BT.2154解读:数字地面电视接收机性能评估与频谱规划实践

ITU-R BT.2154解读:数字地面电视接收机性能评估与频谱规划实践

做频谱规划和无线覆盖优化的朋友&#xff0c;对ITU-R BT系列建议书应该都不陌生。但这个系列编号密集、内容交错&#xff0c;真到用的时候很容易挑花眼。最近我把ITU-R BT.2154从头到尾读了一遍&#xff0c;又把它用到一次跨系统频率迁移的兼容性评估里&#xff0c;这篇文章就当…

2026/10/14 3:57:41 阅读更多 →
网络安全密码学核心考点:从古典密码到数字签名复习指南

网络安全密码学核心考点:从古典密码到数字签名复习指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 3:56:41 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起&#xff1a;它到底想解决什么问题第一次看到"AnyPS5"这个标题&#xff0c;我脑子里冒出来的第一个念头是&#xff1a;这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述&#xff1a;Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师&#xff0c;我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性&#xff0c;实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景&#xff0c;也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间&#xff0c;确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中&#xff0c;这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →