Memory Distillation
Audit memories for Codex and Codex Lab, preserve useful knowledge in maintained
sources, and verify approved retirement from the context each client reuses.
Use this workflow only for an explicit memory audit or change request. A completed
audit produces a supported proposal; a completed retirement requires evidence
from the affected stores and a fresh session's normal retrieval path.
Apply task scope and authorization. Install
this skill with the catalog's shared ../references/ directory. Read
client memory contracts before discovery,
updates, or retirement verification. When changing this skill, use the
synthetic evaluation cases; that is not a request to
inspect the user's memories.
Scope and approval
- Do not activate implicitly or for ordinary repo work.
- Start with a read-only inventory, audit, and concrete proposal. Do not edit,
delete, move, archive, or generate memory files, skills, repo docs, issues, or
local config until the user approves that action and scope. Reuse approval
already given for the same action and scope; ask only for missing authority.
- Honor a request limited to one client, store, host, or subject. Discovering
another store does not authorize reading or changing it. Discovery stays
within authorized configuration and documented locations, without disk sweeps
or cross-host access.
- Use the owning client's supported update mechanism. An additive-note contract
permits an approved note, not direct edits to generated memory, resets, or
copying/symlinking stores together. A reset is a separate destructive action.
- Preserve original sessions, rollout records, and historical archives. Retiring
their influence on reusable context does not authorize deleting the originals.
- Never put secrets, credentials, private hostnames, customer/client data, private
messages, local-only paths, machine-specific values, or personal account
details into public skills or reports.
Source roles
Memories are candidate observations. Current maintained sources and verified
state take precedence: code and helper contracts for behavior, repo docs and
current GitHub state for project work, and local config for private values.
Neither client nor a directory name makes a memory store authoritative.
- Skills: reusable, durable, public-safe procedures and workflow preferences.
- Repo docs / GitHub issues: repo-specific design, plans, and follow-up work.
- Local config: private or environment-specific facts with a maintained
schema. Use the optional
people skill and private people config for durable
identity, aliases, contacts, roles, and relationship context.
- Historical evidence: useful provenance, clearly non-authoritative. Every
Code is retired as a supported client; classify any discovered former store
from current evidence rather than treating its path as proof of ownership.
- Legacy Chronicle archives: private historical screen-history data. This
repository does not provide or require an active Chronicle skill. Treat every
legacy Chronicle archive as historical evidence. Read the
historical archive procedure only when the
user explicitly requests Chronicle or screen-history distillation.
Workflow
- Resolve the requested scope and inventory each relevant configured store,
including non-default client homes. Record client ownership, canonical path,
aliases, active/historical/unknown status, consumed layers, supported update
mechanism, and verification capability. Report inaccessible or out-of-scope
locations without reading past that boundary. An empty registry does not
establish that the store or its derivatives are empty.
- Search the authorized layers for stale behavior, transient status, private
details, duplicate rules, and unique useful facts. Prefer targeted retrieval
and recent summaries; broaden only when needed to cover the requested audit.
- Classify candidates as
promote-to-skill, promote-to-repo-doc-or-issue,
move-to-people-local-config, move-to-local-config, keep-historical, or
retire-from-reusable-context. Propose deletion/archive only when requested
and supported; preserve historical originals by default.
- Verify each recommendation against maintained sources. Do not turn an old
open PR, active job, or CI snapshot into a permanent fact. Before retiring a
unique useful rule, verify its replacement exists and is reachable by the
target client from the intended checkout; a future plan or an uninstalled
worktree is insufficient.
- Present affected entries, destination or retirement action, reason, evidence,
and any authority still needed. Preserve stable useful facts. When private
audit artifacts contain person mentions, use the optional
people artifact
review to route durable facts to approved private config.
- Carry approved actions through each store's supported mechanism, once per
canonical store. If a client only accepts notes, record the scoped note and
preserve generated files. If regeneration is unavailable, report the pending
capability and continue independent authorized work; do not invent a command
or seek approval again for the same action.
- Check application and then fresh-session retrieval as separate stages, using
the evidence rules in the client reference. If stale guidance still surfaces,
keep retirement pending. Report only the stage actually demonstrated for
each candidate and store.
Result
Return a concise account of audited scope and coverage gaps, proposed or approved
actions, maintained destinations, and evidence. Distinguish requested,
recorded, applied/regenerated, and retrieval-verified per affected
store. State what remains pending and the next supported action. A saved note,
changed hash, or clean report alone does not prove retirement from reusable
context.
1---2name: memory-distillation3description: Use only when the user explicitly asks to audit, clean, prune, archive, reset, or distill Codex or Codex Lab memories into skills, repo docs/issues, or local config. Never use implicitly or for ordinary repo work.4---56# Memory Distillation78Audit memories for Codex and Codex Lab, preserve useful knowledge in maintained9sources, and verify approved retirement from the context each client reuses.10Use this workflow only for an explicit memory audit or change request. A completed11audit produces a supported proposal; a completed retirement requires evidence12from the affected stores and a fresh session's normal retrieval path.1314Apply [task scope and authorization](../references/execution-scope.md). Install15this skill with the catalog's shared `../references/` directory. Read16[client memory contracts](references/client-memory-contracts.md) before discovery,17updates, or retirement verification. When changing this skill, use the18[synthetic evaluation cases](evaluations/README.md); that is not a request to19inspect the user's memories.2021## Scope and approval2223- Do not activate implicitly or for ordinary repo work.24- Start with a read-only inventory, audit, and concrete proposal. Do not edit,25 delete, move, archive, or generate memory files, skills, repo docs, issues, or26 local config until the user approves that action and scope. Reuse approval27 already given for the same action and scope; ask only for missing authority.28- Honor a request limited to one client, store, host, or subject. Discovering29 another store does not authorize reading or changing it. Discovery stays30 within authorized configuration and documented locations, without disk sweeps31 or cross-host access.32- Use the owning client's supported update mechanism. An additive-note contract33 permits an approved note, not direct edits to generated memory, resets, or34 copying/symlinking stores together. A reset is a separate destructive action.35- Preserve original sessions, rollout records, and historical archives. Retiring36 their influence on reusable context does not authorize deleting the originals.37- Never put secrets, credentials, private hostnames, customer/client data, private38 messages, local-only paths, machine-specific values, or personal account39 details into public skills or reports.4041## Source roles4243Memories are candidate observations. Current maintained sources and verified44state take precedence: code and helper contracts for behavior, repo docs and45current GitHub state for project work, and local config for private values.46Neither client nor a directory name makes a memory store authoritative.4748- **Skills:** reusable, durable, public-safe procedures and workflow preferences.49- **Repo docs / GitHub issues:** repo-specific design, plans, and follow-up work.50- **Local config:** private or environment-specific facts with a maintained51 schema. Use the optional `people` skill and private people config for durable52 identity, aliases, contacts, roles, and relationship context.53- **Historical evidence:** useful provenance, clearly non-authoritative. Every54 Code is retired as a supported client; classify any discovered former store55 from current evidence rather than treating its path as proof of ownership.56- **Legacy Chronicle archives:** private historical screen-history data. This57 repository does not provide or require an active Chronicle skill. Treat every58 legacy Chronicle archive as historical evidence. Read the59 [historical archive procedure](references/historical-archives.md) only when the60 user explicitly requests Chronicle or screen-history distillation.6162## Workflow63641. Resolve the requested scope and inventory each relevant configured store,65 including non-default client homes. Record client ownership, canonical path,66 aliases, active/historical/unknown status, consumed layers, supported update67 mechanism, and verification capability. Report inaccessible or out-of-scope68 locations without reading past that boundary. An empty registry does not69 establish that the store or its derivatives are empty.702. Search the authorized layers for stale behavior, transient status, private71 details, duplicate rules, and unique useful facts. Prefer targeted retrieval72 and recent summaries; broaden only when needed to cover the requested audit.733. Classify candidates as `promote-to-skill`, `promote-to-repo-doc-or-issue`,74 `move-to-people-local-config`, `move-to-local-config`, `keep-historical`, or75 `retire-from-reusable-context`. Propose deletion/archive only when requested76 and supported; preserve historical originals by default.774. Verify each recommendation against maintained sources. Do not turn an old78 open PR, active job, or CI snapshot into a permanent fact. Before retiring a79 unique useful rule, verify its replacement exists and is reachable by the80 target client from the intended checkout; a future plan or an uninstalled81 worktree is insufficient.825. Present affected entries, destination or retirement action, reason, evidence,83 and any authority still needed. Preserve stable useful facts. When private84 audit artifacts contain person mentions, use the optional `people` artifact85 review to route durable facts to approved private config.866. Carry approved actions through each store's supported mechanism, once per87 canonical store. If a client only accepts notes, record the scoped note and88 preserve generated files. If regeneration is unavailable, report the pending89 capability and continue independent authorized work; do not invent a command90 or seek approval again for the same action.917. Check application and then fresh-session retrieval as separate stages, using92 the evidence rules in the client reference. If stale guidance still surfaces,93 keep retirement pending. Report only the stage actually demonstrated for94 each candidate and store.9596## Result9798Return a concise account of audited scope and coverage gaps, proposed or approved99actions, maintained destinations, and evidence. Distinguish **requested**,100**recorded**, **applied/regenerated**, and **retrieval-verified** per affected101store. State what remains pending and the next supported action. A saved note,102changed hash, or clean report alone does not prove retirement from reusable103context.