mcpField
G
gitnexus-cli

gitnexus-cli

github.com/arenukvernDevelopment39447 installsUpdated 2w ago
Repository

About gitnexus-cli

A command-line skill for operating GitNexus indexes in a repository: analyze source code, check index status, clean indexes, generate graph-based documentation, and list indexed repositories. It helps developers prepare or maintain codebase data for GitNexus exploration.

Key features

  1. 01Build or refresh code indexes
  2. 02Check index freshness
  3. 03Remove repository indexes
  4. 04Generate graph-based documentation
  5. 05List indexed repositories

Use cases

  1. 01Index a repository before code exploration
  2. 02Refresh an index after major changes
  3. 03Check whether an index is stale
  4. 04Generate repository documentation from its graph

MCP support

The skill references GitNexus MCP resources and tools, including `list_repos` and `gitnexus://repo/{name}/context`, for checking indexed repositories and context.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/arenukvern/mcp_flutter --skill gitnexus-cli

After installing, type/gitnexus-cliin Claude Code to confirm it loaded.

Details

From the project README

GitNexus CLI Commands

Commands below use node .gitnexus/run.cjs <command> — the project-local runner gitnexus analyze drops next to the index. It auto-selects an available runner at call time (global gitnexus, else pnpm dlx, else npx), so no package-manager assumption and no global install is required.

Not analyzed yet, or node .gitnexus/run.cjs reports Cannot find module (the gitignored runner is absent — e.g. a fresh clone or git clean)? (Re)generate it with npx gitnexus analyze from the project root. On npm 11.x, if npx crashes during install (node.target is null), install once with npm i -g gitnexus (then gitnexus analyze) or use pnpm --allow-build=@ladybugdb/core --allow-build=gitnexus --allow-build=tree-sitter dlx gitnexus@latest analyze. See #1939.

Commands

analyze — Build or refresh the index
node .gitnexus/run.cjs analyze

Run from the project root. This parses all source files, builds the knowledge graph, writes it to .gitnexus/, and generates CLAUDE.md / AGENTS.md context files.

FlagEffect
--forceForce full re-index even if up to date
--embeddingsEnable embedding generation for semantic search (off by default)
--drop-embeddingsDrop existing embeddings on rebuild. By default, an analyze without --embeddings preserves them.
--pdgBuild the program-dependence layers used by explain and pdg_query (taint, CDG, and REACHING_DEF).

When to run: First time in a project, after major code changes, or when gitnexus://repo/{name}/context reports the index is stale. In Claude Code, a PostToolUse hook detects staleness after git commit and git merge and notifies the agent to run analyze — the hook does not run analyze itself, to avoid blocking the agent for up to 120s and risking KuzuDB corruption on timeout.

status — Check index freshness
node .gitnexus/run.cjs status

Shows whether the current repo has a GitNexus index, when it was last updated, and symbol/relationship counts. Use this to check if re-indexing is needed.

clean — Delete the index
node .gitnexus/run.cjs clean

Deletes the .gitnexus/ directory and unregisters the repo from the global registry. Use before re-indexing if the index is corrupt or after removing GitNexus from a project.

FlagEffect
--forceSkip confirmation prompt
--allClean all indexed repos, not just the current one
wiki — Generate documentation from the graph
node .gitnexus/run.cjs wiki

Generates repository documentation from the knowledge graph using an LLM. Requires an API key (saved to ~/.gitnexus/config.json on first use).

FlagEffect
--forceForce full regeneration
--model <model>LLM model (default: minimax/minimax-m2.5)
--base-url <url>LLM API base URL
--api-key <key>LLM API key
--concurrency <n>Parallel LLM calls (default: 3)
--gistPublish wiki as a public GitHub Gist
list — Show all indexed repos
node .gitnexus/run.cjs list

Lists all repositories registered in ~/.gitnexus/registry.json. The MCP list_repos tool provides the same information.

After Indexing

  1. Read gitnexus://repo/{name}/context to verify the index loaded
  2. Use the other GitNexus skills (exploring, debugging, impact-analysis, refactoring) for your task

Troubleshooting

  • "Not inside a git repository": Run from a directory inside a git repo
  • Index is stale after re-analyzing: Restart Claude Code to reload the MCP server
  • Embeddings slow: Omit --embeddings (it's off by default) or set OPENAI_API_KEY for faster API-based embedding

Comments

Markdown supported