원클릭으로
understand-explain
Use when you need a deep-dive explanation of a specific file, function, or module in the codebase
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Use when you need a deep-dive explanation of a specific file, function, or module in the codebase
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
Analyze a codebase to produce an interactive knowledge graph for understanding architecture, components, and relationships
Use when you need to ask questions about a codebase or understand code using a knowledge graph
Use when you need to analyze git diffs or pull requests to understand what changed, affected components, and risks
Extract business domain knowledge from a codebase and generate an interactive domain flow graph. Works standalone (lightweight scan) or derives from an existing /understand knowledge graph.
Use when you need to generate an onboarding guide for new team members joining a project
Launch the interactive web dashboard to visualize a codebase's knowledge graph
SOC 직업 분류 기준
| name | understand-explain |
| description | Use when you need a deep-dive explanation of a specific file, function, or module in the codebase |
| argument-hint | [file-path] |
Provide a thorough, in-depth explanation of a specific code component.
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?}
file:path, function:path:name, config:path, article:pathedges[] — each has {source, target, type, direction, weight}
layers[] — each has {id, name, description, nodeIds[]}tour[] — each has {order, title, description, nodeIds[]}Resolve the data directory $UA_DIR. Run UA_DIR=$([ -d .understand-anything ] && echo .understand-anything || echo .ua) — this is the legacy .understand-anything/ when it already exists, otherwise the new .ua/. Check that $UA_DIR/knowledge-graph.json exists. If not, tell the user to run /understand first.
Check graph freshness before using graph-derived context:
project.gitCommitHash from the graph metadata as GRAPH_COMMIT_RAW. 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:
GRAPH_COMMIT=$(git rev-parse --verify --end-of-options "${GRAPH_COMMIT_RAW}^{commit}" 2>/dev/null)
git rev-parse HEAD
git diff --name-only "$GRAPH_COMMIT" HEAD -- .
git diff --cached --name-only -- .
git diff --name-only -- .
git ls-files --others --exclude-standard -- .
-- . pathspec is required: commits that only touch a sibling monorepo project must not make this graph stale. A hash mismatch alone is not stale when the project diff is empty..ua/ or legacy .understand-anything/) in every command's output because it contains generated graph artifacts, not project source drift./understand to refresh the graph.GRAPH_COMMIT_RAW resolves successfully. If the graph commit or Git metadata is missing, invalid, or unavailable, give a brief best-effort warning and continue instead of blocking.Find the target node — use Grep to search the knowledge graph for the component: "$ARGUMENTS"
src/auth/login.ts): search for "filePath" matchessrc/auth/login.ts:verifyToken): search for the function name in "name" fields filtered by the file pathid, type, summary, tags, and complexityFind all connected edges — Grep for the target node's ID in the edges section:
"source" matches → things this node calls/imports/depends on (outgoing)"target" matches → things that call/import/depend on this node (incoming)Read connected nodes — for each connected node ID from step 4, Grep for those IDs in the nodes section to get their name, summary, and type. This builds the component's neighborhood.
Identify the layer — Grep for the target node's ID in the "layers" section to find which architectural layer it belongs to and that layer's description.
Read the actual source file — Read the source file at the node's filePath for the deep-dive analysis.
Explain the component in context:
contains edges)