Follow-on to runbook-shim-follow-frame (archived: openspec/changes/archive/2026-09-17-runbook-shim-follow-frame/). Found while splitting #756 (closed) into per-skill tickets — this is a 4th, distinct piece of missing follow-on work, not covered by #756 or by the route/please/curate tickets, and easy to lose if not filed on its own.
The gap
The archived change's tasks 3.1/3.2/3.4 converted recall, learn, and write-memory from SKILL.md bodies into runbook notes — but only as eval fixtures, for the shim-only comparison harness. Confirmed by direct inspection of this worktree:
- The real, deployed skills are unchanged and still live as skills:
agent-instructions/skills/recall/SKILL.md, agent-instructions/skills/learn/SKILL.md, agent-instructions/skills/write-memory/SKILL.md all still exist, still author-format as skills, still what real sessions install.
- The runbook conversions only exist under the eval tree:
dev/eval/cumulative/runbook_vs_skill/phase2/encodings/shim/recall-learn/vault/ (8 runbook notes: recall glance-vs-deep-mode, note-synthesis-and-coverage, activation-and-closing-synthesis, learn crystallize-lesson-kinds, qa-capture-and-reparent-batch, recall-from-unified-memory, learn-sweep-and-crystallize, write-memory-compose-execute-verify).
- The production guidance files
agent-instructions/guidance/recall.md, delegate.md, learn.md are also unchanged — design.md's D0 explicitly deferred this: "recall.md/delegate.md/learn.md stay as they are for sessions that still install the skills; reconciliation belongs to the later recall-replacement effort" — and D2 separately noted "Replacing the deep recall procedure (ten phrases, clustering, coverage judgment, crystallization) with the shim is a separate, larger effort."
So today, production sessions still install and run the recall/learn/write-memory skills with the original recall.md/learn.md/delegate.md guidance — the validated shim + runbook path only exists inside the eval sandbox. Joe's stated ultimate goal (proposal.md's Why: "every skill, including recall and learn, become a runbook, with one CLAUDE.md shim as the only custom instruction text") is not yet realized for real sessions, even though it is now validated on 2 of 3 real procedures for other runbooks (history-rewrite, bisect-before-fix).
Scope of this ticket
- Promote the eval-fixture runbook bodies at
dev/eval/cumulative/runbook_vs_skill/phase2/encodings/shim/recall-learn/vault/ into the real vault/skill-replacement location (mirroring wherever the route/please/curate conversions land, once those tickets settle a convention).
- Retire
agent-instructions/skills/{recall,learn,write-memory}/SKILL.md.
- Reconcile
agent-instructions/guidance/{recall,delegate,learn}.md with agent-instructions/guidance/shim.md for real deployment — decide whether shim.md fully replaces them for production sessions or whether some hybrid is needed (design.md D0/D2 explicitly left this open as "the later recall-replacement effort").
- Handle the fact that
recall.md names /recall glance, which has no equivalent in a shim-only session (design.md's Impact section names this reconciliation as open) — a production reconciliation needs to resolve this, not just the eval config.
- Re-validate deployment:
engram update --with-guidance currently syncs shim.md alongside the existing guidance files (task 2.4); confirm what the sync should look like once shim.md is meant to be the sole production guidance rather than an additional file.
Cross-references
Follow-on to
runbook-shim-follow-frame(archived:openspec/changes/archive/2026-09-17-runbook-shim-follow-frame/). Found while splitting #756 (closed) into per-skill tickets — this is a 4th, distinct piece of missing follow-on work, not covered by #756 or by the route/please/curate tickets, and easy to lose if not filed on its own.The gap
The archived change's tasks 3.1/3.2/3.4 converted
recall,learn, andwrite-memoryfromSKILL.mdbodies into runbook notes — but only as eval fixtures, for the shim-only comparison harness. Confirmed by direct inspection of this worktree:agent-instructions/skills/recall/SKILL.md,agent-instructions/skills/learn/SKILL.md,agent-instructions/skills/write-memory/SKILL.mdall still exist, still author-format as skills, still what real sessions install.dev/eval/cumulative/runbook_vs_skill/phase2/encodings/shim/recall-learn/vault/(8 runbook notes: recall glance-vs-deep-mode, note-synthesis-and-coverage, activation-and-closing-synthesis, learn crystallize-lesson-kinds, qa-capture-and-reparent-batch, recall-from-unified-memory, learn-sweep-and-crystallize, write-memory-compose-execute-verify).agent-instructions/guidance/recall.md,delegate.md,learn.mdare also unchanged — design.md's D0 explicitly deferred this: "recall.md/delegate.md/learn.mdstay as they are for sessions that still install the skills; reconciliation belongs to the later recall-replacement effort" — and D2 separately noted "Replacing the deep recall procedure (ten phrases, clustering, coverage judgment, crystallization) with the shim is a separate, larger effort."So today, production sessions still install and run the
recall/learn/write-memoryskills with the originalrecall.md/learn.md/delegate.mdguidance — the validated shim + runbook path only exists inside the eval sandbox. Joe's stated ultimate goal (proposal.md's Why: "every skill, including recall and learn, become a runbook, with one CLAUDE.md shim as the only custom instruction text") is not yet realized for real sessions, even though it is now validated on 2 of 3 real procedures for other runbooks (history-rewrite, bisect-before-fix).Scope of this ticket
dev/eval/cumulative/runbook_vs_skill/phase2/encodings/shim/recall-learn/vault/into the real vault/skill-replacement location (mirroring wherever the route/please/curate conversions land, once those tickets settle a convention).agent-instructions/skills/{recall,learn,write-memory}/SKILL.md.agent-instructions/guidance/{recall,delegate,learn}.mdwithagent-instructions/guidance/shim.mdfor real deployment — decide whether shim.md fully replaces them for production sessions or whether some hybrid is needed (design.md D0/D2 explicitly left this open as "the later recall-replacement effort").recall.mdnames/recall glance, which has no equivalent in a shim-only session (design.md's Impact section names this reconciliation as open) — a production reconciliation needs to resolve this, not just the eval config.engram update --with-guidancecurrently syncsshim.mdalongside the existing guidance files (task 2.4); confirm what the sync should look like once shim.md is meant to be the sole production guidance rather than an additional file.Cross-references
openspec/changes/archive/2026-09-17-runbook-shim-follow-frame/(design.md Context, D0, D2; proposal.md Why/Impact)