What you unlock in Claude Code
Automatic context per turn
A prompt-submit hook runs a discover call on every user message and threads the result into the agent’s context. The agent sees relevant project knowledge without you having to remember to ask for it.
Context window stays lean
Exploratory turns stay under ~1 KB of menu text. Detail only materializes when the agent commits to a specific item.
No duplicate retrieval
The extension tracks what the agent has already seen in this conversation and skips re-surfacing it. Follow-up turns reach deeper, not sideways.
Agent-driven depth
The agent decides when to read structure vs. when to pull full prose. You get real signal-per-token discipline on long coding sessions.
What you see on every turn
The extension renders the discovered context as an ontology graph — a live ASCII tree of the structural neighborhood around your question, drawn from your own codebase and notes. This is the Copass differentiator: you’re not looking at a flat list of chunks, you’re looking at how the knowledge connects.Expanding a branch with interpret
The tree is the menu. Pick any branch — or a set of branches — and call interpret to get a grounded brief on exactly that slice of the graph. The agent does this automatically; you can also call it yourself from the CLI.
interpret call, pinning the brief to exactly the combination it wants to reason about:
Install
Set up a project
From a directory you want the agent to know about:
setup creates your sandbox and project. index ingests the current directory into the knowledge graph.Register the MCP server in Claude Code
discover, interpret, and search tools appear in the agent’s toolbox.Where this shines
Long coding sessions
The retrieval layer doesn’t fill the window with sludge as the conversation grows. Turn 20 stays as sharp as turn 1.
Codebases you don't fully remember
Menu-first retrieval lets the agent navigate structure before committing to prose. Great for orienting inside unfamiliar code.
Cost-aware agents
Discover is cheap enough to run on every turn. Interpret and search are opt-in. Budget per turn as you like.
Multi-client setups
The same MCP server works in Cursor, Cline, and anything else that speaks MCP. One sandbox, many clients.
FAQ
Do I need the hook?
Do I need the hook?
No. Without it, the
discover, interpret, and search tools are still available and the agent can call them explicitly. The hook is a convenience that makes discover happen automatically every turn.What happens if the agent already has the answer in its window?
What happens if the agent already has the answer in its window?
The extension sees that and won’t re-surface it. Discover returns the next layer of relevant context rather than repeating what the agent has already read. See Progressive Disclosure → The window has memory.
Does this work with Cursor / Cline / other MCP clients?
Does this work with Cursor / Cline / other MCP clients?
Yes. The MCP server is client-agnostic — any MCP-speaking agent gets the same three tools.
Can I disable the hook per-project?
Can I disable the hook per-project?
Yes. The hook lives in
.olane/hooks/ and runs only when the working directory matches a Copass-registered project. Remove the hook file or run copass setup --disable-hook to turn it off.Does it work offline?
Does it work offline?
The CLI needs network access to hit the Copass API. Local indexing state and refs are cached, but retrieval is a live call.
Next steps
- Progressive Disclosure — the first-principles argument for why this shape exists.
- MCP Server — the transport Claude Code uses to talk to Copass.
- Window-Aware Retrieval — the mechanism that keeps context lean across turns.

