Skip to content

Commit f586eb5

Browse files
committed
fix:test and fix Chinese
1 parent 338adfb commit f586eb5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+620
-593
lines changed

Makefile

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
PNPM ?= pnpm
55
NODE ?= node
66

7-
.PHONY: all install deps build link unlink clean release
7+
.PHONY: all install deps build link unlink clean release test
88

99
# Default: install deps, build, and link as global "openspec-cn"
1010
all: install
@@ -34,4 +34,7 @@ clean:
3434

3535
# Release a new version to npm (publishes @studyzy/openspec-cn)
3636
release:
37-
$(PNPM) run release:local
37+
$(PNPM) run release:local
38+
39+
test:
40+
$(PNPM) test

README.md

Lines changed: 80 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,14 @@
2626
关注 <a href="https://x.com/0xTab">X平台上的@0xTab</a> 获取最新动态 · 加入 <a href="https://discord.gg/YctCnvvshC">OpenSpec Discord社区</a> 获取帮助和解答疑问
2727
</p>
2828

29-
# OpenSpec
29+
# OpenSpec 简体中文版
30+
31+
> **注意:** 这是 OpenSpec 的简体中文本地化版本。所有命令输出、错误信息、模板和提示均已翻译为简体中文。
32+
>
33+
> - 📦 包名:`@studyzy/openspec-cn`
34+
> - 🔧 命令:`openspec-cn` (取代原版的 `openspec`)
35+
> - 🌐 原版英文项目:[Fission-AI/OpenSpec](https://github.com/Fission-AI/OpenSpec)
36+
> - 📝 本项目地址:[studyzy/OpenSpec-cn](https://github.com/studyzy/OpenSpec-cn)
3037
3138
OpenSpec 通过规范驱动开发,让人工智能编程助手与人类开发者在对需求达成共识后再开始编码工作。**无需API密钥即可使用。**
3239

@@ -40,7 +47,7 @@ AI编程助手虽然功能强大,但当需求仅存在于聊天记录中时,
4047
- 共享可见性,清晰了解哪些内容处于提案、活跃或归档状态
4148
- 兼容您已使用的AI工具:支持自定义斜杠命令,其他场景使用上下文规则
4249

43-
## OpenSpec 与其他方案对比(概览)
50+
## OpenSpec 与其他方案对比 (概览)
4451

4552
- **轻量级**:简单的工作流程,无需API密钥,最小化设置
4653
- **面向存量项目优先**:在0→1之外同样表现优异。OpenSpec将真实来源与提案分离:`openspec/specs/`(当前真实状态)和 `openspec/changes/`(提案更新)。这使得跨功能的差异明确且可管理
@@ -52,27 +59,28 @@ AI编程助手虽然功能强大,但当需求仅存在于聊天记录中时,
5259
## 工作原理
5360

5461
```
55-
┌────────────────────┐
56-
│ 起草变更提案 │
57-
└────────┬───────────┘
58-
│ 与AI共享意图
59-
60-
┌────────────────────┐
61-
│ 审查与对齐 │
62-
│ (编辑规范/任务) │◀──── 反馈循环 ──────┐
63-
└────────┬───────────┘ │
64-
│ 批准计划 │
65-
▼ │
66-
┌────────────────────┐ │
67-
│ 实施任务 │──────────────────────────┘
68-
│ (AI编写代码) │
69-
└────────┬───────────┘
70-
│ 交付变更
71-
72-
┌────────────────────┐
73-
│ 归档与更新 │
74-
│ 规范(真实来源) │
75-
└────────────────────┘
62+
┌────────────────────────┐
63+
│ 起草变更提案 │
64+
└────────────┬───────────┘
65+
│ 与AI共享意图
66+
67+
┌────────────────────────┐
68+
│ 审查与对齐 │
69+
│ (编辑规范/任务) │◀──── 反馈循环 ──────┐
70+
└────────────┬───────────┘ │
71+
│ 批准计划 │
72+
▼ │
73+
┌────────────────────────┐ │
74+
│ 实施任务 │──────────────────────────┘
75+
│ (AI编写代码) │
76+
└────────────┬───────────┘
77+
│ 交付变更
78+
79+
┌────────────────────────┐
80+
│ 归档与更新 │
81+
│ 规范(真实来源) │
82+
└────────────────────────┘
83+
```
7684

7785
1. 起草包含所需规范更新的变更提案
7886
2. 与AI助手一起审查提案,直到各方达成共识
@@ -134,12 +142,12 @@ Kilo Code会自动发现团队工作流。将生成的文件保存在 `.kilocode
134142
#### 步骤1:全局安装CLI
135143

136144
```bash
137-
npm install -g @fission-ai/openspec@latest
145+
npm install -g @studyzy/openspec-cn@latest
138146
```
139147

140148
验证安装:
141149
```bash
142-
openspec --version
150+
openspec-cn --version
143151
```
144152

145153
#### 步骤2:在项目中初始化OpenSpec
@@ -151,7 +159,7 @@ cd my-project
151159

152160
运行初始化:
153161
```bash
154-
openspec init
162+
openspec-cn init
155163
```
156164

157165
**初始化过程中会发生什么:**
@@ -161,12 +169,12 @@ openspec init
161169

162170
**设置完成后:**
163171
- 主要AI工具可以触发 `/openspec` 工作流,无需额外配置
164-
- 运行 `openspec list` 来验证设置并查看任何活跃的变更
172+
- 运行 `openspec-cn list` 来验证设置并查看任何活跃的变更
165173
- 如果您的编程助手没有立即显示新的斜杠命令,请重新启动它。斜杠命令在启动时加载,因此重新启动可确保它们出现
166174

167175
### 可选:填充项目上下文
168176

169-
`openspec init` 完成后,您将收到一个建议提示,帮助填充项目上下文:
177+
`openspec-cn init` 完成后,您将收到一个建议提示,帮助填充项目上下文:
170178

171179
```text
172180
填充您的项目上下文:
@@ -175,6 +183,30 @@ openspec init
175183

176184
使用 `openspec/project.md` 来定义项目级别的约定、标准、架构模式以及其他应在所有变更中遵循的指南。
177185

186+
### 简体中文版特点
187+
188+
本中文版提供完整的简体中文体验:
189+
190+
**已汉化内容:**
191+
- ✅ 所有CLI命令的输出和提示信息
192+
- ✅ 错误消息和警告
193+
- ✅ 所有AI工具的斜杠命令模板(proposal、apply、archive)
194+
- ✅ AGENTS.md 和 project.md 模板
195+
- ✅ 交互式提示和确认消息
196+
- ✅ 帮助文档和使用说明
197+
198+
**命令对比:**
199+
| 功能 | 英文版 | 中文版 |
200+
|------|--------|--------|
201+
| 包名 | `@fission-ai/openspec` | `@studyzy/openspec-cn` |
202+
| 命令 | `openspec` | `openspec-cn` |
203+
| 列出变更 | `openspec list` | `openspec-cn list` |
204+
| 初始化 | `openspec init` | `openspec-cn init` |
205+
| 验证 | `openspec validate` | `openspec-cn validate` |
206+
207+
**兼容性:**
208+
所有生成的文件结构、规范格式和工作流程与英文版完全兼容。您可以在团队中混合使用两个版本,只需根据个人偏好选择命令即可。
209+
178210
### 创建您的第一个变更
179211

180212
这是一个展示完整OpenSpec工作流程的真实示例。这适用于任何AI工具。具有原生斜杠命令的工具会自动识别快捷键。
@@ -194,9 +226,9 @@ AI: 我将为配置文件筛选器创建OpenSpec变更提案。
194226
检查变更是否正确创建并审查提案:
195227

196228
```bash
197-
$ openspec list # 确认变更文件夹存在
198-
$ openspec validate add-profile-filters # 验证规范格式
199-
$ openspec show add-profile-filters # 审查提案、任务和规范增量
229+
$ openspec-cn list # 确认变更文件夹存在
230+
$ openspec-cn validate add-profile-filters # 验证规范格式
231+
$ openspec-cn show add-profile-filters # 审查提案、任务和规范增量
200232
```
201233

202234
#### 3. 完善规范
@@ -231,25 +263,25 @@ AI: 所有任务已完成。实施已准备就绪。
231263
(斜杠命令工具的快捷方式: /openspec:archive add-profile-filters)
232264
233265
AI: 我将归档 add-profile-filters 变更。
234-
*运行: openspec archive add-profile-filters --yes*
266+
*运行: openspec-cn archive add-profile-filters --yes*
235267
✓ 变更成功归档。规范已更新。准备下一个功能!
236268
```
237269

238270
或者在终端中自己运行命令:
239271
```bash
240-
$ openspec archive add-profile-filters --yes # 无提示归档已完成的变更
272+
$ openspec-cn archive add-profile-filters --yes # 无提示归档已完成的变更
241273
```
242274

243275
**注意:** 具有原生斜杠命令的工具(Claude Code、CodeBuddy、Cursor、Codex、Qoder、RooCode)可以使用显示的快捷方式。所有其他工具都通过自然语言请求工作,如"创建OpenSpec提案"、"应用OpenSpec变更"或"归档变更"。
244276

245277
## 命令参考
246278

247279
```bash
248-
openspec list # 查看活跃的变更文件夹
249-
openspec view # 规范和变更的交互式仪表板
250-
openspec show <变更名称> # 显示变更详情(提案、任务、规范更新)
251-
openspec validate <变更名称> # 检查规范格式和结构
252-
openspec archive <变更名称> [--yes|-y] # 将完成的变更移动到archive/(使用--yes为非交互式)
280+
openspec-cn list # 查看活跃的变更文件夹
281+
openspec-cn view # 规范和变更的交互式仪表板
282+
openspec-cn show <变更名称> # 显示变更详情(提案、任务、规范更新)
283+
openspec-cn validate <变更名称> # 检查规范格式和结构
284+
openspec-cn archive <变更名称> [--yes|-y] # 将完成的变更移动到archive/(使用--yes为非交互式)
253285
```
254286

255287
## 示例:AI如何创建OpenSpec文件
@@ -280,10 +312,10 @@ openspec/
280312
认证和会话管理。
281313

282314
## 需求
283-
### 需求用户认证
315+
### 需求: 用户认证
284316
系统应在成功登录时签发JWT。
285317

286-
#### 场景有效凭据
318+
#### 场景: 有效凭据
287319
- 当用户提交有效凭据时
288320
- 则应返回JWT
289321
```
@@ -294,10 +326,10 @@ openspec/
294326
# 认证增量
295327

296328
## 新增需求
297-
### 需求双因素认证
329+
### 需求: 双因素认证
298330
系统必须在登录期间要求第二个因素。
299331

300-
#### 场景需要OTP
332+
#### 场景: 需要OTP
301333
- 当用户提交有效凭据时
302334
- 则需要OTP挑战
303335
```
@@ -332,11 +364,11 @@ openspec/
332364
- **`## 移除的需求`** - 弃用的功能
333365

334366
**格式要求:**
335-
- 使用 `### 需求<名称>` 作为标题
336-
- 每个需求至少需要一个 `#### 场景`
367+
- 使用 `### 需求: <名称>` 作为标题
368+
- 每个需求至少需要一个 `#### 场景:`
337369
- 在需求文本中使用SHALL/MUST
338370

339-
## OpenSpec与其他方案对比
371+
## How OpenSpec Compares(OpenSpec与其他方案对比
340372

341373
### 对比 spec-kit
342374
OpenSpec的双文件夹模型(`openspec/specs/` 用于当前真实状态,`openspec/changes/` 用于提案更新)将状态和差异分开。当您修改现有功能或涉及多个规范时,这种模型具有良好的扩展性。spec-kit在全新项目/0→1方面表现出色,但在跨规范更新和演进功能方面提供的结构较少。
@@ -349,12 +381,12 @@ OpenSpec将每个功能的变更分组到一个文件夹中(`openspec/changes/
349381

350382
## 团队采用
351383

352-
1. **初始化OpenSpec** – 在您的仓库中运行 `openspec init`
384+
1. **初始化OpenSpec** – 在您的仓库中运行 `openspec-cn init`
353385
2. **从新功能开始** – 要求您的AI将即将进行的工作捕获为变更提案。
354386
3. **逐步增长** – 每个变更都会归档到记录您系统的活跃规范中。
355387
4. **保持灵活性** – 不同的团队成员可以使用Claude Code、CodeBuddy、Cursor或任何AGENTS.md兼容的工具,同时共享相同的规范。
356388

357-
每当有人切换工具时,运行 `openspec update`,以便您的代理获取最新的指令和斜杠命令绑定。
389+
每当有人切换工具时,运行 `openspec-cn update`,以便您的代理获取最新的指令和斜杠命令绑定。
358390

359391
## 更新OpenSpec
360392

@@ -363,7 +395,7 @@ OpenSpec将每个功能的变更分组到一个文件夹中(`openspec/changes/
363395
npm install -g @fission-ai/openspec@latest
364396
```
365397
2. **刷新代理指令**
366-
- 在每个项目中运行 `openspec update`,重新生成AI指导并确保最新的斜杠命令处于活动状态。
398+
- 在每个项目中运行 `openspec-cn update`,重新生成AI指导并确保最新的斜杠命令处于活动状态。
367399

368400
## 贡献
369401

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
## 1. CLI 命令汉化
2-
- [ ] 1.1 直接汉化 `openspec init` 命令的所有用户界面文本
3-
- [ ] 1.2 直接汉化 `openspec list` 命令的输出和提示
4-
- [ ] 1.3 直接汉化 `openspec show` 命令的显示格式
5-
- [ ] 1.4 直接汉化 `openspec validate` 命令的验证消息
6-
- [ ] 1.5 直接汉化 `openspec archive` 命令的确认提示
7-
- [ ] 1.6 直接汉化 `openspec update` 命令的更新消息
2+
- [x] 1.1 直接汉化 `openspec init` 命令的所有用户界面文本
3+
- [x] 1.2 直接汉化 `openspec list` 命令的输出和提示
4+
- [x] 1.3 直接汉化 `openspec show` 命令的显示格式
5+
- [x] 1.4 直接汉化 `openspec validate` 命令的验证消息
6+
- [x] 1.5 直接汉化 `openspec archive` 命令的确认提示
7+
- [x] 1.6 直接汉化 `openspec update` 命令的更新消息
88

99
## 2. 模板文件汉化
10-
- [ ] 2.1 创建简体中文版本的 `AGENTS.md` 模板
11-
- [ ] 2.2 汉化所有 slash command 模板内容
12-
- [ ] 2.3 汉化项目模板文件
13-
- [ ] 2.4 更新模板生成逻辑以使用中文模板
10+
- [x] 2.1 创建简体中文版本的 `AGENTS.md` 模板
11+
- [x] 2.2 汉化所有 slash command 模板内容
12+
- [x] 2.3 汉化项目模板文件
13+
- [x] 2.4 更新模板生成逻辑以使用中文模板
1414

1515
## 3. 测试和验证
16-
- [ ] 3.1 验证所有汉化文本在上下文中的正确性
17-
- [ ] 3.2 确保汉化版本功能与英文版本一致
18-
- [ ] 3.3 测试汉化版本在各种场景下的表现
16+
- [x] 3.1 验证所有汉化文本在上下文中的正确性
17+
- [x] 3.2 确保汉化版本功能与英文版本一致
18+
- [x] 3.3 测试汉化版本在各种场景下的表现
1919

2020
## 4. 文档说明
21-
- [ ] 4.1 在 README 中说明中文版本的使用方法
22-
- [ ] 4.2 提供中文版本的快速使用指南
21+
- [x] 4.1 在 README 中说明中文版本的使用方法
22+
- [x] 4.2 提供中文版本的快速使用指南

0 commit comments

Comments
 (0)