mcpField
G
graph-build

graph-build

github.com/atholaDevelopment34377 installsUpdated 1d ago
Repository

About graph-build

graph-build is a skill for creating or updating a codebase’s structural knowledge graph. It parses code into nodes and relationships, stores the result in SQLite, and reports build statistics.

Key features

  1. 01Full and incremental graph builds
  2. 02Parsing across 20+ languages
  3. 03Extracting code nodes and relationships
  4. 04SQLite storage with SHA-256 change detection
  5. 05JSON build statistics

Use cases

  1. 01Create a graph at the start of a coding session
  2. 02Refresh the graph after code changes
  3. 03Prepare for graph search or blast-radius analysis

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/athola/claude-night-market --skill graph-build

After installing, type/graph-buildin Claude Code to confirm it loaded.

Details

From the project README

Build Code Knowledge Graph

Build or update the .gauntlet/graph.db knowledge graph for the current codebase.

Steps

  1. Detect target: Use the current working directory or a user-specified path.

  2. Check for existing graph: If .gauntlet/graph.db exists, run an incremental update. Otherwise, run a full build.

  3. Run the build script:

    For full build:

    python3 ${CLAUDE_PLUGIN_ROOT}/scripts/graph_build.py <dir>
    

    For incremental update:

    python3 ${CLAUDE_PLUGIN_ROOT}/scripts/graph_build.py <dir> --incremental
    
  4. Report results: Show the JSON output including files parsed, nodes created, edges created, and duration.

  5. Suggest next steps: Recommend searching the graph or running blast radius analysis.

When To Use

  • At the start of a session to build structural awareness
  • After significant code changes to update the graph
  • Before running blast radius analysis or flow tracing
  • When the user asks about codebase structure

When NOT To Use

  • Querying a graph that already exists (use gauntlet:graph-search)
  • Building the challenge knowledge base (use gauntlet:extract)

What Gets Parsed

The graph extracts nodes (File, Class, Function, Type, Test) and edges (CALLS, IMPORTS_FROM, INHERITS, CONTAINS, IMPLEMENTS, TESTED_BY) from 20+ languages including Python, JavaScript, TypeScript, Go, Rust, Java, C/C++, Ruby, and PHP.

Storage

  • Database: .gauntlet/graph.db (SQLite with WAL mode)
  • Auto-creates .gauntlet/.gitignore to prevent commits
  • Incremental updates use SHA-256 hashing to skip unchanged files

Exit Criteria

  • .gauntlet/graph.db exists and is a valid SQLite file after the skill completes; .gauntlet/.gitignore exists to prevent the database from being committed
  • Build report JSON includes all four keys: files_parsed, nodes_created, edges_created, duration; values are non-zero for non-empty codebases
  • Incremental update path used when .gauntlet/graph.db already exists (script invoked with --incremental); full build only on first run
  • Next-step suggestions presented to the user: search the graph or run blast-radius analysis

Comments

Markdown supported