Esta habilidad necesita Bun. El script usa bun:sqlite.
Traza la cadena de llamadas desde la ubicación de código proporcionada hasta todos los puntos de entrada que pueden alcanzarla.
Idiomas compatibles: cualquier lenguaje indexado por CodeGraph (C#, Java, Kotlin, Go, TypeScript, JavaScript, Rust, C, C++, Vue, JSX, TSX, Terraform, Helm YAML, …)
Entrada: Un nombre de símbolo, ruta de archivo o referencia archivo:línea. Ejemplos:
FindToolNameCollisionsToolsMappingExtensions.cs:145src/services/auth.ts:89CheckCertificate
Requisito: CodeGraph debe estar indexado en este proyecto (el directorio .codegraph/ debe existir). Si falta, indique al usuario que ejecute codegraph init primero.
Pasos
1. Ejecutar el script
El script es scripts/find-call-chain.ts en el directorio base de esta habilidad. Ejecútelo desde la carpeta del proyecto, porque encuentra .codegraph/ desde la carpeta actual:
bun <directorio-base-de-la-habilidad>/scripts/find-call-chain.ts "<entrada>"
Muestre la salida completa al usuario tal cual.
2. Múltiples coincidencias de símbolo
Si el script imprime "Multiple symbols matched", enumere los candidatos mostrados y pida al usuario que vuelva a ejecutar con una referencia archivo:línea para el que desee.
3. No se encontró símbolo
Si el script termina con "No symbol found":
- Pruebe con ortografías alternativas o una referencia
archivo:línea - Verifique que CodeGraph esté actualizado:
codegraph index
Detección de nodos terminales (incorporada en el script — no requiere criterio del LLM)
El script detiene la exploración de una rama cuando:
| Condición | Ejemplos |
|---|---|
kind = route (nativo de CodeGraph) | Nodo de ruta de cualquier framework |
| Coincidencia de patrón de nombre de lenguaje | *Controller (C#/Java), *Activity (Kotlin), main (Go/Rust/C), *Page/*Route (TS/JS) |
| No se encontraron llamantes | Nodo hoja en el grafo de llamadas |
| Límite de profundidad (6 saltos) | Marcado ⚠ límite de profundidad en el árbol |
| Ciclo detectado | Marcado ⟳ ciclo en el árbol |