capsul

With capsul, your €20/month Claude and ChatGPT plan feels a lot bigger.

capsul sends Claude & Codex only what your task needs — a repo map plus the lines that match, not your whole repo. Fewer tokens per request means the plan you already pay for stretches much further.

$ npm i -g @penra/capsul

or brew install PENRA-CORP/tap/capsul

works withClaudeCodexOpenCode

Your repo goes in. Only the lines your task needs come out.

context sent to the model

13,837/ 13,837 tokens0.0% saved

Four moving parts, no magic.

The idea is simple: a model doesn't need your whole project to answer a question about one corner of it. capsul works out which corner, sends that, and keeps the total under a ceiling you control.

01

The map

First capsul writes down what your project contains — one line for each thing that exists, and where it lives. No bodies, no implementations. The model gets a table of contents instead of the whole book: enough to know where to look, for a fraction of what the files themselves would cost.

repo map1 339 tokens · 15 files
src/api/routes.ts
export function registerRoutes(app: App): void
function requireAuth(req: Request): Session | null
src/auth/session.ts
export async function createSession(userId: string)
export function verifyToken(token: string): Claims | null
src/db/users.ts
export async function findUserByEmail(email: string)
… 12 more files · bodies omitted
02

The lines that match

Then it goes and gets the code that actually relates to what you asked — the matching lines and the handful around them, so they still make sense. A question about login doesn't drag your billing along with it.

matched lines756 tokens · 7 chunks
add oauth to the api
src/auth/session.ts:38 const url = new URL(AUTH_ENDPOINT);
src/auth/session.ts:52 async function exchange(code: string) {
src/auth/session.ts:53 const res = await fetch(TOKEN_URL, {
src/api/routes.ts:19 app.post("/auth/callback", handler);
7 passages kept · 4 duplicates dropped
03

The ceiling

You set the ceiling. capsul fills it in order of usefulness — the map first, then any files you named, then the matches — and stops when it's full. Nothing spills over quietly: it prints exactly what your budget bought, so you can move it around.

budget2 119 / 8 000
repo map 1 339 tokens █████████████░░░░░░░
open files 0 tokens ░░░░░░░░░░░░░░░░░░░░
matched lines 756 tokens ███████░░░░░░░░░░░░░
your question 13 tokens ░░░░░░░░░░░░░░░░░░░░
──────────────────────────────────────────────
context sent 2 119 tokens (budget 8 000)
04

The receipt

Every run records what a normal setup would have sent next to what capsul actually sent. It's a plain file on your own disk, and capsul stats adds it up — so the saving is something you check, not something we claim.

~/.config/capsul/ledger.jsonl11 718 saved · 84.7%
{"ts":"2026-07-28T10:12:04Z",
"query":"add oauth to the api",
"tokens_baseline":13837,
"tokens_sent":2119,
"saved":11718,"pct":84.7,
"agent":"claude"}

/agent

One CLI. Three agents. The subscription you already have.

capsul doesn't ask for an API key to get started. It drives the agent CLI you're already signed into.

Claude

your Pro or Max plan

capsul drives the Claude CLI you're already signed into, so the subscription you pay for every month is what answers. No second bill, no API key to paste.

Codex

your ChatGPT plan

The same deal on the other side: your existing Codex sign-in does the work, with continuation, usage and reasoning effort reported back into capsul.

OpenCode

bring your own key

The third option, wired the same way — your own key, kept in your OS keychain rather than in a config file in the repo.

Same budget, same approval prompts, same ledger — whichever one answers.

Ten prompts free. Then €9.99 a month.

Try it on a real task before you decide anything. One price, no tiers to work out.

Free

€010 prompts
  • 10 prompts, no card
  • The full engine — map, matching, budget, ledger
  • Claude, Codex and OpenCode
Start free

Pro

unlimited
€9.99per month
  • Unlimited prompts
  • Everything in Free
  • Savings history across machines
Install capsul

Get more out of the plan you already pay for.

$ npm i -g @penra/capsul

or brew install PENRA-CORP/tap/capsul