Memori Long-Term Memory
MemoriLabs/Memori
Connects Claude Code to Memori Cloud for long-term memory, recalling stored context before substantive replies and saving new context afterward.
Uses Jev to mark each transcript turn keep, summarize or drop when cutting a conversation to a fixed size, with measured results on handoff quality.
$ npx skills add kerpopule/hermes-jev-skills --skill jev-compaction -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install kerpopule/hermes-jev-skills jev-compaction --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/kerpopule/hermes-jev-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/jev-compaction .claude/skills/jev-compaction && 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 "jev-compaction" agent skill from https://github.com/kerpopule/hermes-jev-skills/tree/main/skills/jev-compaction into .claude/skills/jev-compaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-compaction", 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/kerpopule/hermes-jev-skills/tree/main/skills/jev-compactionType 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 kerpopule/hermes-jev-skills --skill jev-compaction -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install kerpopule/hermes-jev-skills jev-compaction --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kerpopule/hermes-jev-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/jev-compaction .agents/skills/jev-compaction && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "jev-compaction" agent skill from https://github.com/kerpopule/hermes-jev-skills/tree/main/skills/jev-compaction into .agents/skills/jev-compaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-compaction", 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 kerpopule/hermes-jev-skills --skill jev-compaction -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install kerpopule/hermes-jev-skills jev-compaction --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kerpopule/hermes-jev-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/jev-compaction .cursor/skills/jev-compaction && 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 "jev-compaction" agent skill from https://github.com/kerpopule/hermes-jev-skills/tree/main/skills/jev-compaction into .cursor/skills/jev-compaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-compaction", 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/kerpopule/hermes-jev-skills.git --path skills/jev-compaction--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 kerpopule/hermes-jev-skills --skill jev-compaction -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install kerpopule/hermes-jev-skills jev-compaction --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kerpopule/hermes-jev-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/jev-compaction .gemini/skills/jev-compaction && 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 "jev-compaction" agent skill from https://github.com/kerpopule/hermes-jev-skills/tree/main/skills/jev-compaction into .gemini/skills/jev-compaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-compaction", 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 kerpopule/hermes-jev-skills jev-compactionInstalls 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 kerpopule/hermes-jev-skills --skill jev-compaction -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/kerpopule/hermes-jev-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/jev-compaction .github/skills/jev-compaction && 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 "jev-compaction" agent skill from https://github.com/kerpopule/hermes-jev-skills/tree/main/skills/jev-compaction into .github/skills/jev-compaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-compaction", 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 kerpopule/hermes-jev-skills --skill jev-compaction -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install kerpopule/hermes-jev-skills jev-compaction --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kerpopule/hermes-jev-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/jev-compaction .opencode/skills/jev-compaction && 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 "jev-compaction" agent skill from https://github.com/kerpopule/hermes-jev-skills/tree/main/skills/jev-compaction into .opencode/skills/jev-compaction/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-compaction", 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.
jev-compactionUses Jev to mark each transcript turn keep, summarize or drop when cutting a conversation to a fixed size, with measured results on handoff quality.
Jev cannot write a summary; it can only mark each turn of a transcript as keep, summarize or drop. Keep covers decisions, constraints, preferences, unfinished work and exact values that later work depends on, summarize covers background whose gist matters, and drop covers chatter, superseded attempts and repeated output. For a long turn it judges only the first and last 350 characters, redacted, and it handles 40 turns per request.
The skill says plainly that its own earlier claim was wrong. Measured on seven real sessions with 104 recall questions, a handoff written from Jev's digest recalled less than one written from the plain last 24,000 characters or from the whole dialogue. Its advice for handoffs is to give the writer the whole dialogue, ask for up to 1,200 words under five headings (Working on, State, Decisions, Pointers, Next), name the session and say it is searchable, since one search added many points, and not to append a list of identifiers. It also describes the search calls for Hermes sessions.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit dddaa39. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom 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.
Jev Transcript Compaction loads about 1.2k tokens when it runs. Until then it costs about 48 tokens; SKILL.md has 692 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 kerpopule/hermes-jev-skills at commit dddaa39, republished under its MIT licence (© kerpopule). 692 words, ~1,198 tokens.
.claude/skills/jev-compaction/SKILL.md (or your agent's skills folder).Jev cannot write a summary. It can mark each turn of a transcript:
It judges a long turn on its first 350 and last 350 characters, redacted, 40 turns per request, and sees no other turn while it does.
This skill used to say a handoff written from Jev's digest "stops losing the one line that mattered". We measured that on seven real sessions and 104 recall questions (scorecard) and it was wrong:
| the writer reads | capsule | recall alone | with one search of the old session |
|---|---|---|---|
| Jev's digest | 400 words | 37.5% | 68.3% |
| the plain last 24,000 characters | 400 words | 48.1% | 68.3% |
| the whole dialogue | 1,200 words | 58.7% | 75.0% |
| nothing: no handoff at all | 56.7% |
Jev's marks did beat the same marks handed out by recency (11 questions to 4), so the judgement is real. The digest built around it clips every other turn to 400 characters, and that cost more than the judgement earned. Nous Research found the same shape with a different Jev design (hermes-agent PR 116246).
So, for a handoff:
session_search(query="..."), then session_search(session_id=..., around_message_id=...). Passing query together with session_id ignores the query.The hermes-handoff plugin does all four. HANDOFF_JEV=1 puts the Jev pre-pass back if you want to compare on your own sessions with evals/compaction/run_eval.py.
When the size is fixed and something has to go: a small local writer, a context you cannot grow, a digest for a person to skim. There, choosing turns with Jev beat choosing them by recency.
Get the transcript as a list of {role, content} messages. On Hermes: hermes sessions export --session-id <id> --format jsonl -.
Select:
Hermes: call jev_compact_select with messages.
Anywhere else:
jev compact-select --digest < transcript.json # {"messages":[...]} or a bare listWrite from digest. [KEEP VERBATIM] lines go in unchanged. [background] lines are clipped already; treat them as context, not as the record.
The digest is cut to its last 24,000 characters by default, oldest first, keep lines included. Pass a larger limit if early keep lines matter.
keep_last); system messages are always kept.summarize. That is a worse input than the plain transcript, so on status: "fail_open" use the plain transcript instead.status: "partial" means some batches answered and some did not; the ids in unjudged sat at the summarize default with nobody judging them. Treat it like fail_open unless unjudged is short and you can see it does not cover the turns you care about. It used to report ok in this case, so one good batch hid every failed one.should_compact is arithmetic, not a model call: compact at 60% of the window, urgently at 85%. Do not ask a model whether the window is full.
© kerpopule, 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/jev-compaction of kerpopule/hermes-jev-skills.
Open the folder on GitHubat commit dddaa39
Jev Transcript Compaction 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 |
|---|---|---|---|---|---|---|
| Jev Transcript Compaction this skillkerpopule/hermes-jev-skills | 1k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Memori Long-Term MemoryMemoriLabs/Memori | 17k | — | ~2k | Automated safety check: Notes | Custom licence | |
| Planning with FilesOthmanAdi/planning-with-files | 27k | — | ~2.9k | Automated safety check: Pass | MIT | |
| User Thoughts Memorysickn33/agentic-awesome-skills | 47k | 1 repos | ~2.5k | Automated safety check: Pass | MIT | |
| Planning With FilesOthmanAdi/planning-with-files | 27k | — | ~3k | Automated safety check: Pass | MIT | |
| Harness Engineering10xChengTu/harness-engineering | 102 | 1 repos | ~1k | Automated safety check: Pass | None |
MemoriLabs/Memori
Connects Claude Code to Memori Cloud for long-term memory, recalling stored context before substantive replies and saving new context afterward.
OthmanAdi/planning-with-files
Keeps a task plan, findings and progress log in markdown files on disk so long agent tasks survive context resets, with Gemini hooks and helper scripts.
sickn33/agentic-awesome-skills
Saves a user's project decisions, rules and preferences into a project-local mdbase so later sessions and other agents can recover the intent.
OthmanAdi/planning-with-files
Keeps a task plan, findings and progress log as Markdown files in the project so long multi-step agent work survives context resets.
10xChengTu/harness-engineering
Set up and improve harness engineering (AGENTS.md, docs/, lint rules, eval systems, project-level prompt engineering) for AI-agent-friendly codebases.
OthmanAdi/planning-with-files
Keeps task_plan.md, findings.md and progress.md on disk as the agent's working memory for multi-step work, wired into Kiro steering, with no hooks.
kerpopule/hermes-jev-skills
Drives web pages that need interaction, letting Jev choose one action at a time from observed page elements under a host allowlist and step budget.
kerpopule/hermes-jev-skills
Drives desktop GUI apps and OS dialogs by letting Jev pick the next action from a menu of safe actions the agent built, with a Mac Co-Agent shortcut.
kerpopule/hermes-jev-skills
Routes a turn or delegated task to the cheapest model and effort lane that will still do it right, using the Jev decision model to classify difficulty and escalate only when needed.
kerpopule/hermes-jev-skills
Connects the Jev decision model by storing a TypeSafe, OpenRouter, Venice or OpenCode Zen key with jev setup-key, so the key never passes through the agent.
kerpopule/hermes-jev-skills
Ranks a large catalog of installed skills against the current request through the Jev service, and can conclude that no skill applies.
kerpopule/hermes-jev-skills
Chooses which paid frontier model seat should take a task already judged hard, hands it off with proper context, and keeps a watch on the delegated run.
Categories
Uses Jev to mark each transcript turn keep, summarize or drop when cutting a conversation to a fixed size, with measured results on handoff quality. Jev cannot write a summary; it can only mark each turn of a transcript as keep, summarize or drop. Keep covers decisions, constraints, preferences, unfinished work and exact values that later work depends on, summarize covers background whose gist matters, and drop covers chatter, superseded attempts and repeated output.
Jev Transcript Compaction fits situations like: cutting a long transcript to a fixed size and choosing which turns to keep; deciding how to write a session handoff note; marking turns as keep, summarize or drop before compaction.
Run `npx skills add kerpopule/hermes-jev-skills --skill jev-compaction -a claude-code`. Or copy the skill folder (skills/jev-compaction in kerpopule/hermes-jev-skills) into .claude/skills/jev-compaction in your project. Claude Code loads it when a task matches its description.
Run `npx skills add kerpopule/hermes-jev-skills --skill jev-compaction -a codex`. Or copy the skill folder (skills/jev-compaction in kerpopule/hermes-jev-skills) into .agents/skills/jev-compaction 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 kerpopule/hermes-jev-skills --skill jev-compaction -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/jev-compaction, .gemini/skills/jev-compaction, .github/skills/jev-compaction and .opencode/skills/jev-compaction in your project.
SKILL.md names no scripts, command-line tools or credentials: Jev Transcript Compaction is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: github.com. 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.
Jev Transcript Compaction is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.2k tokens (SKILL.md is roughly 4.8k 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 Jev Transcript Compaction: Memori Long-Term Memory (MemoriLabs/Memori, 17k stars), Planning with Files (OthmanAdi/planning-with-files, 27k stars), User Thoughts Memory (sickn33/agentic-awesome-skills, 47k stars) and Planning With Files (OthmanAdi/planning-with-files, 27k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
kerpopule (a GitHub user) maintains it in kerpopule/hermes-jev-skills, which has 1,046 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 7, 2026.
Source: kerpopule/hermes-jev-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.