← All posts

GitHub看不下去了 发布Spec Kit教大家怎样Vibe Code

GitHub看不下去了上周GitHub发了个开源工具,叫Spec Kit。9.5万个Star,8000个Fork。Vibe Coding这个词是Karpathy造的,意思是用AI写代码不用想太多,描述个大概,感觉对了就行,跑起来再说。这个词去年开始到处流传,因为它说中了一件真实发生的事:越来越多没有编程背景的人,用AI做出了以前做不到的东西。门槛在降,速度在升,大家都很兴奋。GitHub看到的另一面是:一年多下来,平台上出现了大量能跑但没人看得懂的项目。没有文档,没有测试,没有任何组织逻辑。今天能演示,明天加个功能就崩。作者自己都不清楚为什么能跑。代码屎山,但这次是AI帮你堆的,速度更快,规模更大。GitHub的产品经理Den Delimarsky说了一句话,把问题讲得很清楚:

"我们把编程Agent当搜索引擎用,但应该把它当成一个字面意思很强的搭档程序员。"

字面意思很强,是关键。你说"做一个登录功能",AI就做一个登录功能。至于要不要对接你现有的数据库,要不要符合你的安全规范,要不要兼容三年前的老代码,它不知道,因为你没说。问题不是AI写不好,是没有人在它开始之前,把事情说清楚。

PART.01

Spec Kit的核心作用

Spec Kit想做的事,就是强制把这件事做完。

Spec Kit的工作流程流程是这样的:

  1. 第一步,写宪法。给项目写一份原则文件,放进代码库。代码规范是什么,测试标准是什么,哪些架构决策不能随意改。AI在整个开发过程里都要遵守这份文件,不是一次性的提示词,是项目级别的约束。
  2. 第二步,写规格。用自然语言描述要做什么,只说"做什么",不提技术。"用户可以创建任务,拖动任务改变状态,给任务留评论"。这一步刻意把功能和技术分开,先把需求边界画清楚。
  3. 第三步,出方案。规格确认之后再谈技术。用什么数据库,什么框架,API怎么设计。这步产出的是文档,不是对话记录,可以检查,可以修改,可以留存。
  4. 第四步,拆任务。把方案拆成具体的执行列表。哪个任务对应哪个文件,依赖关系是什么,哪些能并行,哪些必须按顺序来。
  5. 第五步,AI执行。前四步都确认之后,AI才开始写代码。拿着宪法、规格、方案、任务清单,按图索骥。出了问题知道往哪里追。

PART.02

关于Spec Kit的定位与意义

这套流程慢不慢?慢。InfoWorld实测说得很直接:Spec-Driven Development比Vibe Coding慢,但那本来就不是重点。想快速做个Demo,Vibe Coding没问题。要交付一个别人要长期用的东西,另说。Spec Kit自己也说,适合从零开始的新项目,不适合修小bug。Spec Kit去年9月就开了,沉寂了几个月,最近才突然热起来。时机的问题,不是工具的问题。今年AI编程Agent的能力跳了一个台阶。以前AI写错一行,你看得出来;现在AI能自主跑几十个步骤,中间哪步走偏了,你可能根本不知道。能力越强,失控的方式越隐蔽。于是有人开始认真想,怎么在让它跑之前,先把轨道铺好。这件事的本质,跟工具没什么关系。Karpathy的autoresearch里,AI可以自己修改训练代码、跑实验、评估结果、无限循环。人的工作只剩一件事:维护那个.md文件,在开始之前写清楚终点是什么,失败是什么。Spec Kit做的是同一件事,只是换了个场景。宪法、规格、方案、任务,这四样东西在AI开始工作之前就要存在,是人想清楚的结果,不是AI生成的。会不会用AI,慢慢变成一个更老的问题:动手之前,你有没有想清楚要做什么。项目地址:github.com/github/spec-kit

Follow my WeChatWeChat 公众号 QR codeScan to follow