rathvan_

Free & self-hosted Your code and keys never leave your infrastructure

Agents write the code. Rathvan steers what ships.

Describe a product in a sentence. Review the plan before a byte is written. Get a repository that compiles, migrates and runs — with row-level security, audit, tests and human gates already in it. Self-hosted, free, and yours.

No signup to look. Nothing to install until you want a repository.

Rathvan = intake & scoping + architecture review + scaffolding + security foundations + gates + provenance + deploy verification

125capabilities to reuse
878kernel tests, zero skipped
35migrations, RLS forced
3gates a human must pass

Every number on this page is generated from the sources at build time. If one is wrong, the build fails — which is the same rule the platform applies to everything it produces.

Solutions

One method, 7 tracks — because a prototype and a payments flow deserve different rigour.

The pipeline is 13 stages and 3 human gates. A track tightens the stages that matter for the work and relaxes the ones that do not. What it never does is let a prototype reach production by accident.

Prototype

Ship an idea, not a liability

Structurally incapable of shipping: separate namespace, no production credentials, an expiry. Promotion is a restart, not a merge.

Product

A repository you would have written

Identity, tenancy, forced row-level security, audit and tests in the first commit — the parts every product needs and nobody enjoys building twice.

Commerce

Money is never client-supplied

Server-priced from the catalogue, integers in the smallest unit, and the full security pass. The rules are gates, not guidance.

Docs & content

Documentation that cannot quietly lie

Drift detection reads your docs against the facts, drafts the smallest correct edit, and opens a pull request. It never merges one.

Demo

Read a real build before you install anything.

Three products scaffolded by the real tool, captured and published: the config that went in, the plan it printed before writing a byte — including what it refused — and the files that came out, provenance included.

Compare

Against the two things you would otherwise do.

Not a vendor scoreboard. These are the real alternatives: hand the work to a coding agent, or build the foundations yourself again.

Coding agent aloneBuilding it yourselfRathvan
Plan before code Sometimes, in prose In your head Printed, and nothing is written until you accept it
Security foundations Whatever it remembered Week three, usually RLS enabled and forced, in the first commit
Human gates None that block Process, if people follow it Executable — the build stops
Where it can ship Anywhere it is pointed Anywhere Staging is the ceiling; production needs a person
Provenance A chat log Git history, if you look Every file hashed, the builder and kernel recorded
Your code, your keys Their servers Yours Self-hosted; bring your own model keys

Rathvan is not a replacement for a coding agent — it is what decides whether the agent's output is allowed to become your product.

Download

Two ways to run it today. A third is on the way.

Answer the intake in the console, download your rathvan.json, and turn it into a repository:

$ npx "https://build.rathvan.com/rathvan-cli.tgz?v=1f022f31f43e" new ./your-product

The plan prints first and writes nothing until you confirm. Java 21 and Docker are the only prerequisites.

Then what? After the scaffold — seeing it run, which parts are yours rather than inherited, where a coding agent belongs, and when splitting into services is actually justified.

$ ./gradlew installDist
$ ./dmg/build-dmg.sh

Run those in service/ and the image lands in build/dmg/. It is unsigned until the app is notarised, so macOS asks you to right-click and Open the first time.

CLI

Scaffold and run

One command, no install, no account. Every scaffold carries a lock file recording which builder and kernel produced it.

Desktop — build it yourself, today

Self-hosted builder

A macOS image with a bundled Java runtime — nothing else to install. Your machine, your keys, your data, its own console at /console.

Not hosted yet — it is two commands from the source:

Hosted — upcoming

builder.rathvan.com

Sign in and build, with nothing to install and no machine of your own to keep running. Not live yet — it is being rebuilt on its own infrastructure, away from anything else. The two above work today and are not waiting on it.

Enterprise

You do not have to start empty.

Eight blueprints, one per domain the scaffolder will actually build — see what each one brings, and read three real scaffolds exactly as they came out. Neither is a mock-up: a blueprint that advertised something the CLI would refuse fails the build.

What an enterprise actually gets

Each of these is running code with tests against a real database, not a roadmap. Where something is built and not yet switched on, it says so — a capability list that cannot be checked is the thing this platform exists to argue against.

It runs inside your walls

Your cloud account, your database, your model endpoint. A self-hosted inference server is an environment variable, not a code path — so a build produces its plan, design and tests without a byte leaving your infrastructure.

Personal data never reaches a model

One check at the single point every model call passes through, scanning the prompts and the retrieved context — where your own documents arrive. Identifiers, salary, bank details and phone numbers are refused before a vendor sees them, and the refusal names the kind of thing, never the value.

Your systems, or ours, per capability

