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 commands/gazmagik/claude-memory-plugin/check-gotchasgit clone --depth 1 https://github.com/GaZmagik/claude-memory-pluginWrote 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/commands/gazmagik/claude-memory-plugin/check-gotchas)<a href="https://agentmods.dev/commands/gazmagik/claude-memory-plugin/check-gotchas"><img src="https://agentmods.dev/badge/commands/gazmagik/claude-memory-plugin/check-gotchas.svg" alt="Measured on agentmods" 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.00019 | $0.03609 |
| Opus 5 | $0.00010 | $0.01804 |
| Sonnet 5 | $0.00004 | $0.00722 |
| Haiku 4.5 | $0.00002 | $0.00361 |
Grade A, and why
check-gotchas 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 6d 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 — 501 lines — stays where its author put it; the contents beside it link to each section on GitHub.
User Input
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
Goal
Search the memory system for relevant gotchas, warnings, and learnings that apply to recent work. This is a proactive mistake-prevention check, not a git pre-commit hook.
By default, searches ALL accessible scopes (User → Project → Local) to ensure comprehensive gotcha coverage.
Execution Steps
1. Parse Arguments
Check for scope restriction:
--scope useror--scope global→ Search user scope only--scope project→ Search project scope only--scope local→ Search local scope only--scope enterprise→ Search enterprise scope only (for managed environments)- No
--scopespecified → Search ALL accessible scopes (recommended)
Note: --scope global is accepted as a legacy alias for --scope user.
Check for work scope (what to check):
allor--all→ Check all memories for gotchas (comprehensive review)staged→ Check only staged git changesrecent→ Check recent work (last commit, uncommitted changes){file-path}→ Check specific file or pattern{topic}→ Any other argument is treated as a topic to search for
If no arguments (default):
- Check recent work (uncommitted changes + last commit)
- If nothing recent, offer to check all gotchas
2. Determine Accessible Scopes
Check which scopes are accessible for searching:
# Check enterprise scope availability (for managed environments)
enterprise_enabled=$(memory config get scopes.enterprise.enabled 2>/dev/null | jq -r '.data // false')
# Check if in a git repo (for project/local scopes)
in_git_repo=$(git rev-parse --git-dir >/dev/null 2>&1 && echo "true" || echo "false")
Accessible scopes (in precedence order):
- User - always accessible
- Project - if
in_git_repois true - Local - if
in_git_repois true - Enterprise - if
enterprise_enabledis true (for managed environments)
3. Load Gotcha Prevention Checklist Hubs
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.
- 6d ago First seen · 501 lines · 19 tokens per session scan A 125867988c81
check-gotchas is a command published in the GitHub repository GaZmagik/claude-memory-plugin (6 stars, last pushed 6mo ago), licensed MIT. It adds 19 tokens to every session and 3,609 once invoked, about $0.0001 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-31.
Other commands, from other repositories
minutes-ideas
Surface recent voice memos and ideas captured from any device. Use when the user asks "what ideas did I have?", "what were my recent memos?", "what did I record while walking?", or wants to recall a captured thought.
learn
Force claude-smart to extract learnings from this session now.
memory-store
Store an insight, decision, or pattern to memory.
cc-memory
Configure persistent memory that survives across sessions using a layered approach: split rule files for always-loaded context, auto-memory for organic learning, and optional MCP-backed long-term memory for large codebases.
analyze-context
USE WHEN you want to analyze project context before starting work on a task. Calls context + recall, then synthesizes goals, decisions, gotchas, and relevant memories into a pre-task brief.
music-suno-prompt
Grounded Suno prompt synthesis from local knowledge corpus + persona canon + label canon. No vibes-prompting.