The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Codebase Chat listing page.
Chat, search, and audit any repository - every answer cited [source: file:line].
Works inside Cursor, Claude, Windsurf, VS Code, Zed and any MCP client - or standalone in your terminal.
Website · MCP docs · Roadmap · Changelog · Contributing
One command. The wizard detects Cursor, Claude, Windsurf, VS Code, Zed, Gemini CLI, Kiro, Cline and Roo Code, asks how you want answers (host model or API key), writes the config - done. No JSON to edit, no API key required.

Real MCP session on a real 422-file codebase - codebase_health finds 324 circular deps, codebase_chat answers with [source: file:line] receipts · PR review (--diff + --watch) · CLI tour · MCP stdio · French mode
| In your IDE | In your terminal | Fully offline |
|---|---|---|
| 21 MCP tools inside Cursor, Claude, Windsurf & more - answers land where you code | npx codebase-chat - index, search, health, check. Drop --check --strict into CI | --no-llm deterministic reports + --ui dashboard - no model, no key, no cloud |
Every claim comes with a citation. Every metric is computed from your code. Your repo is never uploaded - the model only sees the excerpts that matter.
| Understand | Verify | Act |
|---|---|---|
chat · search · explain · intelligence | health · impact · check vs baseline · deep_audit (30 metrics) | refactor · tasks · fix · apply - dry-run, backups, protected paths |
--ui
The audit as a real app - dense IDE-style UI, not a webpage:
Ctrl+K - jump between views, build a prompt, export, toggle zen modez · view shortcuts 1–5 · / filters findings by text or severity.md / .html - all in clicksWhat a session actually returns - run on this repository:
codebase_health runs fully offline - deterministic, no LLM, same input → same score.
Every answer from codebase_chat arrives with receipts you can verify in seconds.
From an IDE: codebase_check / codebase_doctor MCP tools, or /codebase check in DeepSeek Harness.
| Paste into a chat | Hosted assistant | codebase-chat | |
|---|---|---|---|
| Sees your whole repo, not one file | ❌ | ✅ | ✅ |
[source: file:line] citations | ❌ | ~ | ✅ |
| Repo never uploaded - model sees only relevant excerpts | ❌ | ❌ | ✅ |
| Inside Claude / Cursor / Windsurf | ❌ | ~ | ✅ |
Fully offline - --no-llm report & --ui dashboard, zero model | ❌ | ❌ | ✅ |
| Free - no API key, no account | ~ | ❌ | ✅ |
Writes are safe by construction - dry-run · .dsh-backups/ before overwrite · protected paths · never outside the project.
Ten tools run fully deterministic - no model, no key, works offline: health, impact, check, doctor, ignore, fix, stats, history, baseline, deep_audit (9 sections, ~30 metrics: git churn, bus factor, secrets, deps, per-function complexity).
MCP server - manual config
Without DEEPSEEK_API_KEY / OPENAI_API_KEY the server runs promptOnly. Set either key for direct-LLM calls - see mcp/README.md.
CLI
DeepSeek Harness plugin
Then restart dsh web → http://127.0.0.1:3080 → Codebase Pro button.
From source
.codebase-chat.json - per-project settings| Key | Effect |
|---|---|
lang | Default prompt language (en/fr) - CLI, MCP tools, slash commands |
maxTokens | Context budget when the caller passes none |
ignoreDirs / ignoreFiles | Extra names skipped by indexing, codebase_health, file tree |
ignoreGlobs | Globs on project-relative paths - ** spans dirs, * one segment |
protectedPaths | Paths the apply pipeline can never patch |
| Variable | Default | Purpose |
|---|---|---|
CODEBASE_CACHE_DIR | OS cache dir | Where the index cache lives |
DSH_PROJECT_ALIASES | - | Extra name=path aliases (;-separated) |
DSH_PROTECTED_PATHS | built-in list | Extra paths that can never be patched |
DEEPSEEK_API_KEY / OPENAI_API_KEY | - | Direct-LLM mode only |
DEEPSEEK_BASE_URL / OPENAI_BASE_URL | https://api.deepseek.com/v1 | Custom endpoint |
CODEBASE_MODEL | deepseek-chat | Model for direct-LLM mode |
Point it at a folder of code. Ask questions like a human - "How does login work?", "What should I fix first?" - in French or English. Every answer cites the exact file and line it came from. Nothing is uploaded anywhere.
Pointez-le vers un dossier de code. Posez vos questions en langage clair. Chaque réponse cite le fichier et la ligne exacts. Rien n'est envoyé sur internet.
| Term | Meaning |
|---|---|
| MCP server | A plug format that lets AI assistants use extra tools. Install once - your IDE can "see" your code. |
| Prompt-only | The tool prepares the context; your existing AI writes the answer. No extra key, no extra cost. |
| Deterministic | Computed directly from your code - same input, same result, every time. |
Does it send my code to the cloud?
Indexing, retrieval, and prompt building all run on your machine. In prompt-only mode the server makes no network calls itself - the assembled context is read by your host model (cloud or local, your choice). For zero-network output end to end, use --no-llm: a deterministic report computed from your code only.
Do I need an API key?
No - three ways to get output: the host model (promptOnly, best quality - pipe it to a local model like Ollama for offline answers), a DeepSeek/OpenAI key (--call), or the deterministic report (--no-llm, no model at all). Inside DeepSeek Harness, the plugin uses your configured model.
Which languages are supported?
French and English via lang on every tool. Source-side, AST covers JS/TS, Python, Go, Rust, Java, C#, PHP - the rest is indexed line by line.
Is applying patches safe? Yes. Dry-run, backups before overwrite, protected paths, writes stay inside the project.
EADDRINUSE on port 3080?
Then restart dsh --profile web.
| Shipped | tree-sitter AST (7 languages), deterministic health score + --no-llm deep audit, --ui local dashboard (IDE-style, Ctrl+K palette, zen mode, bilingual, exports), check/fix/ignore/doctor verified workflow + baseline & CI gate, deep_audit MCP tool + ui:// resource, token/context stats, MCP setup wizard, .codebase-chat.json, --diff scoping, --watch mode |
| Next | GitHub Issues export from TASKS.md, prompt language packs (ES/DE/PT) |
| Planned | VS Code extension, HTTP/SSE transport, PR review mode |
| Exploring | multi-repo workspaces, shared team index cache, CI bot |
Full detail: ROADMAP.md
If this project helps you - star it on GitHub ⭐
Website ·
Issues ·
Support ·
Security
MIT License - built and maintained by shinzarou-eng