Eight business capabilities each answer "do you have this?" — and the honest answer is two. ServiceNow, Salesforce, Workday and your accounting package stay yours; the catalogue says which we provide and which we deliberately never will, with the reason.

It targets your paved road

Kubernetes manifests and an ArgoCD application instead of a deploy script, when that is how you already ship. Where your platform supplies managed persistence, a generated product consumes it rather than shipping a database nobody asked for.

Your own plugins, agents and MCP servers

One registry behind all four. Registering is not releasing, releasing needs somewhere to be reached, and a published contract is hashed — so an entry whose contract changed under its consumers is quarantined rather than merely noted.

What it did with your keys is answerable

Every use of a credential you connected is recorded, including the denials — usually the interesting half. An audit that cannot be written refuses the action rather than letting it proceed untraced.

Decisions and toggles survive the browser

Which capability your organisation chose is recorded append-only, so "what were we running in March" has an answer. Flags turn on without a deploy, and a flag no code knows about reports itself ignored rather than pretending.

Standards that fail a build, not a review

Thirteen gates. Row-level security enabled and forced. Migrations additive with a stated rollback. No vendor import in the core. Each exists because a specific check once reported success while the work was broken.

Sign-in you switch on yourself

Prove your email domain with a DNS record, then admit everybody at your company — or only the people you invite. Off until you turn it on, and it will not grant a role that can administer anything, because a role you get by registering an address is not an authorisation decision.

Organisations, teams and roles

Four roles, and a viewer who reads a design without being able to approve it. Teams address work and grant nothing — authorisation stays one lookup. The last owner cannot be removed, because the organisation that reaches that state cannot fix itself.

Most platforms like this assume a blank directory, which is why most enterprises cannot use them: the systems that matter already exist and are not going to be rewritten to suit a tool. There are two doors here, and the one you take depends on whether the thing you are improving is already running.

Door one

You already have a system

A service that works, that people depend on, and that nobody is volunteering to rewrite. The expense was never the existing code — it is the next twenty features: the plan nobody wrote down, the foundations re-argued each time, the review that happens after the code exists and is therefore a negotiation rather than a decision.

Your system adopts the kernel through four ports — a store, a model-provider chain, a source-control port and a feature gate. Your database, your repository and your vendors stay yours. Nothing is ported to us.

  • Migrations are additive only. Adopting adds tables; it does not rewrite the ones you have.
  • Your repository is never modified by the platform. It opens pull requests. A person merges them, or does not.
  • Gate decisions mirror into your Jira, so the trail lives where your auditors already look rather than in a tool they have never heard of.
  • Documentation drift is found, not reported. It reads your docs against the facts, drafts the smallest correct edit, and opens a pull request — never a merge.
Door two

You need to build something new

A new platform, a new line of business, or the internal system that has been a spreadsheet for three years. The risk here is the opposite one: not legacy, but the six weeks before anything is real, spent rebuilding the same foundations your last four products already have.

Describe it in a sentence and answer the intake. You read the plan — including what it refused to do — before a byte is written. What comes out is a repository that compiles, migrates and runs.

  • The first commit already has identity, tenancy, row-level security enabled and forced, audit and tests.
  • 125 catalogued capabilities to reuse rather than describe from scratch — the parts every product needs and nobody enjoys building twice.
  • A prototype is structurally incapable of shipping: its own namespace, no production credentials, an expiry. Promotion is a restart, not a merge.
  • Money is an integer in the smallest unit, priced on the server from your catalogue. Never client-supplied. That is a gate, not a guideline.

What the person who signs it off gets

Custody

Your code and keys stay yours

Self-hosted from the first day. Bring your own model keys, held encrypted, so your spend is yours and your code is read by a vendor you chose. Government identifiers, salary, bank details, phone numbers and raw user notes are never sent to a model.

Access

Granted narrowly, revocable by you

SSO, per-user credentials with revocation, and spend budgets. Repository access is granted per repository with short-lived tokens — not a blanket key to your organisation.

Ceiling

Staging is as far as it goes

Production needs a person, every time. The gates are executable: the build stops rather than logging a warning nobody reads.

Provenance

You can prove where a file came from

Every generated file hashed, with the builder and kernel version recorded — so "where did this come from?" has an answer eighteen months later.

And what it does not do

  • It does not rewrite your existing code. Adoption is additive or it is nothing.
  • It does not merge anything. Every change arrives as a pull request.
  • It does not deploy to production. That remains a decision a person makes.
  • It is not a coding agent — it is what decides whether an agent's output is allowed to become your product.

Run it inside your own walls.

Self-hosted, with a model chain that fails over across vendors rather than failing. If you want to talk through which door applies to your estate — or have us look at the system you already have — that is the conversation to start.

Talk to us

Describe what you need. Read the plan. Decide.