Exploring Codebases with GitNexus
When to Use
-
"How does authentication work?"
-
"What's the project structure?"
-
"Show me the main components"
-
"Where is the database logic?"
-
Understanding code you haven't seen before
Workflow
- READ gitnexus://repos → Discover indexed repos
- READ gitnexus://repo/{name}/context → Codebase overview, check staleness
- gitnexus_query({query: "<what you want to understand>"}) → Find related execution flows
- gitnexus_context({name: "<symbol>"}) → Deep dive on specific symbol
- READ gitnexus://repo/{name}/process/{name} → Trace full execution flow
If step 2 says "Index is stale" → run npx gitnexus analyze in terminal.
Checklist
- READ gitnexus://repo/{name}/context
- gitnexus_query for the concept you want to understand
- Review returned processes (execution flows)
- gitnexus_context on key symbols for callers/callees
- READ process resource for full execution traces
- Read source files for implementation details
Resources
Resource What you get
gitnexus://repo/{name}/context
Stats, staleness warning (~150 tokens)
gitnexus://repo/{name}/clusters
All functional areas with cohesion scores (~300 tokens)
gitnexus://repo/{name}/cluster/{name}
Area members with file paths (~500 tokens)
gitnexus://repo/{name}/process/{name}
Step-by-step execution trace (~200 tokens)
Tools
gitnexus_query — find execution flows related to a concept:
gitnexus_query({query: "payment processing"}) → Processes: CheckoutFlow, RefundFlow, WebhookHandler → Symbols grouped by flow with file locations
gitnexus_context — 360-degree view of a symbol:
gitnexus_context({name: "validateUser"}) → Incoming calls: loginHandler, apiMiddleware → Outgoing calls: checkToken, getUserById → Processes: LoginFlow (step 2/5), TokenRefresh (step 1/3)
Example: "How does payment processing work?"
- READ gitnexus://repo/my-app/context → 918 symbols, 45 processes
- gitnexus_query({query: "payment processing"}) → CheckoutFlow: processPayment → validateCard → chargeStripe → RefundFlow: initiateRefund → calculateRefund → processRefund
- gitnexus_context({name: "processPayment"}) → Incoming: checkoutHandler, webhookHandler → Outgoing: validateCard, chargeStripe, saveTransaction
- Read src/payments/processor.ts for implementation details