Skip to content

Latest commit

 

History

622 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graph-It-Live

Graph-It-Live logo

See your codebase as a graph — in VS Code, your CLI, and your AI assistant.

Version VS Code installs Open VSX Open VSX Downloads npm License

Graph-It-Live analyzes imports, symbols, calls, cycles, unused exports, and change impact. Use it as a VS Code extension, a standalone CLI, or an MCP/native tool provider for GitHub Copilot and other AI clients. Analysis runs locally and returns evidence from your codebase.

Table of Contents

What it does

Graph-It-Live provides three views of a codebase:

View Answers Analysis layer
File graph Which files import this file? What depends on this module? Regex and AST parsing
Symbol view Which functions and classes call each other in this file? AST analysis
Live call graph Which symbols call each other across files? Tree-sitter and SQLite

Use the same graph data to navigate code, review refactors, generate codemaps, and give AI assistants focused context instead of entire source files.

Graph-It-Live dependency graph

Quick start

VS Code extension

Requirements: VS Code 1.96 or later. Install from the VS Code Marketplace or Open VSX.

  1. Open a project.
  2. Open the Graph-It-Live view from the Activity Bar.
  3. Run Graph-It-Live: Show Dependency Graph from the Command Palette.
  4. Click a file to open it, double-click it for the Symbol View, or use Show Call Graph for cross-file calls.

Supported projects include TypeScript, JavaScript, Python, Rust, C#, Go, Java, Vue, Svelte, and GraphQL.

First useful actions

Goal Action
Explore imports Open the dependency graph and expand a file node
Inspect functions Switch to Symbol View or double-click a file
Find callers Open Show Call Graph with a symbol selected
Find reverse dependencies Use Show Reverse Dependencies
Hide unused imports Enable Filter Unused Dependencies
Refresh analysis Run Refresh Graph or Force Graph-It-Live re-index

Features

File dependency graph

  • Visualize file-to-file imports across a workspace.
  • Detect circular dependencies and highlight cycles.
  • Expand and collapse nodes as you explore.
  • Open files directly from graph nodes.
  • Find reverse dependencies with an indexed lookup.

Symbol View

Drill into TypeScript, JavaScript, Python, or Rust files to see functions, classes, variables, outgoing calls, incoming callers, and recursive calls. Click a symbol to navigate to its definition.

Graph-It-Live Symbol View

Live Call Graph

The Live Call Graph shows cross-file symbol relationships in a Cytoscape.js panel.

  • Expand callers and callees with a depth from 1 to 5.
  • Group symbols by folder.
  • Number calls in invocation order.
  • Highlight self-recursion and mutual recursion.
  • Filter by symbol type or folder.
  • Refresh automatically after file saves.
Graph-It-Live live call graph

The Live Call Graph supports TypeScript, JavaScript, Vue, Svelte, Python, Rust, C#, Go, and Java. C#, Go, and Java are supported in the file graph and Live Call Graph; Symbol View support is currently limited to TypeScript, JavaScript, Python, and Rust.

Unused dependencies and impact analysis

  • Hide or dim unused dependencies.
  • Detect unused exported symbols.
  • Trace execution from a function or symbol.
  • Identify callers affected by a signature change.
  • Generate a codemap with exports, internals, dependencies, dependents, and call flow.
Unused dependencies hidden from the graph Unused dependencies dimmed in the graph

Standalone CLI

Use the same analysis engine without VS Code. Install it globally:

npm install -g @magic5644/graph-it-live

Or run it with npx:

npx @magic5644/graph-it-live scan

Common commands:

graph-it scan                         Index the workspace
graph-it summary                      Show a workspace overview
graph-it summary <file>               Generate a file codemap
graph-it trace <file#Symbol>          Trace execution from a symbol
graph-it explain <file>               Explain intra-file call flow
graph-it path <file>                  Show a dependency path
graph-it check [path]                 Find unused exported symbols
graph-it query "<question>"           Ask a natural-language graph question
graph-it context "<question>"         Retrieve bounded graph context
graph-it wiki                         Generate a navigable Markdown wiki
graph-it serve                        Start the MCP stdio server
graph-it export [path]                Export the graph as HTML
graph-it --help                       Show all commands and options

Analysis commands support --format json|toon|markdown. trace and path also support --format mermaid. Use --workspace <path> or -w to analyze a project other than the current directory.

See the complete CLI reference, including installation troubleshooting, REPL commands, output formats, and tool details.

Unified graph context

graph-it context combines imports, symbols, calls, tests, impact, paths, hubs, and communities in one bounded response. It supports search, neighbors, path, impact, refactor, and overview modes.

graph-it context "what calls the request handler" --scope 'src/**' --format toon
graph-it context --mode path --from src/api.ts#handle --to src/db.ts#query
graph-it context --mode impact --seeds src/api.ts#handle --depth 3 --format json

Use --detail compact and --token-budget for agent-oriented responses. See the TOON format specification for the output format and measurement protocol.

AI integrations

Graph-It-Live exposes local graph analysis to GitHub Copilot, Claude, Cursor, Windsurf, Antigravity, and other MCP-compatible clients.

Native Copilot tools

When the extension is installed, use these tools in Copilot Agent mode without configuring MCP:

Tool group Capabilities
Navigation Dependencies, reverse dependencies, imports, module resolution, workspace index status
Symbols Symbol graphs, callers, dependents, execution traces
Refactoring Breaking changes, impact analysis, unused symbols, dead-code scans
Context File logic, codemaps, unified graph context, natural-language graph queries
Call graph Cross-file caller/callee queries and neighbourhood expansion

The graph-context tool is available as #graphContext. Other native references include #graphDeps, #graphFindRefs, #graphCallers, #graphImpact, #graphCodemap, #graphTrace, #graphDeadCode, and #graphQuery.

