@wnlen/agent-execution-template 0.8.14
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/LICENSE +21 -0
- package/README.md +440 -0
- package/README.zh-CN.md +447 -0
- package/bin/agent-execution-template.js +792 -0
- package/docs/SPEC.md +1039 -0
- package/docs/token-efficient-protocol-v0.1.md +101 -0
- package/package.json +35 -0
- package/template/en/ai/README.md +130 -0
- package/template/en/ai/project/archive/.gitkeep +0 -0
- package/template/en/ai/project/inbox/.gitkeep +1 -0
- package/template/en/ai/project/inbox/ideas/.gitkeep +1 -0
- package/template/en/ai/project/inbox/processed/.gitkeep +0 -0
- package/template/en/ai/project/inbox/raw/.gitkeep +1 -0
- package/template/en/ai/project/metrics.json +20 -0
- package/template/en/ai/project/project.md +42 -0
- package/template/en/ai/project/proposals/final-shape-updates/.gitkeep +1 -0
- package/template/en/ai/project/proposals/final-shape-updates/_template.md +64 -0
- package/template/en/ai/project/refs/architecture.md +23 -0
- package/template/en/ai/project/refs/commands.md +43 -0
- package/template/en/ai/project/refs/constraints.md +24 -0
- package/template/en/ai/project/refs/decisions.md +13 -0
- package/template/en/ai/project/refs/final-shape.md +59 -0
- package/template/en/ai/project/refs/module-map.md +31 -0
- package/template/en/ai/project/refs/roadmap.md +31 -0
- package/template/en/ai/project/result.json +34 -0
- package/template/en/ai/project/result.md +32 -0
- package/template/en/ai/project/runtime.md +74 -0
- package/template/en/ai/project/task.md +110 -0
- package/template/en/ai/template/LANG +1 -0
- package/template/en/ai/template/VERSION +1 -0
- package/template/en/ai/template/bootstrap.md +194 -0
- package/template/en/ai/template/prompt.md +118 -0
- package/template/en/ai/template/protocol.md +332 -0
- package/template/en/ai/template/reconcile.md +140 -0
- package/template/en/ai/template/rules/core.md +197 -0
- package/template/en/ai/template/rules/output.md +51 -0
- package/template/en/ai/template/schemas/metrics.schema.json +119 -0
- package/template/en/ai/template/schemas/result.schema.json +234 -0
- package/template/zh/ai/README.md +129 -0
- package/template/zh/ai/project/archive/.gitkeep +0 -0
- package/template/zh/ai/project/inbox/.gitkeep +1 -0
- package/template/zh/ai/project/inbox/ideas/.gitkeep +1 -0
- package/template/zh/ai/project/inbox/processed/.gitkeep +0 -0
- package/template/zh/ai/project/inbox/raw/.gitkeep +1 -0
- package/template/zh/ai/project/metrics.json +20 -0
- package/template/zh/ai/project/project.md +42 -0
- package/template/zh/ai/project/proposals/final-shape-updates/.gitkeep +1 -0
- package/template/zh/ai/project/proposals/final-shape-updates/_template.md +64 -0
- package/template/zh/ai/project/refs/architecture.md +23 -0
- package/template/zh/ai/project/refs/commands.md +43 -0
- package/template/zh/ai/project/refs/constraints.md +24 -0
- package/template/zh/ai/project/refs/decisions.md +13 -0
- package/template/zh/ai/project/refs/final-shape.md +54 -0
- package/template/zh/ai/project/refs/module-map.md +30 -0
- package/template/zh/ai/project/refs/roadmap.md +29 -0
- package/template/zh/ai/project/result.json +34 -0
- package/template/zh/ai/project/result.md +32 -0
- package/template/zh/ai/project/runtime.md +74 -0
- package/template/zh/ai/project/task.md +106 -0
- package/template/zh/ai/template/LANG +1 -0
- package/template/zh/ai/template/VERSION +1 -0
- package/template/zh/ai/template/bootstrap.md +180 -0
- package/template/zh/ai/template/prompt.md +104 -0
- package/template/zh/ai/template/protocol.md +300 -0
- package/template/zh/ai/template/reconcile.md +134 -0
- package/template/zh/ai/template/rules/core.md +174 -0
- package/template/zh/ai/template/rules/output.md +51 -0
- package/template/zh/ai/template/schemas/metrics.schema.json +119 -0
- package/template/zh/ai/template/schemas/result.schema.json +234 -0
- package/test/selftest.js +280 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Output Rules
|
|
2
|
+
|
|
3
|
+
Every execution must write:
|
|
4
|
+
|
|
5
|
+
- `ai/project/result.json`
|
|
6
|
+
- `ai/project/result.md`
|
|
7
|
+
- `ai/project/metrics.json`
|
|
8
|
+
|
|
9
|
+
## Status
|
|
10
|
+
|
|
11
|
+
Use one of:
|
|
12
|
+
|
|
13
|
+
- `success`
|
|
14
|
+
- `partial`
|
|
15
|
+
- `failed`
|
|
16
|
+
- `blocked`
|
|
17
|
+
|
|
18
|
+
Do not use `success` unless verification passed.
|
|
19
|
+
|
|
20
|
+
## Result JSON
|
|
21
|
+
|
|
22
|
+
`ai/project/result.json` is the authoritative machine-readable result.
|
|
23
|
+
It must include scope, files read, refs read, changed files, commands,
|
|
24
|
+
verification, assumptions, issues, next steps, and runtime update proposals.
|
|
25
|
+
|
|
26
|
+
## Result Markdown
|
|
27
|
+
|
|
28
|
+
`ai/project/result.md` is the human-readable summary. Keep it short:
|
|
29
|
+
|
|
30
|
+
```md
|
|
31
|
+
## Status
|
|
32
|
+
success | partial | failed | blocked
|
|
33
|
+
|
|
34
|
+
## Changed
|
|
35
|
+
- file
|
|
36
|
+
|
|
37
|
+
## Verified
|
|
38
|
+
- level
|
|
39
|
+
- evidence
|
|
40
|
+
|
|
41
|
+
## Issues
|
|
42
|
+
- issue if any
|
|
43
|
+
|
|
44
|
+
## Next
|
|
45
|
+
- next step
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Metrics
|
|
49
|
+
|
|
50
|
+
`ai/project/metrics.json` records model tier, escalation trigger, strong-model
|
|
51
|
+
role, token estimates, duration, success, human fix, and reuse potential.
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Agent Execution Template Metrics Schema",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": [
|
|
6
|
+
"protocol_version",
|
|
7
|
+
"task_id",
|
|
8
|
+
"task_type",
|
|
9
|
+
"model",
|
|
10
|
+
"model_tier",
|
|
11
|
+
"escalated",
|
|
12
|
+
"escalation_reason",
|
|
13
|
+
"model_policy_followed",
|
|
14
|
+
"escalation_trigger_hit",
|
|
15
|
+
"strong_model_role",
|
|
16
|
+
"input_tokens_estimated",
|
|
17
|
+
"output_tokens_estimated",
|
|
18
|
+
"duration_minutes",
|
|
19
|
+
"success",
|
|
20
|
+
"human_fix_required",
|
|
21
|
+
"failure_reason",
|
|
22
|
+
"reuse_potential",
|
|
23
|
+
"notes"
|
|
24
|
+
],
|
|
25
|
+
"properties": {
|
|
26
|
+
"protocol_version": {
|
|
27
|
+
"const": "0.8"
|
|
28
|
+
},
|
|
29
|
+
"task_id": {
|
|
30
|
+
"type": "string"
|
|
31
|
+
},
|
|
32
|
+
"task_type": {
|
|
33
|
+
"type": "string"
|
|
34
|
+
},
|
|
35
|
+
"model": {
|
|
36
|
+
"type": "string"
|
|
37
|
+
},
|
|
38
|
+
"model_tier": {
|
|
39
|
+
"enum": [
|
|
40
|
+
"cheap",
|
|
41
|
+
"standard",
|
|
42
|
+
"strong"
|
|
43
|
+
]
|
|
44
|
+
},
|
|
45
|
+
"escalated": {
|
|
46
|
+
"type": "boolean"
|
|
47
|
+
},
|
|
48
|
+
"escalation_reason": {
|
|
49
|
+
"type": "string"
|
|
50
|
+
},
|
|
51
|
+
"model_policy_followed": {
|
|
52
|
+
"type": "boolean"
|
|
53
|
+
},
|
|
54
|
+
"escalation_trigger_hit": {
|
|
55
|
+
"type": "string"
|
|
56
|
+
},
|
|
57
|
+
"strong_model_role": {
|
|
58
|
+
"type": "string"
|
|
59
|
+
},
|
|
60
|
+
"input_tokens_estimated": {
|
|
61
|
+
"type": "integer",
|
|
62
|
+
"minimum": 0
|
|
63
|
+
},
|
|
64
|
+
"output_tokens_estimated": {
|
|
65
|
+
"type": "integer",
|
|
66
|
+
"minimum": 0
|
|
67
|
+
},
|
|
68
|
+
"duration_minutes": {
|
|
69
|
+
"type": "number",
|
|
70
|
+
"minimum": 0
|
|
71
|
+
},
|
|
72
|
+
"success": {
|
|
73
|
+
"type": "boolean"
|
|
74
|
+
},
|
|
75
|
+
"human_fix_required": {
|
|
76
|
+
"type": "boolean"
|
|
77
|
+
},
|
|
78
|
+
"failure_reason": {
|
|
79
|
+
"type": "string"
|
|
80
|
+
},
|
|
81
|
+
"reuse_potential": {
|
|
82
|
+
"enum": [
|
|
83
|
+
"low",
|
|
84
|
+
"medium",
|
|
85
|
+
"high"
|
|
86
|
+
]
|
|
87
|
+
},
|
|
88
|
+
"notes": {
|
|
89
|
+
"type": "array",
|
|
90
|
+
"items": {
|
|
91
|
+
"type": "string"
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
"allOf": [
|
|
96
|
+
{
|
|
97
|
+
"if": {
|
|
98
|
+
"properties": {
|
|
99
|
+
"escalated": {
|
|
100
|
+
"const": true
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
"then": {
|
|
105
|
+
"properties": {
|
|
106
|
+
"escalation_reason": {
|
|
107
|
+
"minLength": 1
|
|
108
|
+
},
|
|
109
|
+
"escalation_trigger_hit": {
|
|
110
|
+
"minLength": 1
|
|
111
|
+
},
|
|
112
|
+
"strong_model_role": {
|
|
113
|
+
"minLength": 1
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
]
|
|
119
|
+
}
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"title": "Agent Execution Template Result Schema",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": [
|
|
6
|
+
"protocol_version",
|
|
7
|
+
"status",
|
|
8
|
+
"scope_followed",
|
|
9
|
+
"files_read",
|
|
10
|
+
"refs_read",
|
|
11
|
+
"files_changed",
|
|
12
|
+
"commands_run",
|
|
13
|
+
"verification",
|
|
14
|
+
"assumptions",
|
|
15
|
+
"issues",
|
|
16
|
+
"next",
|
|
17
|
+
"runtime_update"
|
|
18
|
+
],
|
|
19
|
+
"properties": {
|
|
20
|
+
"protocol_version": {
|
|
21
|
+
"const": "0.8"
|
|
22
|
+
},
|
|
23
|
+
"status": {
|
|
24
|
+
"enum": [
|
|
25
|
+
"success",
|
|
26
|
+
"partial",
|
|
27
|
+
"failed",
|
|
28
|
+
"blocked"
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
"task_id": {
|
|
32
|
+
"type": "string"
|
|
33
|
+
},
|
|
34
|
+
"task_summary": {
|
|
35
|
+
"type": "string"
|
|
36
|
+
},
|
|
37
|
+
"scope_followed": {
|
|
38
|
+
"type": "boolean"
|
|
39
|
+
},
|
|
40
|
+
"files_read": {
|
|
41
|
+
"type": "array",
|
|
42
|
+
"items": {
|
|
43
|
+
"type": "string"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"refs_read": {
|
|
47
|
+
"type": "array",
|
|
48
|
+
"items": {
|
|
49
|
+
"type": "object",
|
|
50
|
+
"required": [
|
|
51
|
+
"file",
|
|
52
|
+
"reason"
|
|
53
|
+
],
|
|
54
|
+
"properties": {
|
|
55
|
+
"file": {
|
|
56
|
+
"type": "string"
|
|
57
|
+
},
|
|
58
|
+
"reason": {
|
|
59
|
+
"type": "string"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
"files_changed": {
|
|
65
|
+
"type": "array",
|
|
66
|
+
"items": {
|
|
67
|
+
"type": "object",
|
|
68
|
+
"required": [
|
|
69
|
+
"file",
|
|
70
|
+
"change_type",
|
|
71
|
+
"reason"
|
|
72
|
+
],
|
|
73
|
+
"properties": {
|
|
74
|
+
"file": {
|
|
75
|
+
"type": "string"
|
|
76
|
+
},
|
|
77
|
+
"change_type": {
|
|
78
|
+
"enum": [
|
|
79
|
+
"created",
|
|
80
|
+
"modified",
|
|
81
|
+
"deleted"
|
|
82
|
+
]
|
|
83
|
+
},
|
|
84
|
+
"reason": {
|
|
85
|
+
"type": "string"
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"commands_run": {
|
|
91
|
+
"type": "array",
|
|
92
|
+
"items": {
|
|
93
|
+
"type": "object",
|
|
94
|
+
"required": [
|
|
95
|
+
"command",
|
|
96
|
+
"result",
|
|
97
|
+
"notes"
|
|
98
|
+
],
|
|
99
|
+
"properties": {
|
|
100
|
+
"command": {
|
|
101
|
+
"type": "string"
|
|
102
|
+
},
|
|
103
|
+
"result": {
|
|
104
|
+
"enum": [
|
|
105
|
+
"passed",
|
|
106
|
+
"failed",
|
|
107
|
+
"skipped"
|
|
108
|
+
]
|
|
109
|
+
},
|
|
110
|
+
"notes": {
|
|
111
|
+
"type": "string"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
"verification": {
|
|
117
|
+
"type": "object",
|
|
118
|
+
"required": [
|
|
119
|
+
"level",
|
|
120
|
+
"passed",
|
|
121
|
+
"evidence"
|
|
122
|
+
],
|
|
123
|
+
"properties": {
|
|
124
|
+
"level": {
|
|
125
|
+
"enum": [
|
|
126
|
+
"none",
|
|
127
|
+
"read_only",
|
|
128
|
+
"static",
|
|
129
|
+
"command",
|
|
130
|
+
"test",
|
|
131
|
+
"manual"
|
|
132
|
+
]
|
|
133
|
+
},
|
|
134
|
+
"passed": {
|
|
135
|
+
"type": "boolean"
|
|
136
|
+
},
|
|
137
|
+
"evidence": {
|
|
138
|
+
"type": "array",
|
|
139
|
+
"items": {
|
|
140
|
+
"type": "string"
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
"evidence": {
|
|
146
|
+
"type": "object",
|
|
147
|
+
"properties": {
|
|
148
|
+
"git_diff_summary": {
|
|
149
|
+
"type": "string"
|
|
150
|
+
},
|
|
151
|
+
"changed_files_from_git": {
|
|
152
|
+
"type": "array",
|
|
153
|
+
"items": {
|
|
154
|
+
"type": "string"
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
"command_outputs": {
|
|
158
|
+
"type": "array",
|
|
159
|
+
"items": {
|
|
160
|
+
"type": "string"
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
"unverified_claims": {
|
|
164
|
+
"type": "array",
|
|
165
|
+
"items": {
|
|
166
|
+
"type": "string"
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
},
|
|
171
|
+
"assumptions": {
|
|
172
|
+
"type": "array",
|
|
173
|
+
"items": {
|
|
174
|
+
"type": "string"
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
"issues": {
|
|
178
|
+
"type": "array",
|
|
179
|
+
"items": {
|
|
180
|
+
"type": "string"
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
"next": {
|
|
184
|
+
"type": "array",
|
|
185
|
+
"items": {
|
|
186
|
+
"type": "string"
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
"runtime_update": {
|
|
190
|
+
"type": "object",
|
|
191
|
+
"required": [
|
|
192
|
+
"required",
|
|
193
|
+
"changes",
|
|
194
|
+
"reason"
|
|
195
|
+
],
|
|
196
|
+
"properties": {
|
|
197
|
+
"required": {
|
|
198
|
+
"type": "boolean"
|
|
199
|
+
},
|
|
200
|
+
"changes": {
|
|
201
|
+
"type": "array",
|
|
202
|
+
"items": {
|
|
203
|
+
"type": "string"
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
"reason": {
|
|
207
|
+
"type": "string"
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
"allOf": [
|
|
213
|
+
{
|
|
214
|
+
"if": {
|
|
215
|
+
"properties": {
|
|
216
|
+
"status": {
|
|
217
|
+
"const": "success"
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
},
|
|
221
|
+
"then": {
|
|
222
|
+
"properties": {
|
|
223
|
+
"verification": {
|
|
224
|
+
"properties": {
|
|
225
|
+
"passed": {
|
|
226
|
+
"const": true
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
]
|
|
234
|
+
}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
# ai/ 执行层
|
|
2
|
+
|
|
3
|
+
把这个目录复制到目标软件项目中。
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
template 是协议
|
|
7
|
+
project 是现场工作区
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
## 文件
|
|
11
|
+
|
|
12
|
+
- `template/prompt.md`:AI 启动提示。
|
|
13
|
+
- `template/bootstrap.md`:项目发现和上下文引导提示。
|
|
14
|
+
- `template/reconcile.md`:把新的权威资料合并进现有项目上下文。
|
|
15
|
+
- `template/VERSION`:已安装模板版本。
|
|
16
|
+
- `template/protocol.md`:引导流程、执行流程、模型分工、同步规则。
|
|
17
|
+
- `template/rules/core.md`:引导范围、就绪度、风险、引用、权限和运行时治理。
|
|
18
|
+
- `template/rules/output.md`:结果和指标输出规则。
|
|
19
|
+
- `template/schemas/`:可选的结果和指标校验。
|
|
20
|
+
- `project/project.md`:稳定项目身份。
|
|
21
|
+
- `project/runtime.md`:当前执行上下文。
|
|
22
|
+
- `project/task.md`:当前任务契约。
|
|
23
|
+
- `project/result.json`:最新权威执行结果。
|
|
24
|
+
- `project/result.md`:最新人类可读执行摘要。
|
|
25
|
+
- `project/metrics.json`:最新模型、token、耗时、成功和复用信号。
|
|
26
|
+
- `project/refs/final-shape.md`:项目北极星说明书 / 最终形态。
|
|
27
|
+
- `project/refs/module-map.md`:当前模块地图。
|
|
28
|
+
- `project/refs/roadmap.md`:阶段路线图。
|
|
29
|
+
- `project/refs/`:只在需要时加载的详细引用。
|
|
30
|
+
- `project/inbox/ideas/`:待评估的产品、业务、架构或方向灵感。
|
|
31
|
+
- `project/inbox/processed/`:已经吸收进上下文的新资料,保留用于追溯。
|
|
32
|
+
- `project/inbox/raw/`:长文本、访谈、碎片材料等原始输入。
|
|
33
|
+
- `project/inbox/`:待吸收的新资料,例如更权威的业务文档。
|
|
34
|
+
- `project/proposals/final-shape-updates/`:北极星和路线图修订提案。
|
|
35
|
+
- `project/proposals/final-shape-updates/_template.md`:方向修订提案模板。
|
|
36
|
+
- `project/archive/`:历史任务和结果,默认不读取。
|
|
37
|
+
|
|
38
|
+
## 常规用法
|
|
39
|
+
|
|
40
|
+
第一次接入项目时,对 AI 工具说:
|
|
41
|
+
|
|
42
|
+
```text
|
|
43
|
+
开始初始化这个项目
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
以后常用入口:
|
|
47
|
+
|
|
48
|
+
- 想让 AI 继续做事:`继续推进这个项目`
|
|
49
|
+
- 有新资料要吸收:放入 `project/inbox/`,然后说 `整合 ai/project/inbox/ 里的新资料`
|
|
50
|
+
- 想重新总结和优化项目上下文:运行 `npx -y @wnlen/agent-execution-template refresh`
|
|
51
|
+
- 有新方向或新想法要评估:放入 `project/inbox/ideas/`,然后说 `把 ai/project/inbox/ideas/ 里的新灵感生成方向修订提案`
|
|
52
|
+
- 忘了下一步怎么走:运行 `npx -y @wnlen/agent-execution-template next`
|
|
53
|
+
|
|
54
|
+
判断标准:
|
|
55
|
+
|
|
56
|
+
- 资料 = 已确定的事实、文档、流程、接口、业务规则。
|
|
57
|
+
- 方向 = 还没决定的新想法、产品策略、架构调整、路线变化。
|
|
58
|
+
|
|
59
|
+
执行后检查 `project/result.json`、`project/result.md` 和 `project/metrics.json`。
|
|
60
|
+
需要时归档旧任务和结果文件。
|
|
61
|
+
|
|
62
|
+
## 上下文整合
|
|
63
|
+
|
|
64
|
+
当出现更完整、更权威的新资料时,先放入:
|
|
65
|
+
|
|
66
|
+
```text
|
|
67
|
+
ai/project/inbox/
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
然后对 AI 工具说:
|
|
71
|
+
|
|
72
|
+
```text
|
|
73
|
+
整合 ai/project/inbox/ 里的新资料
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
整合流程会先给出计划,等你确认后才更新 `project.md`、`runtime.md` 和
|
|
77
|
+
`refs/*`。整合完成后,已处理资料统一移动到
|
|
78
|
+
`ai/project/inbox/processed/`。
|
|
79
|
+
|
|
80
|
+
## 方向修订
|
|
81
|
+
|
|
82
|
+
北极星、模块地图和路线图属于项目方向层:
|
|
83
|
+
|
|
84
|
+
```text
|
|
85
|
+
ai/project/refs/final-shape.md
|
|
86
|
+
ai/project/refs/module-map.md
|
|
87
|
+
ai/project/refs/roadmap.md
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
普通执行任务不能直接修改这些文件。新灵感先放入:
|
|
91
|
+
|
|
92
|
+
```text
|
|
93
|
+
ai/project/inbox/ideas/
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
然后让 AI 生成 `strategy_update` 提案。人类确认后,再用
|
|
97
|
+
`apply_strategy_update` 合并到正式方向文档。
|
|
98
|
+
|
|
99
|
+
## 同步规则
|
|
100
|
+
|
|
101
|
+
从模板仓库同步到真实项目:
|
|
102
|
+
|
|
103
|
+
- 只覆盖 `ai/template/**`。
|
|
104
|
+
- 永远不要覆盖 `ai/project/**`。
|
|
105
|
+
|
|
106
|
+
从真实项目回流到模板仓库:
|
|
107
|
+
|
|
108
|
+
- 只回流 `ai/template/**`。
|
|
109
|
+
- 永远不要回流 `ai/project/**`。
|
|
110
|
+
|
|
111
|
+
## 引导规则
|
|
112
|
+
|
|
113
|
+
- 人类提供意图、硬约束和最终验收。
|
|
114
|
+
- Agent 从现有文档、清单、引用和项目文件中起草 `project/project.md` 和相关 `project/refs/*`。
|
|
115
|
+
- 人类提供当前任务目标后,Agent 起草 `project/task.md`。
|
|
116
|
+
- 人类在执行前检查并确认项目和任务草稿。
|
|
117
|
+
- 引导只能写项目上下文文件;当提供当前任务时,也可以写 `project/task.md`。
|
|
118
|
+
- 引导不得编辑源码、测试、配置、依赖文件、生成文件、运行时文件、结果文件或指标文件。
|
|
119
|
+
- 最多问 3 个澄清问题。
|
|
120
|
+
- 只在答案会改变范围、风险、权限或验收时提问。
|
|
121
|
+
- 重复出现的假设应变成 `project/runtime.md` 更新建议。
|
|
122
|
+
|
|
123
|
+
## 模型分工协议
|
|
124
|
+
|
|
125
|
+
- 模型策略位于 `project/task.md.model_policy`。
|
|
126
|
+
- 常规执行默认使用 `cheap`。
|
|
127
|
+
- 中等实现复杂度使用 `standard`。
|
|
128
|
+
- 只有规划、风险判断、架构复核、失败复盘或验收判断才使用 `strong`。
|
|
129
|
+
- 在 `project/metrics.json` 中记录实际档位、触发条件、角色和升级原因。
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"protocol_version": "0.8",
|
|
3
|
+
"task_id": "",
|
|
4
|
+
"task_type": "",
|
|
5
|
+
"model": "",
|
|
6
|
+
"model_tier": "cheap",
|
|
7
|
+
"escalated": false,
|
|
8
|
+
"escalation_reason": "",
|
|
9
|
+
"model_policy_followed": true,
|
|
10
|
+
"escalation_trigger_hit": "",
|
|
11
|
+
"strong_model_role": "",
|
|
12
|
+
"input_tokens_estimated": 0,
|
|
13
|
+
"output_tokens_estimated": 0,
|
|
14
|
+
"duration_minutes": 0,
|
|
15
|
+
"success": false,
|
|
16
|
+
"human_fix_required": false,
|
|
17
|
+
"failure_reason": "",
|
|
18
|
+
"reuse_potential": "low",
|
|
19
|
+
"notes": []
|
|
20
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# 项目
|
|
2
|
+
|
|
3
|
+
这个文件是 Agent Execution Template 使用的稳定项目身份。
|
|
4
|
+
优先在引导模式中,根据现有仓库文档和清单生成,然后由人类检查。
|
|
5
|
+
未知事实标记为 `Unknown`。
|
|
6
|
+
|
|
7
|
+
## 身份
|
|
8
|
+
|
|
9
|
+
- 名称:
|
|
10
|
+
- 目的:
|
|
11
|
+
- 主要用户:
|
|
12
|
+
|
|
13
|
+
## 技术
|
|
14
|
+
|
|
15
|
+
- 语言:
|
|
16
|
+
- 框架:
|
|
17
|
+
- 包管理器:
|
|
18
|
+
- 测试运行器:
|
|
19
|
+
|
|
20
|
+
## 结构
|
|
21
|
+
|
|
22
|
+
- 源码:
|
|
23
|
+
- 测试:
|
|
24
|
+
- 配置:
|
|
25
|
+
- 文档:
|
|
26
|
+
- 方向文档:`ai/project/refs/final-shape.md`、`module-map.md`、`roadmap.md`
|
|
27
|
+
|
|
28
|
+
## 稳定约束
|
|
29
|
+
|
|
30
|
+
-
|
|
31
|
+
|
|
32
|
+
## 未知项
|
|
33
|
+
|
|
34
|
+
-
|
|
35
|
+
|
|
36
|
+
## 备注
|
|
37
|
+
|
|
38
|
+
这个文件只保存稳定项目身份和长期约定。
|
|
39
|
+
项目方向和最终形态放在 `ai/project/refs/final-shape.md`。
|
|
40
|
+
当前模块结构放在 `ai/project/refs/module-map.md`。
|
|
41
|
+
阶段路线放在 `ai/project/refs/roadmap.md`。
|
|
42
|
+
当前执行上下文放在 `ai/project/runtime.md`。
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
---
|
|
2
|
+
proposal_id: ""
|
|
3
|
+
status: "proposed"
|
|
4
|
+
created_at: ""
|
|
5
|
+
confirmed_by: ""
|
|
6
|
+
applied_at: ""
|
|
7
|
+
source_ideas: []
|
|
8
|
+
target_files:
|
|
9
|
+
- ai/project/refs/final-shape.md
|
|
10
|
+
- ai/project/refs/module-map.md
|
|
11
|
+
- ai/project/refs/roadmap.md
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# 方向修订提案
|
|
15
|
+
|
|
16
|
+
状态规则:
|
|
17
|
+
|
|
18
|
+
- `proposed`:AI 已生成,等待人类审查。
|
|
19
|
+
- `accepted`:人类明确确认,可以进入应用任务。
|
|
20
|
+
- `rejected`:人类明确拒绝,保留提案用于追溯。
|
|
21
|
+
- `applied`:已由 `apply_strategy_update` 合并,且填写 `applied_at`。
|
|
22
|
+
|
|
23
|
+
## 1. 新灵感摘要
|
|
24
|
+
|
|
25
|
+
-
|
|
26
|
+
|
|
27
|
+
## 2. 与当前 final-shape 的一致点
|
|
28
|
+
|
|
29
|
+
-
|
|
30
|
+
|
|
31
|
+
## 3. 冲突点
|
|
32
|
+
|
|
33
|
+
-
|
|
34
|
+
|
|
35
|
+
## 4. 应该吸收的部分
|
|
36
|
+
|
|
37
|
+
-
|
|
38
|
+
|
|
39
|
+
## 5. 应该拒绝的部分
|
|
40
|
+
|
|
41
|
+
-
|
|
42
|
+
|
|
43
|
+
## 6. 对模块地图的影响
|
|
44
|
+
|
|
45
|
+
-
|
|
46
|
+
|
|
47
|
+
## 7. 对路线图的影响
|
|
48
|
+
|
|
49
|
+
-
|
|
50
|
+
|
|
51
|
+
## 8. 建议修改 diff
|
|
52
|
+
|
|
53
|
+
```diff
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## 9. 风险
|
|
58
|
+
|
|
59
|
+
-
|
|
60
|
+
|
|
61
|
+
## 10. 是否推荐合并
|
|
62
|
+
|
|
63
|
+
- 推荐结论:
|
|
64
|
+
- 原因:
|