draftgo-cli 3.0.39 → 3.0.41
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 +59 -13
- package/package.json +4 -2
- package/resources/skill/SKILL.md +53 -15
- package/resources/skill/init/SKILL.md +5 -3
- package/resources/skill/manifest.json +4 -2
- package/resources/skill/push/SKILL.md +2 -0
- package/resources/skill/references/architecture.md +1 -1
- package/resources/skill/references/checkout.md +3 -2
- package/resources/skill/references/frontend.md +18 -287
- package/resources/skill/references/mcp.md +4 -0
- package/resources/skill/references/parallel.md +11 -6
- package/resources/skill/references/runtime.md +1 -1
- package/resources/skill/references/ui-protocol.md +1 -1
- package/resources/skill/scripts/README.md +2 -0
- package/src/changelog.js +276 -0
- package/src/cli.js +1 -0
- package/src/commandRegistry.js +2 -0
- package/src/commands/changelog.js +24 -0
- package/src/commands/context.js +41 -0
- package/src/commands/help.js +12 -1
- package/src/commands/update.js +16 -1
- package/src/context/index.js +368 -0
- package/src/skill.js +65 -3
package/README.md
CHANGED
|
@@ -16,6 +16,9 @@ CLI 不再依赖 Python 同步脚本,也不会创建 DraftGo 业务资源的
|
|
|
16
16
|
## 工作模型
|
|
17
17
|
|
|
18
18
|
```text
|
|
19
|
+
draftgo context -> 精确读取本地 Skill / Reference 章节
|
|
20
|
+
-> 复用一个 MCP 会话并行查询实时上下文
|
|
21
|
+
|
|
19
22
|
AI 宿主 -> draftgo mcp serve -> DraftGo /mcp
|
|
20
23
|
|
|
|
21
24
|
+-> 结构化资源、元数据、搜索和正文片段
|
|
@@ -24,21 +27,29 @@ draftgo checkout/commit -> DraftGo 专用 HTTP 正文端点
|
|
|
24
27
|
(完整 HTML/Markdown 不经过 MCP 上下文)
|
|
25
28
|
```
|
|
26
29
|
|
|
30
|
+
- `draftgo context` 是 CLI 聚合编排命令,不是 MCP 工具;它输出 Reference 原文、原始结构化实时结果和每项来源。
|
|
27
31
|
- MCP 用于项目概览、资源搜索/列表、元数据、正文片段和实时 API 调用。
|
|
28
32
|
- `pages`、`navigations` 和 `docs/articles` 的完整正文使用 `checkout` / `commit`。
|
|
29
33
|
- `db_meta`、AIHub、`system_config`、角色、用户、文档分类、自定义服务等结构化资源直接通过 MCP/API 操作,不生成本地索引。
|
|
30
34
|
- `.draftgo/pages/`、`.draftgo/navigations/` 等旧 `index.json` 缓存只视为 legacy 数据;CLI 不删除它们,但 `map` 和 `check` 会忽略它们。
|
|
31
35
|
- DraftGo Skill 继续提供资源关系、页面规范、数据和权限、安全规则、自定义服务经验以及验证流程;MCP 不替代 Skill。
|
|
36
|
+
- CLI 不提供页面模板,也不替 Agent 选择页面结构或视觉风格。
|
|
32
37
|
|
|
33
38
|
## Agent 阅读顺序
|
|
34
39
|
|
|
35
|
-
DraftGo Skill 不能被 MCP 替代。根 `SKILL.md` 会在 Skill
|
|
40
|
+
DraftGo Skill 不能被 MCP 替代。根 `SKILL.md` 会在 Skill 触发时自动加载;开发任务默认运行一次匹配领域的 context:
|
|
36
41
|
|
|
37
42
|
```text
|
|
38
|
-
已加载的 SKILL.md
|
|
43
|
+
已加载的 SKILL.md
|
|
44
|
+
-> draftgo context --task frontend --output json
|
|
45
|
+
-> 精确 Reference 原文 + MCP 当前状态
|
|
46
|
+
-> 按需继续调用 MCP
|
|
47
|
+
-> 必要时 checkout 正文
|
|
39
48
|
```
|
|
40
49
|
|
|
41
|
-
|
|
50
|
+
`context` 先验证并逐字提取当前 CLI 随包 Reference 的固定任务章节,再用同一 MCP 会话并行查询项目、资源、API 和 `db_meta` 数据结构;它不做摘要,也不限制后续 MCP 调用。输出中的 `reference_bundle` 会报告 CLI bundle 与项目已安装 Skill 的版本及同步状态,不同步时先运行 `draftgo update`。页面或导航任务使用 `frontend`,数据、自定义服务、AIHub、正文和项目清点分别可用 `data`、`custom-service`、`aihub`、`content`、`project`。`mcp test` 是连接诊断,不是每次资源查询的前置步骤。
|
|
51
|
+
|
|
52
|
+
只回答无需实时状态的本地规则问题,或需要 context 路由之外的专项资料时,Agent 继续按根 Skill 表格手工补读。静态资源须先区分:平台内置目录由 `frontend.md` 说明,指定页面依赖经 MCP 定位、checkout 后本地搜索,服务器全量文件不能凭现有 Skill、MCP 摘要或 checkout 声称已枚举。
|
|
42
53
|
|
|
43
54
|
Skill 说明产品约束、内置能力和操作规则;MCP 说明当前远端状态;checkout 正文才能证明某个页面完整引用了哪些静态资源。汇报时应明确标注这三类证据,不能互相替代。
|
|
44
55
|
|
|
@@ -133,27 +144,42 @@ DraftGo MCP 预期提供以下工具:
|
|
|
133
144
|
|
|
134
145
|
## 标准工作流
|
|
135
146
|
|
|
136
|
-
陌生项目先通过 MCP 获取概览,再按需搜索、列出或读取资源元数据:
|
|
137
|
-
|
|
138
147
|
```text
|
|
139
|
-
|
|
148
|
+
context 一次准备信息
|
|
149
|
+
→ Agent 自主设计并批量 checkout
|
|
150
|
+
→ 独立资源按需并行开发
|
|
151
|
+
→ 主 Agent 一次统一验证
|
|
152
|
+
→ commit
|
|
153
|
+
→ draftgo changelog add "<完成结果>"
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
无依赖且修改不同资源的工作可以并行;同一文件或 DraftGo 资源全程只分配给一个 Agent。开始并行实现前先确定共享 schema、接口、权限和路由。单页面、强依赖或仍共享主要资源的任务由一个 Agent 完成。主 Agent 负责 context、资源 owner、汇总回读、统一验证、commit 和最终 changelog。
|
|
157
|
+
|
|
158
|
+
前端任务先准备上下文并按需补充 MCP 定位:
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
draftgo context --task frontend --output json
|
|
140
162
|
```
|
|
141
163
|
|
|
142
|
-
|
|
164
|
+
确定全部正文资源后批量 checkout,自主设计并按唯一 owner 编辑,最后统一验证和交付:
|
|
143
165
|
|
|
144
166
|
```bash
|
|
145
|
-
draftgo checkout pages 42
|
|
146
|
-
#
|
|
167
|
+
draftgo checkout pages 42 43
|
|
168
|
+
# 独立资源可并行编辑;同一资源只由一个 Agent 修改
|
|
147
169
|
draftgo check
|
|
148
170
|
draftgo verify-ui http://localhost:5173 # UI 变更时
|
|
149
171
|
draftgo diff pages 42
|
|
150
|
-
draftgo
|
|
172
|
+
draftgo diff pages 43
|
|
173
|
+
draftgo commit pages 42 43
|
|
174
|
+
draftgo changelog add "完成文档管理系统及角色权限"
|
|
151
175
|
```
|
|
152
176
|
|
|
153
177
|
只查询长内容时,优先使用 MCP 搜索和片段工具;需要全文分析或编辑时才 checkout。不要要求 MCP 返回完整 HTML 或 Markdown。
|
|
154
178
|
|
|
155
179
|
结构化资源使用 `draftgo_api_search` / `draftgo_api_describe` 查实时契约,再用 `draftgo_api_call` 操作。AIHub Agent、Prompt、MCP、Skill、供应商和模型路由也属于实时结构化资源,不写本地快照;供应商密钥或 header 值不得出现在 Agent 输出中。
|
|
156
180
|
|
|
181
|
+
只有整个任务统一验证并且所有 commit/MCP 写入成功后才执行一次 `changelog add`。验证失败、409/412 或任一交付失败时不得写入。
|
|
182
|
+
|
|
157
183
|
## 命令清单
|
|
158
184
|
|
|
159
185
|
### Skill 与连接
|
|
@@ -171,6 +197,7 @@ draftgo commit pages 42
|
|
|
171
197
|
|
|
172
198
|
| 命令 | 说明 |
|
|
173
199
|
|---|---|
|
|
200
|
+
| `draftgo context --task <task> --output json` | 精确读取任务 Reference 章节,并复用一个 MCP 会话并行查询项目、资源、API 和数据结构;保留原始结果及来源。 |
|
|
174
201
|
| `draftgo map` | 通过 MCP 读取远端项目概览和资源列表,再叠加本地 checkout 状态。 |
|
|
175
202
|
| `draftgo checkout <pages|nav|docs> <id...>` | 下载完整正文和 base,校验 hash 后原子落盘;`--force` 可显式覆盖已修改的本地正文。 |
|
|
176
203
|
| `draftgo check` | 只检查 checkout manifest、worktree 文件、base/hash、扩展名、HTML 结构和已 checkout 导航引用。 |
|
|
@@ -193,6 +220,7 @@ draftgo commit pages 42
|
|
|
193
220
|
| `draftgo delete <operation_id> [id]` | 描述并确认后调用实时 MCP `api_call`;支持 `--params JSON`、`--input file` 和 `--yes`。 |
|
|
194
221
|
| `draftgo deploy [<type> <id...>]` | 先 `check`,再按 delivery 模式检查 diff 或 commit。仅 `--delivery local` 可省略 type/id。 |
|
|
195
222
|
| `draftgo auto-push [<type> <id...>]` | `auto_push: true` 时检查并 commit 已 checkout 的变更;有冲突立即停止。 |
|
|
223
|
+
| `draftgo changelog add "<完成结果>"` | 在整个任务统一验证并全部交付成功后追加一条完成结果。 |
|
|
196
224
|
| `draftgo pull` | 仅输出迁移提示并返回非零;永不下载资源。 |
|
|
197
225
|
| `draftgo push <type> <id...>` | 已弃用;仅对 pages/nav/docs 显示提示后转发到 `commit`。不支持 push-all 或结构化资源。 |
|
|
198
226
|
|
|
@@ -200,6 +228,23 @@ draftgo commit pages 42
|
|
|
200
228
|
|
|
201
229
|
`auto-push` 不传 id 时只处理 manifest 中已修改的 checkout;项目未连接或 `auto_push` 未启用时安全跳过。
|
|
202
230
|
|
|
231
|
+
### 更新日志
|
|
232
|
+
|
|
233
|
+
`draftgo changelog add` 写入 `.draftgo/changelog.md`。同一天继续编号;本地日期变化后追加新区块并从 `1` 开始。命令只接受单行、非空的完成结果;现有文件不符合固定格式时拒绝改写。
|
|
234
|
+
|
|
235
|
+
```markdown
|
|
236
|
+
2026-07-31
|
|
237
|
+
===
|
|
238
|
+
1. 完成文档管理系统及角色权限
|
|
239
|
+
2. 修复文档编辑权限问题
|
|
240
|
+
|
|
241
|
+
2026-08-01
|
|
242
|
+
===
|
|
243
|
+
1. 增加文档分类功能
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
只记录已完成结果,不记录排查过程。统一验证、409/412 或任一交付失败时不运行该命令。
|
|
247
|
+
|
|
203
248
|
### 本地 DraftGo
|
|
204
249
|
|
|
205
250
|
| 命令 | 说明 |
|
|
@@ -282,7 +327,7 @@ checkout 会通过 MCP 获取元数据和专用下载地址,流式写入临时
|
|
|
282
327
|
前端和自定义服务的关键约定仍然适用:
|
|
283
328
|
|
|
284
329
|
- 壳层源码使用 React 19 + Vite 8 + Tailwind CSS 4;数据库页面和导航使用原生 HTML,不写入 TSX、ESM import 或 npm 构建产物。
|
|
285
|
-
- 内置 UI、图标、Chat SDK、AIHub
|
|
330
|
+
- 内置 UI、图标、Chat SDK、AIHub 结构化输出以及前端运行、交互和验收规则见 `resources/skill/references/`;CLI 和 Skill 不提供页面模板。
|
|
286
331
|
- 自定义服务使用 Go `draftgo/sdk`,通过 `Register(app *sdk.App)` 注册 Route、事件和定时任务;管理权限、调用权限、并发和出站请求约束见 `resources/skill/references/custom-services.md`。
|
|
287
332
|
- 自定义服务、数据、AIHub、权限和系统配置通过实时 MCP/API 操作,不从 `.draftgo/*/index.json` 推断远端状态。
|
|
288
333
|
|
|
@@ -291,7 +336,8 @@ checkout 会通过 MCP 获取元数据和专用下载地址,流式写入临时
|
|
|
291
336
|
## 常用选项
|
|
292
337
|
|
|
293
338
|
- `--project <dir>`:操作指定项目目录,默认当前目录。
|
|
294
|
-
- `--output json`:为 map、check、checkout、commit、diff、conflicts、conflict、api 或 delete 输出 JSON。
|
|
339
|
+
- `--output json`:为 context、map、check、checkout、commit、diff、conflicts、conflict、api 或 delete 输出 JSON。
|
|
340
|
+
- `--task <task>`:选择 context 路由;支持 frontend、data、custom-service、aihub、content、project。
|
|
295
341
|
- `--strict`:check/deploy/auto-push 将 warnings 视为失败。
|
|
296
342
|
- `--force`:init 覆盖已有 Skill;checkout 显式覆盖已修改的本地正文。update 始终刷新目标 Skill。
|
|
297
343
|
- `--purge`:uninstall 时同时删除整个 `.draftgo/` 运行时目录。
|
|
@@ -304,7 +350,7 @@ checkout 会通过 MCP 获取元数据和专用下载地址,流式写入临时
|
|
|
304
350
|
- `--mobile-check auto|always|never`:控制 `verify-ui` 是否执行。
|
|
305
351
|
- `--screenshot on-failure|always|never`:控制 UI 截图。
|
|
306
352
|
- `--delivery local|preview|deploy`:控制 deploy 行为。
|
|
307
|
-
- `--timeout <ms>`:控制 connect
|
|
353
|
+
- `--timeout <ms>`:控制 connect、MCP test 或 context 的远端请求超时。
|
|
308
354
|
|
|
309
355
|
设置 `DRAFTGO_NO_UPDATE_CHECK=1` 可关闭 npm 版本检查,适用于离线或 CI 环境。
|
|
310
356
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "draftgo-cli",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.41",
|
|
4
4
|
"description": "Install and manage the DraftGo skill across AI coding agents (Claude Code, Codex, Cursor, Windsurf, Antigravity, Copilot, Gemini, Kiro).",
|
|
5
5
|
"bin": {
|
|
6
6
|
"draftgo": "bin/draftgo.js"
|
|
@@ -45,8 +45,10 @@
|
|
|
45
45
|
"lint": "node scripts/check-syntax.js",
|
|
46
46
|
"validate:skill": "node scripts/validate-skill.js",
|
|
47
47
|
"verify:package": "node scripts/verify-package.js",
|
|
48
|
-
"test": "npm run lint && npm run validate:skill && npm run verify:package && npm run test:unit && npm run test:mcp && npm run test:worktree && npm run test:migration && npm run test:local && npm run test:e2e",
|
|
48
|
+
"test": "npm run lint && npm run validate:skill && npm run verify:package && npm run test:unit && npm run test:context && npm run test:changelog && npm run test:mcp && npm run test:worktree && npm run test:migration && npm run test:local && npm run test:e2e",
|
|
49
49
|
"test:unit": "node tests/unit.js",
|
|
50
|
+
"test:context": "node tests/context.test.js",
|
|
51
|
+
"test:changelog": "node tests/changelog.test.js",
|
|
50
52
|
"test:mcp": "node tests/mcp.test.js",
|
|
51
53
|
"test:worktree": "node tests/worktree.test.js",
|
|
52
54
|
"test:migration": "node tests/migration.test.js",
|
package/resources/skill/SKILL.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: draftgo
|
|
3
|
-
description: Use this skill before inspecting, developing, maintaining, debugging, or delivering a DraftGo application.
|
|
3
|
+
description: Use this skill before inspecting, developing, maintaining, debugging, or delivering a DraftGo application. Start development tasks with draftgo context so exact local Reference sections are read before live MCP discovery; use checkout/commit for complete page/nav/docs bodies and write the changelog only after unified verification and delivery succeed.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# DraftGo 开发助手
|
|
@@ -9,15 +9,29 @@ description: Use this skill before inspecting, developing, maintaining, debuggin
|
|
|
9
9
|
|
|
10
10
|
DraftGo CLI 是工作区工具,不是全量云端镜像器。
|
|
11
11
|
|
|
12
|
+
- 规则:本地 Skill / Reference。
|
|
13
|
+
- 实时数据:MCP。
|
|
14
|
+
- 完整正文:checkout。
|
|
15
|
+
- 聚合编排:`draftgo context`。
|
|
12
16
|
- 用 DraftGo MCP 查询实时资源、API 契约、权限和结构化数据。
|
|
13
17
|
- 只对 pages、nav/navigations 和 docs/articles 的长正文使用 checkout、本地编辑和 commit。
|
|
14
18
|
- 完整 HTML、Markdown 或其他长正文不得作为 MCP 工具参数或 MCP 上下文传输;使用 CLI 的专用 HTTP 流式通道。
|
|
19
|
+
- `draftgo context` 是确定性的 CLI 编排命令,不注册为 MCP 工具;它精确返回相关 Reference 原文及来源,并复用一个 MCP 会话并行查询实时状态。
|
|
20
|
+
- CLI 不提供或生成页面模板,也不替 Agent 选择页面结构或视觉风格;Agent 根据任务、受众和现有资源自主设计。
|
|
15
21
|
- MCP 不可用时报告连接、协议或 SAT 问题;不得自动回退到 pull --all 或旧索引镜像。
|
|
16
22
|
- 本地 Docker、MySQL、Redis、Milvus 和 draftgo local ... 能力与 MCP 工作流相互独立,必须保留。
|
|
17
23
|
|
|
18
24
|
## 强制预读:Reference 优先于 MCP
|
|
19
25
|
|
|
20
|
-
根 `SKILL.md` 会在 Skill
|
|
26
|
+
根 `SKILL.md` 会在 Skill 触发时自动加载。开发、修改或交付任务默认先运行一次与领域匹配的 `draftgo context --task <task> --output json`;前端任务使用:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
draftgo context --task frontend --output json
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
该命令先校验并逐字读取当前 CLI 随包的本地 Reference 章节,再在同一个 MCP 会话中并行查询项目、资源、API 和数据结构;输出保留原始结构化结果、实际工具名、参数和来源,不做有损总结。`reference_bundle` 同时报告 CLI bundle 版本、项目已安装 Skill 版本和同步状态;不同步时先运行 `draftgo update`。它不限制 Agent 后续继续直接调用 MCP。只回答无需实时状态的本地规则问题,或 context 未覆盖的专项章节时,按下表手工补读;context 失败时报告原始问题,不得跳过 Reference 直接猜测。
|
|
33
|
+
|
|
34
|
+
不得仅凭 MCP 的元数据推断产品规则、模块归属或前端能力。前端任务的共同规则:任何页面或导航的分析、修改、交互和 UI 任务都先读 `references/frontend.md`;涉及路由、会话、`App` API、iframe/全局注入或运行时行为时加读 `references/runtime.md`;涉及外部资产/CDN、认证、用户输入或不可信内容、敏感数据或配置时加读 `references/security.md`。静态资源只是该规则的一种专门场景。
|
|
21
35
|
|
|
22
36
|
| 用户问题或任务 | MCP 前必须读取的 Skill 材料 | 然后才可取得的实时证据 |
|
|
23
37
|
|---|---|---|
|
|
@@ -34,24 +48,42 @@ DraftGo CLI 是工作区工具,不是全量云端镜像器。
|
|
|
34
48
|
|
|
35
49
|
汇报时明确区分三类证据:Skill 给出的产品约束和内置能力、MCP 返回的当前远端状态、以及 checkout 正文中确认的精确页面依赖。不能把其中任一类冒充为另一类。例如,Skill 列出的 `/assets/` 能力不是当前服务器文件清单,MCP 的页面摘要也不是完整 HTML 依赖清单。最终答复列出具体已读取的 reference,不能只笼统声称“已读 Skill”。
|
|
36
50
|
|
|
51
|
+
## 并行开发与所有权
|
|
52
|
+
|
|
53
|
+
- 无依赖且修改不同文件或 DraftGo 资源的任务并行开发。
|
|
54
|
+
- 同一文件或 DraftGo 资源全程只能由一个 Agent 修改;其他 Agent 只能只读分析并向唯一 owner 回传建议。
|
|
55
|
+
- 分发实现前先确定共享的数据结构、接口、权限和路由,再并行开发消费者。
|
|
56
|
+
- 主 Agent 负责执行一次 context、分配资源 owner、汇总回读、统一验证、commit,并仅在全部交付成功后写 changelog。
|
|
57
|
+
- 单页面、强依赖任务或拆分后仍共享主要资源的任务不强行并行,避免协调成本拖慢开发。
|
|
58
|
+
|
|
59
|
+
详细工作单元和 wave 规则见 `references/parallel.md`。
|
|
60
|
+
|
|
37
61
|
## 标准工作流
|
|
38
62
|
|
|
63
|
+
```text
|
|
64
|
+
context 一次准备信息
|
|
65
|
+
→ Agent 自主设计并批量 checkout
|
|
66
|
+
→ 独立资源按需并行开发
|
|
67
|
+
→ 主 Agent 一次统一验证
|
|
68
|
+
→ commit
|
|
69
|
+
→ draftgo changelog add "<完成结果>"
|
|
70
|
+
```
|
|
71
|
+
|
|
39
72
|
### 项目清点与陌生项目
|
|
40
73
|
|
|
41
|
-
1.
|
|
42
|
-
2.
|
|
43
|
-
3.
|
|
44
|
-
4.
|
|
45
|
-
5. `draftgo mcp test` 只用于 connect 后验证、配置变更或 MCP 调用失败后的诊断;普通资源查询不应先执行它。
|
|
74
|
+
1. 运行匹配领域的 `draftgo context --task <task> --output json`,一次取得规则原文及实时基础信息。
|
|
75
|
+
2. 根据 context 的来源和原始结果确认资源范围;按需继续调用 MCP search、describe 或 metadata,不把 context 当成后续查询限制。
|
|
76
|
+
3. 需要叠加本地 checkout 状态时运行 `draftgo map`。
|
|
77
|
+
4. `draftgo mcp test` 只用于 connect 后验证、配置变更或 MCP 调用失败后的诊断;普通资源查询不应先执行它。
|
|
46
78
|
|
|
47
79
|
### 页面、导航和文档正文
|
|
48
80
|
|
|
49
|
-
1.
|
|
50
|
-
2.
|
|
51
|
-
3. 读取、搜索和编辑
|
|
52
|
-
4.
|
|
53
|
-
5. 用 draftgo diff <type> <id
|
|
54
|
-
6.
|
|
81
|
+
1. 运行 frontend 或 content context,并按需继续通过 MCP 定位资源、取得元数据。
|
|
82
|
+
2. Agent 根据任务自主设计;对已确定的 pages/nav/docs 批量 checkout。
|
|
83
|
+
3. 按唯一资源 owner 读取、搜索和编辑 `.draftgo/worktree/` 正文;独立资源可并行。
|
|
84
|
+
4. 主 Agent 汇总回读后统一运行一次 `draftgo check`,页面布局或交互变化时再统一运行 `draftgo verify-ui`。
|
|
85
|
+
5. 用 `draftgo diff <type> <id>` 检查全部 base/local 差异,再运行对应的 `draftgo commit ...`。
|
|
86
|
+
6. 全部验证和 commit 成功后执行一次 `draftgo changelog add "<完成结果>"`。任何验证失败、409/412 或交付失败都停止且不写 changelog。
|
|
55
87
|
|
|
56
88
|
详细 manifest、扩展名、哈希和冲突规则见 references/checkout.md。
|
|
57
89
|
|
|
@@ -64,6 +96,7 @@ DraftGo CLI 是工作区工具,不是全量云端镜像器。
|
|
|
64
96
|
db_meta、AIHub、system_config、roles、users、doc_categories、普通配置和自定义服务元数据直接使用 MCP 的 api_search、api_describe、api_call 或语义化工具。
|
|
65
97
|
|
|
66
98
|
不要为这些资源创建全量本地镜像,也不要读取旧 .draftgo/*/index.json 作为事实来源。领域 schema、权限和实践约束仍可从本 Skill 的 references 读取。
|
|
99
|
+
按唯一资源 owner 完成修改,主 Agent 回读并验证全部副作用;只有所有结构化资源交付成功后才执行一次 `draftgo changelog add`。
|
|
67
100
|
|
|
68
101
|
## CLI 场景路由
|
|
69
102
|
|
|
@@ -74,9 +107,11 @@ db_meta、AIHub、system_config、roles、users、doc_categories、普通配置
|
|
|
74
107
|
| 配置或诊断 MCP | draftgo mcp setup [target...]、draftgo mcp test;细节见 references/mcp.md |
|
|
75
108
|
| 连接基座 | draftgo connect;保存 server/SAT、验证 /mcp 和关键工具,不拉取业务资源 |
|
|
76
109
|
| 本地基座 | draftgo local setup,然后 draftgo local start/stop/logs/status;兼容 local-dev、local up/down |
|
|
110
|
+
| 一次准备任务上下文 | draftgo context --task frontend\|data\|custom-service\|aihub\|content\|project --output json |
|
|
77
111
|
| 远端摘要或资源定位 | MCP project_overview、resource_search、resource_list、按需 metadata 工具 |
|
|
78
|
-
| 页面、导航、文档正文 | checkout →
|
|
112
|
+
| 页面、导航、文档正文 | context → 批量 checkout → 按资源 owner 编辑 → 统一 check/verify-ui → diff → commit |
|
|
79
113
|
| 结构化资源读写 | MCP api_search、api_describe、api_call 或语义化工具 |
|
|
114
|
+
| 完成结果日志 | 全部验证和交付成功后 draftgo changelog add "<完成结果>";失败时禁止写入 |
|
|
80
115
|
| 删除资源 | 使用实时 MCP/API 删除;不得从本地旧索引推断目标或清理正文 |
|
|
81
116
|
| 兼容旧命令 | draftgo pull 只显示迁移提示并返回非零;draftgo push pages/nav/docs 显示弃用提示后转发到 commit。其他 push 类型引导使用 MCP。 |
|
|
82
117
|
|
|
@@ -111,6 +146,8 @@ db_meta、AIHub、system_config、roles、users、doc_categories、普通配置
|
|
|
111
146
|
|
|
112
147
|
draftgo deploy、auto-push 等旧交付入口必须遵循当前 CLI 的 commit 语义;不把它们当作旧全量 push 的回退路径。
|
|
113
148
|
|
|
149
|
+
主 Agent 必须汇总全部修改和验证证据后再交付。只有任务统一验证并且所有 commit/MCP 写入成功时,才运行一次 `draftgo changelog add "<完成结果>"`;日志只写完成结果,不写排查过程。验证失败、冲突或任一交付失败时不得写入。
|
|
150
|
+
|
|
114
151
|
## 参考路由
|
|
115
152
|
|
|
116
153
|
- MCP、宿主配置和 bridge:references/mcp.md
|
|
@@ -133,4 +170,5 @@ draftgo deploy、auto-push 等旧交付入口必须遵循当前 CLI 的 commit
|
|
|
133
170
|
| .draftgo/worktree/.base/ | checkout 时保存的 base;必须 gitignore |
|
|
134
171
|
| .draftgo/conflicts/ | 409/412 冲突材料;必须 gitignore |
|
|
135
172
|
| .draftgo/worktree/manifest.json | checkout 的版本、路径、内容类型和哈希;必须 gitignore |
|
|
136
|
-
| .draftgo/story.yaml、Task/、lessons
|
|
173
|
+
| .draftgo/story.yaml、Task/、lessons/ | 项目决策、任务和经验;按项目策略保留 |
|
|
174
|
+
| .draftgo/changelog.md | 完成结果日志;统一验证和全部交付成功后必须写入,失败时禁止写入 |
|
|
@@ -17,7 +17,7 @@ description: Install or refresh the DraftGo skill, connect a project to a DraftG
|
|
|
17
17
|
- 已有 DraftGo 服务器:运行 draftgo connect。
|
|
18
18
|
- 需要本地 Docker 基座:运行 draftgo local setup。
|
|
19
19
|
6. 连接后运行 draftgo mcp setup(或指定目标),再运行 draftgo mcp test 验证 initialize、tools/list 和关键工具。
|
|
20
|
-
7. 运行 draftgo
|
|
20
|
+
7. 运行 `draftgo context --task project --output json`,一次取得本地规则原文与远端实时上下文;只有需要叠加本地 checkout 状态时再运行 `draftgo map`。MCP 不可用时报告原因,不回退到 pull --all。
|
|
21
21
|
|
|
22
22
|
draftgo init 只负责 Skill 安装;draftgo connect 负责保存并验证 server/SAT;draftgo mcp setup 负责宿主配置。不要混用职责。
|
|
23
23
|
|
|
@@ -31,9 +31,11 @@ draftgo init 只负责 Skill 安装;draftgo connect 负责保存并验证 serv
|
|
|
31
31
|
## 后续动作
|
|
32
32
|
|
|
33
33
|
- 宿主配置和诊断:draftgo mcp setup/status/test,详见 ../references/mcp.md。
|
|
34
|
-
-
|
|
35
|
-
-
|
|
34
|
+
- 开发上下文:先运行匹配领域的 `draftgo context --task <task> --output json`;context 后仍可按需直接调用 MCP。
|
|
35
|
+
- 远端资源补充定位:MCP project_overview、resource_search、resource_list。
|
|
36
|
+
- 正文编辑:自主设计并批量 checkout,不同资源按唯一 owner 并行修改,由主 Agent 统一运行 check/必要的 verify-ui、diff 和 commit。
|
|
36
37
|
- 结构化资源:直接使用 MCP 的 api_search、api_describe、api_call;不 checkout、不生成本地镜像。
|
|
38
|
+
- 完成日志:只有整个任务统一验证且全部 commit/MCP 交付成功后,由主 Agent 执行一次 `draftgo changelog add "<完成结果>"`;验证、冲突或交付失败时不得写入。
|
|
37
39
|
- 管理本地基座:draftgo local start|stop|logs|status;local-dev、local up/down 仍可用。
|
|
38
40
|
- 移除指定目标:draftgo uninstall <target>;完整移除所有目标只在用户明确要求时运行 draftgo uninstall all,--purge 会删除 .draftgo/。
|
|
39
41
|
|
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
"schema_version": "1.0",
|
|
3
3
|
"id": "draftgo",
|
|
4
4
|
"name": "DraftGo 开发助手",
|
|
5
|
-
"version": "3.0.
|
|
5
|
+
"version": "3.0.41",
|
|
6
6
|
"entry": "SKILL.md",
|
|
7
|
-
"description": "以 Skill/reference
|
|
7
|
+
"description": "以 context 聚合编排、Skill/reference 原文、MCP 实时发现、长正文 checkout/commit、统一验证和完成日志为边界的 DraftGo 工作流。",
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"capabilities": [
|
|
10
10
|
"draftgo-development",
|
|
11
|
+
"context-orchestration",
|
|
12
|
+
"completion-changelog",
|
|
11
13
|
"custom-service-ai-sdk",
|
|
12
14
|
"mcp-bridge",
|
|
13
15
|
"content-checkout-commit",
|
|
@@ -42,6 +42,8 @@ commit 是长正文的唯一正式交付动作。push pages/nav/docs 仅是兼
|
|
|
42
42
|
5. 成功后原子更新 manifest、base、版本和哈希,并回读清晰的提交结果。
|
|
43
43
|
6. 发生 409/412 时返回非零,停止重试和 auto-commit,保留 local/base 并生成 remote 及冲突 manifest。
|
|
44
44
|
|
|
45
|
+
单个 commit 成功不自动写 changelog。主 Agent 只有在全部资源统一验证和交付成功后,才显式执行一次 `draftgo changelog add "<完成结果>"`;409/412、验证失败或其他交付失败时不得写入。
|
|
46
|
+
|
|
45
47
|
## 冲突
|
|
46
48
|
|
|
47
49
|
冲突目录必须包含可定位的 base、local、remote 三份材料。不要覆盖任一份,也不要手写不可靠的 HTML 合并器。Agent 或用户完成合并后,重新运行 check/verify-ui,确认最新 base,再执行 commit。
|
|
@@ -91,8 +91,9 @@ base 已变化时必须拒绝覆盖。
|
|
|
91
91
|
4. 完整正文不得作为 MCP tool 参数发送。
|
|
92
92
|
5. 底座确认 hash 和新版本后,CLI 原子更新 `.base` 与 manifest。返回 hash 不一致时不得推进基线。
|
|
93
93
|
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
推荐编辑顺序:主 Agent 执行一次 context -> MCP 按需补充定位 -> Agent 自主设计并批量 checkout -> 独立资源按唯一 owner 并行编辑 -> 主 Agent 汇总回读 -> 统一运行一次 `draftgo check` 和必要的 `draftgo verify-ui` -> `draftgo diff` -> commit。
|
|
95
|
+
|
|
96
|
+
单个 commit 成功不自动写 changelog。只有整个任务统一验证且全部 commit/MCP 交付成功后,主 Agent 才执行一次 `draftgo changelog add "<完成结果>"`。任何检查失败、409/412 或交付失败都不得写入。
|
|
96
97
|
|
|
97
98
|
## 409 / 412 冲突
|
|
98
99
|
|