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 agentmods add skills/awrshift/agent-memory-kit/setupnpx skills add awrshift/agent-memory-kit --skill setupgit clone --depth 1 https://github.com/awrshift/agent-memory-kitWhat 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 | $0.00093 | $0.02905 |
| Opus 5 | $0.00046 | $0.01452 |
| Sonnet 5 | $0.00019 | $0.00581 |
| Haiku 4.5 | $0.00009 | $0.00291 |
Grade D, and why
setup scanned grade D with 2 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 yesterday.
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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
[ -f "$HOOK" ] || HOOK=$(find ~/.claude/plugins -path '*memory-kit*' -name session-start.py | head -1) Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
"Bash(rm -rf:*)" How it starts
The opening of the file, as written. The whole thing — 202 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/memory-kit:setup — adopt the kit in an existing repository
The plugin ships behaviour; the repository owns the state. This skill creates that state — always asking before the first write, and never touching files the repo already has.
Running without a user who can answer (a headless or -p run)? Then "offer" means skip and
report: take the documented default where one exists, install nothing that the skill marks as
opt-in, and finish with a list of what was deliberately not installed and what question is still
open. Never invent a preference on the user's behalf and never present a skipped step as done.
Running under a host other than Claude Code (Codex and others load this skill too)?
${CLAUDE_PLUGIN_ROOT} will not expand there — resolve every plugin path in this skill
relative to this SKILL.md file's own location (../../ is the plugin root), and skip the
Claude-Code-only steps (settings.json keys, /context) with a one-line note.
Step 0 — look before you write
Report in two lines what already exists: .claude/memory/MEMORY.md, context/handoffs/,
knowledge/, projects/, an existing documentation home (docs/, doc/, documentation/),
.claude/settings.json, .gitignore, and whether this repo already holds work of its own —
code, or documents other than a bare README (a real project) — or is effectively empty (a fresh
memory workspace). Being a git repo decides nothing; content does. Everything after this is a proposal the user
confirms once, not a sequence of prompts.
Step 1 — the shared memory layers
These four are shared across every project in the repo. Create only what is missing, copying
from ${CLAUDE_PLUGIN_ROOT}/templates/:
| Path | From | Purpose |
|---|---|---|
.claude/memory/MEMORY.md |
templates/MEMORY-TEMPLATE.md |
the hot cache the hook injects every session |
context/handoffs/HANDOFF-TEMPLATE.md |
templates/HANDOFF-TEMPLATE.md |
the per-session note format |
knowledge/index.md |
templates/workspace/knowledge-index.md |
the catalog of deep memory |
knowledge/concepts/.gitkeep |
— | where promoted patterns land |
.claude/state/.gitkeep |
— | hook bookkeeping (gitignored) |
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.
- yesterday First seen · 202 lines · 93 tokens per session scan D 9d3639499ca1
setup is a skill published in the GitHub repository awrshift/agent-memory-kit (31 stars, last pushed yesterday), licensed MIT. It adds 93 tokens to every session and 2,905 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it D with 2 findings (reads agent configuration directories, recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
kayba-stage-5-action-plan
Triage each insight into discard/code-fix/prompt-fix and produce a prioritized action plan with specific recommendations. Trigger when the user says "run stage 5", "make action plan", "triage skills", or when invoked by the kayba-pipeline orchestrator. Requires eval outputs from stages 1-4.
kayba-stage-2-domain-context
Gather domain context about the repository and agent — system prompt, tool definitions, domain docs, and behavior patterns from traces. Trigger when the user says "run stage 2", "gather context", "domain context", or when invoked by the kayba-pipeline orchestrator.
kayba-stage-1-api-analysis
Fetch pre-computed insights from the Kayba API and build a structured summary. Does NOT upload traces or trigger generation — analysis is assumed to already exist. Trigger when the user says "run stage 1", "get insights", "fetch skills", "kayba analyze", or when invoked by the kayba-pipeline orchestrator. Requires the…
with-frontmatter
Help an agent inspect a failed trace run, identify likely failure layers, and produce a short audit note.
minimal
Help an agent inspect a failed trace run, identify likely failure layers, and produce a short audit note.
mnemon
Persistent memory CLI for LLM agents. Store facts, recall past knowledge, link related memories, manage lifecycle.