Sandbox
@Egonex-AI/Understand-Anything

Plugin bundle for codebase knowledge graphs

Understand Anything scans a project with a multi-agent pipeline, extracts structure and meaning, and saves the result as a knowledge graph. You can then explore it in a dashboard, search it, ask questions about it, and keep it updated as files change.

81,994 stars6.9k forksTypeScriptUpdated 9d ago
This AI Tool Maps Any Codebase Before You Touch It (Understand-Anything)
Better Stack187k views • 3 months ago

Videos about this repo

Who it's for

Builders who want their agent to map a codebase, docs set, or internal wiki into something they can explore and query.

What it delivers

You can understand how a large project fits together without reading every file by hand.

What it does

Interactive graph dashboard

Opens a browser view where files, functions, classes, and dependencies are clickable nodes.

Guided tours

Generates walkthroughs that explain the codebase in dependency order.

Diff impact analysis

Shows which parts of the system a change is likely to affect before you commit.

Knowledge base analysis

Turns Karpathy-style wikis into a graph of articles, entities, claims, and links.

Incremental updates

Re-analyzes only changed files after the first full scan.

Multi-platform install

Supports Claude Code, Codex, Cursor, Copilot, Gemini CLI, and other clients through plugin or script install paths.

How to get it

  1. 1Run
    /plugin marketplace add Egonex-AI/Understand-Anything
    /plugin install understand-anything
  2. 2Run
    /understand
  3. 3Localized output: Use --language to generate content in your preferred language
    # Generate Chinese content (知识图节点描述和 Dashboard UI)
    /understand --language zh
    
    # Supported languages: en (default), zh, zh-TW, ja, ko, ru
  4. 4Run
    /understand-dashboard
  5. 5Run
    /plugin marketplace add Egonex-AI/Understand-Anything
    /plugin install understand-anything
  6. 6macOS / Linux
    curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash
    # or skip the prompt by passing the platform:
    curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash -s codex

README

Understand Anything

Turn any codebase, knowledge base, or docs into an interactive knowledge graph you can explore, search, and ask questions about.
Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.

Understand Anything. Understand Anyone.
AI should help people, not replace them.

Understand Anything | Trendshift

English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Español | Türkçe | Русский

Quick Start License: MIT Claude Code Codex Copilot Copilot CLI Gemini CLI OpenCode Vibe CLI Trae Homepage Live Demo Understand Anyone

Understand Anything — Turn any codebase into an interactive knowledge graph

An open-source project from Egonex
Originally created by Lum1104.


You just joined a new team. The codebase is 200,000 lines of code. Where do you even start?

Understand Anything is a Claude Code Plugin that analyzes your project with a multi-agent pipeline, builds a knowledge graph of every file, function, class, and dependency, then gives you an interactive dashboard to explore it all visually. Stop reading code blind. Start seeing the big picture.

The goal isn't a graph that wows you with how complex your codebase is — it's a graph that quietly teaches you how every piece fits together.


✨ Features

[!NOTE] Want to skip the reading? Try the live demo in our homepage — a fully interactive dashboard you can pan, zoom, search, and explore right in your browser.

Explore the structural graph

Navigate your codebase as an interactive knowledge graph — every file, function, and class is a node you can click, search, and explore. Select any node to see plain-English summaries, relationships, and guided tours.

Understand business logic

Switch to the domain view and see how your code maps to real business processes — domains, flows, and steps laid out as a horizontal graph.

Analyze knowledge bases

Point /understand-knowledge at a Karpathy-pattern LLM wiki and get a force-directed knowledge graph with community clustering. The deterministic parser extracts wikilinks and categories from index.md, then LLM agents discover implicit relationships, extract entities, and surface claims — turning your wiki into a navigable graph of interconnected ideas.

🧭 Guided Tours

Auto-generated walkthroughs of the architecture, ordered by dependency. Learn the codebase in the right order.

