v0.2.1 · Apache 2.0

Richer context.
Less noise.
Fewer surprises.

Give your agent a structural picture of your codebase — every reference between every definition — before it reads a single file.

then in your project

$ serpentine init
Installs .claude/skills/code-analysis/ and appends to CLAUDE.md. Detected automatically if .claude/ is present.

Without structure, your agent reads until it thinks it knows enough. It usually doesn't. Plans miss dependencies. Changes find new callsites halfway through. The session fills up, quality drops, and you're left fixing code that was already working.

Avoid context rot and get better results.

How it works

Orient first. Then build.

Three calls. That's the whole workflow.

01

Get the lay of the land

$ serpentine stats .

Module names, node counts, rough scale. Your agent knows what it's dealing with before it opens a file.

02

Find what's relevant

$ serpentine catalog . --filter "*auth*"

Every function, class, and variable whose name or location matches — flat, indexed, ready to query.

03

Get the exact subgraph

$ serpentine analyze . --select "+src.auth.*+"

Everything that touches the area you care about: upstream, downstream, or both. No file reads required.

Your agent reads the edges, then opens only the files that matter.

Why it matters

What changes when your
agent knows the structure.

Richer context

Structural orientation before the agent reads a single file. It knows what calls what, what inherits what, what breaks if you change something.

Less noise

Precise subgraphs instead of exploratory file dumps. The agent sees signal, not your entire codebase crammed into a window.

Fewer surprises

Know the blast radius before anything changes. No new dependents mid-implementation. No rework on code that was already working.

The visualization

And while it's building,
you're not blind.

Most agents work in the dark. You ask for a feature, something comes back, you review a diff and hope for the best.

Serpentine's visualization updates in real time as your agent works. New functions appear as they're written. References form — or don't. The shape of the codebase changes in front of you.

serpentine · localhost:8765
Serpentine visualization — interactive code reference graph

You don't have to read every file to know if you like what's being built. This part is for the developers who still want to know what's happening in their codebase. In 2026, that's not everyone. But if it's you, it's here.

Setup

One command to wire it in.

Installs skills, updates config files, and gets out of the way.

$ serpentine init

serpentine init complete (claude):
 .serpentine.yml created
 .gitignore updated
 .claude/skills/code-analysis/SKILL.md installed
 CLAUDE.md updated

From that point on, your agent runs stats, catalog, and analyze before it reads files or writes a plan — not because you told it to this session, but because it's wired in.

Auto-detects which harnesses are in use. Pass --harness to target one explicitly.

Claude CodeCursorCopilotCodexOpenCode

Stop flying blind.
Orient first.

Free, open source, and works with the agents you already use.

Python · JS/TS · Rust Apache 2.0 Built in Rust v0.2.1
Get started → View on GitHub