OpenSpec Skill:让 AI 编程从 vibe coding 走向规格驱动开发

OpenSpec 正在成为 AI 编程圈的现象级项目。它解决了一个核心痛点:大多数 AI 辅助编程是”vibe coding”——凭感觉走,缺少可验证的规格文档导致 AI 输出与预期经常偏离。OpenSpec 从工作流上强制要求”先写规格、再动手”,用自然语言描述需求场景(WHEN…THEN… 格式),让 AI 在动手写代码前先出一个可审查的执行计划。双方在同一个规格文档上对齐,减少返工,代码质量也更可预期。这是一个从个人项目到企业团队都适用的规格驱动开发框架,近期在 GitHub trending 上连续多日出现。

功能与设计原则

OpenSpec 的核心是一个结构化的规格文档工作流,包含以下模块:

  • proposal.md:变更动机与目标
  • specs/:需求规格与场景(WHEN…THEN… 格式)
  • design.md:技术设计方案
  • tasks.md:实现检查清单

设计哲学是”fluid not rigid, iterative not waterfall, easy not complex”,明确面向存量代码库(brownfield)而不仅限新项目(greenfield)。框架本身用 OpenSpec 自身管理,形成了良好的自举案例。最新版本还引入了 /opsx:propose artifact-guided 工作流,进一步简化了发起变更的门槛。

认可度

  • GitHub Star:69,378(截至 2026-09-19)
  • Fork:4,750
  • 语言:TypeScript
  • 2026 年 9 月中连续多日出现在 GitHub Trending 列表,9 月 17 日单日 +298 stars,9 月 13 日总榜盘点中已进入 Top 20
  • NPM 包 @fission-ai/openspec 稳定发布,Discord 社区活跃

链接

GitHub:https://github.com/Fission-AI/OpenSpec

NPM:https://www.npmjs.com/package/@fission-ai/openspec

原作者

Fission-AI(GitHub Organization),主要维护者 @0xTab 在 X/Twitter 活跃更新。项目有完整的 CI 流水线,多名贡献者参与维护。

介绍

OpenSpec 是一个为 AI 编程助手打造的规格驱动开发(Spec-Driven Development,SDD)框架。传统开发中,规格文档往往写在 Wiki 或文档工具里,AI 编程时根本无法参考。OpenSpec 将规格文档直接引入代码仓库,让 AI 在每次变更前都必须阅读并遵守规格。

它的核心使用方式是:当你有一个想法时,用 /opsx:propose "你想要的功能" 让 AI 生成一套完整的变更包(proposal + specs + design + tasks),你审查通过后再用 /opsx:apply 让 AI 按计划执行。AI 在写代码之前先写规格,双方在”做什么”上对齐,避免做到一半发现理解偏差。

规格文档本身是纯 Markdown,不需要特殊语法,学习成本极低。每个需求用”WHEN…THEN…”场景格式写出,AI 能精确理解前置条件和预期行为。变更完成后可用 /opsx:archive 归档,整个历史可审计、可回溯。

特点

  • 规格先行:任何代码变更先出规格,AI 和人类在”做什么”上达成一致再动手
  • 纯 Markdown 格式:无特殊语法,学习成本低,AI 直接可读
  • artifact-guided 工作流:/opsx:propose → /opsx:apply → /opsx:archive,三步覆盖完整变更生命周期
  • 跨仓库特性支持(Stores):企业级场景下,一个变更计划可横跨 API 服务器、Web 应用、共享库多个仓库,规格统一管理
  • 自举案例:OpenSpec 自身用 OpenSpec 管理,仓库里有大量真实规格文档可参考
  • 多 AI 助手兼容:支持 Claude Code、Codex、Cursor 等主流 AI 编程工具
  • CLI 工具成熟:Node.js 20.19.0+ 可通过 npm 全局安装,初始化一行命令

使用方法

安装:

npm install -g @fission-ai/openspec@latest
cd your-project
openspec init

AI 辅助安装(直接让 AI 帮你装):

将官方安装提示 prompt 粘贴给 AI 编程助手,它会自动完成 CLI 安装和 openspec init 初始化。

基本工作流:

# 探索阶段(还不确定要做什么)
/opsx:explore

# 提出变更
/opsx:propose add-dark-mode

# 审查计划后执行
/opsx:apply

# 归档已完成变更
/opsx:archive

最小示例:

当你想要”加一个暗色模式”时:

You: /opsx:propose add-dark-mode
AI: Created openspec/changes/add-dark-mode/
     ✓ proposal.md — why we're doing this, what's changing
     ✓ specs/ — requirements and scenarios
     ✓ design.md — technical approach
     ✓ tasks.md — implementation checklist
     Ready for implementation!

You: /opsx:apply
AI: Implementing tasks...
     ✓ 1.1 Add theme context provider
     ✓ 1.2 Create toggle component
     ✓ 2.1 Add CSS variables
     ✓ 2.2 Wire up localStorage
     All tasks complete!

规格文档中的需求场景格式:

## ADDED Requirements

### Requirement: Theme selection
The app SHALL let users switch between light and dark themes,
defaulting to the system preference.

#### Scenario: User toggles dark mode
- **WHEN** the user clicks the theme toggle
- **THEN** the app switches to dark mode and persists the choice

使用场景与人群

适用场景:

  • 团队协作项目:需要多方(产品、研发、QA)在”做什么”上对齐
  • 复杂功能开发:避免做到一半发现理解偏差,减少返工
  • 遗留代码维护:通过规格文档理解存量逻辑,变更前先建立共识
  • AI 编程实践:让 AI 编程从”vibe coding”升级为可验证的规格驱动开发

目标用户:

  • 软件开发团队(从个人开发者到企业团队)
  • AI 编程工具使用者(Claude Code、Codex、Cursor 等)
  • 追求代码质量和变更可追溯性的工程师

输入与输出案例

输入:

/opsx:propose add-user-authentication

输出(AI 生成的变更包):

Created openspec/changes/add-user-authentication/
├── proposal.md      ← 变更动机和背景
├── specs/
│   └── auth.md      ← 需求规格:登录、登出、Token 刷新
├── design.md        ← 技术方案:JWT / Session / OAuth2
└── tasks.md         ← 实现检查清单

Ready for implementation! Review before running /opsx:apply.

输入(规格文档内容):

### Requirement: User login
The app SHALL let users log in with email and password.

#### Scenario: Valid credentials
- **WHEN** the user submits correct email + password
- **THEN** the app grants access and shows the dashboard

#### Scenario: Invalid credentials
- **WHEN** the user submits wrong password
- **THEN** the app shows an error and keeps the login form

输出(执行后):

AI 依据上述规格生成了完整的登录表单、JWT 验证逻辑、错误处理和 Token 刷新机制——所有代码行为均可对照规格验证。


GitHub: https://github.com/Fission-AI/OpenSpec

评论区

0 条评论

登录后可评论。

Skill超级捕获手 1050 阅读