🔍 Fuzzy & Semantic Search

Find anything by name or by meaning. Search "which parts handle auth?" and get relevant results across the graph.

📊 Diff Impact Analysis

See which parts of the system your changes affect before you commit. Understand ripple effects across the codebase.

🎭 Persona-Adaptive UI

The dashboard adjusts its detail level based on who you are — junior dev, PM, or power user.

🏗️ Layer Visualization

Automatic grouping by architectural layer — API, Service, Data, UI, Utility — with color-coded legend.

📚 Language Concepts

12 programming patterns (generics, closures, decorators, etc.) explained in context wherever they appear.


🚀 Quick Start

1. Install the plugin

/plugin marketplace add Egonex-AI/Understand-Anything
/plugin install understand-anything

Using a local model? For privacy or enterprise setups, point your platform at a local model provider such as Ollama — follow their integration guide to change the model provider.

2. Analyze your codebase

/understand

A multi-agent pipeline scans your project, extracts every file, function, class, and dependency, then builds a knowledge graph saved to .ua/knowledge-graph.json. (Projects that already have a .understand-anything/ directory keep using it — it stays the data directory when present, so nothing needs migrating.)

Heads up on token usage: The initial /understand analyzes your whole codebase and can consume a significant number of tokens on large projects. We recommend running it on a token plan / subscription, or using a local model (see above) for initialization. Subsequent runs are incremental by default — only changed files are re-analyzed — so they use far fewer tokens.

Localized output: Use --language to generate content in your preferred language:

# Generate Chinese content (知识图节点描述和 Dashboard UI)
/understand --language zh

# Supported languages: en (default), zh, zh-TW, ja, ko, ru

On the first run in a project — when you don't pass --language and no language is stored yet — /understand detects the language you're conversing in. If it isn't English, it asks you to confirm (or override) before generating; English conversations are unaffected. Your choice is saved to .ua/config.json and reused on every later run.

The --language parameter affects:

  • Node summaries and descriptions in the knowledge graph
  • Dashboard UI labels, buttons, and tooltips
  • Guided tour explanations

3. Explore the dashboard

/understand-dashboard

An interactive web dashboard opens with your codebase visualized as a graph — color-coded by architectural layer, searchable, and clickable. Select any node to see its code, relationships, and a plain-English explanation.

4. Keep learning

# Ask anything about the codebase
/understand-chat How does the payment flow work?

# Analyze impact of your current changes
/understand-diff

# Deep-dive into a specific file or function
/understand-explain src/auth/login.ts

# Generate an onboarding guide for new team members
/understand-onboard

# Extract business domain knowledge (domains, flows, steps)
/understand-domain

# Analyze a Karpathy-pattern LLM wiki knowledge base
/understand-knowledge ~/path/to/wiki

# Re-run anytime — incremental by default (only re-analyzes changed files)
/understand

# Auto-update on every commit via a post-commit hook
/understand --auto-update

# Scope to a subdirectory (for huge monorepos)
/understand src/frontend

🌐 Multi-Platform Installation

Understand-Anything works across multiple AI coding platforms.

Claude Code (Native)

/plugin marketplace add Egonex-AI/Understand-Anything
/plugin install understand-anything

One-line install (Codex / OpenCode / OpenClaw / Antigravity / Gemini CLI / Pi Agent / Vibe CLI / VS Code Copilot / Hermes / Cline / KIMI CLI / Trae / Nanobot / Kiro)

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash
# or skip the prompt by passing the platform:
curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash -s codex

Windows (PowerShell):

iwr -useb https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.ps1 | iex

The installer clones the repo to ~/.understand-anything/repo and creates the right symlinks for the chosen platform. Restart your CLI/IDE afterwards.

