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.60.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.60-cp38-abi3-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.8+Windows x86-64

llmcc-0.2.60-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.60-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.60.tar.gz.

File metadata

  • Download URL: llmcc-0.2.60.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.60.tar.gz
Algorithm Hash digest
SHA256 a151214f6394c45329d5d4c4ec9317ea799ccdaa684f86f1506dd885893575d5
MD5 0ef6667e68a64e3bcbe24d1ba666d823
BLAKE2b-256 54633a18c5551620794de283f77e0b85aaa8b0c4651f0d6546208f9d76e114f7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: llmcc-0.2.60-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.60-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 175248ea4fc803673f427203496a44302c3129e31d6566313e3c023f4ab1fadd
MD5 36107fae0dd3ce7e4df156bda4d3d511
BLAKE2b-256 7ef31a004ff8fa57ab16e78d8798b096cfb803947ec03beaa3321e11920ecea3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for llmcc-0.2.60-cp38-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9a9ebaa5f8784e21c969c7aac1579b846a60b7a92a410ebbbfdb1e6a32132b4e
MD5 342d411720c798fe9fa9f3c1f2078d60
BLAKE2b-256 10190533ba598acbaf4ed732b5fe75f57f07d23e210158c8802f2e1c0ae8944e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for llmcc-0.2.60-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 798300f7f3a076ddb7e6c2ff3404a5486d2c60aedf07ff245f177af517d28ac5
MD5 45f06a38627bdfee583485215d2b3f32
BLAKE2b-256 08c61e3e5cfaa8d7fae774844fbc7e396cfc13b7f2cfc8f591b5cf7a9dcd5f97

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