Skip to content
Back to skills

Codegraph

CSecurity

Usar cuando se necesita indexación AST persistente para navegación de callers/callees en el código.

  • 50 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
developmentgobashsqlvuenodeexpressfastapidjangospringgit

Works with

  • cli
  • api
  • mcp

Security analysis

C67/100
  • criticalPipes output to a shell interpreter
  • mediumUses curl or wget to download content
  • criticalDownloads and executes remote scripts — classic supply chain attack
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 2 files and shows the line behind each finding

Scanned September 28, 2026

npx -y skills add gonzalezpazmonica/savia --skill codegraph --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Codegraph?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Codegraph
[![Security: C — Skills Directory](https://www.skillsdirectory.com/api/skills/gonzalezpazmonica-codegraph/badge)](https://www.skillsdirectory.com/skills/gonzalezpazmonica-codegraph)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
layer: peripheral
name: codegraph
description: Usar cuando se necesita indexación AST persistente para navegación de callers/callees en el código.
allowed-tools: [Bash, Read]
metadata:
  # --- metadata.savia.* (SE-333) ---
  savia.category: quality
  savia.maturity: beta
  savia.context: project
  savia.priority: medium
  savia.summary: "CodeGraph (colbymchenry/codegraph) indexa código en SQLite con tree-sitter y lo expone vía MCP stdio. Sustituye grep ad-hoc de .acm/ast-comprehension por queries semánticas. 35% menos coste y 70% menos tool calls (bench upstream). Opt-in por proyecto: requiere `codegraph init -i` y MCP habilitado en opencode.json. NO se carga al arranque (Rule #19)."
  savia.tags: "mcp, ast, tree-sitter, indexing, callers, impact, acm-engine"
  savia.user-invocable: True
---

# CodeGraph — Motor de indexación AST

MCP server externo `@colbymchenry/codegraph` (MIT,
[github.com/colbymchenry/codegraph](https://github.com/colbymchenry/codegraph))
que indexa código con tree-sitter en SQLite y expone 8 tools MCP. Savia lo
usa como **motor** de dos skills, no como reemplazo:

- `agent-code-map` (`.acm`): proyecta el índice a Markdown estructurado.
- `ast-comprehension`: sustituye grep por llamadas MCP semánticas.

`.hcm`, `codebase-map` y Savia Shield siguen siendo nuestros — ortogonales.

## Por qué

Las queries grep tienen tres límites: falsos positivos en `callers` por
matches en comentarios/strings, no son incrementales, y no entienden
routes de framework (Django, Express, FastAPI, Spring). CodeGraph resuelve
los tres con un índice persistente.

## Activación opt-in por proyecto

CodeGraph **no** se instala con Savia. Se activa cuando aporta valor
(>500 ficheros, lenguaje con buen tree-sitter, scope no N4b).

```bash
# 1. Instalar
npm i -g @colbymchenry/codegraph
# o: curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh

# 2. Indexar
cd <proyecto>
codegraph init -i           # crea .codegraph/codegraph.db
codegraph status

# 3. Habilitar MCP en opencode.json (enabled:true)
```

Por defecto el repo Savia trae **`enabled: false`** — Rule #19.

## Herramientas MCP

| Tool | Uso desde Savia |
|---|---|
| `codegraph_search` | query #1 `symbol-search` de ast-comprehension |
| `codegraph_node` | query #2 `impl` |
| `codegraph_callers` | query #3 `callers` (resuelto, no grep) |
| `codegraph_callees` | inverso de callers |
| `codegraph_impact` | análisis pre-edit (sin equivalente nativo) |
| `codegraph_context` | construye contexto — SOLO desde sub-agentes Explore |
| `codegraph_explore` | source de varios símbolos — SOLO desde sub-agentes Explore |
| `codegraph_files` | estructura indexada |
| `codegraph_status` | health del índice |

**Regla operativa** (importada del upstream): `codegraph_context` y
`codegraph_explore` devuelven mucha source y **no** se llaman desde la
sesión principal — se delegan a sub-agentes Explore.

## Uso desde `agent-code-map`

`/codemap:generate` y `/codemap:refresh` invocan `codegraph index --quiet`
y `codegraph status --json`. El generador `.acm` consulta `codegraph_files`
y `codegraph_search` para construir secciones por capa. El hash sha256
del `.acm` incluye versión del índice.

**Fallback**: si CodeGraph no responde, `agent-code-map` cae a grep +
tree-sitter ad-hoc. La integración nunca bloquea.

## Uso desde `ast-comprehension`

Las 6 queries tienen ahora dos backends:

| Query | Backend MCP | Backend grep (fallback) |
|---|---|---|
| `symbol-search` | `codegraph_search` | `grep -rn` |
| `impl` | `codegraph_node --source` | `awk` |
| `callers` | `codegraph_callers` | `grep` + filtro |
| `callees` | `codegraph_callees` | n/a (era debilidad) |
| `tests` | `codegraph_search --kind test` | grep en `__tests__/` |
| `impact` | `codegraph_impact` (nuevo) | n/a |

El agente elige backend en runtime según `codegraph_status`.

## Confidencialidad

`.codegraph/codegraph.db` **debe estar en `.gitignore`** del proyecto —
contiene copia parseable del código y en N4 no puede viajar al repo
público. Ver `docs/rules/domain/codegraph-confidentiality.md`.

`agent-code-map` verifica esto antes de invocar `codegraph index` en
scope N4/N4b. Si `.gitignore` no excluye `.codegraph/`, aborta.

## CLI directo (sin agente)

```bash
codegraph query <symbol> --json
codegraph callers <symbol> --json
codegraph impact <symbol> --depth 2 --json
codegraph affected --stdin   # tests afectados por git diff — útil en CI
```

## Cuándo NO usar

- Proyectos < 500 ficheros (overhead > beneficio).
- Confidencialidad N4b/PM-Only — el índice mezcla todo lo no-gitignored.
- Lenguajes sin tree-sitter relevante (COBOL, JCL, mainframe).
- Sesiones one-shot donde `codegraph init` no se amortiza.

## Referencias

- Repo: <https://github.com/colbymchenry/codegraph> (MIT, activo)
- Skills relacionadas: `agent-code-map`, `ast-comprehension`,
  `human-code-map` (ortogonal), `codebase-map` (ortogonal).
- Regla: `docs/rules/domain/codegraph-confidentiality.md`.

Files in this skill

  • DOMAIN.md2.8 KB
  • SKILL.md4.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…