Expand description
codescout: high-performance coding agent MCP server.
Provides IDE-grade code intelligence to LLMs via the Model Context Protocol.
Modules§
- agent
- Central orchestrator: manages projects, tool registry, and shared state.
- ast
- AST engine: offline, in-process code parsing via tree-sitter.
- cli
- CLI dispatch layer for
codescout artifact*subcommands. - config
- embed
- Embedding utilities used by the retrieval stack pipeline.
- fs
- Path resolution, glob expansion, and LSP-client acquisition.
- git
- Git integration using
git2. - hardware
- Hardware probes for onboarding: detects CPU/RAM/GPU and local Ollama availability, then maps those facts to a ranked list of embedding model options. Pure probing — no tool surface.
- legibility
- Legibility scan engine — ranks refactor candidates from usage.db friction and the AST symbol index. Pure: (db conn, project root) -> ranked candidates. Phase 2a of docs/superpowers/specs/2026-06-13-dzo-friction-probes-design.md.
- librarian
- librarian — workspace artifact registry embedded in codescout.
- library
- logging
- lsp
- LSP client layer: manages language server processes and exposes a unified async interface for symbol operations.
- mcp_
resources - MCP resource providers — handlers for
resources/listandresources/read. - memory
- Markdown-based persistent memory store (mirrors Serena’s memory system).
- migrate
- One-shot migration of legacy sqlite-vec memories into Qdrant.
- peer
- Peer delegation: run another codescout instance’s read tools over a per-workspace Unix socket. Phase 1 = synchronous remote tools.
- platform
- Platform abstraction layer.
- prompts
- Prompt templates for LLM guidance.
- retrieval
- server
- MCP server — bridges our
Toolregistry to rmcp’sServerHandler. - socket_
discovery - Per-user socket-path discovery, shared by the LSP mux (
lsp::mux) and the peer-delegation server (peer). Transport-neutral: knows about per-user runtime directories and workspace hashing, nothing about LSP or peers. - sqlite_
vec_ ext - Process-global registration of the statically-linked
sqlite-vec(vec0) extension as a SQLite auto-extension. Once registered, every rusqliteConnectionopened afterwards hasvec0available. - symbol
- Symbol-level provider: LSP/AST lookup, classification, and text-edit
application. Lifted out of
src/tools/symbol/during refactor Phase 6.1 so tool files stay thin adapters over domain logic. - tools
- Tool trait and registry.
- usage
- util
- workspace
Functions§
- install_
default_ crypto_ provider - Install rustls’ ring crypto provider as the default. Idempotent — safe to
call from multiple entry points (binary
main, integration tests, library users). Required because reqwest usesrustls-no-providerfeature: callers must install a provider before the first TLS handshake.