MCP server

The MCP server exposes 27 graph-analysis tools. Enable it in VS Code with graph-it-live.enableMcpServer, or start it from the CLI:

graph-it serve

For VS Code, add .vscode/mcp.json:

{
  "servers": {
    "graph-it-live": {
      "type": "stdio",
      "command": "graph-it",
      "args": ["serve"],
      "env": {
        "WORKSPACE_ROOT": "${workspaceFolder}"
      }
    }
  }
}

For Cursor, use .cursor/mcp.json with the same server definition under mcpServers instead of servers. The same graph-it serve command works with Claude Desktop, Claude Code, Windsurf, and Antigravity. See the CLI/MCP documentation for client-specific configuration and environment variables.

For Codex CLI:

codex mcp add graph-it-live --env WORKSPACE_ROOT=/path/to/project -- graph-it serve

Portable agent plugin

The plugins/graph-it-live/ directory is the portable Agent Plugin package. It bundles the MCP server and four skills: graph-it-live, onboarding-express, dead-code-hunter, and pr-review. Install it with the client you use:

Claude Code

From Claude Code, add the repository marketplace and install the plugin:

claude plugin marketplace add magic5644/Graph-It-Live
/plugin install graph-it-live@graph-it-live

For a local checkout, start a session with claude --plugin-dir ./plugins/graph-it-live.

GitHub Copilot CLI

copilot plugin marketplace add magic5644/Graph-It-Live
copilot plugin install graph-it-live@graph-it-live

VS Code

  1. Open the Command Palette.
  2. Run Chat: Install Plugin From Source.
  3. Select plugins/graph-it-live/.

The VS Code extension itself remains available from the VS Code Marketplace and Open VSX.

Cursor

Open the Plugins panel, choose Install from local source, and select plugins/graph-it-live/.

Codex

Add the repository's Codex marketplace catalog to a configured plugin marketplace, then open /plugins in Codex and install Graph-It-Live.

Windsurf, Antigravity, and other MCP clients

These clients can use the MCP server directly. Add this server entry to the client's MCP configuration:

{
  "graph-it-live": {
    "type": "stdio",
    "command": "npx",
    "args": ["-y", "@magic5644/graph-it-live@latest", "serve"]
  }
}

Use the client's MCP configuration file and its expected top-level key (servers or mcpServers). See the MCP server instructions for ready-to-copy VS Code, Cursor, and Codex examples.

The repository also includes marketplace catalogs for Claude Code and Codex. The MCP entry resolves @magic5644/graph-it-live@latest, keeping the CLI and MCP server in the same npm release; a workflow synchronizes plugin and marketplace versions after each npm publish.

Agent skill

Install the Graph-It-Live skill for an AI agent:

npx skills add magic5644/skills/graph-it-live

The skill documents graph queries, codemaps, impact analysis, dead-code detection, and safe refactoring workflows.

Configuration

Set these options in VS Code settings:

Setting Default Purpose
graph-it-live.performanceProfile default Select default, low-memory, high-performance, or custom
graph-it-live.enableMcpServer false Enable the built-in MCP server
graph-it-live.maxDepth 50 Limit dependency traversal depth
graph-it-live.excludeNodeModules true Exclude dependencies from node_modules
graph-it-live.enableBackgroundIndexing true Build reverse-dependency indexes in the background
graph-it-live.unusedDependencyMode hide Hide or dim unused dependencies
graph-it-live.preIndexCallGraph true Pre-index the Live Call Graph
graph-it-live.symbolViewLayout hierarchical Select hierarchical, force-directed, or radial

For concurrency, cache, persistence, logging, and unused-analysis settings, see the development guide.

CI review gate

The graph-it review-pr command performs a deterministic local Git diff review before CI. It compares exported TypeScript and JavaScript signatures, follows bounded dependent-symbol impact, and reports cycle evidence, unused exports, test candidates, and consumer standing. Consumers are classified as updated in the diff, covered by a test path, or unverified. The score reflects the highest-risk changed symbol; a high risk is report data, not a failing exit status.

By default, --base <ref> is compared with the current working tree, including staged and unstaged file contents. Pass --head <ref> to compare two Git refs. Use --depth and --max-files to bound impact traversal and changed-file analysis. See the review-pr CLI reference for scoring thresholds, output formats, limitations, and examples.

The reusable GitHub Action is informational by default. Set fail-on-risk: high or critical to gate a pull request. Add it to a consumer workflow with docs/examples/graph-it-review-gate.yml.

Use pull_request, not pull_request_target, for untrusted pull requests. The action analyzes the consumer checkout in an isolated temporary directory and sends only a sanitized report to GitHub.

Supported languages

Language File graph Symbol View Live Call Graph
TypeScript / JavaScript Yes Yes Yes
Vue / Svelte Yes Yes Yes
Python Yes Yes Yes
Rust Yes Yes Yes
C# / Go / Java Yes No Yes
GraphQL Yes No No

Documentation

Development

Requirements: Node.js 22 or later and npm.

git clone https://github.com/magic5644/Graph-It-Live.git
cd Graph-It-Live
npm install
npm run build

Press F5 in VS Code to launch the Extension Development Host.

Command Purpose
npm run build Build the extension and copy WASM assets
npm test Run unit tests
npm run test:cli Run CLI tests
npm run test:vscode Run VS Code E2E tests
npm run lint Run ESLint
npm run check:types Run strict TypeScript checks
npm run package Build the VSIX package
npm run package:verify Verify package contents

See DEVELOPMENT.md for the full project structure, test strategy, WASM details, and troubleshooting.

License

MIT. See LICENSE.

Language icons are provided by SuperTinyIcons under the CC0-1.0 license.

Star History

Star History Chart