Agent skill · research science · lum1104

understand-explain

Use when you need a deep-dive explanation of a specific file, function, or module in the codebase

Why this skill is useful

Provides detailed domain-specific knowledge on navigating and interpreting a complex knowledge graph for code components that the AI wouldn't reliably generate on its own.

What it needs

About 3k tokens when loaded. Last updated 2026-07-30. 77,791 stars on the source repository.

What this skill does

/understand-explain Provide a thorough, in-depth explanation of a specific code component. Graph Structure Reference The knowledge graph JSON has this structure: project — {name, description, languages, frameworks, analyzedAt, gitCommitHash} nodes[] — each has {id, type, name, filePath?, summary, tags[], complexity, languageNotes?} Code node types: file, function, class, module, concept Non-code node types: config, document, service, table, endpoint, pipeline, schema, resource Domain/knowledge node types: domain, flow, step, article, entity, topic, claim, source IDs use the node type as prefix, e.g. file:path, function:path:name, config:path, article:path edges[] — each has {source, target, type, direction, weight} Key types: imports, contains, calls, dependson, configures, documents, deploys, triggers, containsflow, flowstep, related, cites layers[] — each has {id, name, description, nodeIds[]} tour[] — each has {order, title, description, nodeIds[]} How to Read Efficiently 1. Use Grep to search within the JSON for relevant entries BEFORE reading the full file 2. Only read sections you need — don't dump the entire graph into context 3. Node names and summaries are the most useful fields for understanding 4. Edges tell you how components connect — follow imports and calls for dependency chains Instructions 1. Resolve the data directory $UADIR. Run UADIR=$([ -d .understand-anything ] && echo .understand-anything echo .ua) — this is the legacy .understand-anything/ when it already exists, otherwise the new .ua/. Check that $UADIR/knowledge-graph.json exists. If not, tell the user to run /understand first. 2. Check graph freshness before using graph-derived context: Read project.gitCommitHash from the graph metadata as GRAPHCOMMITRAW. Resolve it as a commit before using it in any Git diff, then compare it with git rev-parse HEAD and inspect project-scoped committed and working-tree changes from the project root: The -- . …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills lum1104/understand-explain

View the source on GitHub

Browse the @skills marketplace