Skip to content

Identity, not specs. The delta, not the document.

Software DNA is a living declaration of what your system is, what it honors, and what it refuses to become. Agents read it before generating code. Teams query it instead of asking around.

~/projects/ribo-main
1$ ribo init
2Initialized ribo identity in .ribo/
3$ ribo encode
4Encoded 3 identity artifacts to .ribo/dna.yaml
5$ribo search "how do we handle auth?"
6Auth-Stateless-Policy (Invariant, 0.98)

AI generates 41% of committed code.

The person who understood the intent left two sprints ago.

GitClear, 2025open_in_new

Individual developers are 21% faster. Organizations aren't.

Speed without shared identity is just faster drift.

Faros AI / DORA 2025open_in_new

Context resets every session. Identity persists across all of them.

Context engineering optimizes the query. Identity engineering defines the schema.

How It Works

Three steps. Zero drift.

1

Declare

Define what your software is — its purpose, its contracts, its constraints. Not a spec that drifts. A living identity that agents and humans read from the same source.

ribo encode
# Define an invariant
$ribo encode --type invariant
name: "idempotency-required"
rule: "All payment endpoints must be idempotent"
2

Connect

One MCP config. Every agent reads the same DNA. Cursor, Claude, Copilot — they all see your architectural truth before generating a single line.

mcp-config.json
{
  "mcpServers": {
    "ribo": {
      "command": "ribo",
      "args": ["mcp", "serve"]
    }
  }
}
CU
CL
CO
WI
3

Reconcile

See the delta between what your software declares and what it actually does. Agents close the gap. You decide how fast.

auth-policy: aligned
rate-limiting: aligned
idempotency: DRIFT — retry loop set to 5
The Delta

Same agent. Same prompt. Different identity.

Without DNA

Agent generates a payment endpoint.

  • closeNo idempotency on the charge endpoint
  • closeError format doesn't match RFC 7807
  • closeIgnores the rate limiting convention entirely
  • closePasses code review because the reviewer checks syntax, not intent
With DNA

Same agent reads identity first.

  • checkIdempotency key required on all payment endpoints
  • checkErrors follow RFC 7807 — the declared contract
  • checkRate limiting uses shared middleware
  • checkGenerates compliant code from the start
Integrations

One identity.
Every tool.

Your DNA layer connects to your entire stack via MCP. One config. Zero drift.

mcp-config.json
{
  "mcpServers": {
    "ribo": {
      "command": "ribo",
      "args": ["mcp", "serve"]
    }
  }
}
Cursor
Cursor
Claude
Claude
Copilot
Copilot
Windsurf
Windsurf
Linear
Linear
Sentry
Sentry
CodeRabbit
CodeRabbit
+
Custom
65%

of developer time goes to understanding code, not writing it.

Stripe Developer Coefficientopen_in_new
67.3%

of AI-generated PRs get rejected. Human-written: 15.6%.

LinearB 2026open_in_new
91%

increase in review time since AI adoption.

Faros AI / DORA 2025open_in_new

These are the symptoms. Identity is the treatment.

From the Compendium

Latest thinking.

View all insights
Essay16 min read

The DNA-First Organization

The traditional org was designed around code production. An identity-first org is designed around trust production. Here's what changes for product, engineering, compliance, marketing, support, and ops when the identity layer becomes the center.

Your software already has an identity. It's just not written down yet.

Define your first artifact — free forever.

We use cookies to understand how you use ribo.dev and improve your experience.

Learn more in our Cookie Policy