Skip to main content

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

Project description

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

CLI: generate graphs

Build the binary:

cargo build --release

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

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

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

./target/release/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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llmcc-0.2.62.tar.gz (192.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

llmcc-0.2.62-cp38-abi3-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.8+Windows x86-64

llmcc-0.2.62-cp38-abi3-manylinux_2_34_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.34+ x86-64

llmcc-0.2.62-cp38-abi3-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

File details

Details for the file llmcc-0.2.62.tar.gz.

File metadata

  • Download URL: llmcc-0.2.62.tar.gz
  • Upload date:
  • Size: 192.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for llmcc-0.2.62.tar.gz
Algorithm Hash digest
SHA256 365734318ff4ce33fbae74c044147222d9a0faa985698200091437a24ec747d3
MD5 3f3833614b898f69b3982badce834ac1
BLAKE2b-256 932875886d20797a0d7daf711eb140ce4223ec674b4eeabeae8bdf4f52cfc3ed

See more details on using hashes here.

File details

Details for the file llmcc-0.2.62-cp38-abi3-win_amd64.whl.

File metadata

  • Download URL: llmcc-0.2.62-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.8+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for llmcc-0.2.62-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 fd79a40f4750b37be8faec1f2114e7d817601fad29157941b57933eddf816f2d
MD5 47c5cb01746100254e3f31de91270d53
BLAKE2b-256 84b8c35ca6356576500c22a0e6f0514e48d2305a92f54484b1d3edd667473e0c

See more details on using hashes here.

File details

Details for the file llmcc-0.2.62-cp38-abi3-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for llmcc-0.2.62-cp38-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 02dfe2ef4b577a71350a56fec544262a35a735102bcb7bf8a70e6653f834e813
MD5 62f3f0de70385e6289c4a15a29ee32c0
BLAKE2b-256 254657fb8e9aae56e34f00aaba8097d698a13be9d38cc48cc5ad13d654a830e2

See more details on using hashes here.

File details

Details for the file llmcc-0.2.62-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for llmcc-0.2.62-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5e385039a1dce8d023537ab655308485f05801c188b38388fec8aa9f836b1fc5
MD5 cfffcaef1e110257333e9e8234cf35dd
BLAKE2b-256 430db9d49434ab52b1dcd18b471e2e898b85f3007a9da4b0e7da11d133f0eb4a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page