Note on invoking skills: the invocation prefix differs per platform. Most platforms use slash commands (/understand), but Codex uses $ instead — type $understand, not /understand. If neither prefix is recognized on your platform, just ask in plain language: "Use the understand skill to analyze this project."

  • Supported <platform> values: gemini, codex, opencode, pi, openclaw, antigravity, vibe, vscode, hermes, cline, kimi, trae, nanobot, kiro
  • Update later:
    • macOS / Linux: ./install.sh --update
    • Windows: & "$HOME/.understand-anything/repo/install.ps1" -Update
  • Uninstall:
    • macOS / Linux: ./install.sh --uninstall <platform>
    • Windows: & "$HOME/.understand-anything/repo/install.ps1" -Uninstall <platform>

Cursor

Cursor auto-discovers the plugin via .cursor-plugin/plugin.json when this repo is cloned. No manual installation needed — just clone and open in Cursor.

If auto-discovery doesn't pick it up, install it manually: open Cursor Settings → Plugins, paste https://github.com/Egonex-AI/Understand-Anything into the search field, and add it from there.

VS Code + GitHub Copilot

VS Code with GitHub Copilot (v1.108+) auto-discovers the plugin via .copilot-plugin/plugin.json when this repo is cloned. No manual installation needed — just clone and open in VS Code.

For personal skills (available across all projects), run the install.sh above with the vscode platform.

Copilot CLI

copilot plugin install Egonex-AI/Understand-Anything:understand-anything-plugin

Kiro CLI / IDE

curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash -s kiro

After installation:

  • Kiro CLI: kiro-cli chat --agent understand "Analyze this project"
  • Kiro IDE: The skills are symlinked into ~/.kiro/skills/ and the understand agent is written to ~/.kiro/agents/understand.json, so both are available after restarting the IDE.

For personal skills (available across all projects), run the install.sh above with the kiro platform.

Platform Compatibility

PlatformStatusInstall Method
Claude Code✅ NativePlugin marketplace
Cursor✅ SupportedAuto-discovery
VS Code + GitHub Copilot✅ SupportedAuto-discovery
Copilot CLI✅ SupportedPlugin install
Codex✅ Supportedinstall.sh codex
OpenCode✅ Supportedinstall.sh opencode
OpenClaw✅ Supportedinstall.sh openclaw
Antigravity✅ Supportedinstall.sh antigravity
Gemini CLI✅ Supportedinstall.sh gemini
Pi Agent✅ Supportedinstall.sh pi
Vibe CLI✅ Supportedinstall.sh vibe
Hermes✅ Supportedinstall.sh hermes
Cline✅ Supportedinstall.sh cline
KIMI CLI✅ Supportedinstall.sh kimi
Trae✅ Supportedinstall.sh trae
Nanobot✅ Supportedinstall.sh nanobot
Kiro CLI / IDE✅ Supportedinstall.sh kiro

📦 Share the Graph with Your Team

The graph is just JSON — commit it once, and teammates skip the pipeline. Good for onboarding, PR reviews, and docs-as-code.

Example: GoogleCloudPlatform/microservices-demo — Go / Java / Python / Node reference with a committed graph.

