When system limits the flow,one need to transform the system.

The first-ever Software Delivery Control Plane for the age of AI.

See it to believe what designed software delivery looks like.

↑↑↑
Delivery
↑↑
Quality
↑↑
Security
↓↓↓
Cost

Declaration asserts shape. Attestation folds evidence. Everything else is reading.

branch · productionledger
  1. 00:00workspace.open arons-local-develop writer granted · no credential issued
  2. 00:07packages.ready bun bash coreutils declared · provided by nix
  3. 00:10website:local serving 127.0.0.1:4780 preview
  4. 05:22source.landed production candidate c5c3e29 · preserved
  5. 05:40build.witness website:cf-static run ab76e2a9 · attested
  6. 05:41refusal website:dev sandbox-binding-outside-sandbox · named, not raw
  7. 05:41release.held previous release stays live retry is one act
Recorded from a real session on 28 Oct 2026. Every line is a fact the platform wrote itself.

Agents are principals

A person and a model get the same thing: a session scoped to intents. An agent that may promote cannot delete, cannot read a key, and cannot reach a cloud it was not declared into.

Credentials stay in custody

Cloud tokens, registry keys and repo access are held once, by the platform, and lent to an act. A re-org transfers custody. Nobody re-enters a secret, and nothing moves out of your cloud.

Refusals are named facts

A failed build is build.witness · refused with a reason the system can act on, never a stack trace a person has to read. Convergence is repeatable: the same declaration, the same result.

System branches

Git branches code. SDLC.works branches systems.

A code branch holds files. A system branch holds the whole declared world, and every environment is one: preview, production, a re-org's new home. Diverge by declaration, converge by the platform, never by hand.

A code branch holds

  • Source files and their history
  • A build recipe, if someone wrote one
  • Nothing about where it runs
  • Nothing about who may deploy it
  • Environments stitched on afterwards, in CI and tickets

A system branch holds

  • Components, with build labels and infra targets
  • Infra, URLs and named values, judged whole before admission
  • Integrations in custody, with intent statuses
  • Code repositories pinned by commit, plus workflows and schedules
  • Build and release ledgers, witnessed by the platform

System branches are derived by transformers and materialized across generations. The intent catalogue is the compatibility contract, so a branch evolves by adding and retiring intents, never by a version prefix in a path.

The console

Your developers never juggle tools. They converse with the SDLC.works console.

One conversation opens a workspace, runs the preview, lands the change and promotes it. GitHub, the cloud, the runners and the toolchain sit behind the console, declared once by the designer and never in the developer's hands.

console.sdlc.works · systemsway · production · workspace conversation
The SDLC.works console: a conversation on the production branch with suggested questions about builds, failures, deployments and running work, and a context panel for adding pages.

One view

CEO, CTO, CFO, platform and DevOps engineers all see the same thing.

There is one ledger, written by the platform, and every role reads it in its own terms. No weekly slide rebuilt from five tools, and no number that disagrees with another number.

CEO

Is delivery flowing?

Releases per week, time from edit to production, what is stuck and why.

CTO

Is the system sound?

Branches, convergence state, refusals named, nothing drifting by hand.

CFO

What does delivery cost?

Principals and components under convergence, compute on your own bill, no platform-team line.

Platform engineer

What is declared?

Topology, custody and intents, every change judged whole before admission.

DevOps engineer

What ran?

Runs, witnesses, artifacts, releases and rollbacks, with provider evidence attached.

Same data, five readings. The ledger is the only source.

Security

The happiest team in the building is security.

Nobody holds a credential, so nobody can leak one. Security writes the policy once, as intent filters, and the system enforces it on every act, human or agent.

  • Humans hold no credentials.

    Developers get a session scoped to intents. Cloud keys, repo tokens and registry secrets live in custody and are lent to acts, never to people.

  • Agents hold no credentials.

    Same session, same scope. An agent that may promote cannot reach a cloud console, because it was never given anything to reach with.

  • Humans cannot hand credentials to agents.

    There is nothing on the laptop to paste into a brief. A real session shipped to production with no git, no cloud CLI and no key.

  • No tool access to grant or revoke.

    Tools sit behind the console, declared by the designer. Security never audits who has GitHub, who has AWS, who has the deploy bot.

  • Policy is the only job.

    Define who may do what, per branch, per intent. Convergence refuses anything outside it, with a named reason, and every act lands in the ledger.

