Agentes

Graph Indexer para Gemini CLI

Añade Graph Indexer a Gemini CLI con npx graph-indexer init, que escribe .gemini/settings.json. Sus esquemas evitan const y additionalProperties.

Actualizado Graph Indexer 3.0.0 Ver en Markdown

Graph Indexer para Gemini CLI es un servidor MCP local que da a Gemini CLI referencias exactas, grafos de llamadas e impacto de cambios. Ejecuta npx graph-indexer init; registra el servidor en .gemini/settings.json bajo mcpServers, y sus esquemas de herramientas están escritos sin const ni additionalProperties, que algunos hosts de la familia Gemini descartan.

¿Cómo añado Graph Indexer a Gemini CLI?

Desde la raíz del repositorio, con Node.js 22.5 o superior:

npx graph-indexer init

init selecciona Gemini CLI cuando el repositorio tiene un directorio .gemini o un archivo GEMINI.md. Si no, elígelo con npx graph-indexer init --agents gemini.

¿Qué escribe npx graph-indexer init para Gemini CLI?

ArchivoContenido
.gemini/settings.jsonUna entrada graph-indexer bajo mcpServers, fusionada con los ajustes existentes
AGENTS.mdUn bloque gestionado con las reglas de búsqueda
.gitignore.graph-indexer/

¿Cuál es la configuración manual de Gemini CLI?

La entrada de .gemini/settings.json es un servidor stdio estándar:

{
  "mcpServers": {
    "graph-indexer": {
      "command": "npx",
      "args": ["-y", "graph-indexer@3", "serve"]
    }
  }
}

Sin --repo, el servidor indexa el repositorio git que contiene el directorio de trabajo de Gemini CLI. También puedes definir la variable de entorno GRAPH_INDEXER_REPO.

¿Por qué importan los esquemas de herramientas en Gemini CLI?

Con Gemini CLI aparece una rareza que otros agentes no tienen: algunos hosts de la familia Gemini descartan las herramientas MCP cuyos esquemas JSON contienen const o additionalProperties. El servidor MCP de Graph Indexer 3.0 implementa el protocolo sin SDK y escribe esquemas de entrada que no usan ninguna de las dos palabras, así que no desaparece ninguna de las ocho herramientas. Si falta una herramienta en otro host Gemini, revisa primero su lista de servidores MCP.

¿Qué gana Gemini CLI con Graph Indexer?

Gemini CLI recibe ocho herramientas de solo lectura por stdio, con respuestas en texto plano de entre 400 y 1.500 tokens.

  • find_references devuelve los usos reales de un símbolo en lugar de cada coincidencia textual, y marca las llamadas hechas a través de tipos base.
  • search_code responde preguntas del tipo “dónde se validan los tokens JWT” con símbolos ordenados por relevancia.
  • change_impact devuelve el radio de impacto de tus cambios sin confirmar cuando se llama con diff.
  • outline da un mapa ordenado de un directorio dentro de un presupuesto de tokens.

En el benchmark de localización sobre 169 commits reales de 5 repositorios, el archivo correcto estuvo entre los 5 primeros resultados en el 80,5 % de las tareas, frente al 76,9 % de una línea base ordenada con grep: un margen pequeño. Los hooks no forman parte de la configuración de Gemini CLI. Mira los benchmarks y la referencia de herramientas.

Preguntas frecuentes

¿Por qué los esquemas de Graph Indexer evitan const y additionalProperties?

Algunos hosts de la familia Gemini descartan las herramientas cuyos esquemas de entrada usan const o additionalProperties. Los esquemas de Graph Indexer omiten ambos para que las ocho herramientas sigan visibles en Gemini CLI.

¿Escribe init en GEMINI.md?

No. Para Gemini CLI, init añade su bloque gestionado a AGENTS.md. Si usas solo GEMINI.md, copia ahí el bloque corto o configura tu entorno para que lea AGENTS.md.

¿Sobrescribe init mi .gemini/settings.json?

No. Añade la entrada graph-indexer bajo mcpServers y conserva el resto de ajustes. Si el archivo tiene comentarios o no es JSON plano, init lo deja intacto e imprime la entrada.

¿Hay hooks para Gemini CLI?

El comando hook reconoce los nombres de herramienta de Gemini CLI, pero init --hooks no escribe una configuración de hooks para Gemini. La integración soportada son las herramientas MCP y el bloque de AGENTS.md.

Pruébalo en tu repo.

npx graph-indexer init
¿Usas Claude Code? Instala el plugin