"pan memory <subcommand> — search and inspect Overdeck memory observations, status, reset markers, summaries, and health"
Install
npx skillscat add eltmon/overdeck/pan-memory Install via the SkillsCat registry.
SKILL.md
Pan Memory
Use pan memory to inspect the durable memory substrate for a project or issue.
Commands
pan memory search <query> [--project <id>] [--workspace <id|name>] [--issue <id>] [--tag <tag>] [--sibling] [--global] [--target [path]] [--include-archived] [--limit <n>] [--json]
pan memory status [issue] [--project <id>] [--workspace <id|name>] [--history <n>] [--json]
pan memory timeline [--workspace <id|name>] [--days <n>] [--limit <n>] [--json]
pan memory read <path> [--workspace <id|name>] [--from <n>] [--lines <n>]
pan memory reset <scope> <scopeId> --reason <text> [--project <id>] [--from <iso>] [--json]
pan memory summary [issue] [--project <id>] [--workspace <id|name>] [--date <yyyy-mm-dd>] [--json]
pan memory doctor [--project <id>] [--json]
pan memory backfill [--workspace <id>] [--project <id>] [--dry-run] [--json]
pan memory pin <doc-path> [--project <id> | --workspace <id>] [--json]
pan memory unpin <doc-path> [--project <id> | --workspace <id>] [--json]
pan memory pins [--project <id> | --workspace <id>] [--json]
pan memory config [--json]Notes
search --sibling --issue <id>searches same-project sibling issues instead of the selected issue.search --globalmerges results across every registered project instead of just the selected/default one.search --workspaceaccepts either a workspace id or a workspace name; a name matching more than one workspace across projects errors instead of guessing.search --target [path](Subspacetarget-searchparity) finds every non-archived workspace whosepathtargets a directory — bare--targetdefaults to the current working directory. Mutually exclusive with--workspace/--issue/--global. Fans out per matched workspace (which may span several projects) and merges by rank score, same as--global's per-project merge. When no workspace targets the directory, prints a friendly "No workspaces target<dir>." note and exits 0.statusandsummaryaddress a workspace three ways, in precedence order:--workspace <id|name>, an issue positional, then the workspace that owns the current directory. With none of the three resolvable the command exits non-zero and names all three modes. A workspace with no issue (main/scratch) is titled by its workspace name insummaryoutput.status --history <n>prints the current status first, then up to N archived statuses newest-first with their archive timestamp, phase, and headline. N is capped at 50; the rollup writer prunes the on-disk archive to its three most recent entries, so N above 3 returns whatever is still retained.--historywith--jsonemits{current, history}where each history entry is{archivedAt, path, status}.timelineprints one row per observation — timestamp, the action status or summary, and the files touched — oldest first, for the workspace named by--workspaceor the one owning the current directory.--dayscounts today as day 1 and defaults to 7;--limitcaps the row count at the 50 most recent by default;--jsonemits the observation rows.readprints a file from the workspace's memory home;<path>is relative to that home and--from/--linesslice it by 1-based line number. It refuses, with a non-zero exit, any absolute path, any../traversal, and any symlink whose real target is outside the home — so Claude Code JSONL session files under~/.claudeare unreachable by construction.resetcreates a reset marker; it does not delete historical memory records.doctorexits non-zero when an active agent has no successful extraction in the last hour.backfillreads historical Claude Code JSONL transcripts under~/.claude/projects/and extracts observations for sessions whose first-message cwd maps to a registered workspace; unmatched sessions are skipped. Read-only on the JSONL files —--dry-runreports matches without extracting or writing anything.pin/unpin/pinsmanage docs injected under the knowledge budget at prompt time.--workspaceoverrides--project; paths are stored project-relative regardless of scope.