Zero credentials in circulation. One policy. Every act witnessed.

Developers

Sorry. We took away your tool access.

We took it to give you back the part you enjoy and get paid for: building the feature. Any IDE, any harness, any agent, any language. Total freedom in how the code gets written. None in how it gets to production.

Freedom you keep

Your editor, your terminal, your coding agent, your branch. The workspace brings the declared toolchain and a live preview to your Mac and gets out of the way.

Freedom you lose

Which runner, which cloud, which token, which pipeline file. There is one road to production, it is declared, and you cannot drive off it.

Freedom you get

No firewall ticket. No database ticket. No new-service ticket. Your system branch is yours: declare the service, the database, the route, and build against them today. When it works, hand over the whole branch as one pull request, infra and all.

Why it is a relief

We took away everything you hated. We gave you everything you wanted but never had. This is a builder's world. Build with zero friction.

Non-developers with ideas

You have the idea. You do not have to learn git to show it.

Product managers, designers, founders, analysts. You want to build the feature and demo it. Between you and that demo sits git, npm, nix, push and pull, a change across a dozen repositories, integration tests, a build, and a queue of developers from three teams who have to agree before anything moves. Not any more.

Describe it, the system builds it

Open a workspace, tell the console what you want, and an agent implements it inside a declared toolchain with a live preview. No installs, no credentials, nothing to learn first.

You cannot break anyone

Your work lives on its own system branch. It cannot reach production, another team's branch or a shared database until it is promoted, and promotion refuses anything that does not converge.

Engineers come in when you want them

Add oversight on a branch with one filter. An engineer can take over, fix the architecture or redesign the approach, and the branch keeps your work and theirs in one ledger.

Build it. Show it. Hand it over. The plumbing was never yours.

Who ships here

Three kinds of principal. One kind of authority.

Authority is an intent filter attached to a session, never a key on a machine. The designer declares the tools. The agents, natural and artificial, work tool-free.

Natural · developer

A person with an editor

Opens a workspace, gets a declared toolchain through Nix and a live preview on their own machine. Edits files. Promotes. Never installs a runtime, never signs in to a cloud.

  • workspace.open · writer
  • workspace.promote
  • run.read · releases.read

Artificial · coding agent

A model with a brief

Same workspace, same intents, same refusals. It can read the ledger and land a change. It cannot reach GitHub, a cloud console or a secret, because it was never given one to reach with.

  • workspace.open · writer
  • workspace.promote
  • no integration access

Natural · designer

The one who brings the tools

Declares branches, infra, integrations and custody. Brings GitHub, the clouds and the runners once, so no agent ever has to. Holds no more than the next person: the credentials live in the platform, and withdrawal is one act with a witness.

  • branch.declare · component.declare
  • integration.custody_declare
  • filter.declare · roles

Bring an agent that is already shipping for you.

Claude Code, Codex, Devin, a Cursor background agent, your own harness. Give it a workspace brief and nothing else. If it needs a credential to do its job, the brief is wrong, not the platform.

Open a workspace

Integrations held in custody, declared once

Cloudflare cloud · dns · r2 AWS cloud · s3 · codebuild Google Cloud cloud · run · sql Hetzner vm E2B sandbox host GitHub repos · actions Pulumi state MongoDB Atlas database Linear planning Jira planning Nix toolchains Cloudflare cloud · dns · r2 AWS cloud · s3 · codebuild Google Cloud cloud · run · sql Hetzner vm E2B sandbox host GitHub repos · actions Pulumi state MongoDB Atlas database Linear planning Jira planning Nix toolchains

Infra catalogue

