Skip to content

v0.2.0

Choose a tag to compare

@nrupala nrupala released this 05 Oct 18:31
· 170 commits to main since this release
a4b5e7f

codetopo v0.2.0 — release notes

First release. v0.2.0 ships Phase 1 (engine + CLI), Phase 2 (API + MCP), and Phase 3 (ACP agent) together.

v0.2.0 — See your codebase the way an agent sees it

codetopo is a pure, domain-blind code-visualization engine written in Rust. It parses source code with tree-sitter extractors, builds a queryable model of the codebase (symbols, relationships, structure), and serves it headless — through a CLI, an HTTP API, an MCP server, and an ACP agent — so both humans and AI agents can explore code structurally instead of grepping through it.

What's in this release

Phase 1 — Engine + CLI

  • codetopo-core: workspace model — the codebase as a queryable graph of nodes and edges
  • codetopo-extract: tree-sitter extractors that turn source files into the core model
  • codetopo-store: SQLite-backed store with a hash-chained audit log, so every write is tamper-evident
  • codetopo (CLI): headless commands to index a codebase and query it — descendants, ancestors, path, snapshot — built for scripts, CI, and agent tooling

Phase 2 — API + MCP

  • codetopo-server: axum HTTP API, 8 endpoints under /v1, Bearer-token auth, JSONL usage metering
  • codetopo-mcp: stdio MCP server exposing the engine as 8 tools, so any MCP-capable agent can query a codebase directly
  • schemas/: OpenAPI 3.1 (openapi.yaml) and MCP tool definitions (mcp-tools.json) for the full surface

Phase 3 — ACP agent

  • codetopo-acp: stdio agent speaking the Agent Client Protocol — conversational sessions (initialize → session/new → session/prompt) for editors and clients that talk to agents instead of calling tools
  • Deterministic intent routing (descendants / ancestors / blast-radius / path / stats / snapshot / verify) to the same core queries — no LLM, no network, no file writes; edit requests get an honest read-only refusal

Install

From crates.io is not wired up yet — install from the repo:

cargo install --git https://github.com/nrupala/codetopo

This builds four binaries:

Binary What it does
codetopo Headless CLI — index a codebase, query descendants/ancestors/paths, take snapshots
codetopo-server HTTP API server (/v1, Bearer auth, JSONL metering)
codetopo-mcp stdio MCP server — 8 tools for agent code exploration
codetopo-acp stdio ACP agent — conversational code-structure sessions for editors

Build from source instead:

git clone https://github.com/nrupala/codetopo
cd codetopo
cargo build --release
# binaries land in target/release/

Requires a Rust toolchain (stable) and a C compiler (tree-sitter grammars). No runtime dependencies — one static-ish binary each.

License

  • Engine and servers (codetopo-core, extract, store, CLI, server, MCP, ACP): AGPL-3.0-or-later — see LICENSES/AGPL-3.0.txt
  • Schemas (schemas/, OpenAPI + MCP definitions): Apache-2.0 — see LICENSES/Apache-2.0.txt

Owned by Nrupal Akolkar · Built with Muse by Meta.