Tree/graph-based persistent context store with surgical recall. Exposes ctx-tree.read, ctx-tree.grep, ctx-tree.compose, ctx-tree.search, ctx-tree.neighbors for budget-bounded recall.
Use when navigating an unfamiliar codebase, tracing call chains, finding related code, building context for a complex change, or recalling prior session work. Also use when the task involves reading multiple related files, searching across a codebase, or fetching web content that should be stored for later recall.
Use when starting work in a familiar codebase, recalling prior context or decisions, reading code files, searching for symbols or patterns, or building token-budget context for a complex task. Also activates on session start to surface prior session captures.
Use ctx-tree MCP tools to reduce token usage and context rot for any task involving file reads, search, or recall
Admin access level
Server config contains admin-level keywords
Executes bash commands
Hook triggers when Bash tool is used
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
ctx-tree intercepts every Claude Code tool call — native and MCP — and routes content through a persistent SQLite graph. Claude gets compact node references instead of raw data. 95–99% context reduction. Knowledge accumulates across sessions.
Your Claude session is doing real work — reading source files, grepping for symbols, fetching docs, spawning agents. And every single one of those tool calls is dumping raw data straight into the context window.
By the time you're 60% through a complex task, the window is stuffed with file contents that already answered their question, grep output nobody needs anymore, and a web page from two subtasks ago. Claude starts forgetting the beginning. You lose the thread. The session dies before the work is done.
That's context rot. Every developer using Claude Code hits it. ctx-tree aims to eliminate it.
Every tool call — native and MCP — is intercepted by a hook, the result is stored in a persistent SQLite property graph, and Claude gets back a compact nodeId reference instead of raw bytes. The same file read next week costs zero tokens. It's already in the graph.
| ❌ Without ctx-tree | ✅ With ctx-tree |
|---|---|
|
|
| Operation | Without | With | Saved |
|---|---|---|---|
| Read file | ~4,200 tok | ~60 tok | 98.6% |
| Grep (8 files) | ~8,400 tok | ~160 tok | 98.1% |
| WebFetch | ~11,000 tok | ~110 tok | 99.0% |
| MCP tool | ~3,600 tok | ~70 tok | 98.1% |
# Add the marketplace — one-time global setup
/plugin marketplace add joeblackwaslike/agent-marketplace
# Install ctx-tree — MCP server, all 9 hooks, skills configured automatically
/plugin install ctx-tree@agent-marketplace
That's it. Start a new Claude Code session. Every tool call is already being intercepted.
macOS arm64 or Linux x64/arm64 · Bun ≥1.1 · rg ≥13
brew install bun ripgrep # macOS
curl -fsSL https://bun.sh/install | bash && apt install ripgrep # Linux
98–99% context reduction per operation. Every read, search, and fetch that used to cost thousands of tokens now costs tens. Operations you've already run cost nothing — the graph remembers.
Zero configuration. Total interception. Ten hooks fire automatically across every native Claude Code tool and every MCP tool you have installed. Nothing slips through. No per-project setup. No flags to flip.
Knowledge that outlasts the session. Prior reads, searches, and web fetches are available next week via ctx_tree_search and ctx_tree_compose. The graph grows with every session. The context stays lean.
npx claudepluginhub joeblackwaslike/agent-marketplace --plugin ctx-treeMake every Claude Code session discoverable by what was done, asked, and questioned.
Intercepts /compact and generates a structured session handoff instead of lossy compaction
Sandboxed code execution MCP server — keep intermediate results out of the context window
Scaffold and maintain production-ready TypeScript projects — the cookiecutter-uv equivalent for the TypeScript ecosystem, sibling of spinup-py
Joe Black's custom skills for AI coding assistants — agentic development, plugin development, and best practices for Claude Code, Codex CLI, Gemini CLI, and Antigravity CLI.
Memory compression system for Claude Code - persist context across sessions
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Streamline people operations — recruiting, onboarding, performance reviews, compensation analysis, and policy guidance. Maintain compliance and keep your team running smoothly.
Write feature specs, plan roadmaps, and synthesize user research faster. Keep stakeholders updated and stay ahead of the competitive landscape.