Mindmemos CLI
mindscale-noah/MindMemOS
Give an AI agent persistent, cross-session long-term memory through MindMemOS.
Loads context from recent CPR session logs at the start of a session and can search past sessions by topic, then writes a short resume report.
$ npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install EliaAlberti/cpr-compress-preserve-resume resume --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/EliaAlberti/cpr-compress-preserve-resume.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/resume .claude/skills/resume && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "resume" agent skill from https://github.com/EliaAlberti/cpr-compress-preserve-resume/tree/main/skills/resume into .claude/skills/resume/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "resume", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/EliaAlberti/cpr-compress-preserve-resume/tree/main/skills/resumeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install EliaAlberti/cpr-compress-preserve-resume resume --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliaAlberti/cpr-compress-preserve-resume.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/resume .agents/skills/resume && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "resume" agent skill from https://github.com/EliaAlberti/cpr-compress-preserve-resume/tree/main/skills/resume into .agents/skills/resume/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "resume", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install EliaAlberti/cpr-compress-preserve-resume resume --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliaAlberti/cpr-compress-preserve-resume.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/resume .cursor/skills/resume && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "resume" agent skill from https://github.com/EliaAlberti/cpr-compress-preserve-resume/tree/main/skills/resume into .cursor/skills/resume/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "resume", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/EliaAlberti/cpr-compress-preserve-resume.git --path skills/resume--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install EliaAlberti/cpr-compress-preserve-resume resume --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliaAlberti/cpr-compress-preserve-resume.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/resume .gemini/skills/resume && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "resume" agent skill from https://github.com/EliaAlberti/cpr-compress-preserve-resume/tree/main/skills/resume into .gemini/skills/resume/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "resume", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install EliaAlberti/cpr-compress-preserve-resume resumeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/EliaAlberti/cpr-compress-preserve-resume.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/resume .github/skills/resume && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "resume" agent skill from https://github.com/EliaAlberti/cpr-compress-preserve-resume/tree/main/skills/resume into .github/skills/resume/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "resume", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install EliaAlberti/cpr-compress-preserve-resume resume --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EliaAlberti/cpr-compress-preserve-resume.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/resume .opencode/skills/resume && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "resume" agent skill from https://github.com/EliaAlberti/cpr-compress-preserve-resume/tree/main/skills/resume into .opencode/skills/resume/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "resume", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
resumeLoads context from recent CPR session logs at the start of a session and can search past sessions by topic, then writes a short resume report.
CPR is a persistent memory plugin for Claude Code that saves, searches and restores conversation context. This skill is the restore side: the /cpr:resume command runs a bundled Python script that collects the project's session logs, so the agent has nothing to open or list, and then writes a report from that data. CLAUDE.md is already in context and is not re-read.
By default it covers the last three sessions. A number after the command, such as 5 or 10, widens that, and a topic word such as auth or migration also searches every log for that term. The report uses a fixed banner format headed by the project name, with one-line bullets that keep exact paths, identifiers and flags from the logs.
If there are no logs yet, it says so in two lines and points to /cpr:compress. If autosaved transcripts are newer than the last curated log, it mentions them once, since they hold the full conversation without a summary. Raw logs are opened only when you ask something the summaries cannot answer.
Read from SKILL.md and the folder at commit cfd1e77. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadBash(python3 *)From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
CPR Session Resume loads about 623 tokens when it runs. Until then it costs about 40 tokens; SKILL.md has 176 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from EliaAlberti/cpr-compress-preserve-resume at commit cfd1e77, republished under its MIT licence (© EliaAlberti). 176 words, ~623 tokens.
.claude/skills/resume/SKILL.md (or your agent's skills folder).Bring this session up to speed from the project's session logs. The data below was collected by a script, so there is nothing to open or list: read it, then write the report.
Usage: /cpr:resume for the last 3 sessions, /cpr:resume 5 for the last 5, /cpr:resume auth to also search every log for "auth", /cpr:resume 10 migration for both. CLAUDE.md is already in your context; do not re-read it.
!python3 "${CLAUDE_PLUGIN_ROOT}/scripts/resume_context.py" $ARGUMENTS
Write the report from the data above, in this shape. Keep each bullet to one line, and keep exact values from the logs: paths, identifiers, flags.
══════════════════════════════════════════════
RESUMING: {project name}
══════════════════════════════════════════════
CONTEXT:
- {what was last worked on}
- {important project state from the logs and CLAUDE.md}
BLOCKERS:
- {from the logs, or "None"}
══════════════════════════════════════════════
MOST RECENT SESSION: {date time}
Topic: {topic}
══════════════════════════════════════════════
**Keywords:** {confidence keywords}
**Outcome:** {outcome}
**Key points:**
- {decision, learning or fix}
- {pending task}
══════════════════════════════════════════════
PREVIOUS SESSIONS ({count})
══════════════════════════════════════════════
- {date}: {topic}, {outcome in a few words}
══════════════════════════════════════════════
RELATED SESSIONS (topic: "{topic}") only when a topic was given
══════════════════════════════════════════════
- {date}: {topic}, {why it matched}
══════════════════════════════════════════════
READY TO:
══════════════════════════════════════════════
- {next step from CLAUDE.md or the latest log}
- {pending task}
══════════════════════════════════════════════If the data says there are no logs yet, say so in two lines and point to /cpr:compress. If it lists autosaved transcripts newer than the last curated log, mention them once: they hold the full conversation but no summary, and /cpr:resume <topic> searches them.
Read a raw log only when the user asks a question the summaries cannot answer; the summaries exist so that the raw archives never have to be loaded.
© EliaAlberti, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/resume of EliaAlberti/cpr-compress-preserve-resume.
Open the folder on GitHubat commit cfd1e77
CPR Session Resume next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| CPR Session Resume this skillEliaAlberti/cpr-compress-preserve-resume | 514 | — | ~623 | Automated safety check: Pass | MIT | |
| Mindmemos CLImindscale-noah/MindMemOS | 1k | — | ~3.4k | Automated safety check: Pass | None | |
| File-Based Planning in ArabicOthmanAdi/planning-with-files | 27k | — | ~3.2k | Automated safety check: Notes | MIT | |
| File-Based Planning in SpanishOthmanAdi/planning-with-files | 27k | — | ~3.8k | Automated safety check: Notes | MIT | |
| Beads Task Memorygastownhall/beads | 28k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Session History Searchslopus/happy | 24k | — | ~3.1k | Automated safety check: Pass | MIT |
mindscale-noah/MindMemOS
Give an AI agent persistent, cross-session long-term memory through MindMemOS.
OthmanAdi/planning-with-files
Arabic edition of a file-based planning skill that keeps task_plan.md, findings.md and progress.md on disk so multi-step agent work survives lost context.
OthmanAdi/planning-with-files
Spanish edition of a planning skill that keeps a multi-step agent task on track with task_plan.md, findings.md and progress.md on disk, with recovery after a session reset.
gastownhall/beads
Tracks multi-session work with dependencies in the bd issue tracker so the agent can find ready tasks and recover its context after conversation compaction.
slopus/happy
Searches past Claude Code, Codex and Cursor sessions and summarizes what was worked on, tried or decided, using extraction scripts instead of reading raw logs.
mem0ai/mem0
Adds, searches, lists, updates and deletes memories on the Mem0 platform from the terminal with the mem0 command, including a JSON mode built for agents.
EliaAlberti/cpr-compress-preserve-resume
Saves the current session as a searchable log with a curated summary and the raw transcript, so a later session can resume from it.
EliaAlberti/cpr-compress-preserve-resume
Writes this session's durable learnings into the project's CLAUDE.md and keeps the file short by archiving stale sections.
Works with
Categories
Loads context from recent CPR session logs at the start of a session and can search past sessions by topic, then writes a short resume report. CPR is a persistent memory plugin for Claude Code that saves, searches and restores conversation context. This skill is the restore side: the /cpr:resume command runs a bundled Python script that collects the project's session logs, so the agent has nothing to open or list, and then writes a report from that data.
CPR Session Resume fits situations like: starting a new session and catching up on what was done last time; finding past sessions that dealt with a topic such as authentication; checking whether newer autosaved transcripts exist beyond the last summary.
Run `npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a claude-code`. Or copy the skill folder (skills/resume in EliaAlberti/cpr-compress-preserve-resume) into .claude/skills/resume in your project. Claude Code loads it when a task matches its description.
Run `npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a codex`. Or copy the skill folder (skills/resume in EliaAlberti/cpr-compress-preserve-resume) into .agents/skills/resume in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add EliaAlberti/cpr-compress-preserve-resume --skill resume -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/resume, .gemini/skills/resume, .github/skills/resume and .opencode/skills/resume in your project.
Going by SKILL.md and its folder, CPR Session Resume needs the command-line tools its instructions call (python3). Our summary lists: The CPR plugin installed; Python 3 to run the bundled resume script. Its frontmatter pre-approves these tools: Read, Bash(python3 *).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
CPR Session Resume is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 623 tokens (SKILL.md is roughly 2.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with CPR Session Resume: Mindmemos CLI (mindscale-noah/MindMemOS, 1k stars), File-Based Planning in Arabic (OthmanAdi/planning-with-files, 27k stars), File-Based Planning in Spanish (OthmanAdi/planning-with-files, 27k stars) and Beads Task Memory (gastownhall/beads, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
EliaAlberti (a GitHub user) maintains it in EliaAlberti/cpr-compress-preserve-resume, which has 514 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on September 9, 2026.
Source: EliaAlberti/cpr-compress-preserve-resume on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.