OpenSpec 简明教程

1. 是什么

OpenSpec 是一个规范驱动开发 工具,专为 AI 编码助手设计。核心理念很简单:写代码前,先让人类和 AI 对"要做什么"达成一致

它解决的是"凭感觉聊天"式开发的痛点------需求散落在聊天记录里,AI 容易遗漏需求或偏离预期。OpenSpec 通过轻量级的规范流程,把模糊提示变成可审查、可落地的工程计划。

核心结构:

ini 复制代码
openspec/
├── specs/        # 已实现的功能(真相之源)
└── changes/      # 待实现的提案
    └── [变更名]/
        ├── proposal.md   # 为什么要做、做什么
        ├── design.md     # 技术方案
        ├── tasks.md      # 实施清单
        └── specs/        # 规范增量(补丁)

2. 快速上手

环境要求: Node.js 20.19.0 或更高版本

安装与初始化:

bash 复制代码
# 全局安装
npm install -g openspec-cn/openspec

# 进入项目目录
cd your-project

# 初始化
openspec init

初始化会创建 openspec/ 目录结构,并根据你的 AI 工具配置对应的斜杠命令。

3. 核心工作流

OpenSpec 采用四步工作流,全程通过斜杠命令与 AI 交互:

命令 阶段 功能
/opsx:new 规划 创建新变更,生成首个工件模板
/opsx:ff 规划 "快进"------一次性生成所有规划文档
/opsx:apply 实施 按任务清单实现代码
/opsx:archive 收尾 归档已完成变更,更新主规范

实操示例(以"添加深色模式"为例):

bash 复制代码
# 1. 创建变更
/opsx:new add-dark-mode
→ 创建 openspec/changes/add-dark-mode/

# 2. 生成全部规划文档
/opsx:ff
→ ✓ proposal.md  ✓ specs/  ✓ design.md  ✓ tasks.md

# 3. 开始实施
/opsx:apply
→ 逐步完成 tasks.md 中的任务清单

# 4. 归档
/opsx:archive
→ 移至 changes/archive/,更新 specs/

4. 命令速查

斜杠命令(AI 对话)

命令 读/写 用途
/opsx:explore 只读 探索想法、调研问题
/opsx:new 写入 创建新变更
/opsx:continue 写入 逐个创建工件
/opsx:ff 写入 一次性创建所有工件
/opsx:apply 写入 按任务清单实现代码
/opsx:verify 只读 验证实现与规范的一致性
/opsx:archive 写入 归档已完成变更

CLI 命令(终端)

命令 用途
openspec list 列出进行中的变更
openspec list --specs 列出所有规范
openspec show [item] 查看变更/规范详情
openspec validate [item] 验证变更/规范格式
openspec archive <id> --yes 非交互式归档

5. 关键原则

1. 棕地优先 ------ 不要求从零开始,与存量项目完美兼容

2. 规范即真相 ------ specs/ 是已实现功能的唯一真相源,changes/ 是待实施的提案

3. 增量变更 ------ 每个变更独立成文件夹,归档后合并回主规范,历史清晰可追溯

4. 人在回路 ------ AI 生成提案后必须经过人工审查确认,再进入实施阶段

6. 支持的工具

OpenSpec 支持 20+ AI 编码助手,包括:

  • 原生斜杠命令:Claude Code、Cursor、GitHub Copilot、Windsurf、CodeBuddy
  • AGENTS.md 兼容 :其他工具可读取 openspec/AGENTS.md 获取工作流指引
相关推荐
烈风逍遥3 小时前
第二篇:SeaPack 权限体系:从"谁都能看"到"该看什么看什么"
前端·后端·架构
JoyT3 小时前
Spring AI 2.0 Agent 进阶:Memory、State 与 Context Engineering 常见技术全景
后端
拖孩4 小时前
这个小程序是 AI 帮我写的,可它里面一个 AI 功能都没有
前端·后端·微信小程序
leeyi5 小时前
Agent 要用 API key,但明文一次都不能进模型——Secret Runtime 落地实录(第110篇)
后端·aigc·agent
GreenTea5 小时前
发布 3 天登顶 HN:不生成一个字的模型 Jev,我把它的源码和黑料都扒了一遍
前端·后端·算法
JoyT5 小时前
Spring AI 2.0 RAG 工程优化:从 Chunking、混合检索到 Rerank
后端
她的男孩5 小时前
做了"异步导出",用户点了还是卡 3 分钟:扒完 4223 行源码,@Async 压根没生效
人工智能·后端·程序员
wno7045 小时前
Spring Security添加图形验证码
java·后端·spring
ewbok6 小时前
Springboot整合mqtt实现软硬件通信
后端
CRZZX6 小时前
阶段 0.3:为 AI Agent 建立输入、工具、限流与前端渲染安全边界
后端