tools-sync: 文档补上宿主自装 skill 的方向与 MCP 再次被清空的事实
- 阶段 2 决策表新增两行:主副本条目本身是链接、以及被其他工具 skills 目录 链接指向的真实目录,均判为宿主自装、脚本让开;并写清 2026-09-07 实跑 因此弄丢 orca-cli 的经过与用 `orca skills install` 恢复的办法。 - Codex MCP 存储模型:0.153.4 升级后 7 个用户 MCP 第二次全部消失;另记一次 与升级无关、无法复现的消失。结论不变——每次同步必须重跑审计,退出码 2 就 -Apply。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01438Zbcx49e4o46uSA71mFF
This commit is contained in:
+16
-3
@@ -162,12 +162,22 @@ powershell -File <skill目录>\scripts\gitea_doctor.ps1 -Fix # 检查→登
|
||||
| 真实目录,与主副本同名且内容**相同** | 直接塌缩成 junction(丢不了东西) |
|
||||
| 真实目录,与主副本同名但内容**不同** | 报 CONFLICT,两边都不动,退出码 2 |
|
||||
| 目录里没有 SKILL.md | 忽略并说明 |
|
||||
| **主副本里的同名条目本身就是链接** | 归宿主所有,只计数不动(它的物理家在 registry,方向与本仓库相反) |
|
||||
| 真实目录,且 `~\.*` 下其他工具的 skills 目录有链接指向它 | 判为宿主自装,**不** ingest |
|
||||
|
||||
最后把主副本每个 skill 镜像进 `-MirrorRegistry`(默认 `~\.codex\skills`)。
|
||||
`.system\` 等点开头目录永远不动。
|
||||
|
||||
判断力要点:
|
||||
|
||||
- **宿主自装的 skill 可能把物理副本放在 registry,方向和本仓库相反。**
|
||||
Orca 就是这样:真目录在 `~\.agents\skills`,再把 `.claude` / `.codex` / `.augment` /
|
||||
`.factory` / `.hermes` / `.pi` 等每个工具都链过去。这种时候主副本里的条目本身是链接,
|
||||
把 registry 里的真目录“塌缩成 junction”会让链接指向自己,**唯一的真副本就没了**
|
||||
(2026-09-07 实跑就这么弄丢了 orca-cli)。脚本现在对两种形状都会认出并让开,
|
||||
镜像阶段也会跳过它们(否则 Codex 会把同一个 skill 注册两遍)。
|
||||
弄坏了用它自己的安装器恢复,例如 `orca skills install --skill orca-cli`。
|
||||
|
||||
- **CONFLICT 是唯一需要人裁决的分支。** 内容指纹排除了 `.git`、`__pycache__`、
|
||||
`.langgraph_api`、`*.pckl`、`*.sqlite` 这类运行时产物,所以报出来的分叉是真分叉。
|
||||
处理方式:把想留的内容并进主副本,再带 `-Force` 重跑(`-Force` 一律主副本胜出)。
|
||||
@@ -219,7 +229,7 @@ commit + push 一次(junction 模型下 codex 侧自动同步,无需额外
|
||||
|
||||
## 阶段 5 — MCP server 双向发现、注册与校验(Claude Code ↔ Codex)
|
||||
|
||||
### Codex 的 MCP 存储模型(codex-cli 0.150.1 实测,官方无文档)
|
||||
### Codex 的 MCP 存储模型(codex-cli 0.150.1 / 0.153.4 实测,官方无文档)
|
||||
|
||||
动手前必须知道这三条,否则会写出"看起来成功、实际无效"的配置:
|
||||
|
||||
@@ -229,8 +239,11 @@ commit + push 一次(junction 模型下 codex 侧自动同步,无需额外
|
||||
手写一整节则完全不出现。config.toml 里现存的那几节是历史遗留。
|
||||
**本 skill 旧版"缺失的补写 TOML 节"是错的,别再那样做——它静默地什么也没干。**
|
||||
- **这个存储不跨 CLI 升级存活。** 2026-08-29 注册好的 7 个用户 MCP,在升级到 0.150.1
|
||||
后全部消失。所以每次同步都要重新审计 Codex 侧,`~\skills_env.md` 的 MCP 配置节
|
||||
才是可重建的真源。
|
||||
后全部消失;2026-09-07 升到 0.153.4 后**又全没了一次**。所以每次同步都要重新审计
|
||||
Codex 侧,`~\skills_env.md` 的 MCP 配置节才是可重建的真源。
|
||||
同一天还观察到一次**与升级无关**的消失(补齐后几分钟内 7 个条目又只剩两个自带的),
|
||||
事后 add / remove / list 反复验证都正常、无法复现。别去猜原因——审计脚本退出码是 2
|
||||
就直接 `-Apply` 补回来,这也是每次同步都必须跑一遍审计的理由。
|
||||
|
||||
由此还有一个已知缺口:`codex mcp add` 没有 `--tool-timeout-sec` / `env_vars` 之类的参数,
|
||||
config.toml 又不生效,所以这两个键**目前无任何设置入口**。需要它们的 MCP 记在
|
||||
|
||||
Reference in New Issue
Block a user