本文介绍在安装和初始化 OpenSpec 后的使用方法。

本文将通过一个完整的实战示例,演示如何使用 OpenSpec 规范驱动开发框架,配合 GitHub Copilot,从零开始创建一个基于 Spring Boot、MySQL、MyBatis、JDK 21 的后端 API 接口——用户管理模块(包含增删改查功能)。
一、关键配置说明1. MyBatis 驼峰命名映射
在 application.yml 中配置 map-underscore-to-camel-case: true 后,数据库字段 user_name 会自动映射到 Java 属性 userName。

2. 数据源配置
datasource 默认选择的 h2 内存数据库。MODE=MySQL 关键配置,启用 MySQL 兼容模式。开启 MODE=MySQL 后,H2 会尽可能模拟 MySQL 行为,避免 SQL 方言不兼容。

H2 内存数据库特点:
✅ 极快(无磁盘 I/O)
✅ 应用重启后数据自动清空,保证测试环境干净
❌ 数据不持久化,关闭连接即丢失
可以根据需要,调整为本地的MySQL 数据库。
3. GitHub Copilot 命令位置
OpenSpec 初始化后,会为 GitHub Copilot 生成两套配置:Prompts(斜杠命令)和 Skills(技能包)。它们协同工作,让 Copilot 能够遵循规范驱动开发流程。

可以这样理解:Prompts 是菜单上的快捷命令,Skills 是厨房里厨师遵循的完整菜谱。用户在 Chat 中输入命令后,AI 会读取对应的 Skill 来执行。

以 opsx-apply.prompt.md 为例,这是一个用于实施 OpenSpec 变更任务的实验性功能,核心是将规范文档转化为实际代码。
执行流程如下所示:
二、总结通过本次实战,我们演示了 OpenSpec + GitHub Copilot 的完整开发流程:

命令说明:
/opsx:propose:一步到位,创建变更并生成所有规划文档(proposal、specs、design、tasks)
/opsx:new:仅创建变更目录,不生成文档
/opsx:ff(fast-forward):为已有变更生成所有规划文档
/opsx:continue:逐个生成工件,适合逐步推进
根据 VS Code 扩展文档,OpenSpec v1.0+ 会在 .github/prompts/ 目录下生成以下 10 个命令文件:

OpenSpec 从 v0.x 升级到 v1.0 是一次破坏性更新,主要变化包括:

OpenSpec v1.2.0 引入了 Profiles 功能,可以控制安装哪些命令文件。
openspec config profile


如果提示:Global config is not applied to this project. Run `openspec update` to sync.
意思是:全局配置未应用于此项目。请运行“openspec update”命令以进行同步。
此时,可以执行:openspec update
OpenSpec 的核心价值在于:
规范先行:在写代码前先对齐需求上下文持久:规范文件受 Git 管理,AI 不会“失忆”存量项目友好:通过 /openspec-proposal 增量修改已有代码