1.前言
OpenSpec 是一种 **规范驱动(spec‑driven)** 的开源开发框架,主要面向 AI 编程助手 (如 Claude Code、GitHub Copilot、Cursor 等)而设计。它通过在「共识规范 → AI 执行 → 自动验证」的闭环流程,帮助团队在 AI 参与的代码开发过程中明确需求、降低指令歧义、提升代码可追溯性与可维护性。
核心理念与工作流
- 共识规范(Spec)
- 先由人类与 AI 共同撰写结构化的需求规范(包括功能描述、输入/输出、边界条件、测试用例等)。
- AI 执行
- AI 根据规范自动生成代码、文档或变更提案。
- 自动验证
- 框架内置的验证器会依据规范中的测试用例对生成的代码进行自动化检查,确保实现符合预期。
- 迭代与归档
- 通过审查、计划、实现、归档等步骤形成完整的变更历史,便于后续审计与迭代。

适用场景
1 新项目、2 功能增强(迭代项目)3、多人协作。 这个项目最有价值的我个人觉的应该是功能增强 和多人协助开发,尤其是大型项目很多都是基于原有项目扩展和改造。之前由于模型上下文的问题导致很多企业级项目以及一些老旧项目升级改造AI 就变得难以搞定。另外AI 开发的项目多人协作也是比较难搞定的。这个项目刚好解决这个2个问题。今天小编就带大家通过一个实战的项目来体验感受一下这个规范驱动开发的框架。
2 项目实战
被修改项目下载
我们先下载一个开源项目下面就拿jimeng-free-api-all 项目作为案例介绍
使用git clone 这个项目
bash
git clone https://github.com/zhizinan1997/jimeng-free-api-all

完成代码下载

我们使用vscode 打开这个项目

安装OpenSpec
我们在终端命令行输入下面命令安装OpenSpec
css
npm install -g @fission-ai/openspec@latest

输入下面命令确保安装成功
css
openspec --version
如果按照失败出下面错误(一般是windows )

我们可以切换使用pnpm 命令安装
css
pnpm install -g @fission-ai/openspec@latest


按照上图方式我们就确保openspec安装完成。
openspec init
这个目的主要是在项目中创建一个新的 openspec/
目录结构,这个方便后面基于这个来控制项目
csharp
openspec init
OpenSpec 支持多种开发工具,我这里使用claude code


这个文件夹主要有以下几个文件和内容
csharp
openspec/
├── specs/ # 规范目录(存放各类正式规范文档)
│ └── auth/ # 认证相关规范子目录
│ └── spec.md # 当前认证规范文档(若存在)
└── changes/ # 变更目录(存放规范的修改提案与增量内容)
└── add-2fa/ # 新增双因素认证(2FA)的变更子目录(由AI创建完整结构)
├── proposal.md # 变更提案文档(说明为何修改、修改内容)
├── tasks.md # 实施任务清单(记录需完成的具体开发/修改任务)
├── design.md # 技术设计文档(技术方案决策,可选)
└── specs/ # 变更对应的规范增量目录
└── auth/ # 变更涉及的认证规范子目录
└── spec.md # 规范增量文档(仅展示新增/修改的内容,即差异部分)
我们看到openspec根目录下有AGENTS.md、project.md。这个就是项目修改变更的依据 有了它 ,AI 就不会乱输入,尤其是对于变更项目这个是比较友好的。
AGENTS.md、project.md 默认的这2个文件是英文的我们把他翻译成中文。
中文转换
我们输入下面提示词
请帮我把openspec文件夹下AGENTS.md、project.md 内容翻译成中文


需求收集整理
openspec 主要的流程如下:
- 起草一份变更提案,明确你期望的规范更新内容。
- 与 AI 助手一同审核该提案,直至各方达成一致。
- 执行任务,过程中需参考已达成共识的规范文档。
- 对该变更进行归档,将已批准的更新内容合并回基准规范文档中。

这个我们会用到比较关键的三个命令
/openspec:proposal 、/openspec:apply、/openspec:archive
那么我们先执行第一个 简单来说就是你把需求给它,它来帮你做拆解详细的计划任务。
接下来我们需要简单交代一下jimeng-free-api-all 项目,这个项目是即梦文生图、文生视频的接口是基于3.0的。目前最新的即梦支持4.0 了。所以我们需要实现即梦4.0 文生图,图生图,文生视频等功能。 这里我们还依赖一下其他的资料。关于这块资料我们就不做详细展开了。 新增加的2个文件是curl4.txt 、curl4.md

