Débogage avec GitNexus

VérifiéPrudence

Utilisez GitNexus pour tracer les erreurs, analyser les flux d'exécution et déboguer le code efficacement.

Spar Skills Guide Bot
DeveloppementIntermédiaire
22/07/2026
Claude Code
#debugging#code-graph#call-graph#root-cause-analysis#gitnexus

Recommandé pour

Synthèse automatique

Ce skill guide Claude pour utiliser les outils GitNexus (query, context, cypher) afin de tracer un bug à travers le graphe d'appels et identifier sa cause racine.

Points forts

  • Workflow structuré en quatre étapes, de la recherche par symptôme à la confirmation dans le code source
  • Tableau de correspondance symptôme/approche couvrant erreurs, régressions, performances et échecs intermittents
  • Requêtes Cypher personnalisées pour tracer des chaînes d'appels précises
  • Exemple concret de bout en bout sur un endpoint de paiement renvoyant une erreur 500

Limites

  • Fortement dépendant de l'index GitNexus du dépôt, qui doit être à jour et nécessite un serveur d'embeddings LM Studio
  • Suppose que les outils gitnexus_query, gitnexus_context et gitnexus_cypher sont déjà configurés et accessibles
  • Ne couvre pas le diagnostic hors du graphe de code, comme les problèmes d'infrastructure ou de configuration
Quand l'utiliser

À utiliser lorsqu'un bug ou un comportement inattendu doit être tracé dans une base de code indexée par GitNexus et que l'on veut comprendre les flux d'exécution concernés.

Quand l'éviter

À éviter sur un dépôt sans index GitNexus à jour ou pour des problèmes sans lien avec le code, tels que des pannes d'infrastructure.

Analyse de sécurité

Prudence
Score qualité80/100

The content is a debugging playbook for a code-graph tool. It contains no destructive commands, no network exfiltration, no credential handling, and no obfuscation; the only executable instruction is a local re-index command via direnv, which is legitimate but does load repo-controlled environment scripts. Because it directs shell execution without declaring tools, it warrants caution rather than a clean safe rating.

Points d'attention
  • •No allowed-tools declared, yet the skill instructs running a shell command: `direnv exec . gitnexus analyze --embeddings --skip-agents-md` (local indexing only, but it executes code via .envrc/direnv, which auto-trusts repo-provided environment scripts)
  • •Depends on external tooling (gitnexus MCP-style tools, LM Studio embedding server) whose behavior is outside the skill's control
  • •Includes a raw Cypher query passed to gitnexus_cypher; read-only pattern, but query execution is agent-driven
Comment cette analyse est faite

Exemples

Erreur 500 intermittente
Mon endpoint de paiement renvoie parfois une erreur 500. Trace le flux d'exécution et trouve la cause racine.
Origine d'une exception
D'où vient cette PaymentException ? Qui appelle validatePayment et quelles dépendances externes sont impliquées ?
Régression récente
J'ai fait des changements récemment et quelque chose s'est cassé. Utilise detect_changes pour voir ce que mes modifications affectent.

name: gitnexus-debugging description: "Use when the user is debugging a bug, tracing an error, or asking why something fails. Examples: "Why is X failing?", "Where does this error come from?", "Trace this bug""

Debugging with GitNexus

When to Use

  • "Why is this function failing?"
  • "Trace where this error comes from"
  • "Who calls this method?"
  • "This endpoint returns 500"
  • Investigating bugs, errors, or unexpected behavior

Workflow

1. gitnexus_query({query: "<error or symptom>"})            → Find related execution flows
2. gitnexus_context({name: "<suspect>"})                    → See callers/callees/processes
3. READ gitnexus://repo/{name}/process/{name}                → Trace execution flow
4. gitnexus_cypher({query: "MATCH path..."})                 → Custom traces if needed

If "Index is stale" in this repo, run direnv exec . gitnexus analyze --embeddings --skip-agents-md from the repo root after the LM Studio embedding server is running.

Checklist

- [ ] Understand the symptom (error message, unexpected behavior)
- [ ] gitnexus_query for error text or related code
- [ ] Identify the suspect function from returned processes
- [ ] gitnexus_context to see callers and callees
- [ ] Trace execution flow via process resource if applicable
- [ ] gitnexus_cypher for custom call chain traces if needed
- [ ] Read source files to confirm root cause

Debugging Patterns

| Symptom | GitNexus Approach | | -------------------- | ---------------------------------------------------------- | | Error message | gitnexus_query for error text → context on throw sites | | Wrong return value | context on the function → trace callees for data flow | | Intermittent failure | context → look for external calls, async deps | | Performance issue | context → find symbols with many callers (hot paths) | | Recent regression | detect_changes to see what your changes affect |

Tools

gitnexus_query — find code related to error:

gitnexus_query({query: "payment validation error"})
→ Processes: CheckoutFlow, ErrorHandling
→ Symbols: validatePayment, handlePaymentError, PaymentException

gitnexus_context — full context for a suspect:

gitnexus_context({name: "validatePayment"})
→ Incoming calls: processCheckout, webhookHandler
→ Outgoing calls: verifyCard, fetchRates (external API!)
→ Processes: CheckoutFlow (step 3/7)

gitnexus_cypher — custom call chain traces:

MATCH path = (a)-[:CodeRelation {type: 'CALLS'}*1..2]->(b:Function {name: "validatePayment"})
RETURN [n IN nodes(path) | n.name] AS chain

Example: "Payment endpoint returns 500 intermittently"

1. gitnexus_query({query: "payment error handling"})
   → Processes: CheckoutFlow, ErrorHandling
   → Symbols: validatePayment, handlePaymentError

2. gitnexus_context({name: "validatePayment"})
   → Outgoing calls: verifyCard, fetchRates (external API!)

3. READ gitnexus://repo/my-app/process/CheckoutFlow
   → Step 3: validatePayment → calls fetchRates (external)

4. Root cause: fetchRates calls external API without proper timeout

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/debugging-with-gitnexus-mrwakfv0/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/debugging-with-gitnexus-mrwakfv0' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/debugging-with-gitnexus-mrwakfv0/download' --output '.skill-downloads/debugging-with-gitnexus-mrwakfv0/SKILL.md.part' && mv '.skill-downloads/debugging-with-gitnexus-mrwakfv0/SKILL.md.part' '.skill-downloads/debugging-with-gitnexus-mrwakfv0/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/debugging-with-gitnexus-mrwakfv0/SKILL.md' && test -s '.skill-downloads/debugging-with-gitnexus-mrwakfv0/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/gitnexus-debugging' && cp -R '.skill-downloads/debugging-with-gitnexus-mrwakfv0' '.claude/skills/gitnexus-debugging'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/debugging-with-gitnexus-mrwakfv0'

openskills read 'debugging-with-gitnexus-mrwakfv0'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/debugging-with-gitnexus-mrwakfv0/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires