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/knitli/toolshed/ctx-discovergit clone --depth 1 https://github.com/knitli/toolshedWhat 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.00012 | $0.00656 |
| Opus 5 | $0.00006 | $0.00328 |
| Sonnet 5 | $0.00002 | $0.00131 |
| Haiku 4.5 | $0.00001 | $0.00066 |
Grade A, and why
ctx-discover 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 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.
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 — 42 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/ctx:discover — Context File Inventory
Scan this repository and produce a complete inventory of AI context files across all tool ecosystems.
Arguments
$ARGUMENTS
- No arguments: discover all context files across all ecosystems.
- Ecosystem names (e.g.,
/ctx:discover cursor serena): restrict scanning to those ecosystems only. - Directory paths (e.g.,
/ctx:discover .claude/ .serena/): scan only those directories.
Instructions
Search every location listed in the plugin's authoritative ecosystem inventory. If the user provided arguments above, restrict the scan to the specified ecosystems or directories. For each file found, record its path, which tool ecosystem it belongs to, its type (memory, config, planning, or output), file size, and last-modified date.
Locations to scan
The authoritative list of known ecosystems, root files, nested memory files, tool directories, config files, and ignore directories lives in ${CLAUDE_PLUGIN_ROOT}/data/context-files.ini. Read that file first — it is the single source of truth. Any file, directory, or glob listed there is in scope; anything not listed is not. When adding support for a new ecosystem, add it to the INI, not here.
Briefly, the INI covers ~15 ecosystems including Claude Code, universal AGENTS.md, Gemini, OpenAI Codex, Cursor, Windsurf, Continue, Roo/Cline, Crush, Aider, Serena, spec-kit, GitHub agents/skills, VS Code, and planning/output directories (claudedocs/, specs/, plans/, etc.). The [ignore] section lists directories the scanner must not descend into (.git, node_modules, .venv, build outputs). The [heuristics] section lists standard ALL_CAPS markdown filenames to exclude from heuristic detection.
Heuristic detection (not covered by the INI's exact-match entries): after reading the INI and collecting its listed files, also scan for:
- Markdown files in the repo root with ALL_CAPS names that don't match the
allcaps_excludelist in[heuristics]. These are often context files in disguise. - Symlinks between any context files (e.g.,
GEMINI.md → CLAUDE.md). - Files in
docs/that appear AI-agent-targeted (phrases like "project overview", "when working with this repo", "assistant instructions") rather than user-facing.
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 · 42 lines · 12 tokens per session scan A 2814f7869656
ctx-discover is a command published in the GitHub repository knitli/toolshed (1 stars, last pushed 4mo ago), licensed MIT. It adds 12 tokens to every session and 656 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
frappe-doctype-design
Handle this as Frappe DocType design work.
frappe-builder
Treat the task as Frappe Builder or website work.
frappe-fullstack
Act as a Frappe full-stack specialist.
frappe-backend
Treat the task as Frappe backend work.
frappe-crm
Treat the task as Frappe CRM work.
frappe-customization
Treat the task as Frappe customization-surface work.