Skip to main content

llmcc

llmcc brings multi-depth architecture graphs for code understanding and generation.

Our goal is to build a multi-depth, tree-like context / architecture view of a codebase, so a coding agent can walk up (zoom out) for structure and intent, then walk down (zoom in) to the exact crates/modules/files/symbols it needs—getting a highly comprehensive understanding of any codebase (any programming language).

Supported Languages

Language Status Notes
Rust ✅ Supported Full support for crates, modules, and symbols
TypeScript ✅ Supported Includes TSX, supports ES modules
C++ 🔜 Planned Coming soon
Python 🔜 Planned Coming soon

Why multi-depth graphs?

People (and coding agents) need to understand systems from different dimensions. Sometimes you need the high-level architecture to see boundaries, ownership, and how subsystems connect; other times you need the low-level implementation details to make a safe, precise change. llmcc provides multiple depths so you can choose the right “distance” from the code for the task.

Depth Perspective Best for
0 Project multi-workspace / repo-to-repo relationships
1 Library/Crate ownership boundaries, public API flow
2 Module subsystem structure, refactor planning
3 File + symbol implementation details, edit planning

Walkthrough: Codex (midterm size multi-crate rust project)

This repo includes many examples under sample. Download and open them in browser for the best viewing experience.

Depth 1: crate graph

Codex crate graph (depth 1)

Depth 2: module graph

Codex module graph (depth 2)

Depth 3: file + symbol graph

Codex file and symbol graph (depth 3)

Here's a small portion of the graph at depth 3, showing the core abstraction layer for prompt handling in Codex. Developers and AI agents can quickly grasp the architecture by examining this view.

codex core logic

Performance

llmcc is designed to be very fast, and we will try to make it faster.

The repo contains benchmark for many famous project output here: sample/benchmark_results_16.md.

Excerpt (PageRank timing, depth=3, top-200):

Project Files LoC Total
databend 3130 627K 2.53s
ruff 1661 418K 1.73s
codex 617 224K 0.46s

Installation

npm / npx (Recommended)

The easiest way to use llmcc is via npm. No build required:

# Run directly without installing
npx llmcc-cli --help

# Or install globally
npm install -g llmcc-cli
llmcc --help

Cargo (Rust)

cargo install llmcc

From Source

git clone https://github.com/allenanswerzq/llmcc.git
cd llmcc
cargo build --release
./target/release/llmcc --help

CLI: generate graphs

Generate a crate-level graph for Codex (DOT to stdout):

llmcc \
	-d sample/repos/codex/codex-rs \
	--graph \
	--depth 1

Generate a PageRank-filtered file+symbol graph (write to a file):

llmcc \
	-d sample/repos/codex/codex-rs \
	--graph \
	--depth 3 \
	--pagerank-top-k 200 \
	-o /tmp/codex_depth3_pagerank.dot

Render DOT to SVG (requires Graphviz):

dot -Tsvg /tmp/codex_depth3_pagerank.dot -o /tmp/codex_depth3_pagerank.svg

For generating sample graphs:

just gen rust

Metadata

Release files for llmcc 0.2.65

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llmcc 0.2.65
File Size Uploaded
llmcc-0.2.65.tar.gz 192.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for llmcc 0.2.65
File Interpreter ABI Platform
llmcc-0.2.65-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details
llmcc-0.2.65-cp38-abi3-manylinux_2_34_x86_64.whl CPython 3.8 abi3 Linux glibc 2.34+ x86-64 Details
llmcc-0.2.65-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details

Total release size: 4.0 MB

Release files / llmcc-0.2.65.tar.gz

Download URL llmcc-0.2.65.tar.gz
Size 192.7 kB
Tags Source
SHA-256 checksum
How to use checksums
453aed43fc96c5715ea951781d2cd99a94e72cca4fb689e3c7eb2168671e9fcc
BLAKE2b-256 checksum
How to use checksums
b99e438028a532056bf246a2947a002d9059334c8e486ef6d202c8df820bf487
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / llmcc-0.2.65-cp38-abi3-win_amd64.whl

Download URL llmcc-0.2.65-cp38-abi3-win_amd64.whl
Size 1.2 MB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
b9c86d576e169f295a40a60cbfcbc12ed67a5edd40bf2683b92f4d6c52ca1b1c
BLAKE2b-256 checksum
How to use checksums
7b814a0385361bde0bd050a3bafe09d0f364fb4bcde6bb1a1c64eec26961a572
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / llmcc-0.2.65-cp38-abi3-manylinux_2_34_x86_64.whl

Download URL llmcc-0.2.65-cp38-abi3-manylinux_2_34_x86_64.whl
Size 1.4 MB
Tags CPython 3.8 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
9dbe4728ab0da4716735692424b167d1311509f6fccb46de7379b27bc8aa5c11
BLAKE2b-256 checksum
How to use checksums
492656db70098c0e2e5c5991089c328ff1e4f5f7f5de8f2aa49144b2aa6ee803
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / llmcc-0.2.65-cp38-abi3-macosx_11_0_arm64.whl

Download URL llmcc-0.2.65-cp38-abi3-macosx_11_0_arm64.whl
Size 1.2 MB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6268940102b95969d039b1ddd79b87c610f842b1120e3aea22b017fff275dea7
BLAKE2b-256 checksum
How to use checksums
95594bab310d822163c60f1b0fbb9f998c188136fd04dbc043ab8c74b32df2c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page