1实现原理 · 为什么它能做到
它是有意做窄的路由器:只决定‘哪个技能跑’,自己不做任何 provider 解析、不持有单 provider 命令、不复实现 executor 已有能力;发现自己开始讲某家 flag 就说明走错技能。
This skill decides **which** skill runs. It does not parse history itself, does not own commands for a single provider, and never re-implements what an executor already does.
路由前先定两件事:平台(Claude Code / Codex / Kimi)与动作(读证据 / 续接工作);平台未声明时禁止猜——按 read-claude-code-history 精确查找 → read-codex-history rollout 定位的顺序用返回的 verified identity 决定,前缀像不像不算数。
Only a lookup that returns a verified identity decides which continuation skill runs; a plausible-looking ID prefix does not.
Provider scope 是它独占的职责:跨 provider 需求分两轴且用不同旗标——inventory(‘我最近在干嘛’)用 --source all/--source kimi;内容搜索(‘我们是否聊过 X’)给 Claude 搜索追加 --codex 与 --kimi;其余 flag(--all-projects/日期/--include-archived…)一律交给 executor。
Both readers ship the same inventory command and its `--source` already defaults to `all` — but each reader's own task table pins it to that reader's provider (`--source claude`, `--source codex`), so the default never fires on its own.
意图决定路由而不是‘history’这个词:要列表→inventory;要找含某内容的会话→search;要原始输入按时间顺序→verbatim-input 路径;要续接已识别会话→continuation(先 read)。
The requested output wins over the background motivation.
跨路由存活的不变量:完整性(Claude inventory 源集不可分割:自动发现 homes + ~/.claude/history-sources.json 注册的 archives,缺 archive 是配置错误不是部分答案的许可);自匹配排除(当前会话会命中关于自身的查询,先排除再当历史证据);零结果≠不存在。
- **Self-match.** The current session records the user's question and this agent's own commands, so it matches almost any query about itself. Exclude the current session ID before treating a hit as historical evidence.
边界纪律写成 Do not 清单:不在本技能跑 provider 解析/SQLite/rg/jq/JSONL 管道;不复制 executor 的 flag(除 --source/--codex/--kimi 三个 scope 旗标);不为了回答过去的问题路由到续接技能(读是证据,续接会改变世界)。
- Do not run provider-specific parsing, SQLite, `rg`, `jq`, or JSONL pipelines here.
2核心能力
3外部依赖
| 类型 | 依赖 |
|---|---|
| skill | read-claude-code-history(含 Kimi scope、inventory、search) |
| skill | read-codex-history(rollout 定位/inventory/search) |
| skill | continue-claude-code-work / continue-codex-work(续接执行器) |
4风险提醒 风险提醒:蓝色 · 知晓即可
- 扩大本地会话读取面 — 一次跨 provider 查询可能把 Claude+Codex+Kimi 的会话元数据/内容都带进上下文——隐私与上下文成本都高
- 路由正确性依赖 executor 能力 — 它只保证路由对,不保证 executor 解析对;executor 的 schema 兼容问题会直接表现为答案错
- flag 集合会随 executor 演进漂移 — SKILL 用‘禁止复制 flag’防漂移,但 --source 默认 all 的语义依赖 reader 的实现约定,改版需同步
- 纯提示词约束的边界 — agent 若跳过身份验证直接路由(defect 定义),SKILL 无法机械拦截
5第二遍独立确认
- [ok] 无脚本/无网络/无凭证/无写入 — 目录仅 SKILL.md,内容无任何命令执行或文件动作
- [ok] 被路由技能全部真实存在 — read-claude-code-history / read-codex-history / continue-claude-code-work / continue-codex-work 均在 daymade-claude-code/ 下(git ls-files 核实)
- [ok] scope 旗标边界一致 — 文中仅 --source/--codex/--kimi 被本技能持有,其余 flag 明确‘Let the executor own every flag’
- [ok] Kimi 无专属技能的路由说法属实 — 仓库无 read-kimi-history/continue-kimi-work;Kimi 行确实路由到 read-claude-code-history + Kimi scope
- [ok] 意图映射无矛盾 — 列表→inventory、找内容→search、verbatim→reader 的 verbatim 路径、续接→read 后 continue——表格与正文一致
6结论
5ed0cb7338547d20…d5c4678cb5