by scheidydude
Repo dependency analyzer with **blast-radius impact scoring** for AI-assisted development.
# Add to your Claude Code skills
git clone https://github.com/scheidydude/codeindexGuides for using mcp servers skills like codeindex.
Last scanned: 5/30/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-30T15:22:20.944Z",
"npmAuditRan": true,
"pipAuditRan": true
}codeindex is an open-source mcp servers skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by scheidydude. Repo dependency analyzer with **blast-radius impact scoring** for AI-assisted development. It has 268 GitHub stars.
Yes. codeindex passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/scheidydude/codeindex" and add it to your Claude Code skills directory (see the Installation section above).
codeindex is primarily written in Python. It is open-source under scheidydude on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other MCP Servers skills you can browse and compare side by side. Open the MCP Servers category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh codeindex against similar tools.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
Temporal code knowledge graph with blast-radius impact scoring, semantic symbol search, and git-history-aware dependency analysis — for AI-assisted development.
Point it at any project — Python, JavaScript/TypeScript, Go, Ruby, Rust, Java, PHP, and more — and get:
<repo>/.codeindex/index.db — incremental, queryable, temporalcodeindex.json dependency index written directly into your repo (preserved for backward compatibility)symbolindex.json symbol map so AI can find any function/class without scanning every fileNo build step. No npm. Zero required runtime dependencies — SQLite is stdlib.
pip install codeindex
Or from source:
git clone https://github.com/scheidydude/codeindex
cd codeindex
pip install -e .
# Build the dependency index (also writes to .codeindex/index.db)
codeindex analyze ./myapp
# Build the symbol index (where every function and class lives)
codeindex symbols ./myapp
# See blast radius for a file before touching it
codeindex impact src/auth.py
# Search symbols with natural language (no embedding endpoint needed — FTS fallback)
codeindex search "validate auth token"
# See what changed since a release tag
codeindex changed-since v1.2.0
# Launch the visualization UI
codeindex serve --viz --repo ./myapp
open http://localhost:8080
codeindex analyzecodeindex analyze [REPO_PATH] [--output PATH] [--watch]
Analyzes the repo and writes codeindex.json to the repo root. Detects 12+ languages automatically.
| Flag | Default | Description |
|---|---|---|
REPO_PATH |
. |
Path to repo root |
--output |
<repo>/codeindex.json |
Override output path |
--watch |
off | Re-index on file changes (requires watchdog) |
codeindex symbolscodeindex symbols [REPO_PATH] [--output PATH] [--inline] [--index PATH]
[--claude-md] [--claude-md-path PATH] [--all-symbols]
Builds a symbol index — a map of every function, class, struct, and type to its exact file and line number. Lets AI tools (and humans) find any symbol in one lookup instead of scanning the entire repo.
Modes:
| Flag | Description |
|---|---|
| (none) | Write a standalone symbolindex.json |
--inline |
Embed symbols into each node in codeindex.json instead |
--claude-md |
Append a compressed symbol summary to CLAUDE.md |
Both --inline and --claude-md can be combined in a single run.
Options:
| Flag | Default | Description |
|---|---|---|
REPO_PATH |
. |
Path to repo root |
--output |
<repo>/symbolindex.json |
Output path (standalone mode) |
--index |
auto-discovered | Path to codeindex.json (for --inline) |
--claude-md-path |
<repo>/CLAUDE.md |
Override CLAUDE.md path |
--all-symbols |
off | Include non-exported symbols in CLAUDE.md (default: exported only) |
Examples:
# Standalone symbol index
codeindex symbols ./myapp
# Embed into codeindex.json (one file for blast radius + symbols)
codeindex symbols ./myapp --inline
# Write CLAUDE.md summary so Claude Code loads symbols automatically
codeindex symbols ./myapp --claude-md
# All three at once
codeindex symbols ./myapp --inline --claude-md
# Re-generate when code changes
codeindex symbols ./myapp --inline --claude-md
Why it matters: Claude Code and other AI tools normally scan every file to find a function definition. With a symbol index, Claude can load one file, do an O(1) lookup, and open only the relevant file — cutting token usage 60–90% on symbol-location tasks.
CLAUDE.md injection is opt-in because it increases base context size on every prompt. Use it when symbol lookups are frequent in your workflow; skip it for simple tasks where the overhead outweighs the benefit.
codeindex impactcodeindex impact FILE [--index PATH] [--out FILE] [--json] [--as-of REF]
Shows the blast-radius impact for a specific file: direct dependents, transitive dependents, blast score, and risk level.
Impact: src/auth.py
Blast Score: 8.5 (2 direct · 7 transitive) [HIGH]
Direct dependents (2)
src/api.py
src/middleware.py
Transitive dependents (5 additional)
src/main.py ← src/api.py
src/app.py ← src/middleware.py
...
Risk: HIGH — affects 7/42 files (16.7% of codebase)
Blast score formula: direct + (0.5 × transitive)
| Flag | Description |
|---|---|
--index PATH |
Path to codeindex.json (auto-discovered if omitted) |
--out FILE |
Write a markdown report to this file |
--json |
Output raw JSON |
--as-of REF |
Compute blast radius at a historical commit/ref instead of HEAD |
codeindex searchcodeindex search QUERY [--k N] [--as-of REF] [--db PATH] [--json]
Hybrid semantic + keyword + graph symbol search. Finds relevant functions and classes without knowing their exact names.
Retrieval signals fused with Reciprocal Rank Fusion (RRF):
codeindex[semantic] + a configured endpoint)Degrades gracefully: if no embedding endpoint is configured, falls back to FTS + graph (no crash, no config needed).
# Keyword + graph search (no embedding setup required)
codeindex search "validate auth token"
# Full semantic search (requires CODEINDEX_EMBEDDING_* env vars)
CODEINDEX_EMBEDDING_ENDPOINT=http://localhost:11434 \
CODEINDEX_EMBEDDING_MODEL=nomic-embed-text \
CODEINDEX_EMBEDDING_DIMS=768 \
codeindex search "validate auth token"
# Historical search — symbols visible at a release tag
codeindex search "token validation" --as-of v1.2.0
| Flag | Default | Description |
|---|---|---|
QUERY |
— | Natural-language or keyword query |
--k N |
10 |
Number of results to return |
--as-of REF |
HEAD | Restrict to symbols visible at this commit/ref |
--db PATH |
auto-discovered | Path to .codeindex/index.db |
--json |
off | Output raw JSON |
codeindex historycodeindex history [REPO_PATH] [--since REF] [--max-commits N] [--json]
Backfills temporal graph data from git history — without any working-tree checkouts. Reads blobs via git cat-file --batch and stamps first_seen_commit / last_seen_commit on every file, edge, and symbol.
Run this once after initial setup to enable --as-of queries across the full history.
# Backfill up to 1000 commits (default)
codeindex history .
# Backfill only recent history
codeindex history . --since v1.0.0 --max-commits 200
| Flag | Default | Description |
|---|---|---|
REPO_PATH |
. |
Path to repo root |
--since REF |
— | Only process commits after this date/ref |
--max-commits N |
1000 |
Maximum commits to process |
--json |
off | Output summary as JSON |
codeindex changed-sincecodeindex changed-since REF [--repo PATH] [--db PATH] [--json]
Lists files and dependency edges added or removed since a commit, branch, or tag.
$ codeindex changed-since v1.2.0
Changes since v1.2.0:
Added files (2):
+ src/payments/stripe.py
+ src/payments/webhook.py
Removed edges (1):
- src/api.py → src/auth_v1.py [imports]
| Flag | Default | Description |
|---|---|---|
REF |
— | Commit hash, branch, or tag to compare against |
--repo PATH |
. |
Repo root (for git operations) |
--db PATH |
auto-discovered | Path to .codeindex/index.db |
--json |
off | Output raw JSON |
codeindex dbcodeindex db status [--db PATH] [--json]
codeindex db migrate [--db PATH]
Manages the SQLite store at <repo>/.codeindex/index.db.
$ codeindex db status
schema_version : 2
repo_root : /Users/alice/myapp
last_indexed_commit : a3f2e1c8
active_files : 142
active_edges : 387
active_symbols : 1204
embedding_model : nomic-embed-text
embedding_dims : 768
vec_symbols : enabled
db migrate applies any pending schema migrations automatically (also runs on every codeindex analyze).
codeindex servecodeindex serve --viz [--repo PATH] [--port PORT] [--watch]
codeindex serve --mcp
--viz launches an interactive visualization UI in your browser (5 modes: 2D force graph, 3D network, dependency matrix, treemap, infrastructure graph).
--mcp starts a stdio MCP server that exposes codeindex tools directly to Claude and other MCP clients.
MCP tools:
| Tool | Description |
|---|---|
analyze_repo |
Build or refresh the dependency index |
get_impact |
Blast-radius report for a file |
get_dependencies |
imports + imported-by for a file |
get_high_blast_files |
All files above a blast score threshold |
build_symbol_index |
Build or refresh the symbol index |
lookup_symbol |
Find where any function/class/type is defined (file + line) |
semantic_search |
Hybrid semantic + keyword + graph symbol search; degrades gracefully without embeddings |
temporal_impact |
Blast-radius at a historical commit/ref (as_of parameter) |
graph_query |
k-hop dependency neig |