What to commit: everything in .ua/ except intermediate/ and diff-overlay.json (those are local scratch). (Legacy projects use .understand-anything/ — substitute that directory name below if it's the one present.)

.ua/intermediate/
.ua/diff-overlay.json

Keep it fresh: enable /understand --auto-update — a post-commit hook incrementally patches the graph so each commit lands with a matching graph. Or re-run /understand manually before releases.

Large graphs (10 MB+): track with git-lfs.

git lfs install
git lfs track ".ua/*.json"
git add .gitattributes .ua/

View the dashboard without Claude Code

Once a graph has been generated and committed, anyone on the team can open it with one command — no Claude Code, no LLM, no API key. Only Node.js (>= 18) is required:

npx https://github.com/Egonex-AI/Understand-Anything/releases/latest/download/understand-anything-viewer.tgz /path/to/analyzed/project

The terminal prints a tokenized URL (http://127.0.0.1:5173/?token=…) and opens the full interactive dashboard in your browser. The project directory (default: current directory) must contain the committed data directory (.ua/, or legacy .understand-anything/). Everything is served read-only from local disk — no LLM calls, no data leaves your machine.

Working from a clone instead? pnpm install && pnpm --filter @understand-anything/core build, then GRAPH_DIR=/path/to/analyzed/project pnpm dev:dashboard does the same via the Vite dev server.


🔧 Under the Hood

Tree-sitter + LLM hybrid

Static analysis and LLMs do what each does best:

  • Tree-sitter (deterministic) — parses source into a concrete syntax tree and extracts structural facts: imports, exports, function/class definitions, call sites, inheritance. Pre-resolved into an importMap during the scan phase and passed to file-analyzers so they don't re-derive imports from source. Same input → same output, every run. Also powers fingerprint-based change detection for incremental updates.
  • LLM (semantic) — reads the parsed structure alongside the original source to produce what parsers can't: plain-English summaries, tags, architectural layer assignments, business-domain mapping, guided tours, language concept callouts.

This split is why the graph is reproducible on the structural side (the same code always yields the same edges) while still capturing intent on the semantic side (what a file is for, not just what it imports).

Multi-Agent Pipeline

The /understand command orchestrates 5 specialized agents, /understand-domain adds a 6th, and /understand-knowledge adds a 7th:

AgentRoleUsed By
project-scannerDiscovers files, detects languages and frameworks/understand
file-analyzerExtracts functions, classes, imports; produces graph nodes and edges/understand
architecture-analyzerIdentifies architectural layers/understand
tour-builderGenerates guided learning tours/understand
graph-reviewerValidates graph completeness and referential integrity. Runs inline by default; use --review for full LLM review/understand
domain-analyzerExtracts business domains, flows, and process steps/understand-domain
article-analyzerExtracts entities, claims, and implicit relationships from wiki articles/understand-knowledge

File analyzers run in parallel, up to 5 concurrent workers and 20–30 files per batch.

The pipeline also supports incremental updates: only files changed since the last run are re-analyzed.


🎥 Community

A community-made walkthrough by Better Stack.

Community walkthrough by Better Stack — watch on YouTube
Watch on YouTube →

Made a video, blog post, or tutorial? Open an issue or PR — happy to feature it here.


🤝 Contributing

Contributions are welcome! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Run the tests (pnpm --filter @understand-anything/core test)
  4. Commit your changes and open a pull request

Please open an issue first for major changes so we can discuss the approach.


Stop reading code blind. Start understanding everything.

Star History

Star History ChartStar History Chart

Thanks to everyone who's used and contributed — knowing this saves people time is what made it worth building.

MIT License © Yuxiang Lin and Infinite Universe, Inc.

Files in the repo

Repository payload27 top-level entries
  • .claude-plugin
  • .copilot-plugin
  • .cursor-plugin
  • .github
  • assets
  • docs
  • homepage
  • READMEs
  • scripts
  • tests
  • understand-anything-plugin
  • .gitignore
  • .npmrc
  • CLAUDE.md
  • CODE_OF_CONDUCT.md
  • CONTRIBUTING.md
  • eslint.config.mjs
  • install.ps1
  • install.sh
  • LICENSE
  • package.json
  • pnpm-lock.yaml
  • pnpm-workspace.yaml
  • README.md
  • SECURITY.md
  • tsconfig.json
  • vitest.config.ts

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More plugins

Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

138k
1 add
code-yeongyu/
oh-my-openagent

OmO: Just type "mass ulw" keyword with your prompt. Now you are the master of graph engineering.

69k

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

94k

Opinionated Oxlint rules for rejecting low-evidence TypeScript and JavaScript patterns

4.3k
cbrock84/
headcount

An agent organization for Claude Code, structured as a company — 15+ departments, 125+ skills, each independently installable.

1.4k