Twenty-four things a branch can declare into existence.

Each is a typed component with a schema, a provider list and a lifecycle. Those marked anchored hold state: the platform may redraw everything around them, and may never delete them to satisfy a diff.

serverless-fncloudflare · gcloud
sandbox-hoste2b
vmaws · gcloud · hetzner
k3saws · gcloud
bucketaws · cloudflare · gcloud
cloud-sqlgcloud
cloudflare-d1cloudflare
mongodbatlas
cloudjobgcloud
aws-lambdaaws
aws-ecsaws
aws-cloudfrontaws
aws-dynamodbaws
aws-efsaws
aws-s3aws
aws-lbaws
aws-gwlbaws
aws-tgwaws
aws-vpcaws
vpcgcloud
subnetgcloud
firewallgcloud
http-lb-externalgcloud
local-macosyour mac

The contract

173 intents. The catalogue is the API, the route is only addressing.

No version prefix will ever appear in a path. Evolution happens by adding and retiring intents inside a branch, and by materializing a new system branch across generations.

Identity and standinguser · organization · filter · billing

Roles are intent filters. Held identities are minted and revoked as acts.

Undertakingsproject · branch

System branches derived by transformers, materialized across generations.

Authoring a worldcomponent · infra · urlregister · kv · viewconfig

Topology, named values and registries, judged whole before admission.

Source and custodycodebase · content_object · workspace

Regions, seeds, snapshots and the managed workspace lifecycle.

Executionworkflow · schedule · run · process · task · runner

Runs carry provider evidence. Logs are read through the platform, never a console.

Going liveartifact · releases · deployment · provisioning

Build outputs are witnessed. Releases are pointers. Rollback is one act.

Conversation and agencyconversation · agent · conduct · ai_provider

Agents are residents of a branch with turns, consoles and conduct conditions.

Observationobservability · issue_report · platform

The inventory and guide are intents too. Nothing in the registry is invisible.

Pricing

You bring the compute. We charge for what is under convergence.

Two counters: principals who can act, and components with an active infra target. Never build minutes, never sandbox hours. That is your cloud bill, and it stays yours.

Free

$0

forever, for small worlds

  • 3 principals, human or agent
  • 3 components under convergence
  • 1 SDLC instance, 1 project
  • Hosted runners with limits
  • Declarations portable at any time
Start free

Enterprise

Custom

from $45,000 / year platform fee

  • Multiple SDLC instances, re-org transfers
  • Custody adoption and withdrawal with witnesses
  • Peer-platform connections
  • Self-hosted control plane option
  • SSO, audit export, named support
Talk to us

Volume breaks on components above 50. No exit fee: a branch declaration re-declares anywhere, and nothing you own moves out of your cloud when you leave.

From named to live in minutes, with nobody holding a key.

The wizard creates a project, declares a branch with an edge target, DNS and an artifact store, and promotes a first release. The one credential involved is yours, entered once, into custody.

Create a project

Where it runs

The control plane is ours. Everything that matters is in your account.

  • Your cloudsCloudflare, AWS, Google Cloud, Hetzner, E2B. Resources are provisioned into accounts you own, under credentials you placed in custody.
  • Your repositoriesGitHub, with the platform as one more integration. Source never passes through a store we control.
  • Your runnersGitHub Actions, AWS CodeBuild, or a runner you hold custody of. Build evidence flows back; secrets do not flow out.
  • Your MacsWorkspaces run the declared toolchain locally through Nix, and the preview is on localhost. The CLI holds a session, never a cloud key.
The control plane in the middle, your cloud, repos, runners and Macs around it, with only declarations and witnesses crossing the boundary your cloudcloudflare · aws · gcloudresources, state, data your reposgithubsource, history your runnersactions · codebuildbuild evidence your macsnix toolchain · localhostworkspaces sdlc.worksdeclarations · custodyledgers · intents converge ↑witness ↓ evidence ↑promote ↓

Runs on

Providers the catalogue speaks to today.

Clouds
Source and runners
Stores and state
Planning