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/greppable/greppable-cc-plugin/memorygit clone --depth 1 https://github.com/greppable/greppable-cc-pluginWhat 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.00019 | $0.00716 |
| Opus 5 | $0.00010 | $0.00358 |
| Sonnet 5 | $0.00004 | $0.00143 |
| Haiku 4.5 | $0.00002 | $0.00072 |
Grade B, and why
memory scanned grade B with 1 finding 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.
project_val=$(grep -m1 '^memory:' .claude/greppable.local.md 2>/dev/null | awk '{print $2}') How it starts
The opening of the file, as written. The whole thing — 52 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/greppable:memory — Toggle Session Memory Extraction
Usage
/greppable:memory — show current status
/greppable:memory on — enable memory extraction
/greppable:memory off — disable memory extraction
Flow
- Read current config — check
.claude/greppable.local.md(project) and~/.claude/greppable.local.md(global) formemorykey. Use:
project_val=$(grep -m1 '^memory:' .claude/greppable.local.md 2>/dev/null | awk '{print $2}')
global_val=$(grep -m1 '^memory:' ~/.claude/greppable.local.md 2>/dev/null | awk '{print $2}')
val="${project_val:-$global_val}"
[[ "$val" == "true" ]] && echo "enabled" || echo "disabled"
-
If no argument (status only):
- Report: "Session memory extraction is currently enabled/disabled."
- If enabled, show where memories are written:
<gdl_root>/memory/active/ - If disabled, explain: "Run
/greppable:memory onto enable. When a new session starts, the previous session's transcript is processed into searchable .gdlm memory records."
-
If argument is
on:- Find the config file. Prefer project-scope (
.claude/greppable.local.md). If only global exists, use that. If neither exists, tell user to run/greppable:onboardfirst. - If
memory:key exists and value isfalse, changememory: false→memory: trueusing Edit tool. - If
memory:key exists and value is alreadytrue, confirm: "Memory extraction is already enabled." - If
memory:key doesn't exist, addmemory: trueon a new line afterdiscovery_auto_prompt:using Edit tool. - Confirm: "Memory extraction enabled. When your next session starts, the previous session will be processed into
.gdlmrecords. Restart Claude Code for changes to take effect."
- Find the config file. Prefer project-scope (
-
If argument is
off:- Same config detection as
on. - If
memory:key exists and value istrue, changememory: true→memory: falseusing Edit tool. - If
memory:key exists and value is alreadyfalse, confirm: "Memory extraction is already disabled." - If
memory:key doesn't exist, addmemory: falseon a new line afterdiscovery_auto_prompt:using Edit tool. - Confirm: "Memory extraction disabled. Session transcripts will no longer be processed. Restart Claude Code for changes to take effect."
- Same config detection as
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 · 52 lines · 19 tokens per session scan B f4ea584ada78
memory is a command published in the GitHub repository greppable/greppable-cc-plugin (3 stars, last pushed 4mo ago), licensed MIT. It adds 19 tokens to every session and 716 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
rb-ask
Ask a question about the current project's codebase via the repobrain knowledge hub. / 通过 repobrain 知识库询问当前项目代码。.
rb-refresh
Rebuild the repobrain project knowledge base after significant changes. / 在重要改动后重建 repobrain 项目知识库。.
rp-build-cli
Build with rp-cli context builder → chat → implement.
call-graph
Trace callers, callees, or paths using the call graph.
index
Index the codebase for semantic search.
search
Search codebase by meaning using semantic search.