Engram Claude skills
A learning system for the human user: the agent tutors you, a blind subagent grades your free recall, and an FSRS scheduler brings topics back for review.
A carefully built, local-only learning loop with a blind grader and real scheduling, as long as you actually want to be tutored and tested.
What Engram does
Engram turns your coding agent into a tutor for you. It does not give the agent memory. Three skills cover the loop. /learn <topic> spawns a curriculum-architect subagent to build a first-principles curriculum, then tutors you generation-first: you produce explanations from memory, and a separate fresh-context assessor subagent grades them without seeing the tutoring conversation. /review [quick | <topic>] clears due cards with free recall. /coach reports retention stats, confidence calibration, grader audits, n-of-1 experiments and an HTML dashboard, and it explains any change to how it teaches using your own numbers.
A Python engine, scripts/engram.py, does the work underneath. It uses only the standard library, schedules reviews with FSRS-4.5, tracks concepts as a DAG with a required capstone node, and keeps everything in plain JSON files in a single state folder that every supported platform shares. A session-start hook reminds you when reviews are due. Each SKILL.md is long (about 30 KB on average) and begins with a shell block that locates the engine. The repo also ships a 315-check selftest, a gold set of blind assessor judgments, CI, and adapters for OpenCode v1 and the 2.0 beta.
Good for
- Developers who want to retain what they learn from an agent, not just read explanations
- Self-study on any topic with spaced repetition scheduled for you
- Learning across several agent tools while keeping one review schedule
Not for
- Giving the agent persistent memory or codebase context
- Quick answers when you do not want to be quizzed
- Unattended automation, since every step needs you to answer
What's inside depth 4/5
3 skills averaging 30 KB of instructions, backed by a stdlib Python engine, subagent definitions, shared dialogue rules, a 315-check selftest and a gold assessor set run in CI, though the per-skill folders have no references or scripts of their own.
- Skills
- 3
- Reference docs
- 0
- Scripts
- 0
- Tests / evals
- 0
- Templates
- 0
- Avg SKILL.md
- 29.8 KB
Counted from the repository file tree. How we score depth.
Dependencies and costs
- python3 (stdlib only)
- OpenClaw: the review nudge requires
openclaw config set hooks.internal.enabled true - Telemetry: none found. The README says the engine has no network code and that a permanent selftest checks this. The 'telemetry' commands (stats, report, log-session) only write local learning stats. Sharing results with the author's open study is opt-in: you post it on GitHub yourself, and you withdraw by deleting the post.
Security review
Review before installingEngram is a spaced-repetition learning plugin that stores learner state locally and runs its own Python engine at each session start. Under OpenCode it copies its files into .opencode/ or ~/.config/opencode/, writes an AGENTS.md block, and adds a clean/smudge filter plus local attributes and exclude entries to your project's .git configuration. The main engine (scripts/engram.py) and the hook scripts were not available for review, so their behavior is unverified.
Worth knowing
- installs_hooksRegisters session-start and shell-env hooks that run on every session, run engram.py session-start and inject review-due and update notices into the system prompt; this is documented plugin behavior..opencode-plugin/index.ts:179
- Changes files outside your projectCopies skills, agents and scripts into ~/.config/opencode/ when no project opencode.json is present, and writes or prepends an Engram block to AGENTS.md..opencode-plugin/install.ts
- Changes files outside your projectIn git projects it appends a [filter "engram"] clean/smudge entry to .git/config, adds a line to .git/info/attributes and edits .git/info/exclude; the filter commands run python3 scripts on every git add and checkout of AGENTS.md..opencode-plugin/install.ts
- Relies on a CLI or package we could not reviewImports the @opencode-ai/plugin npm package, whose source is not in the repo..opencode-plugin/update-tool.ts
What we checked
The repository (129 files) on Oct 29, 2026. Not a full review: we read 24 of 52 code files; it relies on code outside the repository: scripts/engram.py (783 KB core engine, text not provided); hooks/hooks.json, hooks/session-start.sh, hooks/session-start.ts, hooks/session-start-hermes.sh, hooks/session-start-dsh.sh, hooks/shell-env.ts, hooks/engram-due/handler.js (text not provided); dsh/hooks.json (text not provided).
NVIDIA SkillSpector static scan: 94 pattern hits (Supply Chain 18, Data Flow 18, Agent Snooping 14, Anti-Refusal 9, Memory Poisoning 9, Rogue Agent 7). The 'Concealed Executable Artifact' hits are ordinary TypeScript plugin source files. The prompt-injection, memory-poisoning and config-directory hits are in CHANGELOG.md prose, and the CANARY/SECRET strings in engram.py are test fixtures. The 'no warning' anti-refusal hit is a code comment about CONTEXT.md.
A review, not a certification. Skills change after we check them — read the files before installing.
License
MIT, commercial use allowed.
Can it run unattended?
Not really. Engram is interactive by design: you answer, a subagent grades your recall and the scheduler sets the next review, so nothing happens without you.
FAQ
What is Engram for Claude Code?
Engram is an MIT-licensed plugin with three skills, /learn, /review and /coach, that makes the agent a tutor for you. It builds a curriculum, has you recall ideas in your own words, grades that recall with a blind subagent, and schedules reviews with FSRS-4.5.
How do I install Engram?
In Claude Code, run claude plugin marketplace add nagisanzenin/engram and then claude plugin install engram@engram. Codex, OpenCode (npm package opencode-engram-learning), Hermes Agent, Antigravity, OpenClaw, Pi, DeepSeek Harness and ZCode each have their own install guide in the repo. You need python3.
Is Engram an agent memory plugin?
No. The README says this directly: it does not give the agent persistent memory or codebase context. It tracks what you, the human, have learned and when you should review it.
Does Engram send my data anywhere?
According to the README, the engine has no network code, and all state is plain JSON on your machine. Sharing results with the author's open study only happens if you post them on GitHub yourself.