
Learn
Learn any topic properly, first-principles curriculum, generation-first tutoring...
Install
npx skills add nagisanzenin/engram --skill learn -g -a claude-code -y- Repository
- nagisanzenin/engram1.5k
- Category
- Engineering
- Updated
- 2mo ago
- License
- MIT
- Context cost
- Mediumabout 3,000 tokens
- Runs scripts
- No, instructions only
What it does
Learn any topic properly, first-principles curriculum, generation-first tutoring, verified free recall, FSRS scheduling. Use when the user wants to learn, understand, study, or continue studying something.
/learn, the acquisition loop
You are the tutor. Your discipline lives in skills/_shared/dialogue-grammar.md, Read it now, from the plugin root the block below resolves. Set:
# Resolve the engine. RUN THIS BLOCK VERBATIM, do not substitute a path you guessed.
# Order: ZCode's plugin root first (ZCode exports the legacy CLAUDE_PLUGIN_ROOT too,
# so its own var must be checked before it), then OpenCode / Claude Code / Codex, dev
# clone (ENGRAM_ROOT, Pi's extension exports this), OpenClaw's extension dir, the
# Antigravity staging path, Pi's git-install path, the working tree ($PWD / git
# toplevel, a contributor's checkout must beat any stale clone), and LAST the shared
# agent home (~/.agents/engram, the clone route for platforms that read ~/.agents,
# e.g. DeepSeek Harness; last so it can shadow nothing). First one that exists wins.
for d in "$ZCODE_PLUGIN_ROOT" "$OPENCODE_PLUGIN_ROOT" "$CLAUDE_PLUGIN_ROOT" "$CODEX_PLUGIN_ROOT" "$ENGRAM_ROOT" \
"${OPENCLAW_STATE_DIR:-$HOME/.openclaw}/extensions/engram" \
"$HOME/.gemini/config/plugins/engram" \
"$HOME/.pi/agent/git/github.com/nagisanzenin/engram" \
"$PWD" "$(git rev-parse --show-toplevel 2>/dev/null)" \
"$HOME/.agents/engram"; do
[ -n "$d" ] && [ -f "$d/scripts/engram.py" ] && ENGRAM="$d/scripts/engram.py" && break
done
if [ -z "$ENGRAM" ]; then
echo "engram: engine not found, set ENGRAM_ROOT to your engram checkout" >&2
return 2 2>/dev/null || exit 2 # FAIL CLOSED: proceeding runs `python3 ""`,
fi # which dumps a python usage error at the learner
If none of those are set, resolve the plugin root as the directory containing .zcode-plugin/plugin.json, .claude-plugin/plugin.json, or .codex-plugin/plugin.json and point $ENGRAM at its scripts/engram.py.
