1It refuses your project
You drop in 40 files and the model truncates, or apologises about its context window, or quietly ignores the second half. You start deleting files to make it fit — and you are now guessing which ones matter.
Free · runs entirely in your browser · no account
ContextBridge reads your project with tree-sitter — a real source-code parser, not regex, not guesswork — and turns it into a token-budgeted Markdown map: every symbol, signature, line range and dependency edge. Then you drop that one file into any AI chat and it finally understands your architecture.
Nothing is uploaded. The analysis runs on your machine.
Everyone has hit all three. They have different causes, which is why "just paste more" never fixes it.
You drop in 40 files and the model truncates, or apologises about its context window, or quietly ignores the second half. You start deleting files to make it fit — and you are now guessing which ones matter.
You asked about refunds and it rewrote your auth middleware. A flat pile of files carries no relationship information, so the model cannot tell which file is load-bearing and which is a leaf.
The worst one, because it reads confidently. Ask a model to summarise your code and it will describe behaviour it never saw. Then that summary becomes the context for your next question, and the error compounds.
ContextBridge fixes all three by shipping structure instead of prose. A signature, a line range and an import edge are facts. The model is told explicitly what it does not know, and told to ask rather than assume.
Functions with parameters, classes with methods, exports, HTTP endpoints, SQL tables, call graphs — extracted from a real AST, with line ranges that are exact. Nothing is paraphrased, so nothing is invented.
Pick a token budget from 8k to 250k. The generator fits the most relevant files inside it, reports its own size as a verified number, and lists exactly what it left out — so neither you nor the model has to guess.
Type what you want to ask and the ranking pulls in the files that match, plus one hop along the import graph, because a question about a handler is nearly always also about its service.
There is no server to trust. Parsing runs as WebAssembly in your tab; the only network requests are for the app itself and the language grammars. Enforced by a Content-Security-Policy that allows no third-party origin at all.
You keep using your own ChatGPT, Gemini or Claude subscription. ContextBridge never calls a model API, so there is no per-token bill and no key to leak.
TypeScript, JavaScript, Python, Go, Rust, Java, C, C++, C#, Ruby, PHP, Kotlin, Scala, Swift and Dart — plus Markdown, SQL, Dockerfiles, protobuf, GraphQL and Terraform as first-class context.
Four steps, about ten seconds, and your source code is not one of the things that moves.
Pick a directory, drop one in, or upload a .zip. node_modules, build output, lockfiles and binaries are filtered out automatically, and every skipped path is listed with its reason.
tree-sitter compiles to WebAssembly and runs in your tab. A 20-file project takes about 300 ms; a few thousand files takes a few seconds, with a progress bar that actually moves.
Symbols, layers, entry points, the most-depended-on files, and the import and call graph — then it fits the most relevant slice inside your token budget.
Save it to your Downloads folder, share it to a mobile app, or copy the Markdown and paste. Then ask your question in the AI chat you already pay for.
The output is plain Markdown, so nothing here is an integration and nothing can break. These are the targets we test against and write instructions for.
Drop the file in, or paste it. Every one of these accepts a Markdown attachment or pasted text.
Save the map into your repo as CONTEXT.md and any editor or AI assistant that reads the workspace picks it up.
Commit the wiki to the repo. An agent that can read files gets your architecture for free, on every run, with no context-window negotiation.
Something missing? The artefact is a Markdown file. If a tool can read a file, it can read this. 29 destinations listed · 12 flows tested by us
Free
Everything. Unlimited analyses, all 15 languages, all three artefacts, no watermark, no account.
There is no paid tier and no plan to add one for the core product. ContextBridge is an independent, solo-maintained project — free to use, and kept alive by the voluntary support of the people it helps.
Ads are disabled by default and will only ever appear if you opt in, because an ad script is a tracker and this product's whole promise is that nothing leaves your machine. If we ever turn them on, the opt-in is explicit, the opt-out is one click and permanent, and the privacy policy changes first.
Analysis is free but not unlimited: 30 per hour and 100 per day, enforced at the edge. This keeps the tool fast and available for everyone — it stops scripts from hammering it, not people from using it.
Voluntary support links are the honest way to fund this. They add no script to the page and no tracking to you.
No. There is no upload endpoint and no backend that could receive one. The folder is read through your browser's File System Access API and parsed by tree-sitter compiled to WebAssembly, in your tab. The only network requests the page makes are for its own JavaScript, CSS and the language grammars. You can verify this in DevTools → Network: filter by anything that is not this domain and the list is empty.
Yes — the full tool, every feature, no account and no paid tier. It is an independent project, designed, built and maintained by one person who wanted AI chats to finally understand real codebases. If it saves you an afternoon, supporting the project is what keeps it developed and free for everyone.
For one or two files, do that — it is faster. This is for when the answer depends on how several files relate: which handler calls which service, what a change would ripple into, where the entry points are. A flat paste carries no relationship information, and models fill that gap by guessing.
A summary is prose written by a model that may not have seen the code. This is structure extracted from a real parse tree. Every line range comes from the AST, so it is either right or the file changed. The trade-off is honest: you get exact symbols and no descriptions, and the artefact tells the model that function bodies are absent unless a snippet is included.
Fifteen: TypeScript, TSX, JavaScript, Python, Go, Rust, Java, C, C++, C#, Ruby, PHP, Kotlin, Scala, Swift and Dart. TypeScript, JavaScript, Python and Go load by default; the rest are one click, fetched on demand. Markdown, SQL, Dockerfiles, protobuf, GraphQL, Terraform, Makefiles, JSON, TOML and shell scripts are parsed too.
Up to 4000 files and 512 KB per file. That cap is a responsiveness decision, not a technical one — analysis runs on the main thread today, so a 50,000-file monorepo would lock up your tab. Point it at the package you care about instead.
File paths, symbol names, parameter lists, line ranges, layer assignments, import and call edges, and — only if you tick "include source" — verbatim code for the top few files. It does not contain any description, opinion or guess about what your code does.
That is your call, and it matters. The map contains real paths and symbol names, and may include string literals inside snippets. Do not send it anywhere you would not send the code itself. A secret-redaction pass is the highest-priority item on the roadmap; until then, treat the artefact as sensitive.
No cookies, no analytics, no advertising identifiers. Rate limiting uses your IP address at Cloudflare's edge, exactly as every site behind Cloudflare does, and counters reset automatically. See the privacy policy for the specifics, including what we do not store.
Yes. The artefact is derived from your own code and belongs to you. The tool itself is MIT licensed. There is no attribution requirement and no restriction on what you do with the output.
Not yet, but it is close: the app is a static bundle and the grammars are immutable-cached, so after one visit most of it is already local. A service worker to make it fully offline is on the roadmap.
Chrome, Edge, Opera and other Chromium browsers get the full experience including the native folder picker and saving straight to a folder. Firefox and Safari work with the file-input picker and download/copy export. Everything needs WebAssembly, which is every browser since 2017.
On the same device, yes: sessions are stored in your browser's IndexedDB — structure only, never file contents — and the app offers to resume the most recent ones, with a Forget button beside each. Across devices, optionally: "Continue on another device" encrypts the session on your machine with AES-256-GCM, stores only the ciphertext for up to 14 days, and puts the decryption key in the part of the link your browser never sends to any server. We cannot read it; anyone you send the link to can, so send it carefully. Use neither and nothing persists, because nothing is uploaded by default.
ContextBridge reads your project with tree-sitter — a real source-code parser, not regex, not guesswork — and turns it into a token-budgeted Markdown map: every symbol, signature, line range and dependency edge. Then you drop that one file into any AI chat and it finally understands your architecture.
Nothing is uploaded. The analysis runs on your machine.