@weotro/dx 0.3.5 → 0.3.7
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/lib/codex-initial.js +1 -0
- package/package.json +1 -1
- package/skills/ask_3th/SKILL.md +7 -19
- package/skills/delegate_3th/SKILL.md +20 -68
- package/skills/delegate_3th/references/external-runtimes.md +43 -0
- package/skills/online-debug-guard/SKILL.md +1 -1
- package/skills/project-agent-standards/agents/openai.yaml +1 -1
- package/skills/ship-issue-pr/SKILL.md +3 -4
- package/skills/ship-issue-pr/agents/openai.yaml +1 -1
- package/skills/doctor/SKILL.md +0 -82
- package/skills/doctor/agents/openai.yaml +0 -2
package/lib/codex-initial.js
CHANGED
package/package.json
CHANGED
package/skills/ask_3th/SKILL.md
CHANGED
|
@@ -1,29 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ask_3th
|
|
3
|
-
description: 显式调用 ask_3th
|
|
3
|
+
description: 显式调用 ask_3th 或被已授权流程调用时,提问、咨询或获取独立审查意见;默认使用当前运行时的 fresh subagent,用户指定其他运行时时使用指定通道。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# ask_3th
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
默认直接新建当前运行时的 fresh subagent(refresh subagent),继承当前模型,以独立上下文提供答案或第二意见。咨询与审查只读。默认路径不检查运行时或外部工具;用户明确指定其他运行时时,按指定通道调用。
|
|
9
9
|
|
|
10
10
|
## 执行流程
|
|
11
11
|
|
|
12
|
-
1.
|
|
13
|
-
2.
|
|
14
|
-
3.
|
|
15
|
-
4.
|
|
12
|
+
1. 整理自包含的问题材料,包含问题、必要事实、源码或 diff、约束和预期输出,排除凭据。审查材料覆盖请求范围,证据不足时先补充,不假定咨询者拥有当前对话。
|
|
13
|
+
2. 用户明确指定其他运行时时,读取 [指定运行时调用](../delegate_3th/references/external-runtimes.md),以 `consult` 模式使用该通道;否则直接使用当前会话的原生 subagent 工具创建全新执行者。使用 `spawn_agent` 时设置 `fork_turns: "none"`,省略 `model`、`reasoning_effort` 和 `agent_type`;使用 `Agent` 时新建 `general-purpose` 会话,省略 `model`,不 resume 旧会话。独立审查者必须未参与本次实现或修复;即使当前执行者已是 subagent,也需要新建独立执行者。
|
|
14
|
+
3. 传入自包含的问题材料,限定只读,要求执行者自行回答,不把同一问题再次交给 `ask_3th` 或 `delegate_3th`。
|
|
15
|
+
4. 等待同一执行者返回实质答案,核实是否回应原问题,再交付答案、关键依据、不确定性及实际执行者和会话 ID。静默或单次等待超时不等于失败;用户取消时停止。工具不可用、达到嵌套限制或执行失败时,如实报告阻塞;未经用户授权,不更换运行时或无限新建 agent。
|
|
16
16
|
|
|
17
|
-
用户要求修改代码或执行任务时,转入
|
|
18
|
-
|
|
19
|
-
## Claude 通道脚本
|
|
20
|
-
|
|
21
|
-
仅在上述路由选择 Claude 时使用当前技能目录的 `scripts/ask_3th.py`;它固定为咨询模式,调用细节与失败状态由 `delegate_3th` 维护。脚本自身不能启动宿主 sub-agent,收到失败状态后由执行本技能的 agent 完成回退。
|
|
22
|
-
|
|
23
|
-
在 Codex 宿主下默认不传模型参数,由 Claude Code CLI 按当前生效的用户/项目配置及环境变量选择模型。调用方不要补上固定模型 ID;返回中的 `requested_model: null` 表示使用 CLI 默认选择,实际模型未知时不要推测。
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
python3 "$HOME/.agents/skills/ask_3th/scripts/ask_3th.py" --prompt-file /绝对路径/问题.txt
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
`--timeout` 是无活动告警阈值(默认 120 秒),不是答复截止时间。通过宿主异步工具持续读取同一会话;静默或单次等待超时本身不算调用失败。
|
|
17
|
+
用户要求修改代码或执行任务时,转入 [delegate_3th](../delegate_3th/SKILL.md) 的 `task` 模式,沿用已有任务范围与授权。
|
|
@@ -1,89 +1,41 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: delegate_3th
|
|
3
|
-
description: 显式调用 delegate_3th
|
|
3
|
+
description: 显式调用 delegate_3th 或被已授权流程调用时,委托执行任务并验收结果;默认使用当前运行时的 fresh subagent,用户指定其他运行时时使用指定通道。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# delegate_3th
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
默认直接新建当前运行时的 fresh subagent(refresh subagent),继承当前模型,以独立上下文执行任务。默认路径不检查运行时或外部工具;用户明确指定其他运行时时,按指定通道调用。
|
|
9
9
|
|
|
10
10
|
## 1. 准备交接
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
遵循当前任务要求、已有授权和目标项目适用的 AGENTS.md。任务授权不因切换执行者而扩大。
|
|
13
13
|
|
|
14
|
-
- **咨询 `consult
|
|
15
|
-
- **执行 `task
|
|
14
|
+
- **咨询 `consult`**:按 [ask_3th](../ask_3th/SKILL.md) 的只读流程处理,并传递用户指定的运行时。
|
|
15
|
+
- **执行 `task`(默认)**:任务书包含工作目录、目标、责任文件或模块、项目指令、已有成果、验收标准和实际验证命令。告知执行者还有其他协作者,保留他人改动,只处理分配范围。
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
执行任务前检查 `git status --short`、相关 diff 和未跟踪文件,记录基线。分配互不重叠的文件;需要隔离时使用独立 worktree,并带入任务所需的未提交版本。原执行者仍在工作时,其他执行者不修改其责任文件。
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
在任务书中提供必要上下文和用户指定的运行时,排除凭据。默认只授权本地实现与验证;调用方明确委托独立 Issue 的完整交付时,任务书须带上该授权与 `ship-issue-pr` 流程,才可执行对应 Git/GitHub 操作。
|
|
20
20
|
|
|
21
|
-
## 2.
|
|
21
|
+
## 2. 调用执行者
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
用户明确指定其他运行时时,读取 [指定运行时调用](references/external-runtimes.md),以 `task` 模式使用该通道。未指定或指定当前运行时时,直接执行以下 fresh subagent 流程,无需探测宿主、模型配置或已安装的 CLI。
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
| --- | --- |
|
|
27
|
-
| Codex | 下文 Claude CLI |
|
|
28
|
-
| Claude Code | 下文 Codex 插件 |
|
|
29
|
-
| 宿主无法确定或对应通道缺失 | 直接进入 fresh sub-agent 回退 |
|
|
25
|
+
fresh subagent 指本次新建、独立上下文的执行者,不复用当前 agent 或此前的实现/审查会话。即使本技能当前由 subagent 执行,也应新建执行者。
|
|
30
26
|
|
|
31
|
-
|
|
27
|
+
1. 使用当前会话的原生 subagent 工具,采用默认通用角色并继承当前模型,不设置模型覆盖。使用 `spawn_agent` 时设置 `fork_turns: "none"`,省略 `model`、`reasoning_effort` 和 `agent_type`;使用 `Agent` 时新建 `general-purpose` 会话,省略 `model`,不 resume 旧会话。
|
|
28
|
+
2. 传入自包含任务书,要求直接处理分配工作,不将同一工作再次交给 `ask_3th` / `delegate_3th`。完整交付中的后续独立咨询或审查仍按交付流程调用技能,审查者不得是原实现者。
|
|
29
|
+
3. 保存 subagent ID,持续等待同一任务完成。静默或单次等待超时不等于失败;用户取消时停止。工具不可用、达到嵌套限制或执行失败时,如实返回已完成成果、未完成项与具体阻塞;未经用户授权,不更换运行时或无限新建 agent。
|
|
32
30
|
|
|
33
|
-
|
|
31
|
+
## 3. 验收与返回
|
|
34
32
|
|
|
35
|
-
|
|
33
|
+
对照基线、完整 diff、责任范围及验收标准核查结果,运行必要测试,复用仍有效的验证证据。报告包含权限拒绝时,核实缺失项并保留权限边界。执行者的成功声明不等于验收通过。
|
|
36
34
|
|
|
37
|
-
|
|
38
|
-
# 咨询,无活动告警阈值默认 120 秒。
|
|
39
|
-
python3 "$HOME/.agents/skills/delegate_3th/scripts/delegate_3th.py" --prompt-file /绝对路径/问题.txt
|
|
35
|
+
向调用方返回实际变更、验证结果和未完成项,并附:
|
|
40
36
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
37
|
+
- `requested_provider`:用户指定的运行时,未指定则为当前运行时。
|
|
38
|
+
- `actual_executor`:实际运行时及 subagent / job ID;默认 subagent 继承当前模型,外部通道模型未知时不推测。
|
|
39
|
+
- `status`:验收通过为 `completed`;仍有缺口为 `blocked`,说明恢复所需条件。
|
|
44
40
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
仅在用户明确指定本次任务模型时,使用任务模式的 `--start-model <模型 ID 或别名>`;脚本将其原样传给 Claude 的 `--model`,不限制固定模型名单,也不构成重试链。需要运行验证命令时按已有授权追加具体的 `--allow-command '仓库实际验证命令'`,可重复传入。
|
|
48
|
-
|
|
49
|
-
执行模式开放 `Read,Glob,Grep,Edit,Write,Bash`,使用 `acceptEdits`,无法获批的工具请求自动拒绝;现有权限规则继续生效,允许命令不是独立沙箱。两种模式关闭 hooks、MCP 和技能,因此任务书必须包含必要项目规则。脚本默认仅执行本地开发;完整交付等超出该边界的任务直接进入 fresh sub-agent,由其承接明确授权。
|
|
50
|
-
|
|
51
|
-
通过宿主异步工具保留会话 ID 并持续读取结果,至少每 60 秒汇报有意义的进度。`--timeout` 只控制无活动告警,不自动终止任务。脚本通过输出字节和 Git 跟踪及未忽略文件的变化观察活动;忽略目录产物需另查,观测不可用不代表停滞。
|
|
52
|
-
|
|
53
|
-
脚本 stdout 返回单个 JSON:`ok` 表示咨询已返回,`review_required` 表示任务报告待验收,`fallback_required` 表示立即进入下文回退。`requested_model: null` 表示未覆盖 CLI 模型配置,不能据此声称实际使用了某个模型;显式指定时记录该请求值。脚本只报告失败,启动宿主 sub-agent 和等待结果是本技能执行者的职责。
|
|
54
|
-
|
|
55
|
-
### Codex 插件
|
|
56
|
-
|
|
57
|
-
使用当前 Claude Code 会话实际暴露的 Codex 插件能力:任务或咨询可用 `Agent(subagent_type: "codex:codex-rescue")`;普通审查可用 companion 的 `review`,挑战方案假设可用 `adversarial-review`。选择符合当前请求的一条通道,只读或写入范围写入任务书。
|
|
58
|
-
|
|
59
|
-
companion 使用实际安装路径;需要定位时仅检查当前 Claude 配置目录对应的 marketplace/cache,以 `scripts/codex-companion.mjs --help` 核实参数,不硬编码缓存版本。审查示例:
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
node "<plugin-root>/scripts/codex-companion.mjs" review --wait --base "<actual-base>"
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
保存 job/agent ID、工作目录与输出位置,异步等待同一任务。插件缺失、启动失败、认证或额度错误、非零退出、明确失败报告或无效结果均进入回退。
|
|
66
|
-
|
|
67
|
-
## 3. 失败后立即交给 fresh sub-agent
|
|
68
|
-
|
|
69
|
-
fresh sub-agent(refresh subagent)指本次新建、独立上下文的执行者,不复用当前 agent 或此前的实现/审查会话。即使本技能当前由 sub-agent 执行,也应新建执行者,不能直接由它自称 fresh 后接手。
|
|
70
|
-
|
|
71
|
-
1. 确认原调用及其写进程已停止;仍在运行时先检查会话、子命令和权限等待,确认实际失败或无法推进后终止并核实停止。用户取消不触发回退。
|
|
72
|
-
2. 检查现有 diff、测试与外部副作用,将已完成成果和剩余工作加入任务书,避免从头重放。保留原权限限制与只读/写入边界。
|
|
73
|
-
3. 立即创建一个使用宿主默认模型的全新 sub-agent:Codex 使用 `spawn_agent`,设置 `fork_turns: "none"`;Claude Code 使用新的 `Agent(subagent_type: "general-purpose")`,不 resume 旧会话。传入自包含任务书,要求直接处理本次失败调用的剩余工作,不将同一工作再次交给 `ask_3th` / `delegate_3th` 或外部 CLI,避免递归回退。完整交付中的后续独立咨询/审查仍按交付流程调用技能。独立审查者不得是原实现者。
|
|
74
|
-
4. 等待该 sub-agent 完成并验收其结果,再向调用方返回。若 sub-agent 工具不可用、达到嵌套限制或回退也失败,如实返回未完成项与具体阻塞;不冒充已接管或已完成,也不无限创建新 agent。
|
|
75
|
-
|
|
76
|
-
## 4. 验收与返回
|
|
77
|
-
|
|
78
|
-
咨询确认获得实质答案;执行对照基线、完整 diff、责任范围及验收标准核查,运行必要测试,复用仍有效的验证证据。`permission_denials` 非零或报告包含权限拒绝时,核实缺失项并保留权限边界。第三方成功声明不等于验收通过。
|
|
79
|
-
|
|
80
|
-
向调用方返回答案或实际变更、验证结果、未完成项,并附简短执行说明,包含:
|
|
81
|
-
|
|
82
|
-
- `requested_provider`:原定 Claude、Codex,或宿主未知。
|
|
83
|
-
- `actual_executor`:实际第三方及请求模型(可得时),或 fresh sub-agent 及其 ID。
|
|
84
|
-
- `fallback_used` 与 `fallback_reason`:是否回退及具体原因;未回退时注明无。
|
|
85
|
-
- `status`:验收后为 `ok` / `completed`,仍有缺口为 `blocked`,并说明恢复所需条件。
|
|
86
|
-
|
|
87
|
-
例如:“Claude 调用因额度不足失败,已由 fresh sub-agent <ID> 完成;验证通过。”这段说明供调用方记录,运行时与回退决策已在本技能内完成。请求模型 ID 不保证服务端未切换模型。
|
|
88
|
-
|
|
89
|
-
清理本次临时任务文件;保留仍有成果待整合的 worktree。
|
|
41
|
+
保留仍有成果待整合的 worktree。
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# 用户指定的外部运行时
|
|
2
|
+
|
|
3
|
+
仅在用户明确要求使用其他运行时时读取本文件。按用户指定的目标选择通道,不自动采用“Codex 调 Claude、Claude 调 Codex”的反向路由。当前会话已明确的运行时信息直接使用,不额外探测;用户只说“另一个运行时”且目标无法从上下文确定时,再澄清目标。
|
|
4
|
+
|
|
5
|
+
沿用调用方的 `consult` / `task` 模式、任务范围与权限边界,提供自包含任务书。咨询与独立审查只读,审查会话必须未参与实现或修复。
|
|
6
|
+
|
|
7
|
+
## Claude Code
|
|
8
|
+
|
|
9
|
+
使用已认证的 `claude` 和技能目录的 Python 脚本。`dx initial` 只同步技能文件,不安装或认证 CLI。
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# 咨询
|
|
13
|
+
python3 "$HOME/.agents/skills/ask_3th/scripts/ask_3th.py" --prompt-file /绝对路径/问题.txt
|
|
14
|
+
|
|
15
|
+
# 本地任务
|
|
16
|
+
python3 "$HOME/.agents/skills/delegate_3th/scripts/delegate_3th.py" --mode task --cwd /绝对路径/工作区 --prompt-file /绝对路径/任务.txt
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
使用实际技能目录路径。将任务材料写入临时 UTF-8 文件,排除凭据。默认不传模型参数,由 Claude Code CLI 使用当前生效的配置;仅用户明确指定任务模型时传 `--start-model <模型 ID 或别名>`。需要验证命令时按已有授权追加具体的 `--allow-command '仓库实际验证命令'`,可重复传入。
|
|
20
|
+
|
|
21
|
+
咨询模式不开放工具,所需证据先放入问题材料。任务模式开放 `Read,Glob,Grep,Edit,Write,Bash`,采用 `acceptEdits`,无法获批的工具请求自动拒绝;现有权限规则继续生效,允许命令不是独立沙箱。两种模式关闭 hooks、MCP 和技能,任务书必须包含必要项目规则。脚本仅支持本地开发与验证;指定 Claude 执行完整 Git/GitHub 交付时,如实报告该通道限制,不自动换运行时。
|
|
22
|
+
|
|
23
|
+
通过宿主异步工具保留会话 ID,持续读取同一调用。`--timeout` 是无活动告警阈值,咨询默认 120 秒,任务默认 900 秒,不是执行截止时间;静默或单次等待超时不构成失败。
|
|
24
|
+
|
|
25
|
+
stdout 返回 JSON:`ok` 表示咨询已返回,`review_required` 表示任务报告待验收。`requested_model: null` 表示使用 CLI 默认配置,不能据此推测实际模型。`permission_denials` 非零时核实未完成项。`fallback_required` 是旧脚本的失败信号,不代表已获得切换运行时的授权;按下文处理失败。
|
|
26
|
+
|
|
27
|
+
## Codex
|
|
28
|
+
|
|
29
|
+
使用当前会话已暴露的 Codex 插件能力:咨询或任务可用 `Agent(subagent_type: "codex:codex-rescue")`;普通审查可用 companion 的 `review`,挑战方案假设可用 `adversarial-review`。选择符合用户请求的通道,明确只读或写入范围。
|
|
30
|
+
|
|
31
|
+
companion 使用实际安装路径;仅在需要该通道且路径未知时,在当前 Claude 配置目录对应的 marketplace/cache 中定位,以 `scripts/codex-companion.mjs --help` 核实参数,不硬编码缓存版本。
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
node "<plugin-root>/scripts/codex-companion.mjs" review --wait --base "<actual-base>"
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
保存 job/agent ID、工作目录与输出位置,异步等待同一任务。若指定通道不可用,如实报告阻塞。
|
|
38
|
+
|
|
39
|
+
## 失败与交付
|
|
40
|
+
|
|
41
|
+
每次请求只尝试指定通道一次。调用失败时报告具体原因、已有成果与未完成项,保留用户指定的运行时;只有用户已授权失败后使用当前运行时,才启动 fresh subagent 接续。接续前确认原调用及其写进程已停止,检查当前 diff 和外部副作用,将剩余工作交接,避免重复执行。权限拒绝不能通过换执行者绕过,用户取消不触发接续。
|
|
42
|
+
|
|
43
|
+
返回实质答案或任务报告,由调用方验收,并注明请求运行时、实际执行者和会话 ID;发生已授权的接续时附原因。清理临时任务文件,保留待整合成果。
|
|
@@ -15,7 +15,7 @@ description: 仅在显式调用 online-debug-guard 时使用:远程在线调
|
|
|
15
15
|
|
|
16
16
|
从当前任务、已有连接信息、项目配置和 SSH Host 推断目标环境,接受项目的环境别名(如 `prod1`、`test`)。先读相关配置核实映射;目标仍不唯一时继续本地定位,在连接不明确的远程主机前询问。未知环境不默认当作 development。
|
|
17
17
|
|
|
18
|
-
生产环境的已授权只读取证不依赖 Plan 模式。连接优先使用项目指定的 SSH Host;`ai-prod`、`ai-staging` 仅是已有项目的示例,使用前核实实际配置。
|
|
18
|
+
生产环境的已授权只读取证不依赖 Plan 模式。连接优先使用项目指定的 SSH Host;`zh-ai-prod`、`ai-staging` 仅是已有项目的示例,使用前核实实际配置。
|
|
19
19
|
|
|
20
20
|
## 取证
|
|
21
21
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
interface:
|
|
2
2
|
display_name: "项目 Agent 规范整备"
|
|
3
|
-
short_description: "审核并补齐
|
|
3
|
+
short_description: "审核并补齐 Issue/PR 模板、开发评审规范、DX 工作流和回访规则"
|
|
4
4
|
default_prompt: "使用 $project-agent-standards 审核当前仓库并补齐面向 agent 的项目规范。"
|
|
5
5
|
policy:
|
|
6
6
|
allow_implicit_invocation: false
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ship-issue-pr
|
|
3
|
-
description:
|
|
4
|
-
disable-model-invocation: true
|
|
3
|
+
description: 在需要实现、验证并交付 Issue 或 PR 时使用,支持 agent 和 subagent 按任务需要调用。
|
|
5
4
|
---
|
|
6
5
|
|
|
7
6
|
# Ship Issue PR
|
|
@@ -14,7 +13,7 @@ disable-model-invocation: true
|
|
|
14
13
|
|
|
15
14
|
在宿主系统与开发者指令约束内,当前任务的具体要求和已有授权 > 项目适用的 AGENTS.md > 本技能及其他通用技能。项目规定的验证、分支与合并要求继续适用。
|
|
16
15
|
|
|
17
|
-
|
|
16
|
+
调用本技能执行交付时,默认流程包括:创建或复用本次 Issue、提交与推送代码、创建或更新 PR、发布审查/修复/验证评论、通过门禁后合并、关闭已完成的 Issue,以及按下文规则创建和派发 follow-up Issue。沿用会话中已有授权,不逐步重复确认;用户明确限定仅本地、仅审查或不合并时遵守该终点。编辑或讨论本技能本身不触发交付操作。
|
|
18
17
|
|
|
19
18
|
从相关文件和直接依赖开始,按证据扩大范围。交付授权不包含生产部署、破坏性数据操作或与任务无关的对外消息;需要额外授权的动作先准备可审阅结果,说明对象与影响。缺少目标事实时先查上下文与项目配置,能独立进行的工作继续,确实无法确定目标时才询问。
|
|
20
19
|
|
|
@@ -155,7 +154,7 @@ Issue/PR 正文及评论优先使用结构化工具参数;使用 CLI 时将多
|
|
|
155
154
|
| 方案咨询、Code Review、对抗审查 | [ask_3th](../ask_3th/SKILL.md) |
|
|
156
155
|
| 已明确范围的实现、修复或独立后续任务 | [delegate_3th](../delegate_3th/SKILL.md) 的 `task` 模式 |
|
|
157
156
|
|
|
158
|
-
|
|
157
|
+
执行本流程时,可在原任务范围与已有授权内调用上述依赖。运行时、模型、失败回退和执行者调度全部由依赖技能内部处理。本流程只提交任务、等待最终结果、验收,并将返回的执行说明附在报告中。
|
|
159
158
|
|
|
160
159
|
咨询提供问题、相关源码与 diff、路径和必要验证结果,标明只读及独立审查要求;首次审查覆盖本次完整 PR diff,复审补充增量和影响。证据不足时补充材料。
|
|
161
160
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
policy:
|
|
2
|
-
allow_implicit_invocation:
|
|
2
|
+
allow_implicit_invocation: true
|
package/skills/doctor/SKILL.md
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: doctor
|
|
3
|
-
description: 仅在显式调用 doctor 时使用:检查或修复本机 agent 开发环境。
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Doctor
|
|
7
|
-
|
|
8
|
-
## 执行边界与优先级
|
|
9
|
-
|
|
10
|
-
在宿主系统与开发者指令约束内,冲突时依次采用:当前任务的具体要求与已有授权 > 目标项目适用的 AGENTS.md > 本技能及其引用的通用流程。
|
|
11
|
-
只读检索、本地草稿、可回滚编辑和常规测试可自主推断并继续;从相关文件和直接依赖开始,仅在证据不足或影响跨模块时扩大范围,复用仍有效的验证。
|
|
12
|
-
仅在不可逆或难以回滚的修改缺少具体授权时,先完成预览、草稿与验证,再说明对象和影响并等待确认;会话中已有授权继续有效。缺少事实时先查证、标注假设并推进独立工作,确实无法确定操作目标时才询问。对外发送消息须有明确授权。
|
|
13
|
-
|
|
14
|
-
## 概览
|
|
15
|
-
|
|
16
|
-
本技能用于把当前机器调整到可稳定运行 agent 开发工作流的状态。
|
|
17
|
-
|
|
18
|
-
不要把执行路径写死。模型应先识别当前系统、shell、包管理器、已有工具版本与用户权限,再自行选择最合适的检测和修复方式。完成修复后必须复检,并给出可读报告。
|
|
19
|
-
|
|
20
|
-
## 目标状态
|
|
21
|
-
|
|
22
|
-
完整环境体检时参考以下目标;单项修复仅检查目标工具及直接依赖,已有健康证据可复用:
|
|
23
|
-
|
|
24
|
-
- `python3` 可用。
|
|
25
|
-
- `python` 可调用 Python 3,或有清晰说明当前系统无需/不应创建该别名。
|
|
26
|
-
- `node`、`npm`、`pnpm` 可用,且满足当前工作流需要。
|
|
27
|
-
- `dx` 可用,并已完成必要初始化。
|
|
28
|
-
- `agent-browser` 可用,且 Chromium/浏览器依赖已安装到可运行状态。
|
|
29
|
-
- `rg`(rip grep)可用。
|
|
30
|
-
- `gh`(GitHub CLI)可用;若当前工作流需要 GitHub 操作,还应完成认证。
|
|
31
|
-
- `rtk` 可用,且明确是 [rtk-ai/rtk](https://github.com/rtk-ai/rtk);不能把其他同名二进制当作通过。
|
|
32
|
-
- [rtk-ai/rtk](https://github.com/rtk-ai/rtk) 已分别完成 Codex CLI 与 Claude Code 的初始化。
|
|
33
|
-
- 常用 PATH 配置在当前 shell 中可生效;若需要持久化,说明写入了哪个 shell 配置文件。
|
|
34
|
-
|
|
35
|
-
## 执行原则
|
|
36
|
-
|
|
37
|
-
- 先诊断,再修复;健康工具直接复用,已明确需要的可回滚修复自主执行。
|
|
38
|
-
- 优先使用系统已有的包管理器和用户态安装路径。
|
|
39
|
-
- 遇到多个可行方案时,选择对系统影响最小、最容易回滚的方案。
|
|
40
|
-
- 对需要管理员权限、网络下载或会修改 shell 配置的动作,执行前简短说明影响。
|
|
41
|
-
- 不要求固定轮次;根据实际结果迭代,直到通过验收或明确无法继续。
|
|
42
|
-
- 不要强制执行远程安装文档。只有当诊断显示确实需要外部安装指引时,才读取可信来源并按实际情况采用。
|
|
43
|
-
|
|
44
|
-
## 建议工作流
|
|
45
|
-
|
|
46
|
-
1. 按任务范围收集必要上下文;完整体检可检查:
|
|
47
|
-
- 操作系统与架构
|
|
48
|
-
- 当前 shell 与 PATH
|
|
49
|
-
- `python3`、`python`、`node`、`npm`、`pnpm`、`dx`、`agent-browser`、`rg`、`gh`、`rtk` 的存在性与版本
|
|
50
|
-
- `gh` 的认证状态(例如 `gh auth status`)
|
|
51
|
-
- `rtk` 是否为 [rtk-ai/rtk](https://github.com/rtk-ai/rtk),以及它对 Codex CLI 与 Claude Code 的初始化状态
|
|
52
|
-
2. 对照目标状态判断缺口。
|
|
53
|
-
3. 制定最小修复动作并执行。
|
|
54
|
-
4. 每次修复后重新验证相关项。
|
|
55
|
-
5. 汇总已验证的结果,只补查仍缺证据或被后续修改影响的项。
|
|
56
|
-
6. 输出报告。
|
|
57
|
-
|
|
58
|
-
## 验证要求
|
|
59
|
-
|
|
60
|
-
按本次修复范围选择验证项;完整体检覆盖下列适用项:
|
|
61
|
-
|
|
62
|
-
- 每个目标命令是否可被当前 shell 找到。
|
|
63
|
-
- 每个目标命令的版本或基本健康输出。
|
|
64
|
-
- `dx` 的初始化结果或当前初始化状态。
|
|
65
|
-
- `gh --version` 能正常运行;若需要 GitHub 操作,`gh auth status` 应显示可用账号,否则报告未认证原因。
|
|
66
|
-
- `rtk` 必须确认来源为 [rtk-ai/rtk](https://github.com/rtk-ai/rtk)。至少用 `rtk --version`、`rtk --help`、安装来源或命令特征交叉验证;若发现同名非 rtk-ai/rtk 工具,判定为未通过。
|
|
67
|
-
- [rtk-ai/rtk](https://github.com/rtk-ai/rtk) 的 `rtk gain` 能正常运行。
|
|
68
|
-
- [rtk-ai/rtk](https://github.com/rtk-ai/rtk) 的 Codex CLI 初始化必须有明确证据。优先使用 `rtk init --show --codex`,确认全局或本地 Codex 配置已包含 `RTK.md` 与 `AGENTS.md` 引用;若当前 `rtk` 版本命令不同,使用等价的只读检查并在报告中说明。
|
|
69
|
-
- [rtk-ai/rtk](https://github.com/rtk-ai/rtk) 的 Claude Code 初始化必须有明确证据。优先使用 `rtk init --show --agent claude`,确认 Claude Code hook、`RTK.md`、`CLAUDE.md` 引用与 `settings.json` hook 配置处于健康状态;若当前 `rtk` 版本命令不同,使用等价的只读检查并在报告中说明。
|
|
70
|
-
- `agent-browser` 是否能找到并使用已安装的浏览器依赖。
|
|
71
|
-
- 对未通过项给出失败原因、已尝试动作和下一步建议。
|
|
72
|
-
|
|
73
|
-
## 报告格式
|
|
74
|
-
|
|
75
|
-
最终报告使用中文,至少包含:
|
|
76
|
-
|
|
77
|
-
- 环境摘要:系统、shell、关键 PATH 变更。
|
|
78
|
-
- 检查结果表:检查项、状态、版本/证据、说明。
|
|
79
|
-
- RTK 初始化:分别列出 Codex CLI 与 Claude Code 的检查命令、通过/失败状态、关键证据文件或 hook。
|
|
80
|
-
- 已执行修复:实际执行过的安装、链接、初始化或配置变更。
|
|
81
|
-
- 未完成项:若存在,说明阻塞原因和用户需要做什么。
|
|
82
|
-
- 结论:通过 / 部分通过 / 未通过。
|