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

Uploaded CPython 3.8+Windows x86-64

llmcc-0.2.61-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.61-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.61.tar.gz.

File metadata

  • Download URL: llmcc-0.2.61.tar.gz
  • Upload date:
  • Size: 181.3 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.61.tar.gz
Algorithm Hash digest
SHA256 22e34f6be25d29b78f9c431dc2454ce4294853444bdf01a3fd1ac02f74c09d0d
MD5 2dc04b81aeefffc7c31918d2e598a7aa
BLAKE2b-256 da95f56b1ce050830c598ad2d8daabc10f7dcb529f07d2bde7107d3963447074

See more details on using hashes here.

File details

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

File metadata

  • Download URL: llmcc-0.2.61-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.61-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 675128874254dad332314c356f8666bcb8111f9029ab2923e12de4d410ea7bf8
MD5 3833a20d0da1db0dc9ba6fb323a89a15
BLAKE2b-256 83615e19fc47b4ed432ee6f702e95f6cf138f250ea3737339931004d986f8633

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for llmcc-0.2.61-cp38-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 87ddb1871008ea9d9b819719d60e64989444b59dda29c52d8b7f901eceac2fb6
MD5 64caa95174932f2c1cbf8b67a260a1f0
BLAKE2b-256 97d904403d8329ad1e1c113906887f29ac4c5c51902e3bcf4a9ab4781646637c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for llmcc-0.2.61-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a53e0200a4f0d197eaa87ad2987d283b3aeb03aa55b02940421ea71a24f7c25a
MD5 c80d85d903bf18b7ef1cfc2f7a9ab036
BLAKE2b-256 786dea6986ef80faa5c1ce6f060a7d416cb5839cc074ee43642e2c8911e12b43

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