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.52.tar.gz (181.0 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.52-cp38-abi3-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.8+Windows x86-64

llmcc-0.2.52-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.52-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.52.tar.gz.

File metadata

  • Download URL: llmcc-0.2.52.tar.gz
  • Upload date:
  • Size: 181.0 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.52.tar.gz
Algorithm Hash digest
SHA256 24a79bf5f465214180e4b5ab3a4a4ad8ca5cf11197b306577bc6e9b629218fd7
MD5 a2294f885a94d25bde40c36e0764df72
BLAKE2b-256 5f3552872392633773dae8777cd1c4b3e97b98a85487065c8c0025dac75e4d4e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: llmcc-0.2.52-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.52-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 bccb70dbebf745b1d16854db72e98c4be4b55d75b39dac36a34a079e832396ba
MD5 675ec061777d0e3c1a6a6b01f32e7945
BLAKE2b-256 3ea7e6fb6e9202485a6b4f08e42a4fbd8933d2293453919fe09212ba630f97c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for llmcc-0.2.52-cp38-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 398e2da8fd152253600743662cf0595638c70e74daf252eab8e68bc501d9e614
MD5 203d2a359b62deabf1304333f71b351d
BLAKE2b-256 0fd9039baf3c3517968342aeea4e401d7e4b628969b85efcecc34812d801b78f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for llmcc-0.2.52-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e9ba44a5d92353f38b1a2fb0cfc00aa571f216375992e18cab01223e4d96a78c
MD5 9aea6b9042517597ebed900df0fc460a
BLAKE2b-256 85b49c3ed93f8d97e85cae274b049294b1f96ff73992903be4abcc5064336460

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