提示词如下:
sql
/openspec:proposal 请基于curl4.md内容以及jimeng-free-api-all\src\api\controllers\images.ts 代码,新增补充基于high_aes_general_v40模型功能,请修改images.ts 实现high_aes_general_v40模型能力。
请不要先代码,先把需求整理好,结合原来的项目梳理项目新增的变革需求。
AI会更加上面的需求生成需求草案和计划

包括生成的tasks.md文档,这样AI 就会乱写一通,我们在后面执行的时候/openspec:apply AI 就会更加这个文档的约束来实现功能了。此外如果碰到功能点没有写完或者是团队协作开发,这种方式就比较友好好了。我们可以把刚才生成的文档提交代码仓库(gitlab,github等)可以接着后面写。
代码开发执行
接下来我们在使用/openspec:apply 执行上面的功能新增

接下来AI 就会延续之前的tasks.md文档 实现代码编写和测试等相关工作。

经过一段时间的运行后 tasks.md里面的12个子任务已经执行完成,我们看一下执行后的结果

shell
## 1. 实施high_aes_general_v40模型支持
- [x] 1.1 在MODEL_MAP中添加jimeng-4.0模型映射
- [x] 1.2 更新DEFAULT_MODEL配置(如需要)
- [x] 1.3 验证模型参数配置正确性
## 2. 优化图片生成参数支持
- [x] 2.1 支持更高的分辨率配置(2560x1440)
- [x] 2.2 确保与现有参数的兼容性
- [x] 2.3 添加分辨率比例验证
## 3. 增强批量生成能力
- [x] 3.1 优化generateImages函数支持批量生成
- [x] 3.2 确保与现有API接口的兼容性
- [x] 3.3 添加错误处理和日志记录
## 4. 测试和验证
- [x] 4.1 单元测试:模型映射功能
- [x] 4.2 集成测试:图片生成流程
- [x] 4.3 验证与curl4.md中描述的参数一致性
看到12个任务已经执行完成了。
人工验证
接下来我们先人工方式审查一下它修改的代码

的确是修改了代码。
我们使用Apifox 对这个接口进行验证测试。执行下面命令启动程序
arduino
npm install build
npm run dev

Apifox 测试

接口成功返回请求信息。

我们在即梦平台可以看到这个请求

这个时候新增修改的功能就初步完成了。当然这个后面还有其他功能扩展,这里就不做详细展开。 我们在回到需求整理再执行即
项目归档
上面的新增加的需求变更已经完成。接下来我们需要执行第三命令/openspec:archive,对执行新增功能进行归档操作方便后面修改新功能对归档文档进行阅读。
我们同样执行下面命令
bash
/openspec:archive

AI 执行完成后我们看到下面归档信息

这个时候我们在openspec \changes文件夹下看到新增加的需求已经归档了。

本次新增需求就开发完成了。上面的文档信息和修改的代码提交代码仓库,其他小伙伴也可以依据已经修改的功能继续开发新的功能点了。
3.总结
今天主要带大家了解并实现了 OpenSpec 框架的安装配置与实战应用完整流程,该流程以规范驱动开发为核心,结合 jimeng-free-api-all 项目改造场景,通过 OpenSpec 提供的规范管理、AI 执行与自动验证能力,搭配命令行工具的流程管控能力,形成了一套从需求定义到功能落地的规范化开发解决方案。
通过这套实践方案,团队能够高效应对 AI 参与开发时的协作难题 ------ 借助简单的安装配置步骤(包括 OpenSpec 全局安装、项目初始化、规范文档生成),无需担心模型上下文限制或需求传递歧义,就能有序完成旧项目升级(如本次即梦 4.0 模型的功能扩展)。无论是基础的代码生成、测试用例编写,还是通过变更提案实现的多人协作、需求追溯,都能通过 proposal/apply/archive
等简洁命令完成,极大降低了 AI 辅助开发中的管理成本。在实际验证中,OpenSpec 能够稳定支撑规范与代码的一致性,特别是通过 tasks.md 任务清单和自动化验证机制,有效避免了 AI 生成代码的随机性,且适配性远优于传统的直接 prompt 开发模式。同时,方案具备良好的扩展性 ------ 小伙伴们可以基于此扩展更多团队协作场景,如迭代式需求拆分、跨团队规范对齐、历史变更审计等,进一步发挥规范驱动开发在大型项目中的应用价值。
感兴趣的小伙伴可以按照文中提供的步骤进行实践,根据项目需求定制规范文档与变更流程。今天的分享就到这里结束了,我们下一篇文章见。