Coach
Learning telemetry that reports retention and grader audits from real receipts, never vibes
Test report
- Verdict
- Works with setup
- Score
- Tested
- Jul 21, 2026
- Environment
- Claude Code 2.x (agent harness)
- Upstream re-checked
- Aug 10, 2026 · 83c88c3
Located skills/coach/SKILL.md via the GitHub tree; frontmatter parses with name+description. Spot-checked scripts/engram.py, skills/_shared/subagents.md, agents/engram-assessor.md, CONTRIBUTING-DATA.md — all HTTP 200. Cloned the repo and ran the engine: selftest = 302/302, and its network-import AST guard confirms the "no network code" claim. Seeded a real learner state (3 encoded Calculus concepts, 30 days elapsed, zero reviews) so `stats` returned loop_closure.rate==0.0 ("THE LOOP HAS NEVER CLOSED"), then wrote two artifacts against it: BASELINE.md (no skill) opened with "Nice work... keep it up!", reported retention/calibration sections, and claimed a review would "pull these back up"; SKILL.md (following the body) led with "the loop has never closed, nothing else is real yet", quoted the engine's own ~2 min figure, offered exactly three options with `/review quick` recommended first, and skipped the grader/calibration sections per the rate==0 rules. Concrete measured difference, skill clearly better. Verdict "setup" not "pass": the catalog-standard bare skill-copy fails closed — I verified the resolver returns "engine not found" without ENGRAM_ROOT or a plugin install, and returns the engine path once ENGRAM_ROOT points at the clone. Category corrected from "data" to productivity (a personal learning/study coach).
Scored on four weighted criteria — install, triggering, output vs. baseline, docs. How scoring works
- Installs cleanly 5/5
- Triggers reliably 5/5
- Output vs. baseline 8/10
- Docs & honesty 5/5
What Coach does
A spaced-repetition learning coach for the Engram plugin: it reads the deterministic engine's telemetry (loop-closure, retention buckets, calibration, transfer, grader-health) and narrates an honest check-in where every adaptation is backed by the learner's own numbers. Triggers on "how am I doing", weekly check-ins, auditing the grader against a gold set, running n-of-1 strategy experiments, or refitting the review schedule. It is a narration layer over scripts/engram.py, which owns every number the coach reports.
How to install Coach
git clone --depth 1 https://github.com/nagisanzenin/engram.git /tmp/coach-src
mkdir -p ~/.claude/skills
cp -R /tmp/coach-src/skills/coach ~/.claude/skills/coach
# NOTE: this skill is a thin narration layer over the engine at scripts/engram.py.
# A bare skill-copy FAILS CLOSED with "engine not found" unless the engine is resolvable.
# Two ways to wire it up:
# 1) RECOMMENDED — install the whole thing as a plugin (auto-resolves $CLAUDE_PLUGIN_ROOT):
# /plugin marketplace add nagisanzenin/engram then /plugin install engram
# 2) Keep the skill-copy above and point ENGRAM_ROOT at a full clone (persist in ~/.zshrc;
# move the clone out of /tmp first):
# export ENGRAM_ROOT=/tmp/coach-src
# The `audit` subcommand also spawns the engram-assessor subagent (agents/engram-assessor.md, in the full clone).
# Requirements: Python 3 (stdlib only, no pip). State lives in ~/.claude/learning (override ENGRAM_HOME).
# The engine has no network code — proven by a permanent AST selftest (302/302 checks pass).
Skills live in ~/.claude/skills/ (global) or .claude/skills/
(per-project). Restart Claude Code after installing.
Commands — how to trigger Coach
-
/coachLearning telemetry that reports retention and grader audits from real receipts, never vibes
It also activates on plain-language prompts like these:
-
How am I doing on my learning this week -
Show my retention stats in a dashboard -
Adjust my study strategy based on my data
Frequently asked questions
- Is the Coach skill free?
- Yes. The skill itself is free from nagisanzenin/engram. SkillProof publishes the install command and an independent test verdict at no cost.
- Does Coach work with Claude Code?
- We tested it with Claude Code 2.x (agent harness) on Jul 21, 2026. Verdict: Works with setup. Located skills/coach/SKILL.md via the GitHub tree; frontmatter parses with name+description. Spot-checked scripts/engram.py, skills/_shared/subagents.md, agents/engram-assessor.md, CONTRIBUTING-DATA.md — all HTTP 200. Cloned the repo and ran the engine: selftest = 302/302, and its network-import AST guard confirms the "no network code" claim. Seeded a real learner state (3 encoded Calculus concepts, 30 days elapsed, zero reviews) so `stats` returned loop_closure.rate==0.0 ("THE LOOP HAS NEVER CLOSED"), then wrote two artifacts against it: BASELINE.md (no skill) opened with "Nice work... keep it up!", reported retention/calibration sections, and claimed a review would "pull these back up"; SKILL.md (following the body) led with "the loop has never closed, nothing else is real yet", quoted the engine's own ~2 min figure, offered exactly three options with `/review quick` recommended first, and skipped the grader/calibration sections per the rate==0 rules. Concrete measured difference, skill clearly better. Verdict "setup" not "pass": the catalog-standard bare skill-copy fails closed — I verified the resolver returns "engine not found" without ENGRAM_ROOT or a plugin install, and returns the engine path once ENGRAM_ROOT points at the clone. Category corrected from "data" to productivity (a personal learning/study coach).
- What is the Coach SkillProof Score?
- 9.2/10 — installs cleanly 5/5, triggers reliably 5/5, output vs. baseline 8/10, docs & honesty 5/5.
- How do I install Coach?
- Copy the install command from this page, run it in your terminal, and restart Claude Code. Skills live in ~/.claude/skills/ (global) or .claude/skills/ inside a project.
- Can I use Coach with Cursor, Copilot, Gemini CLI, Codex or other AI tools?
- The SKILL.md format is native to Claude (Claude Code, Desktop, claude.ai). The instructions inside adapt to other assistants: Cursor rules, GitHub Copilot instructions, Windsurf rules, Custom GPTs, AGENTS.md for OpenAI Codex, and GEMINI.md for Google Gemini CLI — our conversion guides cover each, and the free converter on the tools page does the wrapping for you.