kiro-spec-engine 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +60 -0
- package/LICENSE +21 -0
- package/README.md +242 -0
- package/README.zh.md +242 -0
- package/bin/kiro-spec-engine.js +229 -0
- package/lib/commands/doctor.js +59 -0
- package/lib/i18n.js +79 -0
- package/lib/python-checker.js +209 -0
- package/locales/en.json +114 -0
- package/locales/zh.json +114 -0
- package/package.json +78 -0
- package/template/.kiro/README.md +288 -0
- package/template/.kiro/specs/SPEC_WORKFLOW_GUIDE.md +134 -0
- package/template/.kiro/steering/CORE_PRINCIPLES.md +140 -0
- package/template/.kiro/steering/CURRENT_CONTEXT.md +85 -0
- package/template/.kiro/steering/ENVIRONMENT.md +115 -0
- package/template/.kiro/steering/RULES_GUIDE.md +46 -0
- package/template/.kiro/tools/ultrawork_enhancer.py +676 -0
- package/template/README.md +109 -0
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# 核心开发原则(基准规则)
|
|
2
|
+
|
|
3
|
+
> **重要**: 这些是项目的基准规则,适用于所有 Spec,不应随意修改。
|
|
4
|
+
> 场景特定的规则请参考 `CURRENT_CONTEXT.md`
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 📋 Spec 驱动开发工作流程
|
|
9
|
+
|
|
10
|
+
### Spec 命名规范
|
|
11
|
+
|
|
12
|
+
**格式**: `{序号}-{序号}-{简短描述}`
|
|
13
|
+
|
|
14
|
+
**规则**:
|
|
15
|
+
- 使用 kebab-case(小写字母,单词用连字符分隔)
|
|
16
|
+
- 必须包含两个序号(用连字符分隔)
|
|
17
|
+
- 描述应简洁明确,反映 Spec 核心目标
|
|
18
|
+
|
|
19
|
+
**示例**:
|
|
20
|
+
- ✅ `01-00-user-space-diagnosis`
|
|
21
|
+
- ✅ `01-01-fix-duplicate-file-space-calculation`
|
|
22
|
+
- ✅ `02-00-oauth-api-upgrade`
|
|
23
|
+
- ❌ `user-space-diagnosis`(缺少序号)
|
|
24
|
+
- ❌ `01-user-space-diagnosis`(只有一个序号)
|
|
25
|
+
- ❌ `FixDuplicateFile`(不是 kebab-case)
|
|
26
|
+
- ❌ `fix_duplicate_file`(使用下划线而非连字符)
|
|
27
|
+
|
|
28
|
+
### 标准工作流程
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
1. 创建 Spec → 2. requirements.md → 3. design.md → 4. tasks.md → 5. 执行任务 → 6. 产物归档
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Spec 目录结构
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
.kiro/specs/{feature-name}/
|
|
38
|
+
├── requirements.md, design.md, tasks.md
|
|
39
|
+
├── scripts/, reports/, diagnostics/, tests/, results/
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## ⚠️ 核心原则
|
|
45
|
+
|
|
46
|
+
### 1. Spec 驱动开发原则
|
|
47
|
+
|
|
48
|
+
**任何需求都必须先建立 Spec**
|
|
49
|
+
- 所有产物归档到 Spec 目录:scripts/, reports/, diagnostics/, tests/, results/
|
|
50
|
+
- 禁止将脚本、测试直接放到项目根目录
|
|
51
|
+
|
|
52
|
+
### 2. 文件管理原则
|
|
53
|
+
|
|
54
|
+
**禁止在根目录下随意生成临时文件**
|
|
55
|
+
- 临时文件用完立即删除
|
|
56
|
+
- 所有产物归档到对应的 Spec 目录
|
|
57
|
+
|
|
58
|
+
### 3. 代码质量原则
|
|
59
|
+
|
|
60
|
+
- 代码必须能够编译通过
|
|
61
|
+
- 修改后必须运行相关测试
|
|
62
|
+
- 遵循项目的编码规范
|
|
63
|
+
|
|
64
|
+
### 4. 🔥 Ultrawork 原则(借鉴 Sisyphus 精神)
|
|
65
|
+
|
|
66
|
+
**核心理念**: 像西西弗斯推石上山一样,永不放弃,不懈努力,直到任务完美完成
|
|
67
|
+
|
|
68
|
+
#### 执行标准
|
|
69
|
+
- **专业级质量**: 每个阶段追求生产级标准,不满足于"差不多"
|
|
70
|
+
- **不懈努力**: 遇到困难持续尝试解决方案,不轻易放弃或求助用户
|
|
71
|
+
- **完整交付**: 确保输出完整、准确、可用,达到专业水准
|
|
72
|
+
|
|
73
|
+
#### 各阶段 Ultrawork 要求
|
|
74
|
+
- **Requirements 阶段**: 像资深产品经理一样深入思考每个用户场景,考虑边界条件、异常情况、安全性、性能等各个方面
|
|
75
|
+
- **Design 阶段**: 像资深架构师一样设计每个组件,确保架构优雅、可扩展、易维护,考虑技术可行性和最佳实践
|
|
76
|
+
- **Tasks 阶段**: 像资深开发者一样实现每行代码,确保代码质量、测试覆盖、文档完整
|
|
77
|
+
|
|
78
|
+
#### 困难处理的 Ultrawork 精神
|
|
79
|
+
- **编译错误** → 仔细分析错误信息,理解根本原因,持续修复直到通过
|
|
80
|
+
- **逻辑问题** → 重新审视需求和设计,优化方案,不断迭代直到正确
|
|
81
|
+
- **技术难题** → 换个思路和角度,查阅资料,寻找最佳实践,持续突破
|
|
82
|
+
- **卡住不动** → 分解问题,从不同维度尝试,绝不轻易放弃
|
|
83
|
+
- **永不轻易转移责任给用户,而是主动承担和解决问题**
|
|
84
|
+
|
|
85
|
+
#### Ultrawork 质量标准
|
|
86
|
+
- **Requirements**: 覆盖所有场景,验收标准清晰可测试,考虑非功能需求
|
|
87
|
+
- **Design**: 架构合理,组件职责清晰,技术方案可行,有完整的双向追溯
|
|
88
|
+
- **Tasks**: 代码编译通过,测试全部通过,文档完整,符合最佳实践
|
|
89
|
+
|
|
90
|
+
### 5. 问题解决态度
|
|
91
|
+
|
|
92
|
+
**但凡有问题没有解决,一定是我搞错了**
|
|
93
|
+
- 不要轻易得出"这是外部服务的问题"的结论
|
|
94
|
+
- 必须继续找原因,直到最终修正
|
|
95
|
+
- 体现 Ultrawork 精神:���不放弃,持续推进
|
|
96
|
+
|
|
97
|
+
### 6. 问题解决流程
|
|
98
|
+
|
|
99
|
+
遇到问题时的检查顺序:
|
|
100
|
+
1. `.kiro/specs/` 中相关功能的文档
|
|
101
|
+
2. `.kiro/steering/` 中的规则
|
|
102
|
+
3. 项目根目录下的分析文档
|
|
103
|
+
|
|
104
|
+
### 6. 上下文管控原则
|
|
105
|
+
|
|
106
|
+
**必须主动管控上下文,避免 session token 耗尽**
|
|
107
|
+
|
|
108
|
+
**管控时机**:
|
|
109
|
+
- 每完成一组任务后:精简已完成任务的详细内容
|
|
110
|
+
- 每完成一个阶段后:更新 CURRENT_CONTEXT.md
|
|
111
|
+
- Token 使用率 > 50% 时:立即精简
|
|
112
|
+
- 阶段切换时:更新 CURRENT_CONTEXT.md 聚焦新阶段
|
|
113
|
+
|
|
114
|
+
**精简规则**:
|
|
115
|
+
- Spec 文档:保留任务标题和状态,删除详细实现步骤
|
|
116
|
+
- CURRENT_CONTEXT.md:只保留当前任务核心信息,删除历史详细数据
|
|
117
|
+
|
|
118
|
+
### 7. Spec 完成与 Steering 更新原则
|
|
119
|
+
|
|
120
|
+
**每完成一个 Spec,开始新 Spec 前,必须评估是否需要更新 Steering**
|
|
121
|
+
- 通用经验教训 → 更新 CORE_PRINCIPLES
|
|
122
|
+
- 当前 Spec 场景 → 更新 CURRENT_CONTEXT
|
|
123
|
+
|
|
124
|
+
### 8. 文档精简原则
|
|
125
|
+
|
|
126
|
+
**Spec 文档精简**:
|
|
127
|
+
- 已完成任务:保留标题和状态,删除详细实现
|
|
128
|
+
- 历史测试结果:保留结论,删除详细日志
|
|
129
|
+
- 文档 > 1000 行:立即拆分为多个文件
|
|
130
|
+
|
|
131
|
+
**Steering 文档精简**:
|
|
132
|
+
- CURRENT_CONTEXT.md 只保留当前 Spec 核心信息
|
|
133
|
+
- 历史数据归档到 Spec 目录
|
|
134
|
+
- Session 启动后 token 使用率 > 50%:立即精简
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
**版本**: v5.0
|
|
139
|
+
**更新**: 2026-01-22
|
|
140
|
+
**说明**: 适用于所有 Spec 的稳定核心原则
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# 当前场景规则(可变)
|
|
2
|
+
|
|
3
|
+
> **重要**: 这些规则针对当前 Spec 场景优化,每个新 Spec 开始前应该更新。
|
|
4
|
+
> 基准规则请参考 `CORE_PRINCIPLES.md`,环境配置请参考 `ENVIRONMENT.md`
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 🎯 当前状态
|
|
9
|
+
|
|
10
|
+
**状态**: 🆕 待开始
|
|
11
|
+
**Spec**: 无
|
|
12
|
+
**项目**: 简化测试项目
|
|
13
|
+
**最后更新**: 2026-01-22
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 📝 当前 Spec 信息
|
|
18
|
+
|
|
19
|
+
**当前无活跃 Spec**
|
|
20
|
+
|
|
21
|
+
请在开始新 Spec 前更新此文档:
|
|
22
|
+
1. 设置当前 Spec 名称和目标
|
|
23
|
+
2. 更简化测试项目信息
|
|
24
|
+
3. 记录当前阶段和进展
|
|
25
|
+
4. 清理历史 Spec 的详细内容
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## 🔧 Ultrawork 精神已集成
|
|
30
|
+
|
|
31
|
+
**可用工具**:
|
|
32
|
+
- ✅ `ultrawork_enhancer.py` - 三阶段质量增强工具
|
|
33
|
+
- ✅ `ultrawork.bat` - 便捷批处理脚本
|
|
34
|
+
- ✅ 专业级质量评估体系 (0-10 评分)
|
|
35
|
+
|
|
36
|
+
**使用方法**:
|
|
37
|
+
```bash
|
|
38
|
+
# 增强 Requirements
|
|
39
|
+
.\ultrawork.bat spec-name requirements
|
|
40
|
+
|
|
41
|
+
# 增强 Design
|
|
42
|
+
.\ultrawork.bat spec-name design
|
|
43
|
+
|
|
44
|
+
# 检查 Tasks
|
|
45
|
+
.\ultrawork.bat spec-name tasks
|
|
46
|
+
|
|
47
|
+
# 全阶段增强
|
|
48
|
+
.\ultrawork.bat spec-name all
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**参考文档**:
|
|
52
|
+
- `.kiro/README.md` - Kiro 系统说明
|
|
53
|
+
- `README.md` - 项目使用指南
|
|
54
|
+
- `ultrawork.bat` - 便捷脚本
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## 💡 提示
|
|
59
|
+
|
|
60
|
+
### 开始新 Spec 前的检查清单
|
|
61
|
+
|
|
62
|
+
- [ ] 确认 Spec 已创建(requirements.md, design.md)
|
|
63
|
+
- [ ] 更新本文档为新 Spec 的场景信息
|
|
64
|
+
- [ ] 移除上一个 Spec 的详细内容
|
|
65
|
+
- [ ] 只保留当前 Spec 的核心信息
|
|
66
|
+
- [ ] 检查 token 使用率
|
|
67
|
+
|
|
68
|
+
### 内容精简原则
|
|
69
|
+
|
|
70
|
+
**每完成一个 Spec**:
|
|
71
|
+
- 立即精简历史详细内容
|
|
72
|
+
- 只保留核心经验教训
|
|
73
|
+
- 为新 Spec 腾出空间
|
|
74
|
+
|
|
75
|
+
**Token 管控**:
|
|
76
|
+
- Token 使用率 > 50% 时,立即精简本文档
|
|
77
|
+
- 删除已完成阶段的详细配置和命令
|
|
78
|
+
- 保留关键经验教训 (1-2 行)
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
**版本**: v3.0
|
|
83
|
+
**创建**: 2026-01-22
|
|
84
|
+
**项目**: 通用 Kiro AI-OS 模板
|
|
85
|
+
**说明**: 已清理项目特定内容,可复制到简化测试项目使用
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# 项目环境配置(模板)
|
|
2
|
+
|
|
3
|
+
> **重要**: 这是项目的环境配置模板,复制到新项目时请根据实际情况修改。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 📋 项目基本信息
|
|
8
|
+
|
|
9
|
+
- **项目名称**: 测试项目
|
|
10
|
+
- **项目类型**: Kiro Spec 驱动开发项目
|
|
11
|
+
- **核心技术**: Kiro Spec + Ultrawork 精神增强
|
|
12
|
+
- **开发语言**: [根据项目调整]
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 🖥️ 开发环境
|
|
17
|
+
|
|
18
|
+
### 本地环境
|
|
19
|
+
- **操作系统**: Windows (cmd shell)
|
|
20
|
+
- **Python**: 3.8+ (用于 Ultrawork 工具)
|
|
21
|
+
- **Kiro IDE**: 最新版本
|
|
22
|
+
|
|
23
|
+
### 核心组件
|
|
24
|
+
- **Spec 系统**: `.kiro/specs/` - Spec 驱动开发的核心
|
|
25
|
+
- **Steering 系统**: `.kiro/steering/` - AI 行为规则和上下文管理
|
|
26
|
+
- **工具系统**: `.kiro/tools/` - Ultrawork 增强工具
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 🔧 配置文件
|
|
31
|
+
|
|
32
|
+
**核心配置**:
|
|
33
|
+
- `CORE_PRINCIPLES.md` - 基准开发规则(包含 Ultrawork 原则)
|
|
34
|
+
- `ENVIRONMENT.md` - 环境配置(本文件)
|
|
35
|
+
- `CURRENT_CONTEXT.md` - 当前 Spec 场景(每个 Spec 更新)
|
|
36
|
+
- `RULES_GUIDE.md` - 规则索引
|
|
37
|
+
|
|
38
|
+
**Spec 结构**:
|
|
39
|
+
- `requirements.md` - 需求文档
|
|
40
|
+
- `design.md` - 设计文档
|
|
41
|
+
- `tasks.md` - 任务列表
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 🌐 关键目录
|
|
46
|
+
|
|
47
|
+
- `.kiro/specs/` - 所有 Spec 的存储目录
|
|
48
|
+
- `.kiro/steering/` - AI 行为规则和上下文
|
|
49
|
+
- `.kiro/tools/` - Ultrawork 增强工具
|
|
50
|
+
- `docs/` - 项目文档
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## 🔐 AI 权限
|
|
55
|
+
|
|
56
|
+
**授权范围**:
|
|
57
|
+
- ✅ 查看和修改 Spec 文档
|
|
58
|
+
- ✅ 创建和修改 Steering 规则
|
|
59
|
+
- ✅ 使用 Ultrawork 工具增强质量
|
|
60
|
+
- ✅ 执行 Python 脚本(工具层)
|
|
61
|
+
- ❌ 不能修改核心原则(CORE_PRINCIPLES.md)未经用户同意
|
|
62
|
+
|
|
63
|
+
**操作限制**:
|
|
64
|
+
- 修改 CORE_PRINCIPLES.md 前必须征得用户同意
|
|
65
|
+
- 创建新工具前应先在 Spec 中设计
|
|
66
|
+
- 保持"有节制的 AI 权限"原则
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## 📦 项目结构
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
project-root/
|
|
74
|
+
├── .kiro/ # Kiro 核心目录
|
|
75
|
+
│ ├── specs/ # Spec 存储
|
|
76
|
+
│ │ └── SPEC_WORKFLOW_GUIDE.md
|
|
77
|
+
│ ├── steering/ # AI 行为规则
|
|
78
|
+
│ │ ├── CORE_PRINCIPLES.md
|
|
79
|
+
│ │ ├── ENVIRONMENT.md (本文件)
|
|
80
|
+
│ │ ├── CURRENT_CONTEXT.md
|
|
81
|
+
│ │ └── RULES_GUIDE.md
|
|
82
|
+
│ ├── tools/ # Ultrawork 工具
|
|
83
|
+
│ │ └── ultrawork_enhancer.py
|
|
84
|
+
│ ├── ultrawork-application-guide.md
|
|
85
|
+
│ ├── ultrawork-integration-summary.md
|
|
86
|
+
│ └── sisyphus-deep-dive.md
|
|
87
|
+
├── docs/ # 项目文档
|
|
88
|
+
├── ultrawork.bat # Ultrawork 便捷脚本
|
|
89
|
+
└── README.md # 项目说明
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## 🔥 Ultrawork 功能
|
|
95
|
+
|
|
96
|
+
**已集成 Sisyphus 的"不懈努力"精神**:
|
|
97
|
+
- 专业级质量评估体系 (0-10 评分)
|
|
98
|
+
- Requirements/Design/Tasks 三阶段增强
|
|
99
|
+
- 自动改进识别和应用
|
|
100
|
+
- 便捷的批处理脚本
|
|
101
|
+
|
|
102
|
+
**使用方法**:
|
|
103
|
+
```bash
|
|
104
|
+
.\ultrawork.bat spec-name requirements # 增强需求文档
|
|
105
|
+
.\ultrawork.bat spec-name design # 增强设计文档
|
|
106
|
+
.\ultrawork.bat spec-name tasks # 检查任务完成
|
|
107
|
+
.\ultrawork.bat spec-name all # 全阶段增强
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
**版本**: v4.0
|
|
113
|
+
**更新**: 2026-01-22
|
|
114
|
+
**项目**: 通用 Kiro Spec 项目模板
|
|
115
|
+
**说明**: 已清理项目特定内容,集成 Ultrawork 精神,可复制使用
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Steering 规则索引
|
|
2
|
+
|
|
3
|
+
> **快速参考**: 各文件职责和快速链接
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 📚 文件列表
|
|
8
|
+
|
|
9
|
+
| 文件 | 职责 | 更新频率 |
|
|
10
|
+
|------|------|---------|
|
|
11
|
+
| **CORE_PRINCIPLES.md** | 核心开发规范 | 很少 |
|
|
12
|
+
| **ENVIRONMENT.md** | 环境配置 | 很少 |
|
|
13
|
+
| **CURRENT_CONTEXT.md** | 当前 Spec 场景 | 每个 Spec ⚠️ |
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 🔗 快速链接
|
|
18
|
+
|
|
19
|
+
- **当前场景**: `CURRENT_CONTEXT.md` - 当前正在推进的 Spec
|
|
20
|
+
- **开发规范**: `CORE_PRINCIPLES.md` - 适用于所有 Spec 的规范
|
|
21
|
+
- **环境配置**: `ENVIRONMENT.md` - 项目环境信息
|
|
22
|
+
- **Spec 工作流**: `../ specs/SPEC_WORKFLOW_GUIDE.md` - Spec 创建和执行流程
|
|
23
|
+
- **体系说明**: `../README.md` - 新项目引导文档
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## ⚠️ 重要提示
|
|
28
|
+
|
|
29
|
+
### CURRENT_CONTEXT.md 管控
|
|
30
|
+
|
|
31
|
+
- **每个新 Spec 开始前**:更新为新 Spec 的场景
|
|
32
|
+
- **Spec 推进中**:及时精简已完成内容
|
|
33
|
+
- **Spec 完成后**:清空,准备下一个 Spec
|
|
34
|
+
- **Token 消耗 > 50% 时**:立即精简
|
|
35
|
+
|
|
36
|
+
### 精简策略
|
|
37
|
+
|
|
38
|
+
- ❌ 删除:已完成阶段的详细配置、命令、表格
|
|
39
|
+
- ❌ 删除:历史测试数据和详细流程
|
|
40
|
+
- ✅ 保留:当前阶段的核心信息
|
|
41
|
+
- ✅ 保留:关键经验教训(1-2 行)
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
**版本**: v2.0
|
|
46
|
+
**更新**: 2025-01-22
|