Generate a compact, always-fresh map of a codebase's functions, constants, and call graph for an AI coding agent to read instead of the whole codebase.
Add a CI check that fails a build when the committed cache is out of date.
Pre-encode the cache into a token stream sized for OpenAI-vocabulary models.
| colwill/ccc | async-herald/herald-engine | chrichuang218/claude-desktop-zh | |
|---|---|---|---|
| Stars | 25 | 25 | 25 |
| Language | Rust | Rust | Rust |
| Setup difficulty | moderate | moderate | easy |
| Complexity | 3/5 | 3/5 | 2/5 |
| Audience | developer | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Requires Rust 1.77 or newer and cargo to build from source, no prebuilt binaries are mentioned.
ccc, short for ContextCodeCache, is a command line tool that scans a code project and builds a compact summary of it. That summary lives in a folder called .ccc and lists, for every source file, its constants, its functions along with their return types and short descriptions, which functions call which other functions inside the same file, and any marker comments like TODO or FIXME. The idea is to give an AI coding assistant a cheap, always up to date map of a codebase instead of making it read every file from scratch each time. The tool is written in Rust and needs a fairly recent version of Rust installed to build it. Once built, a person can copy the resulting program onto their command path so it can be run from anywhere. The main commands let someone regenerate the cache for a project, check whether an existing cache is out of date without changing anything, and turn the cache into a separate encoded token stream for models that use an OpenAI style vocabulary. The README is clear that this token stream does not match how Anthropic's Claude models count tokens, so Claude users are told to use the plain markdown cache files instead. Each per file summary is written as a small markdown document listing the file's constants, functions, an internal call graph showing which function calls which, and any marker notes found in the code. The tool currently understands Rust, Python, JavaScript, TypeScript, and Go, using a parsing library called tree-sitter to read the code structure, and it skips files it does not recognize as well as common build and dependency folders. The project also ships an automated workflow that can run on every push to the main branch, check whether the cache has drifted out of date, and automatically open a pull request that refreshes it. This is meant to keep the cache trustworthy for any agent that relies on it, without a person having to remember to regenerate it by hand.
A Rust command line tool that scans a codebase and builds a compact, always-fresh markdown map of its functions and call graph for AI agents.
Mainly Rust. The stack also includes Rust, tree-sitter.
Not stated in the README.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.