무엇인가
코드베이스를 탐색 가능한 지식 그래프로 만드는 플러그인
코드를 지식 지도로
낯설거나 거대한 코드베이스를 대화형 지식 그래프로 만들어 탐색·검색·질문할 수 있게 합니다. 구조 분석(tree-sitter)과 AI 의미 분석을 결합합니다.
무엇인가
코드베이스를 탐색 가능한 지식 그래프로 만드는 플러그인
핵심 원리
tree-sitter 구조 파싱 + LLM 의미 추출 → knowledge-graph.json
설치 난이도
보통 (마켓 설치는 간단, 첫 분석은 토큰 큼)
사용자 추천도 (참고)
★★★★☆ — 크고 낯선 코드 온보딩에 강력
특징
아키텍처 레이어 색상화, 증분 업데이트, JSON 공유
출력 언어
영어·한국어 등 5~6개 지원
import·함수·클래스·호출·의존관계 같은 결정적 사실을 추출. 매번 같은 입력엔 같은 결과 → 변경 감지·증분 업데이트의 기반.
파서가 못 하는 쉬운 말 요약·아키텍처 레이어·업무 도메인 매핑·학습 투어를 생성.
결과는 .understand-anything/knowledge-graph.json(노드=파일·함수·클래스, 엣지=관계)로 저장됩니다. JSON이라 팀이 git에 커밋해 공유하면, 동료는 무거운 분석을 다시 안 돌리고 그래프만 불러옵니다. 이후엔 바뀐 파일만 다시 분석(증분)합니다.
| 명령 | 하는 일 |
|---|---|
/understand | 전체 분석 → 지식 그래프 생성/갱신 |
/understand-dashboard | 대화형 웹 시각화(확대·클릭·검색·투어) |
/understand-chat [질문] | 코드에 대해 자연어로 질문 |
/understand-diff | 현재 변경의 영향(파급) 분석 |
/understand-explain [파일] | 특정 파일·함수 깊이 설명 |
/understand-onboard | 팀 온보딩 가이드 생성 |
/understand-domain | 업무 도메인·흐름 추출 |
보조: /understand --auto-update(커밋마다 증분), /understand [하위폴더](범위 좁히기), --language ko(한국어 출력).
방법 A — Claude Code 마켓(권장·가장 깔끔)
/plugin marketplace add Egonex-AI/Understand-Anything /plugin install understand-anything
방법 B — 설치 스크립트 (Windows는 PowerShell)
# Windows(PowerShell): iwr -useb https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.ps1 | iex # macOS/Linux: curl -fsSL https://raw.githubusercontent.com/Egonex-AI/Understand-Anything/main/install.sh | bash
전제: 코드 접근 + LLM API 토큰 예산(첫 분석은 큰 코드에서 토큰을 많이 씁니다).
> /understand (지식 그래프 생성) > /understand-dashboard (레이어·투어 시각 탐색) > /understand-chat 결제 흐름이 어디서 처리돼? > /understand-explain src/auth/session.ts
대표 시나리오: 낯선 20만 줄 저장소에 새로 투입 → /understand → 대시보드로 구조 파악 → /understand-onboard로 안내 문서 생성.
구조(결정적)+의미(LLM) 결합. 증분 분석으로 이후 토큰 절약. JSON 공유로 팀 온보딩. 레이어 색상·의미 검색·가이드 투어. 15+ 도구 지원.
첫 분석 토큰 비용 큼(대형 코드일수록). 그래프를 만들어야 탐색 가능. 의미 분석은 LLM 품질에 의존(오류 가능). 출력 언어 제한. 거대 모노레포는 그래프가 비대(범위 좁혀야). 코드 대상(런타임·동작 분석은 아님).
쓰기 좋을 때: 크거나 오래된·낯선 코드베이스 파악, 아키텍처 개요·의존 지도가 필요할 때, 팀이 공유 "지도"를 원할 때, 위험한 변경 전 영향 분석.
피할 때: 작아서 그냥 읽으면 되는 프로젝트, 로컬 모델 없이 토큰이 빡빡할 때, 코드가 아닌 런타임·성능 통찰이 필요할 때.