OpenSpec 技术访谈摘要

从“感觉流”编程走向确定性交付

基于视频内容提炼的核心要点与实战指南

📌 什么是 OpenSpec?

一个轻量级的规格驱动开发 (Spec-Driven Development) 工具库。它帮助人类开发者与AI编程助手(如 Kilo Code, Cursor)在编写任何代码之前,先就“构建什么”达成一致。

🚀 核心价值

相比于随机的“AI感觉流编程 (Vibe Coding)”,OpenSpec 能够确保产出确定性、结构化且可审查的结果。意图被锁定在实施之前。

💡 适用场景

特别适合现有代码库的维护和迭代。它使用双文件夹模型(Specs vs Changes),比竞争对手 SpecIt 更适合处理复杂的、不断演进的项目。

🧠 核心知识翻转卡片 (点击卡片查看详情)
⚖️

OpenSpec vs SpecIt

两大工具的主要区别

点击翻转
  • OpenSpec (轻量级): 设置更少,更适合长期维护和已有项目。采用“当前状态”与“变更提案”分离的模式。
  • SpecIt (重量级): 更适合从零开始的“绿地项目”(Greenfield)。随着代码库演变,管理更新会变得混乱。
  • 成本: OpenSpec 消耗 Token 更少,更经济。
📂

双文件夹架构

OpenSpec 如何管理变更

点击翻转

OpenSpec 使用独特的文件结构:

  • Specs 文件夹: 存储当前系统的真实状态(Current State)。
  • Changes 文件夹: 存储针对新功能的变更提案 (Proposals)。

✅ 优势:使得范围变更 (Scope Changes) 透明且易于审查。

🤖

工作流哲学

拒绝“感觉流”编程

点击翻转
  • Vibe Coding (感觉流): AI 基于模糊提示生成随机代码,容易出错,不可控。
  • OpenSpec 模式: Prompt → Proposal (提案) → Tasks (任务) → Specs (规格) → Code (代码)
  • 先规划,后编码。确保 AI 理解意图后再执行。
⚡ 实战工作流 (TimeLine)

1. 安装与初始化

使用 NPM 全局安装:npm install -g openspec
在项目根目录运行 openspec init 并选择你的 AI 助手(如 Cloud Code, Kilo Code)。

2. 填充上下文 (Context)

让 AI 读取生成的 project.md,自动填充项目摘要、技术栈和约定。这是 AI 理解项目的基石。

3. 创建变更提案

输入 Prompt 描述新功能,附加指令“Create an OpenSpec change proposal”。
AI 会生成:理由、变更内容、任务列表、测试场景

4. 实施与审查

开发者审查生成的文档。确认无误后,指令 AI "Implement this"。AI 将严格按照 Spec 编写代码和 UI。

5. 归档 (Archive)

功能完成后,运行 openspec archive [spec_name] --yes。这会将变更合并到主 Specs 中,保持变更文件夹整洁。

🌟 关键金句 (Golden Quotes)

"It helps humans and AI coding assistants to plan and agree on what to build before any code is written."
—— 它帮助人类和AI在编写任何代码之前,先就构建内容进行规划并达成一致。
"Basically, the process will give you a more deterministic and structured results instead of random AI vibe coding."
—— 基本上,这个过程会给你更确定、更结构化的结果,而不是随机的AI“感觉流”代码。
"Zapier isn't dying. It's redefining AI orchestration."
—— Zapier并没有消亡(尽管有新AI工具出现),它正在重新定义AI编排。(行业洞察)
"OpenSpec ensures your intent is locked before implementation."
—— OpenSpec 确保你的意图在实施之前就被锁定。

原文

源链接