@geeseeker/easyai-dev 3.0.2 → 3.0.4
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/README.md +2 -2
- package/lib/init.js +3 -2
- package/lib/server/tools/framework-tools.d.ts.map +1 -1
- package/lib/server/tools/framework-tools.js +3 -2
- package/lib/server/tools/framework-tools.js.map +1 -1
- package/package.json +1 -1
- package/skeleton/.agents/rules/project-identity.md +10 -8
- package/skeleton/.agents/skills/common-session-close/SKILL.md +26 -2
- package/skeleton/.agents/skills/pm-brainstorm/SKILL.md +2 -0
- package/skeleton/.agents/skills/pm-framework-evolve/SKILL.md +165 -0
- package/skeleton/.agents/skills/pm-framework-evolve/changelog/index.md +11 -0
- package/skeleton/.agents/skills/pm-framework-evolve/references/architecture.md +51 -0
- package/skeleton/.agents/skills/pm-framework-evolve/references/directory-map.md +86 -0
- package/skeleton/.agents/skills/pm-framework-evolve/references/features.md +98 -0
- package/skeleton/.agents/skills/pm-framework-evolve/references/github-info.md +27 -0
- package/skeleton/.agents/skills/pm-framework-evolve/references/installation.md +62 -0
- package/skeleton/.agents/skills/pm-framework-evolve/resources/changelog-entry-template.md +43 -0
- package/skeleton/.agents/skills/pm-task-review/SKILL.md +52 -9
- package/skeleton/.docs/README.md +1 -1
- package/skeleton/gitignore.template +30 -0
- package/skeleton/.agents/skills/common-framework-evolve/.gitkeep +0 -0
- package/skeleton/.agents/skills/common-framework-evolve/SKILL.md +0 -105
package/README.md
CHANGED
|
@@ -28,7 +28,7 @@ easyAI 是一个为 [Antigravity IDE](https://antigravity.google/) 打造的 **A
|
|
|
28
28
|
| 🧠 **记忆系统** | journal 日志 + Artifacts 沉淀,跨会话不丢失上下文 |
|
|
29
29
|
| 🛡️ **反幻觉** | 第三方 API 必须查文档,禁止凭记忆编码 |
|
|
30
30
|
| ✅ **TDD 铁律** | 所有新功能必须先写测试,Worker 无法跳过 |
|
|
31
|
-
| 🔧 **MCP 集成** |
|
|
31
|
+
| 🔧 **MCP 集成** | 21 个工具 + 6 个数据源,通过 MCP 协议与 IDE 深度集成 |
|
|
32
32
|
|
|
33
33
|
---
|
|
34
34
|
|
|
@@ -124,7 +124,7 @@ npx @geeseeker/easyai-dev serve # 启动 MCP Server
|
|
|
124
124
|
|
|
125
125
|
## 📄 许可证
|
|
126
126
|
|
|
127
|
-
[MIT](LICENSE)
|
|
127
|
+
[MIT](LICENSE) | [更新日志](CHANGELOG.md)
|
|
128
128
|
|
|
129
129
|
---
|
|
130
130
|
|
package/lib/init.js
CHANGED
|
@@ -27,7 +27,7 @@ const NC = "\x1b[0m";
|
|
|
27
27
|
const SKELETON_DIR = path.join(__dirname, "..", "skeleton");
|
|
28
28
|
|
|
29
29
|
// 框架版本
|
|
30
|
-
const FRAMEWORK_VERSION = "3.0.
|
|
30
|
+
const FRAMEWORK_VERSION = "3.0.4";
|
|
31
31
|
|
|
32
32
|
// 需要检查的必需目录
|
|
33
33
|
const REQUIRED_DIRS = [
|
|
@@ -100,7 +100,8 @@ function copyDirSync(
|
|
|
100
100
|
* 将新条目追加到已有的 .gitignore 中(不产生重复行)
|
|
101
101
|
*/
|
|
102
102
|
function mergeGitignore(targetDir) {
|
|
103
|
-
|
|
103
|
+
// npm 不打包 .gitignore 文件,skeleton 中使用 gitignore.template
|
|
104
|
+
const skeletonGitignore = path.join(SKELETON_DIR, "gitignore.template");
|
|
104
105
|
const targetGitignore = path.join(targetDir, ".gitignore");
|
|
105
106
|
|
|
106
107
|
if (!fs.existsSync(skeletonGitignore)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framework-tools.d.ts","sourceRoot":"","sources":["../../src/tools/framework-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"framework-tools.d.ts","sourceRoot":"","sources":["../../src/tools/framework-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsHpE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyI7D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkG9D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+H/D"}
|
|
@@ -15,7 +15,7 @@ const __dirname = path.dirname(__filename);
|
|
|
15
15
|
// skeleton 在 npm 包中的位置:lib/server/tools/ → 向上 3 级 → skeleton/
|
|
16
16
|
const SKELETON_DIR = path.resolve(__dirname, "..", "..", "..", "skeleton");
|
|
17
17
|
// 框架版本(与 package.json 保持一致)
|
|
18
|
-
const FRAMEWORK_VERSION = "3.0.
|
|
18
|
+
const FRAMEWORK_VERSION = "3.0.4";
|
|
19
19
|
// 必需目录
|
|
20
20
|
const REQUIRED_DIRS = [
|
|
21
21
|
".agents/rules",
|
|
@@ -69,7 +69,8 @@ function copyDirSync(src, dest, noOverwrite = false) {
|
|
|
69
69
|
* 合并 .gitignore
|
|
70
70
|
*/
|
|
71
71
|
function mergeGitignore(targetDir) {
|
|
72
|
-
|
|
72
|
+
// npm 不打包 .gitignore 文件,skeleton 中使用 gitignore.template
|
|
73
|
+
const skeletonGitignore = path.join(SKELETON_DIR, "gitignore.template");
|
|
73
74
|
const targetGitignore = path.join(targetDir, ".gitignore");
|
|
74
75
|
if (!fs.existsSync(skeletonGitignore)) {
|
|
75
76
|
return "⊘ skeleton 中无 .gitignore";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framework-tools.js","sourceRoot":"","sources":["../../src/tools/framework-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"framework-tools.js","sourceRoot":"","sources":["../../src/tools/framework-tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -20,18 +20,20 @@ easyAI-dev/
|
|
|
20
20
|
│ ├── tasks/ ← 任务管理(含 archive/)
|
|
21
21
|
│ ├── workspace/ ← 开发者记忆(journal)
|
|
22
22
|
│ └── config/ ← 框架配置
|
|
23
|
-
└── .docs/ ←
|
|
24
|
-
├──
|
|
25
|
-
├──
|
|
26
|
-
├── guides/ ←
|
|
27
|
-
├── notes/ ←
|
|
28
|
-
└── archive/ ←
|
|
23
|
+
└── .docs/ ← 用户文档空间
|
|
24
|
+
├── requirements/ ← 需求文档(用户 → AI)
|
|
25
|
+
├── design/ ← 设计文档(AI ↔ 用户)
|
|
26
|
+
├── guides/ ← 使用指南(AI → 用户)
|
|
27
|
+
├── notes/ ← 临时文档(用户 ↔ AI)
|
|
28
|
+
└── archive/ ← 归档(各文件夹中作废/不再适配的历史文档)
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
##
|
|
31
|
+
## 知识获取
|
|
32
32
|
|
|
33
|
-
-
|
|
33
|
+
- **框架知识**:激活 `pm-framework-evolve` Skill → 读取 `references/` 目录
|
|
34
|
+
- **项目规范**:`.trellis/spec/` 目录(通过 `spec://` 资源访问)
|
|
34
35
|
- **框架配置**:`.trellis/config/config.yaml`
|
|
36
|
+
- **用户文档**:`.docs/` 目录(requirements → design → guides 信息流)
|
|
35
37
|
|
|
36
38
|
## 角色系统
|
|
37
39
|
|
|
@@ -49,7 +49,30 @@ task_append_log({
|
|
|
49
49
|
})
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
### 4.
|
|
52
|
+
### 4. Artifacts 文档沉淀检查
|
|
53
|
+
|
|
54
|
+
> 本质:在会话收尾时充当"最后一道提醒",确保面向用户的有价值内容不会随会话消散。
|
|
55
|
+
|
|
56
|
+
1. **扫描本会话 Artifacts**
|
|
57
|
+
- 检查本会话创建的所有 Artifacts
|
|
58
|
+
- 识别面向用户的内容(排除 `task.md` 等过程性文件)
|
|
59
|
+
|
|
60
|
+
2. **列出候选沉淀内容**
|
|
61
|
+
- 向用户展示候选文档列表,说明每项的建议目标路径:
|
|
62
|
+
|
|
63
|
+
| Artifacts 类型 | 建议沉淀目标 |
|
|
64
|
+
|----------------|-------------|
|
|
65
|
+
| `walkthrough.md` | `.docs/notes/` 或 `.docs/guides/` |
|
|
66
|
+
| `other`(分析报告等) | `.docs/notes/` 或 `.docs/design/` |
|
|
67
|
+
| `implementation_plan.md` | 通常已由 `pm-brainstorm` Step 6 处理,跳过 |
|
|
68
|
+
| `task.md` | 不沉淀(`.trellis/tasks/` 已持久化) |
|
|
69
|
+
|
|
70
|
+
3. **用户确认后执行**
|
|
71
|
+
- 用户确认需要沉淀 → 提炼内容并写入目标路径
|
|
72
|
+
- 用户确认无需沉淀 → 跳过
|
|
73
|
+
- 告知用户沉淀结果
|
|
74
|
+
|
|
75
|
+
### 5. 输出恢复指引
|
|
53
76
|
|
|
54
77
|
向用户输出收尾报告和 PATEOAS 导航:
|
|
55
78
|
|
|
@@ -60,6 +83,7 @@ task_append_log({
|
|
|
60
83
|
|
|
61
84
|
- ✅ Journal 日志已写入
|
|
62
85
|
- ✅ 任务记录已更新
|
|
86
|
+
- {✅ 文档已沉淀到 `.docs/` / ⚠️ 无需沉淀}
|
|
63
87
|
|
|
64
88
|
### PATEOAS 导航
|
|
65
89
|
|
|
@@ -73,7 +97,7 @@ task_append_log({
|
|
|
73
97
|
|
|
74
98
|
- 当前角色:{PM / Worker}
|
|
75
99
|
- 当前阶段:SESSION_CLOSE
|
|
76
|
-
- 已沉淀:Journal ✅ | 任务记录 ✅
|
|
100
|
+
- 已沉淀:Journal ✅ | 任务记录 ✅ | .docs/ {✅/⚠️ 无需沉淀}
|
|
77
101
|
- 遗留事项:{有/无} — {具体内容}
|
|
78
102
|
```
|
|
79
103
|
|
|
@@ -65,6 +65,8 @@ PM 接收到用户新需求时,**必须**先激活本 Skill 完成需求澄清
|
|
|
65
65
|
|
|
66
66
|
### Step 6:持久化设计(HARD-GATE #2)
|
|
67
67
|
|
|
68
|
+
> **Artifacts 沉淀**:这一步的本质是将 Artifacts 中的 `implementation_plan` 提炼并持久化到 `.docs/design/`,使设计成果从会话热记忆沉淀为项目持久文档。
|
|
69
|
+
|
|
68
70
|
设计确认后,**必须**先持久化为设计文档,再创建任务:
|
|
69
71
|
|
|
70
72
|
1. 将确认的设计写入 `.docs/design/{feature-name}.md`
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pm-framework-evolve
|
|
3
|
+
description: PM 框架自迭代 — 框架百科查询、安全迭代、迭代记录、知识库自更新。PM 需要修改框架核心文件或查询框架知识时激活。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PM 框架自迭代
|
|
7
|
+
|
|
8
|
+
## 适用场景
|
|
9
|
+
|
|
10
|
+
PM 角色在以下场景**必须**激活本 Skill:
|
|
11
|
+
|
|
12
|
+
1. **查询框架知识**:需要了解框架架构、功能、文件职责时 → 读取 `references/`
|
|
13
|
+
2. **修改框架文件**:需要修改 `.agents/`、`.trellis/spec/`、`.trellis/config/` 时 → 执行安全迭代流程
|
|
14
|
+
3. **查看迭代历史**:需要了解框架的修改记录时 → 读取 `changelog/`
|
|
15
|
+
|
|
16
|
+
> **实时性内容**(如最新 Issues、Release 历史)应由 AI 实时访问 GitHub 仓库获取,不写死在文件中。
|
|
17
|
+
|
|
18
|
+
## 管控范围
|
|
19
|
+
|
|
20
|
+
以下 **框架核心目录** 的修改必须通过本 Skill 执行:
|
|
21
|
+
|
|
22
|
+
- `.agents/rules/` — 规则文件
|
|
23
|
+
- `.agents/workflows/` — 角色入口
|
|
24
|
+
- `.agents/skills/` — 能力模块
|
|
25
|
+
- `.trellis/spec/` — 项目规范(也可通过 `common-spec-update` Skill 处理)
|
|
26
|
+
- `.trellis/config/` — 框架配置
|
|
27
|
+
|
|
28
|
+
> `.trellis/tasks/` 和 `.trellis/workspace/` 属于运行时数据,不受本 Skill 管控。
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 安全迭代流程
|
|
33
|
+
|
|
34
|
+
### Step 0:知识加载(前置)
|
|
35
|
+
|
|
36
|
+
在开始任何框架变更前:
|
|
37
|
+
|
|
38
|
+
1. 读取 `references/` 理解当前框架结构和设计理念
|
|
39
|
+
2. 读取 `changelog/index.md` 了解已有的迭代历史
|
|
40
|
+
3. 基于知识判断本次变更的合理性
|
|
41
|
+
|
|
42
|
+
### Step 1:变更清单
|
|
43
|
+
|
|
44
|
+
列出所有将要修改的文件及变更类型:
|
|
45
|
+
|
|
46
|
+
```markdown
|
|
47
|
+
## 框架变更清单
|
|
48
|
+
|
|
49
|
+
| 文件 | 变更类型 | 变更摘要 |
|
|
50
|
+
|------|----------|----------|
|
|
51
|
+
| .agents/rules/xxx.md | 修改 | 增加 xxx 约束 |
|
|
52
|
+
| .agents/skills/yyy/SKILL.md | 新建 | yyy 能力模块 |
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Step 2:影响范围分析
|
|
56
|
+
|
|
57
|
+
```markdown
|
|
58
|
+
## 影响范围报告
|
|
59
|
+
|
|
60
|
+
### 直接影响
|
|
61
|
+
- 变更文件数:{n} 个
|
|
62
|
+
- 变更类型:新建 / 修改 / 删除
|
|
63
|
+
|
|
64
|
+
### 间接影响
|
|
65
|
+
- 关联角色:{受影响的 PM / Worker 角色行为变更}
|
|
66
|
+
- 关联 Skills:{依赖受影响文件的其他 Skills}
|
|
67
|
+
- 约束层级:{是否影响约束优先级体系}
|
|
68
|
+
|
|
69
|
+
### 风险等级
|
|
70
|
+
- 低:仅新增能力,不影响现有行为
|
|
71
|
+
- 中:修改已有文件,可能影响角色行为
|
|
72
|
+
- 高:修改 Rules 或核心 Workflow,影响所有会话
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Step 3:用户确认门
|
|
76
|
+
|
|
77
|
+
将变更清单和影响范围报告呈现给用户,**等待明确确认后才执行写入**。
|
|
78
|
+
|
|
79
|
+
**用户确认后**:
|
|
80
|
+
1. 逐步执行变更
|
|
81
|
+
2. 每步完成后验证文件完整性
|
|
82
|
+
|
|
83
|
+
**用户拒绝**:
|
|
84
|
+
- 放弃全部变更,保持原文件不动
|
|
85
|
+
- 记录拒绝原因到 journal
|
|
86
|
+
|
|
87
|
+
### Step 4:执行变更 + 变更后验证
|
|
88
|
+
|
|
89
|
+
- 执行文件修改
|
|
90
|
+
- 检查修改后的文件是否格式完整、语法正确
|
|
91
|
+
- 如涉及 MCP Server 代码,确保 `npm run build` 通过
|
|
92
|
+
|
|
93
|
+
### Step 5:记录迭代(后置)
|
|
94
|
+
|
|
95
|
+
1. 按 `resources/changelog-entry-template.md` 模板生成迭代记录
|
|
96
|
+
2. 保存到 `changelog/YYYY-MM-DD_{slug}.md`
|
|
97
|
+
3. 更新 `changelog/index.md` 索引
|
|
98
|
+
4. 通过 `journal_append()` 记录变更日志
|
|
99
|
+
|
|
100
|
+
### Step 6:知识库自更新(后置)
|
|
101
|
+
|
|
102
|
+
迭代完成后,检查 `references/` 中是否有文件被本次变更影响:
|
|
103
|
+
|
|
104
|
+
- 新增了 Skill → 更新 `features.md`
|
|
105
|
+
- 新增了 Rule → 更新 `features.md`
|
|
106
|
+
- 修改了目录结构 → 更新 `directory-map.md`
|
|
107
|
+
- 修改了安装功能 → 更新 `installation.md`
|
|
108
|
+
|
|
109
|
+
> **自更新边界**:只更新事实性描述,不改变知识库的结构和格式。
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## 跨项目复用
|
|
114
|
+
|
|
115
|
+
将本项目的框架修改应用到其他使用 easyAI 的项目:
|
|
116
|
+
|
|
117
|
+
| 方式 | 说明 | 适用场景 |
|
|
118
|
+
|------|------|----------|
|
|
119
|
+
| 手动复制 | 根据 `changelog/` 记录,在另一个项目中手动应用 | 少量修改 |
|
|
120
|
+
| Git Patch | changelog 中的 diff 可以作为 `git apply` 的输入 | 精确复制代码变更 |
|
|
121
|
+
| 整体复制 | 复制整个 `.agents/` 和 `.trellis/config/` + `.trellis/spec/` | 全新项目初始化 |
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 迭代分类标签
|
|
126
|
+
|
|
127
|
+
| 标签 | 定义 | 示例 |
|
|
128
|
+
|------|------|------|
|
|
129
|
+
| `新增` | 添加框架原本没有的全新功能 | 新增一个 Skill、新增一个 MCP Tool |
|
|
130
|
+
| `优化` | 改善现有功能,不改变功能边界 | 优化 Skill 的流程步骤、改善错误提示 |
|
|
131
|
+
| `修复` | 修正现有功能的 Bug 或文档错误 | 修复 tool 参数校验遗漏 |
|
|
132
|
+
| `修改` | 调整现有功能的行为或配置,在设计走廊内 | 修改约束层级顺序、修改默认配置值 |
|
|
133
|
+
| `魔改` | **超出设计意图**的深度改造 | 重写角色系统、替换 MCP 传输协议 |
|
|
134
|
+
| `实验性` | 试探性修改,可能会被撤销 | 试验新的上下文管理策略 |
|
|
135
|
+
|
|
136
|
+
> **修改 vs 魔改判断标准**:问"这个修改是否改变了框架对其他组件的**契约**?" 不改变契约 = 修改,改变契约 = 魔改。
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## PATEOAS 导航
|
|
141
|
+
|
|
142
|
+
```markdown
|
|
143
|
+
### 下一步行动
|
|
144
|
+
|
|
145
|
+
1. [ ] 如查询知识 → 读取 `references/` 中对应文档回答用户
|
|
146
|
+
2. [ ] 如框架变更 → 走 Step 0-6 完整流程
|
|
147
|
+
3. [ ] 变更完成后 → 运行 `npm run build` 验证(如涉及代码)
|
|
148
|
+
4. [ ] 使用 `/pm` 或 `/worker {task_id}` 继续后续任务
|
|
149
|
+
|
|
150
|
+
### 状态快照
|
|
151
|
+
|
|
152
|
+
- 当前阶段:FRAMEWORK_EVOLVE
|
|
153
|
+
- 变更状态:{知识查询 / 已应用 / 已拒绝}
|
|
154
|
+
- 变更文件数:{n} 个
|
|
155
|
+
- 风险等级:{低/中/高}
|
|
156
|
+
- 迭代记录:{已生成/不适用}
|
|
157
|
+
- 知识库自更新:{已完成/不适用}
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
## 硬约束
|
|
161
|
+
|
|
162
|
+
- **必须经用户确认门**:禁止绕过确认直接修改框架文件
|
|
163
|
+
- **必须留 journal 记录**:每次框架变更(成功或拒绝)都必须记录
|
|
164
|
+
- **不可批量盲改**:每个文件的变更理由必须明确,禁止"顺便改一下"
|
|
165
|
+
- **遇到不确定的框架修改决策时,应暂停并与用户沟通**
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# easyAI 框架架构概览
|
|
2
|
+
|
|
3
|
+
> 本文档是框架知识库的一部分,供 AI 在框架自迭代时参考。
|
|
4
|
+
|
|
5
|
+
## 设计理念
|
|
6
|
+
|
|
7
|
+
**"让用户以纯客户的视角进行软件开发"** — 用户只需提需求、审批方案、验收结果。
|
|
8
|
+
|
|
9
|
+
## 三层架构
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
.agents/ ← AI 角色层(框架入口)
|
|
13
|
+
├── rules/ ← 规则注入(always_on / glob 触发)
|
|
14
|
+
├── workflows/ ← 角色入口(PM / Worker)
|
|
15
|
+
└── skills/ ← 能力模块(按角色前缀分组)
|
|
16
|
+
|
|
17
|
+
.trellis/ ← 数据持久层
|
|
18
|
+
├── spec/ ← 项目开发规范
|
|
19
|
+
├── tasks/ ← 任务管理(含 archive/)
|
|
20
|
+
├── workspace/ ← 开发者记忆(journal)
|
|
21
|
+
└── config/ ← 框架配置
|
|
22
|
+
|
|
23
|
+
.docs/ ← 用户文档空间
|
|
24
|
+
├── requirements/ ← 需求文档(用户 → AI)
|
|
25
|
+
├── design/ ← 设计文档(AI ↔ 用户)
|
|
26
|
+
├── guides/ ← 使用指南(AI → 用户)
|
|
27
|
+
├── notes/ ← 临时文档(用户 ↔ AI)
|
|
28
|
+
└── archive/ ← 归档(各文件夹中作废/不再适配的历史文档)
|
|
29
|
+
|
|
30
|
+
packages/ ← 可编程层
|
|
31
|
+
└── mcp-server/ ← MCP Server(TypeScript)
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## 约束分层体系(五级优先级)
|
|
35
|
+
|
|
36
|
+
高层覆盖低层,冲突时上报用户:
|
|
37
|
+
|
|
38
|
+
| 层级 | 类型 | 约束性 | 说明 |
|
|
39
|
+
|------|------|--------|------|
|
|
40
|
+
| 1 | Rules | 硬约束 | 反幻觉、编码规范 — 始终生效,不可覆盖 |
|
|
41
|
+
| 2 | Skills | 硬约束 | TDD 流程、验证标记 — 角色激活时生效 |
|
|
42
|
+
| 3 | MCP | 硬约束 | 状态机校验、Evidence Gate — 可编程硬约束 |
|
|
43
|
+
| 4 | PM 判断 | 软约束 | 约束集、任务指令 — 可由用户裁决调整 |
|
|
44
|
+
| 5 | 用户偏好 | 软约束 | 个人习惯 — 可被上层覆盖 |
|
|
45
|
+
|
|
46
|
+
## 角色系统
|
|
47
|
+
|
|
48
|
+
| 角色 | 触发方式 | 职责 |
|
|
49
|
+
|------|----------|------|
|
|
50
|
+
| PM | `/pm` | 需求沟通、任务管理、验收审批 |
|
|
51
|
+
| Worker | `/worker` | 按约束集执行任务、自检产出 |
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# easyAI 目录结构映射
|
|
2
|
+
|
|
3
|
+
> 本文档是框架知识库的一部分,供 AI 在框架自迭代时参考。
|
|
4
|
+
|
|
5
|
+
## 文件分类
|
|
6
|
+
|
|
7
|
+
- 🦴 **骨架文件**:安装时通过 skeleton 同步到用户项目
|
|
8
|
+
- 🏃 **运行时文件**:使用过程中由 AI 动态生成
|
|
9
|
+
- 🔧 **开发专属**:仅存在于框架开发工作区,不同步到用户项目
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## `.agents/` — AI 角色层
|
|
14
|
+
|
|
15
|
+
### `rules/` — 规则注入
|
|
16
|
+
|
|
17
|
+
| 文件 | 分类 | 职责 |
|
|
18
|
+
|------|------|------|
|
|
19
|
+
| `project-identity.md` | 🦴 | 项目身份声明、框架地图、约束分层 |
|
|
20
|
+
| `anti-hallucination.md` | 🦴 | 反幻觉约束、检索优先级 |
|
|
21
|
+
| `coding-standards.md` | 🦴 | 编码规范 |
|
|
22
|
+
| `framework-dev-mode.md` | 🔧 | 框架开发模式(不同步到 skeleton) |
|
|
23
|
+
|
|
24
|
+
### `workflows/` — 角色入口
|
|
25
|
+
|
|
26
|
+
| 文件 | 分类 | 职责 |
|
|
27
|
+
|------|------|------|
|
|
28
|
+
| `pm.md` | 🦴 | PM 角色入口(`/pm` 触发) |
|
|
29
|
+
| `worker.md` | 🦴 | Worker 角色入口(`/worker` 触发) |
|
|
30
|
+
| `publish.md` | 🔧 | 发布工作流(不同步到 skeleton) |
|
|
31
|
+
|
|
32
|
+
### `skills/` — 能力模块
|
|
33
|
+
|
|
34
|
+
所有 Skill 目录均为 🦴 骨架文件:
|
|
35
|
+
|
|
36
|
+
```text
|
|
37
|
+
skills/
|
|
38
|
+
├── common-session-close/ # 会话收尾
|
|
39
|
+
├── common-spec-update/ # 规范更新
|
|
40
|
+
├── pm-brainstorm/ # 需求发散
|
|
41
|
+
├── pm-framework-evolve/ # 框架自迭代(含 references/ resources/ changelog/)
|
|
42
|
+
├── pm-session-start/ # 会话启动
|
|
43
|
+
├── pm-task-planning/ # 任务规划
|
|
44
|
+
├── pm-task-review/ # 任务验收
|
|
45
|
+
├── worker-check/ # 执行者自检
|
|
46
|
+
├── worker-debug/ # 系统性调试
|
|
47
|
+
└── worker-implement/ # 执行者实现
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## `.trellis/` — 数据持久层
|
|
53
|
+
|
|
54
|
+
| 路径 | 分类 | 职责 |
|
|
55
|
+
|------|------|------|
|
|
56
|
+
| `config/config.yaml` | 🦴 | 框架配置 |
|
|
57
|
+
| `spec/` | 🦴 + 🏃 | 项目规范(骨架 + 运行时扩展) |
|
|
58
|
+
| `tasks/` | 🏃 | 任务文件(AI 动态创建) |
|
|
59
|
+
| `tasks/archive/` | 🏃 | 已归档任务 |
|
|
60
|
+
| `workspace/journal.md` | 🏃 | 会话日志 |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## `.docs/` — 用户文档空间
|
|
65
|
+
|
|
66
|
+
| 路径 | 分类 | 职责 |
|
|
67
|
+
|------|------|------|
|
|
68
|
+
| `README.md` | 🦴 | 文档空间说明 |
|
|
69
|
+
| `requirements/` | 🦴 + 🏃 | 需求文档 |
|
|
70
|
+
| `design/` | 🦴 + 🏃 | 设计文档 |
|
|
71
|
+
| `guides/` | 🦴 + 🏃 | 使用指南 |
|
|
72
|
+
| `notes/` | 🦴 + 🏃 | 临时文档 |
|
|
73
|
+
| `archive/` | 🦴 + 🏃 | 归档 |
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## `packages/mcp-server/` — 可编程层
|
|
78
|
+
|
|
79
|
+
| 路径 | 分类 | 职责 |
|
|
80
|
+
|------|------|------|
|
|
81
|
+
| `src/index.ts` | 🔧 | MCP Server 入口(TypeScript 源码) |
|
|
82
|
+
| `src/tools/` | 🔧 | 14+ 个 MCP Tool 实现 |
|
|
83
|
+
| `src/resources/` | 🔧 | 5 个 MCP Resource 实现 |
|
|
84
|
+
| `src/utils/` | 🔧 | 工具函数 |
|
|
85
|
+
|
|
86
|
+
> 用户项目中通过 `easyAI-dev-latest/lib/server/` 获得编译后的 JavaScript 版本。
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# easyAI 功能详细说明
|
|
2
|
+
|
|
3
|
+
> 本文档是框架知识库的一部分,供 AI 在框架自迭代时参考。
|
|
4
|
+
|
|
5
|
+
## Skills(能力模块)
|
|
6
|
+
|
|
7
|
+
### PM 专属
|
|
8
|
+
|
|
9
|
+
| Skill | 触发条件 | 职责 |
|
|
10
|
+
|-------|----------|------|
|
|
11
|
+
| `pm-brainstorm` | PM 接收到用户新需求时 | 苏格拉底式需求发散,将用户想法转化为完整设计 |
|
|
12
|
+
| `pm-session-start` | `/pm` 触发后 | 自动读取项目状态、恢复任务上下文、加载最新日志 |
|
|
13
|
+
| `pm-task-planning` | PM 完成需求澄清后 | 将设计文档转化为约束集格式的任务定义 |
|
|
14
|
+
| `pm-task-review` | PM 审查执行者提交的任务时 | 三阶段验收(Spec 合规 → 代码质量 → Artifacts 沉淀) |
|
|
15
|
+
| `pm-framework-evolve` | 需要修改框架文件或查询框架知识时 | 框架百科 + 安全迭代 + 迭代记录 + 知识库自更新 |
|
|
16
|
+
|
|
17
|
+
### Worker 专属
|
|
18
|
+
|
|
19
|
+
| Skill | 触发条件 | 职责 |
|
|
20
|
+
|-------|----------|------|
|
|
21
|
+
| `worker-implement` | Worker 开始实现任务时 | TDD 铁律驱动的编码流程 |
|
|
22
|
+
| `worker-check` | `worker-implement` 完成后 | 强制验证流程,生成 verification.md |
|
|
23
|
+
| `worker-debug` | 遇到 Bug、测试失败时 | 4 阶段根因分析 + 3 次失败上报 PM |
|
|
24
|
+
|
|
25
|
+
### 通用
|
|
26
|
+
|
|
27
|
+
| Skill | 触发条件 | 职责 |
|
|
28
|
+
|-------|----------|------|
|
|
29
|
+
| `common-session-close` | 会话结束前 | 汇总工作、写入 journal、Artifacts 沉淀检查 |
|
|
30
|
+
| `common-spec-update` | 需要更新 `.trellis/spec/` 时 | 安全地更新项目规范文件 |
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Rules(规则)
|
|
35
|
+
|
|
36
|
+
| Rule | 作用 | 约束层级 |
|
|
37
|
+
|------|------|----------|
|
|
38
|
+
| `project-identity.md` | 项目身份声明 — 框架地图、角色系统、约束分层、冲突解决 | L1(硬约束) |
|
|
39
|
+
| `anti-hallucination.md` | 反幻觉约束 — 第三方库必须先查文档、禁止模糊措辞、RPI 阶段隔离 | L1(硬约束) |
|
|
40
|
+
| `coding-standards.md` | 编码规范 — 命名、格式、注释标准 | L1(硬约束) |
|
|
41
|
+
| `framework-dev-mode.md` | 框架开发模式 — 仅存在于开发工作区,不同步到 skeleton | L1(硬约束) |
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## MCP Tools
|
|
46
|
+
|
|
47
|
+
| Tool | 功能 |
|
|
48
|
+
|------|------|
|
|
49
|
+
| `task_create` | 创建新任务 |
|
|
50
|
+
| `task_get` | 获取任务详情 |
|
|
51
|
+
| `task_list` | 列出所有任务 |
|
|
52
|
+
| `task_transition` | 任务状态流转 |
|
|
53
|
+
| `task_cancel` | 取消任务 |
|
|
54
|
+
| `task_append_log` | 追加任务执行记录 |
|
|
55
|
+
| `subtask_create` / `subtask_list` | 子任务管理 |
|
|
56
|
+
| `journal_append` | 写入 journal 日志 |
|
|
57
|
+
| `journal_search` | 搜索 journal 记录 |
|
|
58
|
+
| `plan_validate` | 反面模式自检 |
|
|
59
|
+
| `spec_validate` | 规范文件校验 |
|
|
60
|
+
| `conflict_check` | Glob 冲突检测 |
|
|
61
|
+
| `context_budget` | 上下文预算查询 |
|
|
62
|
+
| `context_generate` | 上下文生成 |
|
|
63
|
+
| `framework_init` / `framework_check` / `framework_update` | 框架管理(在 `framework-tools.ts` 中) |
|
|
64
|
+
|
|
65
|
+
## MCP Resources
|
|
66
|
+
|
|
67
|
+
| Resource URI | 功能 |
|
|
68
|
+
|-------------|------|
|
|
69
|
+
| `trellis://journal/latest` | 最新 journal 日志 |
|
|
70
|
+
| `trellis://status/overview` | 项目状态概览 |
|
|
71
|
+
| `spec://{category}/{name}` | 项目规范文件 |
|
|
72
|
+
| `trellis://tasks/{task_id}/context` | 任务上下文 |
|
|
73
|
+
| `trellis://subtasks/{task_id}/context` | 子任务上下文 |
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## 关联关系
|
|
78
|
+
|
|
79
|
+
```mermaid
|
|
80
|
+
graph TD
|
|
81
|
+
PM[PM 角色] --> BS[pm-brainstorm]
|
|
82
|
+
PM --> SS[pm-session-start]
|
|
83
|
+
PM --> TP[pm-task-planning]
|
|
84
|
+
PM --> TR[pm-task-review]
|
|
85
|
+
PM --> FE[pm-framework-evolve]
|
|
86
|
+
|
|
87
|
+
W[Worker 角色] --> WI[worker-implement]
|
|
88
|
+
WI --> WC[worker-check]
|
|
89
|
+
W --> WD[worker-debug]
|
|
90
|
+
|
|
91
|
+
BS -->|设计确认后| TP
|
|
92
|
+
TP -->|创建任务| WI
|
|
93
|
+
WI -->|验证完成| WC
|
|
94
|
+
WC -->|提交验收| TR
|
|
95
|
+
|
|
96
|
+
SC[common-session-close] --- PM
|
|
97
|
+
SC --- W
|
|
98
|
+
```
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# easyAI GitHub 仓库信息
|
|
2
|
+
|
|
3
|
+
> 本文档是框架知识库的一部分,供 AI 在框架自迭代时参考。
|
|
4
|
+
>
|
|
5
|
+
> **注意**:实时性内容(最新 Issues、Release 历史、CI 状态)应由 AI 实时访问 GitHub 仓库获取,不写死在本文件中。
|
|
6
|
+
|
|
7
|
+
## 仓库地址
|
|
8
|
+
|
|
9
|
+
- **GitHub**:https://github.com/GeeSeeker/easyAI-dev
|
|
10
|
+
- **npm**:https://www.npmjs.com/package/@geeseeker/easyai-dev
|
|
11
|
+
|
|
12
|
+
## 查看迭代历史
|
|
13
|
+
|
|
14
|
+
1. **Git log**:`git log --oneline -20`
|
|
15
|
+
2. **GitHub Releases**:仓库 Releases 页面
|
|
16
|
+
3. **框架内部 changelog**:`.agents/skills/pm-framework-evolve/changelog/`
|
|
17
|
+
|
|
18
|
+
## 提交修改建议
|
|
19
|
+
|
|
20
|
+
1. **Issue**:在 GitHub 仓库提交 Issue 描述问题或建议
|
|
21
|
+
2. **Pull Request**:Fork 后提交 PR
|
|
22
|
+
3. **框架内部迭代**:通过 `pm-framework-evolve` Skill 进行安全迭代
|
|
23
|
+
|
|
24
|
+
## 开发者信息
|
|
25
|
+
|
|
26
|
+
- **作者**:GeeSeeker
|
|
27
|
+
- **许可证**:参见仓库 LICENSE 文件
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# easyAI 安装指南
|
|
2
|
+
|
|
3
|
+
> 本文档是框架知识库的一部分,供 AI 在框架自迭代时参考。
|
|
4
|
+
|
|
5
|
+
## 安装方式
|
|
6
|
+
|
|
7
|
+
### 方式 1:npx 脚手架(推荐)
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# 新项目
|
|
11
|
+
npx @geeseeker/easyai-dev init
|
|
12
|
+
|
|
13
|
+
# 已有项目(不覆盖 README.md,合并 .gitignore)
|
|
14
|
+
npx @geeseeker/easyai-dev init
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### 方式 2:MCP 全局安装
|
|
18
|
+
|
|
19
|
+
配置 AI IDE 的 MCP Server 后,AI 可通过 `framework_init` tool 自动安装:
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{
|
|
23
|
+
"mcpServers": {
|
|
24
|
+
"easyai-dev": {
|
|
25
|
+
"command": "npx",
|
|
26
|
+
"args": ["-y", "@geeseeker/easyai-dev", "serve"],
|
|
27
|
+
"env": {
|
|
28
|
+
"EASYAI_PROJECT_ROOT": "/path/to/project"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 安装后结构
|
|
36
|
+
|
|
37
|
+
```text
|
|
38
|
+
project/
|
|
39
|
+
├── .agents/ # AI 角色层
|
|
40
|
+
│ ├── rules/ # 规则文件(3 个)
|
|
41
|
+
│ ├── workflows/ # PM + Worker 入口
|
|
42
|
+
│ └── skills/ # 10 个能力模块
|
|
43
|
+
├── .trellis/ # 数据持久层
|
|
44
|
+
│ ├── config/ # config.yaml
|
|
45
|
+
│ ├── spec/ # 项目规范
|
|
46
|
+
│ ├── tasks/ # 任务目录
|
|
47
|
+
│ └── workspace/ # journal
|
|
48
|
+
├── .docs/ # 用户文档空间(5 个子文件夹)
|
|
49
|
+
└── .easyai-version # 版本标记文件
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## 版本管理
|
|
53
|
+
|
|
54
|
+
- **版本标记**:`.easyai-version` 文件记录当前安装版本
|
|
55
|
+
- **检查更新**:`npx @geeseeker/easyai-dev check` 或 MCP `framework_check` tool
|
|
56
|
+
- **执行更新**:`npx @geeseeker/easyai-dev update` 或 MCP `framework_update` tool
|
|
57
|
+
- **备份机制**:更新前自动备份被修改的文件
|
|
58
|
+
|
|
59
|
+
## npm 包信息
|
|
60
|
+
|
|
61
|
+
- 包名:`@geeseeker/easyai-dev`
|
|
62
|
+
- 仓库:https://github.com/GeeSeeker/easyAI-dev
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# 迭代记录模板
|
|
2
|
+
|
|
3
|
+
> 使用本模板为每次框架迭代生成标准化记录。
|
|
4
|
+
|
|
5
|
+
## 基本信息
|
|
6
|
+
|
|
7
|
+
- **日期**:{YYYY-MM-DD}
|
|
8
|
+
- **类型**:{新增 / 优化 / 修复 / 修改 / 魔改 / 实验性}
|
|
9
|
+
- **摘要**:{一句话描述本次变更}
|
|
10
|
+
|
|
11
|
+
## 涉及文件
|
|
12
|
+
|
|
13
|
+
| 文件 | 变更类型 | 说明 |
|
|
14
|
+
|------|----------|------|
|
|
15
|
+
| {文件路径} | {新建/修改/删除} | {变更摘要} |
|
|
16
|
+
|
|
17
|
+
## 变更说明
|
|
18
|
+
|
|
19
|
+
{详细描述本次变更的目的、实现方式和关键决策}
|
|
20
|
+
|
|
21
|
+
## 关键 Diff
|
|
22
|
+
|
|
23
|
+
```diff
|
|
24
|
+
{粘贴关键代码变更的 diff}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## 影响范围
|
|
28
|
+
|
|
29
|
+
- **关联角色**:{PM / Worker / 无}
|
|
30
|
+
- **关联 Skills**:{受影响的 Skills}
|
|
31
|
+
- **风险等级**:{低 / 中 / 高}
|
|
32
|
+
|
|
33
|
+
## 回滚步骤
|
|
34
|
+
|
|
35
|
+
{如果需要撤销本次变更,按以下步骤操作:}
|
|
36
|
+
|
|
37
|
+
1. {步骤 1}
|
|
38
|
+
2. {步骤 2}
|
|
39
|
+
|
|
40
|
+
## 兼容性声明
|
|
41
|
+
|
|
42
|
+
- [ ] 兼容框架源版本(未改变框架契约)
|
|
43
|
+
- [ ] **不兼容**框架源版本(已改变框架契约,属于"魔改"级别)
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: pm-task-review
|
|
3
|
-
description: PM 任务验收 —
|
|
3
|
+
description: PM 任务验收 — 三阶段验收流程(Stage 1 Spec 合规 → Stage 2 代码质量 → Stage 3 Artifacts 沉淀)。PM 审查执行者完成的任务时激活。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# PM
|
|
6
|
+
# PM 任务验收(三阶段)
|
|
7
7
|
|
|
8
8
|
## 适用场景
|
|
9
9
|
|
|
@@ -11,7 +11,7 @@ PM 审查执行者提交验收的任务时,**必须**激活本 Skill。
|
|
|
11
11
|
|
|
12
12
|
## 验收原则
|
|
13
13
|
|
|
14
|
-
-
|
|
14
|
+
- **三阶段不可颠倒**:必须先 Spec 合规,再代码质量,最后 Artifacts 沉淀
|
|
15
15
|
- **Stage 1 不过不进 Stage 2**:节省审查时间,避免在不合规产出上花费精力
|
|
16
16
|
- **公正客观**:基于证据而非印象
|
|
17
17
|
|
|
@@ -81,8 +81,7 @@ PM 审查执行者提交验收的任务时,**必须**激活本 Skill。
|
|
|
81
81
|
|
|
82
82
|
### Stage 2 判定
|
|
83
83
|
|
|
84
|
-
- **全部通过** →
|
|
85
|
-
- 调用 `task_transition({ task_id, new_status: "completed", role: "pm" })`
|
|
84
|
+
- **全部通过** → 进入 Stage 3(Artifacts 沉淀)
|
|
86
85
|
- **存在问题** → 打回并附带具体改进建议
|
|
87
86
|
- 问题分级:Critical(必须修复)/ Important(建议修复)/ Minor(可后续优化)
|
|
88
87
|
- 调用 `task_transition({ task_id, new_status: "rejected", role: "pm" })`
|
|
@@ -100,6 +99,44 @@ PM 审查执行者提交验收的任务时,**必须**激活本 Skill。
|
|
|
100
99
|
2. 如审查者正确 → 接受建议并修改
|
|
101
100
|
3. 如坚持原方案 → 提供完整技术论证(非"我觉得没问题")
|
|
102
101
|
|
|
102
|
+
## Stage 3:Artifacts 沉淀
|
|
103
|
+
|
|
104
|
+
> 本质:PM 作为"策展人",将 Worker 会话产生的面向用户的 Artifacts 沉淀到 `.docs/`(持久文档空间)。
|
|
105
|
+
|
|
106
|
+
### 执行步骤
|
|
107
|
+
|
|
108
|
+
1. **扫描 Worker Artifacts**
|
|
109
|
+
- 检查 Worker 会话产生的 Artifacts(特别是 `walkthrough.md`)
|
|
110
|
+
- 识别面向用户的内容(排除 `task.md` 等过程性文件)
|
|
111
|
+
|
|
112
|
+
2. **判断沉淀价值**
|
|
113
|
+
- 内容是否对用户有持续参考价值?
|
|
114
|
+
- 沉淀目标判断:
|
|
115
|
+
|
|
116
|
+
| Artifacts 类型 | 沉淀目标 | 判断依据 |
|
|
117
|
+
|----------------|----------|----------|
|
|
118
|
+
| `walkthrough.md` | `.docs/notes/`(临时参考)或 `.docs/guides/`(永久指南) | 是否有长期复用价值 |
|
|
119
|
+
| `other`(分析报告等) | `.docs/notes/` 或 `.docs/design/` | 内容属于设计还是参考 |
|
|
120
|
+
| `task.md` | 不沉淀 | `.trellis/tasks/` 已持久化 |
|
|
121
|
+
| `implementation_plan.md` | 不沉淀 | `pm-brainstorm` Step 6 已负责 |
|
|
122
|
+
|
|
123
|
+
3. **向用户确认**
|
|
124
|
+
- 列出候选沉淀内容,说明建议的目标路径
|
|
125
|
+
- **用户确认后**才执行沉淀(不自动沉淀)
|
|
126
|
+
|
|
127
|
+
4. **执行沉淀**
|
|
128
|
+
- 提炼内容(去除过程性细节,保留用户关心的结论和指导)
|
|
129
|
+
- 写入目标路径
|
|
130
|
+
- 向用户说明沉淀了什么、沉淀到了哪里
|
|
131
|
+
|
|
132
|
+
5. **标记任务完成**
|
|
133
|
+
- 调用 `task_transition({ task_id, new_status: "completed", role: "pm" })`
|
|
134
|
+
|
|
135
|
+
### Stage 3 判定
|
|
136
|
+
|
|
137
|
+
- **有内容沉淀** → 确认沉淀完成后标记 `completed`
|
|
138
|
+
- **无需沉淀** → 直接标记 `completed`
|
|
139
|
+
|
|
103
140
|
## 验收结果输出
|
|
104
141
|
|
|
105
142
|
```markdown
|
|
@@ -119,6 +156,10 @@ PM 审查执行者提交验收的任务时,**必须**激活本 Skill。
|
|
|
119
156
|
|
|
120
157
|
{审查发现}
|
|
121
158
|
|
|
159
|
+
### Stage 3: Artifacts 沉淀 — {已沉淀/无需沉淀}
|
|
160
|
+
|
|
161
|
+
{沉淀内容及目标路径,或无需沉淀的原因}
|
|
162
|
+
|
|
122
163
|
### 最终判定:{通过 / 打回}
|
|
123
164
|
|
|
124
165
|
{如果打回,列出具体修改要求}
|
|
@@ -129,10 +170,11 @@ PM 审查执行者提交验收的任务时,**必须**激活本 Skill。
|
|
|
129
170
|
```markdown
|
|
130
171
|
### 下一步行动
|
|
131
172
|
|
|
132
|
-
1. [ ] 如果通过 →
|
|
133
|
-
2. [ ] 如果通过 →
|
|
134
|
-
3. [ ]
|
|
135
|
-
4. [ ] 如果打回 →
|
|
173
|
+
1. [ ] 如果通过 → 确认 Artifacts 是否需要沉淀到 `.docs/`
|
|
174
|
+
2. [ ] 如果通过 → 调用 `task_transition({ task_id, new_status: "completed", role: "pm" })` 标记完成
|
|
175
|
+
3. [ ] 如果通过 → 确认是否需要归档(`task_transition({ task_id, new_status: "archived", role: "pm" })`)
|
|
176
|
+
4. [ ] 如果打回 → 在 task.md 追加打回原因和修复建议
|
|
177
|
+
5. [ ] 如果打回 → 通知用户开新会话执行 `/worker {task_id}` 继续修复
|
|
136
178
|
|
|
137
179
|
### 状态快照
|
|
138
180
|
|
|
@@ -140,5 +182,6 @@ PM 审查执行者提交验收的任务时,**必须**激活本 Skill。
|
|
|
140
182
|
- 当前阶段:REVIEW
|
|
141
183
|
- Stage 1: {PASS/FAIL}
|
|
142
184
|
- Stage 2: {PASS/FAIL/未进入}
|
|
185
|
+
- Stage 3: {已沉淀/无需沉淀/未进入}
|
|
143
186
|
- 最终判定:{通过/打回/审查中}
|
|
144
187
|
```
|
package/skeleton/.docs/README.md
CHANGED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Node.js 依赖
|
|
2
|
+
node_modules/
|
|
3
|
+
|
|
4
|
+
# MCP Server 编译输出(已合并到 npm 包中,无需本地构建)
|
|
5
|
+
# packages/mcp-server/build/
|
|
6
|
+
|
|
7
|
+
# Python 缓存
|
|
8
|
+
__pycache__/
|
|
9
|
+
|
|
10
|
+
# 系统文件
|
|
11
|
+
.DS_Store
|
|
12
|
+
Thumbs.db
|
|
13
|
+
|
|
14
|
+
# easyAI 临时文件
|
|
15
|
+
.tmp/
|
|
16
|
+
|
|
17
|
+
# easyAI 测试文件
|
|
18
|
+
.test/
|
|
19
|
+
|
|
20
|
+
# Trellis 运行时状态(不应版本控制)
|
|
21
|
+
.trellis/tasks/.current-task
|
|
22
|
+
.trellis/workspace/**/journal-*.md
|
|
23
|
+
.trellis/workspace/**/.journal_size
|
|
24
|
+
|
|
25
|
+
# 框架更新备份
|
|
26
|
+
.agents.bak.*
|
|
27
|
+
.trellis/spec.bak.*
|
|
28
|
+
|
|
29
|
+
# easyAI 版本清单(本地状态)
|
|
30
|
+
# .easyai-version
|
|
File without changes
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: common-framework-evolve
|
|
3
|
-
description: 框架自迭代 — 安全地修改 .agents/ 和 .trellis/spec/ 下的框架文件,包含影响范围分析、变更清单、用户确认门。修改框架核心文件时由 AI 自主激活。
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# 框架自迭代
|
|
7
|
-
|
|
8
|
-
## 适用场景
|
|
9
|
-
|
|
10
|
-
当需要修改以下 **框架核心目录** 时,必须通过本 Skill 执行:
|
|
11
|
-
|
|
12
|
-
- `.agents/rules/` — 规则文件
|
|
13
|
-
- `.agents/workflows/` — 角色入口
|
|
14
|
-
- `.agents/skills/` — 能力模块
|
|
15
|
-
- `.trellis/spec/` — 项目规范(此部分也可通过 `common-spec-update` Skill 处理)
|
|
16
|
-
- `.trellis/config/` — 框架配置
|
|
17
|
-
|
|
18
|
-
> **注意**:`.trellis/tasks/` 和 `.trellis/workspace/` 属于运行时数据,不受本 Skill 管控。
|
|
19
|
-
|
|
20
|
-
## 执行步骤
|
|
21
|
-
|
|
22
|
-
### 1. 变更清单
|
|
23
|
-
|
|
24
|
-
列出所有将要修改的文件及变更类型:
|
|
25
|
-
|
|
26
|
-
```markdown
|
|
27
|
-
## 框架变更清单
|
|
28
|
-
|
|
29
|
-
| 文件 | 变更类型 | 变更摘要 |
|
|
30
|
-
| --------------------------- | -------- | ------------- |
|
|
31
|
-
| .agents/rules/xxx.md | 修改 | 增加 xxx 约束 |
|
|
32
|
-
| .agents/skills/yyy/SKILL.md | 新建 | yyy 能力模块 |
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
### 2. 影响范围分析
|
|
36
|
-
|
|
37
|
-
分析变更的影响链:
|
|
38
|
-
|
|
39
|
-
```markdown
|
|
40
|
-
## 影响范围报告
|
|
41
|
-
|
|
42
|
-
### 直接影响
|
|
43
|
-
|
|
44
|
-
- 变更文件数:{n} 个
|
|
45
|
-
- 变更类型:新建 / 修改 / 删除
|
|
46
|
-
|
|
47
|
-
### 间接影响
|
|
48
|
-
|
|
49
|
-
- 关联角色:{受影响的 PM / Worker 角色行为变更}
|
|
50
|
-
- 关联 Skills:{依赖受影响文件的其他 Skills}
|
|
51
|
-
- 约束层级:{是否影响约束优先级体系}
|
|
52
|
-
|
|
53
|
-
### 风险等级
|
|
54
|
-
|
|
55
|
-
- 低:仅新增能力,不影响现有行为
|
|
56
|
-
- 中:修改已有文件,可能影响角色行为
|
|
57
|
-
- 高:修改 Rules 或核心 Workflow,影响所有会话
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
### 3. 用户确认门
|
|
61
|
-
|
|
62
|
-
将变更清单和影响范围报告呈现给用户,**等待明确确认后才执行写入**。
|
|
63
|
-
|
|
64
|
-
**用户确认后**:
|
|
65
|
-
|
|
66
|
-
1. 逐步执行变更
|
|
67
|
-
2. 每步完成后验证文件完整性
|
|
68
|
-
3. 通过 `journal_append()` 记录变更日志
|
|
69
|
-
|
|
70
|
-
**用户拒绝**:
|
|
71
|
-
|
|
72
|
-
- 放弃全部变更,保持原文件不动
|
|
73
|
-
- 记录拒绝原因到 journal
|
|
74
|
-
|
|
75
|
-
### 4. 变更后验证
|
|
76
|
-
|
|
77
|
-
- 检查修改后的文件是否格式完整、语法正确
|
|
78
|
-
- 如涉及 MCP Server 代码,确保 `npm run build` 通过
|
|
79
|
-
|
|
80
|
-
## PATEOAS 输出
|
|
81
|
-
|
|
82
|
-
每次框架变更完成后,必须输出:
|
|
83
|
-
|
|
84
|
-
```markdown
|
|
85
|
-
### PATEOAS 导航
|
|
86
|
-
|
|
87
|
-
#### 下一步行动
|
|
88
|
-
|
|
89
|
-
1. [ ] 运行 `npm run build` 验证 MCP Server 构建通过(如涉及代码变更)
|
|
90
|
-
2. [ ] 使用 `/pm` 或 `/worker {task_id}` 继续后续任务
|
|
91
|
-
|
|
92
|
-
#### 状态快照
|
|
93
|
-
|
|
94
|
-
- 当前阶段:FRAMEWORK_EVOLVE
|
|
95
|
-
- 变更状态:已应用 / 已拒绝
|
|
96
|
-
- 变更文件数:{n} 个
|
|
97
|
-
- 风险等级:{低/中/高}
|
|
98
|
-
- 需要验证:{是/否}
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
## 硬约束
|
|
102
|
-
|
|
103
|
-
- **必须经用户确认门**:禁止绕过确认直接修改框架文件
|
|
104
|
-
- **必须留 journal 记录**:每次框架变更(成功或拒绝)都必须记录
|
|
105
|
-
- **不可批量盲改**:每个文件的变更理由必须明确,禁止"顺便改一下"
|