springgraph CLAUDE.md

Project instructions for Springgraph, a local code-intelligence tool that indexes code into a searchable map of files, symbols, and relationships for AI agents.

In plain words
What is it for?
Use them when developing Springgraph, running its Vitest tests, building the npm package, or starting its command-line and MCP services.
Why use it?
They explain how to build, test, run, and evaluate the TypeScript project and its command-line tool.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/jinglonglong/springgraph/claude-md
Clone the repo
git clone --depth 1 https://github.com/jinglonglong/springgraph
Per session 8,257 This file is loaded in full into every session.
When invoked 8,257 The same file — it is already loaded in full.
Security scan C 1 finding. Scan, not verified.
Origin 83% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.08257 $0.08257
Opus 5 $0.04129 $0.04129
Sonnet 5 $0.01651 $0.01651
Haiku 4.5 $0.00826 $0.00826

Measured 2d ago against content hash 81f1d786d249, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade C, and why

springgraph CLAUDE.md scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

npm run clean # rm -rf dist
Origin

This is a copy

83% identical to codegraph CLAUDE.md — 114 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

CLAUDE.md · 270 lines

How it starts

The opening of the file, as written. The whole thing — 270 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project Overview

Springgraph is a local-first code intelligence library + CLI + MCP server. It parses any supported codebase with tree-sitter, stores symbols/edges/files in SQLite (FTS5), and exposes a knowledge graph to AI agents (Claude Code, Cursor, Codex CLI, opencode) over MCP. Per-project data lives in .springgraph/. Extraction is deterministic — derived from AST, not LLM-summarized.

Distributed as @jinglonglong/springgraph on npm; same binary serves as installer, indexer, and MCP server.

Build, Test, Run

npm run build           # tsc + copy schema.sql and *.wasm into dist/; chmods dist/bin/springgraph.js
npm run dev             # tsc --watch
npm run clean           # rm -rf dist

npm test                # vitest run (all)
npm run test:watch
npm run test:eval       # only __tests__/evaluation/
npm run eval            # build then run __tests__/evaluation/runner.ts via tsx

npm run cli             # build then run the local dist binary

# Single test file / pattern
npx vitest run __tests__/installer-targets.test.ts
npx vitest run __tests__/extraction.test.ts -t "TypeScript"

copy-assets (called from build) copies src/db/schema.sql and all src/extraction/wasm/*.wasm files into dist/. Any new SQL or grammar wasm must be copied or it won't ship.

Node engines: >=18.0.0 <25.0.0. There is a hard exit on Node 25.x (see src/bin/node-version-check.ts).

Architecture

Layered pipeline

files → ExtractionOrchestrator (tree-sitter) → DB (nodes/edges/files)
              ↓
       ReferenceResolver (imports, name-matching, framework patterns)
              ↓
       GraphQueryManager / GraphTraverser (callers, callees, impact)
              ↓
       ContextBuilder (markdown/JSON for AI consumption)

The public API surface is src/index.ts — the Springgraph class wires all the layers and re-exports types. Library users only touch this file; the MCP server and CLI also drive it.

Read the full file on GitHub · 270 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 270 lines · 8,257 tokens per session scan C 81f1d786d249

Subscribe to this mod's changes

springgraph CLAUDE.md is an instructions file published in the GitHub repository jinglonglong/springgraph (3 stars, last pushed 2mo ago), licensed MIT. It adds 8,257 tokens to every session, about $0.0413 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). It is 83% identical to codegraph CLAUDE.md, differing in 114 lines, and is treated as a copy.