Skip to main content

graphify-codebase-graph

Usa a generar un grafo de conocimiento desde código.

Ir para a instalação

Informações da origem

Repositório
Ntizar/MasterMind
Última atividade na origem
15 de setembro de 2026 às 22:06
Idioma detectado do SKILL.md
espanhol
Estrelas
2
Forks
0

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
graphify-codebase-graph
description
Usa a generar un grafo de conocimiento desde código.
version
2.0.0
author
Mastermind (stars-explorer)
license
Apache-2.0
metadata
{"hermes":{"tags":["knowledge-graph","graphrag","tree-sitter","ast","code-analysis","mcp","rag","codigo"],"related_skills":["rag-knowledge-base","semantica","memory-context-engine"]}}
# Graphify — Codebase → Grafo de Conocimiento Consultable **Repo:** https://github.com/Graphify-Labs/graphify (115K⭐, Python, verificado 2026-09-06 contra README real v8) ## Qué es y por qué importa Convierte cualquier codebase (con docs, esquemas SQL, configs, PDFs) en un grafo de conocimiento **queryable**. Diferenciadores clave frente a RAG vectorial: - **Parsing AST determinista y local** con tree-sitter (~40 lenguajes) — cero créditos LLM al construir el grafo, nada sale de la máquina. - **Sin vector store**: se consulta el grafo, no similarity de chunks. - **Cada arista lleva tag de confianza**: `EXTRACTED` (explícito en el fuente) vs `INFERRED` (derivado por resolución). - **Más allá del código**: docs, PDFs, imágenes y vídeo/audio van al mismo grafo (el pase semántico de docs/media sí usa backend LLM, opcional). - Benchmarks del README (mismo harness, n=300): LOCOMO recall@10 = 0.497 (mem0 0.048, supermemory 0.149); LongMemEval-S QA 76%. ## Instalación (verificada del README) ```bash # ⚠️ El paquete PyPI es graphifyy (doble y). El comando sigue siendo graphify. uv tool install graphifyy # recomendado (entorno aislado) pipx install graphifyy # uvx: hay que nombrar el paquete, no el comando: uvx --from graphifyy graphify install ``` Registrar el skill del asistente: `graphify install` (acepta `--project` y `--platform codex|claude|...`; escribe `.claude/skills/graphify/SKILL.md` o `.agents/skills/...`). ## Uso ```bash graphify . # en CLI; /graphify . dentro del agente # salida: graphify-out/ → graph.html (viz interactiva), GRAPH_REPORT.md, graph.json graphify query "qué conecta auth con la BBDD" # subgrafo acotado por pregunta graphify path "UserService" "DatabasePool" # ruta más corta entre dos conceptos graphify explain "APIRouter" # nodo + conexiones con tags graphify extract ./raw --code-only # solo código, AST local, SIN API key graphify . --update # re-extraer solo ficheros cambidos graphify . --cluster-only # re-clustering (Leiden) sin re-extraer graphify . --wiki # wiki markdown para crawl de agentes graphify . --neo4j # genera cypher.txt para Neo4j graphify hook install # auto-rebuild en git commit graphify merge-graphs a.json b.json ``` Como servidor MCP para acceso repetido por tool-calls: ```bash python -m graphify.serve graphify-out/graph.json # stdio (default) python -m graphify.serve graphify-out/graph.json --transport http --port 8080 --api-key "$SECRET" # compartido equipo ``` Herramientas MCP: `query_graph`, `get_node`, `get_neighbors`, `shortest_path`, `list_prs`, `get_pr_impact`, `triage_prs`. ## Conceptos del grafo - **God nodes**: conceptos más conectados (por dónde fluye todo); `--exclude-hubs 99` excluye super-hubs utilitarios del ranking. - **Comunidades**: subsistemas vía Leiden, etiquetadas sin LLM. - **Aristas**: `calls` / `imports` / `inherits` / `mixes_in` resueltas entre ficheros. - **Rationale nodes**: comentarios `# NOTE:` / `# WHY:` y citas ADR/RFC se vuelven nodos enlazados al código. - **Work memory**: `graphify save-result --question Q --answer A --outcome useful|dead_end|corrected` + `graphify reflect` → `LESSONS.md` con notas recency-weighted. ## Pitfalls (del propio README, verificados) - **`pip install graphify` NO** — el paquete es `graphifyy`; paquetes `graphify*` ajenos en PyPI no están afiliados. - En **PowerShell**: `graphify .` (sin `/` inicial — es separador de rutas). - `graphify: command not found` tras uv/pipx → `uv tool update-shell` / `pipx ensurepath` + terminal nueva. - Mezclar entornos: el skill resuelve Python desde `graphify-out/.graphify_python`; si apunta a otro entorno → `ModuleNotFoundError` (uv tool/pipx lo evitan). - Filtros: `.graphifyignore` (sintaxis .gitignore, se fusiona con el `.gitignore` del repo y gana el primero en conflictos); `--no-gitignore` en `extract` para incluir código generado. - Headless/CI (`graphify extract`): requiere backend vía env vars (`--backend openai|claude|ollama|gemini|azure|bedrock|deepseek|kimi`; `OPENAI_BASE_URL` sirve para endpoints OpenAI-compatible tipo vLLM/llama.cpp — funcionaría con NaN.builders). ## Cuándo usarlo en Mastermind - Auditar proyectos HTML grandes (audit-html-project) o repos ajenos: grafo en vez de leer ficheros uno a uno. - Alimentar un pipeline de conocimiento de proyecto sin coste de embeddings. - Comparativa: `semantica` (grafo contexto+provenance general) y `rag-knowledge-base` (RAG vectorial) — graphify es específico de **inteligencia sobre código**, local y determinista. ## Comparativa de alternativas (actualizada 2026-09-16) **DeusData/codebase-memory-mcp** (43.406⭐, C puro, verificado 2026-09-16 — skill dedicado `ia/codebase-memory-mcp`): binario nativo MCP-first que indexa a SQLite con 162 lenguajes + Hybrid LSP, UI 3D, auto-watch, Cypher subset, `detect_changes` (diff→blast radius) y enlaces cross-repo/cross-service. - **Usar CBM** cuando el grafo vive EN el bucle del agente de código: consultas sub-ms por MCP, re-indexado por watcher, impacto de diffs y detección de código muerto en sesiones interactivas, con 10× menos tokens. - **Usar graphify** cuando hace falta un artefacto portable (graph.json/HTML/wiki/markdown), meter **docs, PDFs y media en el mismo grafo**, compartir con el equipo vía HTTP+API key, o trabajar sin instalar un binario nativo (pip/uvx). El tagging `EXTRACTED/INFERRED` por arista y el work-memory (`save-result`/`reflect`) no los tiene CBM. - graphify (115K⭐) sigue como referencia principal por amplitud (código+docs) y ser Python hacking-friendly; CBM gana en latencia, lenguajes y modo agente. ## Verificación `graphify . --no-viz` sobre una carpeta pequeña → comprobar `graphify-out/graph.json` + `GRAPH_REPORT.md`; luego `graphify explain "<nodo>"` responde con conexiones taggeadas.
Ver no GitHub