Graphify는 codebase, 문서, database schema 등을 query 가능한 knowledge graph로 변환하는 open-source CLI 및 AI coding assistant skill이다. 공식 PyPI package 이름은 graphifyy(y 두 개)이고 설치 후 실행하는 command는 graphify다.
query, path, explain으로 탐색한다.graphify-out/graph.html, graphify-out/GRAPH_REPORT.md, graphify-out/graph.json에 저장된다.uv tool install을 권장한다.graphifyy이고 CLI command는 graphify다. PyPI의 다른 graphify* package와 혼동하지 않는다.
공식 upstream 문서는 Python 3.10 이상과 uv 또는 pipx를 사용한다. distribution repository의 Python version이 요구 조건을 만족하는지 먼저 확인한다.
# upstream이 안내하는 uv installer curl -LsSf https://astral.sh/uv/install.sh | sh # Graphify 설치 uv tool install graphifyy
Graphify 전용 공식 RPM/DNF repository는 안내되지 않는다. Linux 공통 uv 설치 후 PyPI package를 격리 설치한다.
curl -LsSf https://astral.sh/uv/install.sh | sh uv tool install graphifyy
brew install python@3.12 uv uv tool install graphifyy
winget install astral-sh.uv
uv tool install graphifyy
# 대안 pipx install graphifyy # 설치 확인 graphify --version # update uv tool upgrade graphifyy
uv tool install 후 command를 찾지 못하면 uv tool update-shell을 실행하고 terminal을 다시 연다.pipx를 사용했다면 pipx ensurepath를 실행하고 terminal을 다시 연다.uvx –from graphifyy graphify … 형식을 사용한다. uvx graphify …는 package 이름이 달라 resolve되지 않는다.# 현재 repository 분석 graphify . # 변경된 파일 중심으로 갱신 graphify update . # graph query graphify query "auth와 database는 어떻게 연결되는가?" graphify path "UserService" "DatabasePool" graphify explain "RateLimiter"
graphify [OPTIONS] PATH: 대상 directory를 분석해 graph 생성graphify update [OPTIONS] PATH: 기존 graph 갱신graphify query QUESTION: 자연어 또는 keyword로 관련 node와 edge 탐색graphify path SOURCE TARGET: 두 concept 사이의 경로 탐색graphify explain CONCEPT: node의 위치와 관계 설명graphify export callflow-html: Mermaid 기반 architecture/call-flow HTML 생성graphify prs [OPTIONS]: PR 상태와 graph 영향 분석graphify . graphify ./docs --update graphify . --mode deep graphify . --no-viz graphify . --wiki graphify . --cluster-only --resolution 1.5
–mode deep: 여러 pass를 사용하는 더 깊은 관계 추출–update: 변경된 file 중심으로 재추출–no-viz: interactive HTML 생성을 생략–wiki: graph에서 Markdown wiki 생성–cluster-only: 추출을 다시 하지 않고 기존 graph의 clustering 재실행graphify query "billing을 소유하는 component는?" graphify path "ApiGateway" "RedisClient" graphify explain "AuthService" graphify merge-graphs a.json b.json --out merged.json
관계의 confidence는 EXTRACTED, INFERRED, AMBIGUOUS로 구분된다. 중요한 판단에는 결과의 source file과 line citation을 함께 검토한다.
# 감지된 assistant에 skill 등록 graphify install # 현재 project에만 등록 graphify install --project # Codex project-scoped 등록 graphify install --project --platform codex # 제거; --purge를 추가하면 graphify-out도 삭제 graphify uninstall
/graphify .를 사용한다.$graphify skill 이름을 사용한다.graphify .를 사용한다..agents/skills/graphify/, .claude/skills/graphify/ 등 platform별 경로를 만들 수 있다. commit 전에 생성 파일을 검토한다.# stdio server python -m graphify.serve graphify-out/graph.json # 여러 client가 공유하는 HTTP server python -m graphify.serve graphify-out/graph.json --transport http --port 8080 # console script graphify-mcp graphify-out/graph.json
MCP server는 query, node 조회, neighbor 탐색, shortest path, graph 통계, PR 영향 분석 tool을 제공한다. HTTP transport를 외부에 노출할 때는 –api-key 또는 GRAPHIFY_API_KEY를 설정하고 network 접근을 제한한다.
graphify-out/.graphifyignore; .gitignore도 자동으로 반영된다.–backend ollama, OLLAMA_BASE_URL, OLLAMA_MODEL–backend claude|gemini|openai|azure|bedrock와 provider별 environment variableGRAPHIFY_QUERY_LOG_ENABLE=1 또는 GRAPHIFY_QUERY_LOG로 명시적으로 활성화한다.# .graphifyignore .env secrets/ vendor/ generated/ graphify-out/
–backend ollama 같은 local backend를 검토한다.
필요한 기능만 extra로 설치한다.
uv tool install "graphifyy[pdf]" uv tool install "graphifyy[office]" uv tool install "graphifyy[mcp]" uv tool install "graphifyy[svg]" uv tool install "graphifyy[sql]" uv tool install "graphifyy[terraform]" uv tool install "graphifyy[all]"
graphify: command not found: uv tool update-shell 또는 pipx ensurepath 실행 후 terminal을 다시 연다.uvx graphify가 package를 찾지 못함: uvx –from graphifyy graphify …로 package 이름을 명시한다.uv tool upgrade graphifyy 다음 graphify install을 다시 실행한다.–force 사용 여부를 판단한다.leiden extra는 공식 문서 기준 Python 3.13 미만에서 지원된다.graphify-out/ commit 정책을 합의한다.