luuuc / sense Public
Star
v0.62.0·MIT·one binary

Your AI's understanding
of your codebase.

Sense sits on your machine, has no learning curve, and isn't for you. It's for your AI.

$
curl -fsSL https://luuuc.github.io/sense/install.sh | sh
Side-by-side comparison: Without Sense (19 tool calls, 356K tokens, 121s) vs With Sense (5 tool calls, 109K tokens, 48s)
§ 01

What your AI gets

four tools
01 / GRAPH
symbol relationships

Graph

"Who calls this? What implements that?"

Your AI navigates callers, callees, inheritance chains, and test coverage from any symbol, without reading dozens of files to piece the picture together.

// AI calls sense_graph
tool: sense_graph
args: { "symbol": "parseConfig", "callers": true }

cli/main.go:42  main
cli/serve.go:18 startServer
tests/config_test.go:9 TestParse
3 callers · 1 test · depth 2
02 / SEARCH
semantic + keyword

Search

"Find by meaning, not just by string."

Your AI finds relevant code by concept, not just grep patterns. Hybrid keyword + semantic search with bundled embeddings. No API keys, no network.

// AI calls sense_search
tool: sense_search
args: { "query": "retry with backoff" }

0.91 net/http.go:134 WithRetry()
0.87 queue/worker.go:78 ExponentialRetry()
0.72 sync/poll.go:51 PollUntil()
03 / BLAST
change impact

Blast Radius

"What breaks if I change this?"

Before your AI modifies a symbol, it traces direct and transitive callers to know the full surface area of the change. Fewer surprises, fewer broken builds.

// AI calls sense_blast before editing
tool: sense_blast
args: { "symbol": "User.email", "depth": 3 }

direct —— 4 sites
transitive —— 27 sites
tests —— 12 files
touches: auth, billing, notifications
04 / CONVENTIONS
derived patterns

Conventions

"How does this codebase do things?"

Your AI doesn't just write correct code. It writes code that matches how your team writes code. Sense detects patterns in naming, error handling, test structure, and architecture. Derived from the code, not configured.

// AI calls sense_conventions
tool: sense_conventions
args: { "domain": "errors" }

pattern fmt.Errorf("…: %w", err) · 94%
pattern if err != nil { return } · 88%
outlier legacy/db.go · panic()
AI tools don't just struggle with structure. They struggle with style. Convention detection is what makes AI-written code feel like it belongs in your codebase, not just compile against it.
§ 02

What changes

measured

Measured across 7 real-world codebases (Discourse, Flask, Next.js, Axum, Gin, Javalin, Maket, and a private e-commerce repo). Same correctness, dramatically less work. Full methodology and raw data: bench/

-47%
tool calls
-32%
tokens
-19%
session time
+64%
score per 100k tokens

Structural understanding is the product. Measurable efficiency is the proof.

§ 03

How it works

three steps
01 / INSTALL
$ curl -fsSL ... | sh

Single binary, ~40 MB. macOS and Linux (Windows with WSL). No dependencies. No internet required past install. Everything runs locally, your code never leaves your machine.

~40 MBmacOS + Linux + WSLzero depsfully offline
02 / SCAN
$ sense scan

One command indexes your codebase and configures your AI tools. Tree-sitter for structure, ONNX embeddings for meaning. Generates a cold-start summary so your AI knows the shape of the project at session start. Incremental on every run.

claude codecursorany mcp clientincremental
03 / DONE
your AI queries Sense automatically
AI reasoning Before modifying User.email, let me check the blast radius.
sense_blast returns 4 direct callers, 27 transitive.
sense_conventions shows 94% use fmt.Errorf wrapping.
I'll update all call sites and follow the wrapping pattern.

You don't type commands. Your AI picks which tools to call, chains them, and reasons over the results.

json responsescomposableread-only
0.2 ms
graph queries (p50)
0.1 ms
blast radius (p50)
48 ms
cold start
0
external dependencies
§ 04

What Sense brings

clear value

Your AI stops guessing about your codebase structure. It stops reading 30 files to answer "who calls this?" It stops hallucinating dependencies. It stops writing code that doesn't match how your team writes code. Not because the model got better, because it now has the structural understanding a senior engineer carries in their head.

Meaning over strings.

Your AI reasons over actual structure instead of pattern-matching file contents, so it makes fewer wrong assumptions about what connects to what.

Derived, not curated.

The graph rebuilds from your code automatically. No ontology to maintain, no config to tune.

Read-only by design.

Sense observes the codebase. It never modifies it. Safe to install, safe to leave running, safe to connect to any AI tool.

Invisible when it works.

You don't think "Sense answered that." You think "my AI just got better."

Four tools, full stop.

Symbol graph, semantic search, blast radius, convention detection. Sense does these cleanly and resists the gravity toward “do everything.”

Runs on your machine.

Your code, your data, never leaves it. No account, no telemetry, no tier.

§ 05

What Sense is not

sharp edges
×

Not a code editor.

Sense is read-only by design. It observes your codebase but never modifies it. Your editor and your tools stay in control. Read-only is the identity, not a limitation.

×

Not a token optimizer.

Structural understanding is the product. Measurable efficiency is the proof. If LLM costs dropped to zero tomorrow, Sense would still be valuable. Fewer tool calls means fewer wrong turns, not just lower bills.

×

Not a search engine.

Semantic search is one of four tools, not the product. The product is structural understanding that your AI reasons over.

×

Not a feature-count competitor.

Four tools is a choice, not a constraint. Your AI doesn't need 102 tools to choose from. It needs a few that work.

×

Not dependent on anything.

No API keys. No Ollama. No Docker. No Python. The moment Sense requires an external dependency, it loses its clearest advantage.

×

Not a tool you interact with.

You never open a TUI, never type a command, never read Sense output. You notice it in the absence of frustration. Faster answers, fewer wrong turns, code that matches your conventions.