A new top-level `extension/` package containing the SocratiCode VS Code extension. The same `.vsix` artefact ships to both VS Code Marketplace and Open VSX, which means it installs cleanly in Cursor, VSCodium, Gitpod, code-server, Eclipse Theia editors, Google Antigravity, and Particle Workbench in addition to stock VS Code. What it does: - Auto-registers the SocratiCode MCP server in VS Code's MCP host via `vscode.lm.registerMcpServerDefinitionProvider` (VS Code 1.99+). Copilot agent mode, Cline, Continue, Roo Code and any other MCP-aware client see SocratiCode's tools without the user editing any `.vscode/mcp.json`. - Forwards the user's `socraticode.env` setting to the engine subprocess unchanged. Power users point at an external Qdrant (`QDRANT_MODE=external` + `QDRANT_URL` + `QDRANT_API_KEY`), pick an embedding provider, or set any other engine knob exactly as documented in the engine README. - Activity Bar sidebar with "Indexed projects" tree view and welcome content. Discovers projects by listing graph artefacts the engine writes to `os.tmpdir()/socraticode-graph/`. - Webview panel for the interactive graph (`graphPanel.ts`). Reads the engine's self-contained HTML, wraps it with a tight CSP, injects a bridge script so node-clicks can `postMessage` back to the extension and open files in the editor. - Status-bar item showing "SocratiCode" with click-to-open-sidebar. Honours the `socraticode.statusBar` setting. - Two-step getting-started walkthrough (index your project, try search and the interactive graph). Shown automatically on first install; re-openable via the command palette. - Command palette commands: index workspace, open graph, refresh projects, open walkthrough, show output. - Output channel for engine logs. Build: esbuild bundles `src/extension.ts` to `dist/extension.js` (CJS, node18, sourcemap), `vscode` external. Biome lint and `tsc` strict mode both clean. Manifest smoke tests via Node's built-in test runner catch package.json regressions before activation. Packaged size: ~215 KB `.vsix`. Versioning: extension version tracks the engine version (currently `1.7.2`). Patch drift is allowed for extension-only hotfixes. The `scripts/bump-plugin-versions.mjs` hook from the previous commit already includes `extension/package.json` in its bump list, so future engine releases keep the extension in lockstep automatically.
SocratiCode for VS Code (and Cursor, VSCodium, Gitpod, code-server, Antigravity, Theia, ...)
Codebase context engine for AI assistants. SocratiCode indexes your repositories: code, dependency and call graphs, database schemas, API specs, architecture docs. It hands that understanding to whichever AI assistant you use, so the same understanding survives every tool switch.
This extension auto-registers the SocratiCode MCP server in VS Code's MCP
host so it works out of the box with Copilot agent mode, Cline,
Continue, Roo Code, and any other MCP-compatible chat or agent
extension. No mcp.json editing required.
What it does
- Hybrid search (semantic + BM25, RRF-fused) across your codebase.
- File-level dependency graphs across 18+ languages with circular- dependency detection.
- Symbol-level call graph and impact analysis: answers "what breaks if I change function X?" before the AI changes it.
- Cross-repo search across multiple linked projects.
- Interactive graph viewer with blast-radius overlay, search, and PNG export. Opens directly inside the editor as a webview panel.
- Context artefacts: index database schemas, API specs and architecture docs alongside code. The AI sees the schema your developer team did, not what it guessed from filenames.
Requirements
- VS Code 1.99 or newer (for native MCP support)
- Node.js 18+ on PATH (for
npxto launch the engine) - Docker Desktop running (the engine uses Docker for Qdrant + Ollama
containers; alternatively you can point at an external Qdrant via
the
socraticode.envsetting).
Quick start
- Install the extension.
- The MCP server registers automatically. Ask Copilot agent mode (or any MCP-aware assistant) a question about your codebase.
- Open the SocratiCode sidebar (Activity Bar → SocratiCode icon) and click Index this workspace to run the first index.
- Open the interactive graph from the Command Palette:
SocratiCode: Open interactive graph.
A walkthrough is shown on first install. Re-open it any time with
SocratiCode: Open getting-started walkthrough.
Commands
All commands are also available under SocratiCode: in the Command Palette.
- Index current workspace: kick off a one-time index.
- Open interactive graph: render the dependency / call graph as an in-editor webview.
- Refresh indexed projects: reload the sidebar tree.
- Open getting-started walkthrough: replay the onboarding.
- Show output / logs: open the SocratiCode output channel.
Settings
| Setting | Default | Description |
|---|---|---|
socraticode.command |
"npx" |
Engine launcher. |
socraticode.args |
["-y", "socraticode"] |
Args for the launcher. |
socraticode.env |
{} |
Environment variables forwarded to the engine. Use this for external Qdrant (QDRANT_MODE=external, QDRANT_URL, QDRANT_API_KEY), embedding provider (EMBEDDING_PROVIDER, OPENAI_API_KEY, GOOGLE_API_KEY), or any other engine setting documented in the engine README. |
socraticode.statusBar |
true |
Show the status-bar item. |
Privacy and data
- The engine indexes locally. Code never leaves your machine unless you
explicitly point it at an external service via
socraticode.env. - No telemetry from the extension.
Open source
The engine is open source under AGPL-3.0 and battle-tested across thousands of indexed repositories. That openness is your guarantee of transparency, security and engineering quality.
- Repository: https://github.com/giancarloerra/socraticode
- Issues / questions: https://github.com/giancarloerra/socraticode/issues
Troubleshooting
- "Cannot find Docker": install Docker Desktop from
https://docker.com/products/docker-desktop, or set
socraticode.envwithQDRANT_MODE=externalplusQDRANT_URLto point at an existing Qdrant. - MCP tools don't appear in Copilot agent mode: restart the chat
after install, or run
MCP: List Serversfrom the command palette and confirmSocratiCodeis listed and started. - First index is slow: the engine downloads Ollama models the first time. Subsequent runs are fast.
- See
SocratiCode: Show output / logsin the command palette for engine output.