Philosophy

insrc exists to make AI-assisted engineering on large, long-lived codebases grounded, structured and traceable — the opposite of ad-hoc grep → guess → patch. An assistant is only as good as its model of your code and the discipline around the changes it makes. insrc supplies both: a citation-grounded index of the codebase, and a tracked workflow that leaves an auditable trail from the first ask to the merged change.

ask→ grounded understanding→ tracked change→ auditable record

The failure mode we designed against

On a small project an assistant can hold the whole thing in context and mostly get away with improvising. On a large or old codebase that breaks down, and the failures compound:

Speed without structure produces drift. insrc trades a little ceremony for correctness and a durable trail — because on a system that has to live for years, that is the cheaper trade.

Grounding over guessing

Understanding comes first. insrc parses your repositories into a typed entity/relation graph plus a vector index, and every answer is built from that store rather than from a blind file read:

Better understanding is the multiplier. Once the assistant reasons over a real index instead of guesses, everything downstream — the design, the plan, the code, the review — inherits that accuracy. A wrong premise is the most expensive bug; grounding kills it at the source.

Structure scales; improvisation doesn't

The core guarantee is simple: every change, big or small, is tracked. A natural-language ask is sized and routed by triage, then flows through an authoring pipeline that maps 1:1 to the software-engineering ladder every team already knows — Epic → Story → Task:

brainstorm→ define→ design.epic→ design.story→ plan→ build→ code-review

The payoff is that a large effort decomposes into reviewable slices with explicit boundaries — the same reason teams break work into epics and stories in the first place, now enforced for the assistant too.

Traceability & compliance

Because each stage writes a persistent, cited artifact, the chain is the audit trail. From any merged change you can walk backward to the plan that produced it, the design that shaped it, the definition that framed it, and the review that gated it — each one a file that outlives the session:

ArtifactAnswers
DEF — definitionWhat problem, which non-goals, what constraints, which stories.
HLD / LLD — designThe chosen shape, the alternatives considered and rejected, the contracts, the error paths, the rollout.
PLAN — ordered tasksThe sequenced, sized, dependency-labelled units of work.
BUILD / CR — change + reviewThe commits and the independent code review that gated completion.

Documentation that can't drift

Hand-written docs rot the moment the code moves. insrc closes the gap from both ends:

Accuracy is the product

The principles below are non-negotiable — they are what the rest is built to protect:

non-negotiable
  • Accuracy is primary; cost is the least priority. Given an accurate-but-expensive path and a cheap-but-lossy one, insrc chooses accuracy — more explorations, bigger context, a slower pipeline. No stage is skipped and no LLM call is parallelised to save turns.
  • Local-first. Embeddings are computed locally by Ollama; the graph and vectors live on your disk under ~/.insrc/. Your code is indexed on your machine.
  • No direct cloud REST. Cloud LLM access happens only through your installed claude and codex CLI binaries — auth and quota stay with your own CLI OAuth sessions, and no API keys are stored.
  • No raw file dumps. Context is always structured entity summaries and relations from the graph, never a blind file paste.

Where next