Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add edg-l/engram-mcp --skill read-handoffsgit clone --depth 1 https://github.com/edg-l/engram-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/edg-l/engram-mcp/read-handoffs)<a href="https://agentmods.dev/skills/edg-l/engram-mcp/read-handoffs"><img src="https://agentmods.dev/badge/skills/edg-l/engram-mcp/read-handoffs/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/edg-l/engram-mcp/read-handoffs"><img src="https://agentmods.dev/badge/skills/edg-l/engram-mcp/read-handoffs.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00036 | $0.00799 |
| Opus 5 | $0.00018 | $0.00400 |
| Sonnet 5 | $0.00007 | $0.00160 |
| Haiku 4.5 | $0.00004 | $0.00080 |
Grade A, and why
read-handoffs scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 42 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Load session context from Engram via the mcp__engram__handoff_resume MCP tool. Engram is the canonical store; legacy .claude/handoff/*.md files were ported via engram-port-handoffs and are no longer read.
Steps
-
Call
mcp__engram__handoff_resumewith no arguments. Defaults: current branch,max_sections: 5,include_off_branch: false. -
Inspect the result. Engram returns:
branch— the resolved branch (ornullif detached HEAD)latest_handoff_id— most recent handoff on this branchchain— handoff ids ordered oldest-to-newest viacontinues_from(capped at depth 5, cycle-detected)top_sections— highest-scoring sections across the chain, each withhandoff_id,section_name,section_text,scorelinked_memories— decision/pattern/debug memories the latest handoff links to viaderived_frommessage— only present when branch could not be resolved
-
Handle the empty case. If
chainis empty ANDlatest_handoff_idisnull, say "No prior handoffs on this branch." Then callmcp__engram__handoff_resumeagain withinclude_off_branch: trueto surface handoffs from other branches as background. -
Handle detached HEAD. If
messageis set, tell the user no current branch was detected and present whatever off-branch results came back, flagged as such. -
Present to the user, in this order:
- Status line:
Resuming \`, handoff(s) in chain, latest from ` - Top sections: summarize each
top_sectionsentry. Group byhandoff_idif multiple sections come from the same handoff. Quote the strongest section text verbatim; paraphrase weaker matches. - Open todos / blockers from the latest handoff: surface these explicitly so the user immediately sees what's pending.
- Linked memories: bullet list of
linked_memorieswith their type and content preview ("Related decision: ...", "Related debug: ...").
- Status line:
-
Pair with
mcp__engram__memory_context. Call it with a short description of the inferred current task (derived fromtop_sectionsandlinked_memories). Surface any additional memories that didn't come through the handoff chain. -
Closing note. End with a one-liner: which handoff in the chain is the working starting point, and whether you followed any cross-references the user might want expanded.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 42 lines · 36 tokens per session scan A e9b10c31ec36
read-handoffs is a skill published in the GitHub repository edg-l/engram-mcp (16 stars, last pushed 9d ago), licensed Apache-2.0. It adds 36 tokens to every session and 799 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
engrama-onboard
Build a personalized Engrama memory graph for any user through a conversational interview. Use this skill whenever someone says "set up Engrama", "create my graph", "onboard", "build my profile", "configure Engrama for me", or asks how to start using Engrama. Also use when the user mentions they have a different role…
memory-review
Memory hygiene audit -- finds stale facts, contradictions, low-confidence entries, and consolidation candidates in Pensyve memory. Use periodically to maintain memory quality.
session-memory
End-of-session memory capture -- classifies session signals using a tiered taxonomy and stores confirmed items via Pensyve. Use when ending a work session or when the user wants to capture what was learned.
context-loader
Session-start context loading -- loads historical decisions, issues, and patterns from Pensyve to provide cross-session continuity. Use at session start or when switching context.
memory-informed-refactor
Pre-refactor context briefing -- loads relevant prior decisions, failures, and pitfalls from Pensyve memory before refactoring a module. Use before any refactor to avoid repeating past mistakes.
memory-informed-design
Architecture/design decisions with working memory -- before recommending, recall prior decisions and tradeoffs; when a decision is made, capture it immediately. Use for any substantive design question.