OpenSpec 是一套面向 AI 辅助开发的规范注入系统,它通过结构化的工作流和规范文件,让 AI 工具能够更好地理解项目上下文并执行开发任务。这套系统特别适合需要频繁与 AI 协作的中大型项目,能够显著提升 AI 在项目中的可用性和一致性。
核心价值体现在三个方面:
提示:OpenSpec 不是银弹,它需要开发者投入时间配置初始规范,但长期来看能大幅减少与 AI 的沟通成本。
OpenSpec 基于 Node.js 开发,安装前需要确保:
全局安装命令:
bash复制npm install -g @fission-ai/openspec@latest
安装完成后,可以通过以下命令验证:
bash复制openspec --version
在项目根目录执行:
bash复制cd /path/to/your-project
openspec init
初始化过程会交互式询问:
初始化完成后,会根据选择的工具生成不同的目录结构。以 Claude Code 为例,典型结构如下:
code复制.claude/
├── commands/
│ └── openspec/
│ ├── apply.md
│ ├── archive.md
│ └── proposal.md
├── AGENTS.md
└── CLAUDE.md
OpenSpec 的核心创新在于"规范注入"机制。当 AI 处理开发任务时:
不同 AI 工具的集成方式有所差异:
| 工具类型 | 规范加载方式 | 自动触发 | 需要手动配置 |
|---|---|---|---|
| Claude Code | 自动读取 .claude/ 目录 | ✓ | ✗ |
| Cursor | 通过插件注入 | ✓ | 部分 |
| Trae (老版本) | 需手动粘贴到项目规则 | ✗ | ✓ |
| Trae (2026+) | 自动读取 AGENT.md | ✓ | ✗ |
对于不支持自动加载的工具,OpenSpec 提供了转换脚本:
bash复制openspec convert --target=trae
code复制/openspec:proposal
code复制/openspec:apply
bash复制openspec archive
这是最核心的规范文件,典型内容包含:
markdown复制# 项目规范
## 编码标准
- 缩进:2个空格
- 命名:camelCase 变量,PascalCase 类型
- 行宽:不超过 120 字符
## 变更控制
1. 所有 API 变更必须包含:
- 接口文档更新
- 版本兼容说明
- 迁移指南
## 安全要求
- 所有用户输入必须验证
- 敏感操作需要二次确认
- 错误消息不泄露系统信息
每个命令对应一个 .md 文件,例如 proposal.md:
markdown复制# 变更提案规范
## 必填字段
- 标题:简明描述变更
- 类型:[功能|修复|优化|重构]
- 优先级:[P0-P3]
- 预期工时:
## 内容要求
1. 问题描述:至少 3 句话
2. 解决方案:技术实现思路
3. 影响分析:上下游影响
4. 测试计划:验证方案
在 .claude/CLAUDE.md 中添加:
markdown复制# 自定义触发词
trigger_words:
- "需求"
- "新功能"
- "架构调整"
推荐的知识组织结构:
code复制openspec/
├── specs/ # 技术规范
│ ├── api.md
│ └── db.md
├── business/ # 业务知识
│ ├── domain.md
│ └── workflow.md
└── changes/ # 变更历史
在 package.json 中添加 pre-commit 钩子:
json复制{
"scripts": {
"precommit": "openspec validate"
}
}
可能原因及解决方案:
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
| AI 不响应规范 | 触发词不匹配 | 检查/更新 AGENTS.md 中的触发词列表 |
| 部分命令无效 | 目录结构错误 | 确认 .claude/commands 存在且可读 |
| 规范加载不全 | 文件权限问题 | 检查 .md 文件权限 (644) |
bash复制openspec config --cache-ttl=3600
bash复制openspec template create team-template
bash复制openspec init --template=team-template
在构建流程中添加规范检查:
yaml复制# .github/workflows/ci.yml
steps:
- name: Validate OpenSpec
run: openspec validate --strict
bash复制openspec stats --last-week
在实际项目中,我们团队通过 OpenSpec 将 AI 辅助开发的效率提升了约 40%,同时减少了约 60% 的规范违反情况。关键在于持续优化规范内容,使其既全面又不失灵活性。