See what your AI is building before it breaks.
CodeBoarding gives developers and coding agents a visual map of a codebase. It combines static analysis with LLM reasoning to generate architecture diagrams, component-level documentation, and navigable outputs you can use in your IDE, CI, and docs.
Website · Open VSX extension · Explore examples · VS Code extension · GitHub Action ·Discord
Install the extension from Open VSX.
-
Keep architecture visible while agents code.
-
Review AI-generated changes with system context before they turn into hidden debt.
-
Understand large repositories faster with layered diagrams and component breakdowns.
-
Share the same visual model across local workflows, IDEs, pull requests, and docs.
-
High-level system architecture diagrams.
-
Deeper component diagrams for important subsystems.
-
Markdown documentation in
.codeboarding/
. - Mermaid output that is easy to embed in docs and PRs.
- Incremental updates when only part of the codebase changes.
graph LR
Application_Orchestrator_Repository_Manager["Application Orchestrator & Repository Manager"]
LLM_Agent_Core["LLM Agent Core"]
Static_Code_Analyzer["Static Code Analyzer"]
Agent_Tooling_Interface["Agent Tooling Interface"]
Incremental_Analysis_Engine["Incremental Analysis Engine"]
Documentation_Diagram_Generator["Documentation & Diagram Generator"]
Application_Orchestrator_Repository_Manager -- "Orchestrator initiates analysis workflow, leveraging incremental updates based on detected code changes." --> Incremental_Analysis_Engine
Application_Orchestrator_Repository_Manager -- "Orchestrator passes project context and triggers the main analysis workflow for the LLM Agent." --> LLM_Agent_Core
Incremental_Analysis_Engine -- "Incremental engine requests static analysis for specific code segments (new or changed)." --> Static_Code_Analyzer
Static_Code_Analyzer -- "Static analyzer provides analysis results to the incremental engine for caching." --> Incremental_Analysis_Engine
LLM_Agent_Core -- "LLM Agent invokes specialized tools to interact with the codebase and analysis data." --> Agent_Tooling_Interface
Agent_Tooling_Interface -- "Agent tools query the static analysis engine for detailed code insights." --> Static_Code_Analyzer
Static_Code_Analyzer -- "Static analysis engine provides requested data to the agent tools." --> Agent_Tooling_Interface
LLM_Agent_Core -- "LLM Agent delivers structured analysis insights for documentation and diagram generation." --> Documentation_Diagram_Generator
click Application_Orchestrator_Repository_Manager href "https://github.com/CodeBoarding/CodeBoarding/blob/main/.codeboarding/Application_Orchestrator_Repository_Manager.md" "Details"
click LLM_Agent_Core href "https://github.com/CodeBoarding/CodeBoarding/blob/main/.codeboarding/LLM_Agent_Core.md" "Details"
click Static_Code_Analyzer href "https://github.com/CodeBoarding/CodeBoarding/blob/main/.codeboarding/Static_Code_Analyzer.md" "Details"
click Agent_Tooling_Interface href "https://github.com/CodeBoarding/CodeBoarding/blob/main/.codeboarding/Agent_Tooling_Interface.md" "Details"
click Incremental_Analysis_Engine href "https://github.com/CodeBoarding/CodeBoarding/blob/main/.codeboarding/Incremental_Analysis_Engine.md" "Details"
click Documentation_Diagram_Generator href "https://github.com/CodeBoarding/CodeBoarding/blob/main/.codeboarding/Documentation_Diagram_Generator.md" "Details"
For a deeper architecture walkthrough, see .codeboarding/overview.md.
uv sync --frozen
source .venv/bin/activate # On Windows: .venv\Scripts\activate
python install.py
python main.py full --local /path/to/repo
Requires Python 3.12 or 3.13. The recommended install method is pipx, which keeps the CLI in its own isolated environment:
pipx install codeboarding --python python3.12
codeboarding-setup
codeboarding full --local /path/to/repo
Or, if you prefer pip, install into a virtual environment (not the global Python):
pip install codeboarding
codeboarding-setup
codeboarding full --local /path/to/repo
Output is written to /path/to/repo/.codeboarding/
.
python install.py
and codeboarding-setup
download language server binaries to ~/.codeboarding/servers/
, shared across projects. Node.js (and its bundled npm
) is required for the Python, TypeScript, JavaScript, and PHP language servers; if neither node
nor CODEBOARDING_NODE_PATH
is set, setup downloads a pinned Node.js runtime into ~/.codeboarding/servers/nodeenv/
automatically.
On first run, CodeBoarding creates ~/.codeboarding/config.toml
. Set one provider there or use environment variables.
[provider]
[llm]
Shell environment variables such as OPENAI_API_KEY
, ANTHROPIC_API_KEY
, GOOGLE_API_KEY
, and OLLAMA_BASE_URL
take precedence over the config file. For private repositories, set GITHUB_TOKEN
in your environment.
python main.py full --local ./my-project
python main.py full --local ./my-project --depth-level 2
python main.py incremental --local ./my-project
python main.py partial --local ./my-project --component-id "1.2"
python main.py full https://github.com/pytorch/pytorch
CLIfor local analysis, automation, and CI workflows.VS Code extensionfor in-editor visual architecture.GitHub Actionto keep diagrams updated in CI.
-
Languages: Python, TypeScript, JavaScript, Java, Go, PHP, Rust, C#.
-
LLM providers: OpenAI, Anthropic, Google, Vercel AI Gateway, AWS Bedrock, Ollama, OpenRouter, and more.
-
Visualized 800+ open-source repositories.
-
Browse generated examples in GeneratedOnBoardings. - Try the hosted explorer at codeboarding.org/diagrams.
If you want to improve CodeBoarding, open an issue or send a pull request. We welcome improvements to analysis quality, output generators, integrations, and developer experience.
CodeBoarding is building an open standard for code understanding: a visual, accurate, high-level representation of a codebase that both humans and agents can use.