Nothing is hosted here yet. The console below runs a seeded sample fleet in your own browser and connects to nothing; its figures are invented. What would have to be true
locu.systems

Pay for what your software actually did.

Most hosting charges you for how busy a machine was. We count the jobs your software actually finished, and put both numbers on every screen so you can see the difference. Nothing is running yet: the direction was ruled on 2026-09-14 and this page says exactly what is built and what is not.

Read the rulingInspect the source

Or open the console — it runs here in your browser, on invented data, and connects to nothing.

A model, not a measurement

The same work, scheduled two ways

Two machines are given the same jobs. The one on the left is kept evenly loaded, which is how hosting is usually run, and it spends most of its day shuffling work between machines. The one on the right leaves work where it can get on with it. Both look busy. Only one of them is getting anything done.

This runs a seeded model in your own browser. The figures are generated, not measured, and no number in it is in the page the server sent you. It is here to show the shape of the argument, not to report on anything.

What that would mean for you

What follows from counting work instead of counting time.

The bill

You pay for finished work

Jobs your software actually completed, counted one by one. How busy our hardware was is on every screen and on none of the charges, because that is our problem to solve and not yours to fund.

Moving

We can move it without breaking it

If we move your service to a different machine, it keeps its name and its history. Nothing on your side has to be reconnected and nothing that points at it goes stale.

Idle

Asleep costs almost nothing

Something you are not using keeps its data, its settings and its permissions, and stops costing you for work, because it is not doing any. You pay a small amount to keep it, and nothing to run it.

Machines

Ours, or yours

Run on the machines we rent and you pay what we pay for them, listed separately. Bring your own and that cost never appears on our invoice at all.

0
Loci placed
0
Transitions admitted
0
Paying customers
12
Spec documents
143
Tests passing
The panel, drawn before it exists

You can open the console. It is a drawing, and it says so.

A working operator console and a client view, on this page, running a seeded fleet in your own browser. It is here because a claim about billing is easier to argue with when you can see the screens it would have to appear on.

The console

in_treea drawing Open it →

It runs a seeded fleet in the visitor's own browser and connects to nothing. No locus exists, no transition has been admitted, no invoice is real, and every figure in it is a placeholder until a kernel counts transitions under load.

What you would pay for

Billed for what got admitted, not for how busy the machine was.

Utilization is on every screen of the console and on none of the charges. Charging for it would mean charging you for our own scheduling.

You are billed for what got admitted, not for how busy the machine was.

LineUnitWhy
Planper monththe shape of the account
Residencyper locus per month, dormant or nota dormant locus is fully live — it holds its state, its grants and its seal, and we hold them for it
Admitted transitionsmeteredthe work the customer's world actually did
Carrierpassed through, or nothing on a carrier the customer ownssomebody else's machine, at what it costs
Utilizationnever billedit is a fact about our placement, not about their work — a carrier can sit at full utilization and admit nothing

There is no rate on this page and there will not be one until a kernel counts admitted transitions under load. The measured production floor is a few hundred cycles per transition, so a million of them is a fraction of a second of one core, and a price is not derivable from that yet. Every figure in the console prototype is a placeholder for exactly this reason.

The vocabulary, used literally

None of these are coinages, and each links to where it is defined.

The words belong to a published pattern catalogue, not to this page. A host that invents its own words for what it sells can move them whenever the product moves; these are fixed somewhere this domain does not control.

Locus

What you deploy, and what you are billed for

The thing you deploy and the thing you are billed for. It keeps its data, its permissions and its history across restarts, and it is not the same thing as the machine it happens to be running on today.

Defined in: active-locus
Carrier

The machine underneath

The machine underneath — a Cloudflare container, a Hetzner box, or a machine in your own building. Rented or owned, swappable, and never your identity. Change it and what you deployed is unchanged.

Seal

Its name, and where the name comes from

Your service's name, worked out from what it is rather than from where it is. That is why moving it cannot change it, and why a link to it does not rot when we move it.

Defined in: identity-is-a-seal
Admitted transition

The unit on the invoice

One step your software actually took. It is the unit on your invoice and the unit our own reports are measured in, so the number you are charged on is the number we are judged on.

Where a locus would sit

The carriers a ruling permits, and why that list is short.

Cloudflare for everything, with Hetzner as hosted capacity, ruled 2026-08-15 and narrowed since. Naming any other provider needs that ruling revisited, and the publication gate refuses a page or a panel that draws one.

Carrier

Cloudflare

containers, the default

Carrier

Hetzner

hosted capacity

Carrier

The customer's own

a machine in their own building is a carrier like any other, and on that arrangement the carrier bill never reaches our invoice

What is actually here, and at which rung

A ruling, a console, and the remains of a direction this domain abandoned.

A single status for this domain would be a lie in one direction or the other. One of these is a document written this week, one is an application on this very page running invented data, and the rest is tested code built for a product this site no longer sells.

The direction

spec

The ruling record: what a locus is and what a carrier is, the claim the pricing makes, which carriers may be named, what would have to become true before any of it is real, and what this site may and may not say while none of it is.

Where: docs/spec/90_LOCUS_HOSTING.md
Witness: A document, ruled and written 2026-09-14. Nothing in it is implemented and its gates are all open.

The console

in_tree

The operator console and client portal, served as routes on this page rather than as a second site: the fleet, a locus and its seal, a rehome, a refusal, the interventions log, and an invoice that prints utilization as a diagnostic. Its stylesheet is scoped so it cannot reach the served home view.

Where: src/app.js
Witness: It runs a seeded fleet in the visitor's own browser and connects to nothing. No locus exists, no transition has been admitted, no invoice is real, and every figure in it is a placeholder until a kernel counts transitions under load.

An abandoned control plane

in_tree

A Postgres schema with row-level security, RPCs and cron, plus 6 edge functions, built for the agent-deployment direction this domain abandoned. Nothing in the ruling uses it, and whether it is kept, archived or deleted is an open item.

Where: ampersand-supabase/
Witness: The functions and migrations are counted off disk by this build and checked against the frozen record. The row its deploy path writes is the artifact; nothing was ever shipped to a runtime.

An abandoned dashboard

in_tree

Vite, React and TypeScript against a Supabase client, with agent, deployment, invocation and telemetry views for the same abandoned direction. Its hostname was withdrawn; the code and its tests remain.

Where: apps/web/
Witness: 143 tests pass across 12 files, re-run by this build. They exercise components and library code in a jsdom process against mocked clients — no network, no database, no runtime.

The specification set

spec

12 documents: the ruling, the superseded service-management plan it replaced, and the v1 set written for the abandoned direction — API contracts, the runtime provider interface, the data model, security, observability and billing, the testing plan and the protocol integration.

Where: docs/spec/
Witness: Documents. Most carry a supersession banner naming which half of them is no longer the route, and the runtime provider interface has no implementation on either side of it.
What is not built

All of it. In the order it would have to become true.

Each card names what is missing and what would clear it. The word simulated below is the literal string the older deploy function writes into its provider reference, and the line that writes it is in the evidence table.

A runtime that admits transitions and counts them

spec

The unit on the invoice does not exist yet. The enforcement kernel is a specification under review with no admitted implementation, and the measured production floor is a kernellet rather than a hosted service.

Needs: Something that counts admitted transitions under load, outside a benchmark. Built: no.

A carrier adapter

spec

Nothing places a locus on a Cloudflare container, a Hetzner box or anything else and returns what happened. The older deploy function inserts a database row and writes a simulated marker into the provider reference, on the line this page cites.

Needs: One adapter that makes a real call, and something real to hand it. Built: no.

A seal measured through a real rehome

spec

That a locus keeps its identity across carriers is the claim this direction rests on. It is argued on paper and shown in the prototype against invented data. Nothing has moved a live locus and compared the seal either side.

Needs: A locus, two carriers, and a measurement rather than a simulation. Built: no.

A price anyone could pay

spec

There is no rate on this page and the prototype's figures are placeholders. A price per admitted transition is not derivable until a kernel counts them under load, and quoting one before that would be inventing the number this whole direction exists to make honest.

Needs: The counting runtime above, then arithmetic against what it measures. Built: no.

Somebody to sell it to

spec

Locus hosting is bought by someone building on ComputeDriven, and today that is nobody outside this tree. The site therefore asks a visitor to read and to argue, and offers nothing to buy.

Needs: A first operator, and something worth their money. Built: no.
What this site used to say, under its previous name

Every claim below stood here, and none of them had a witness.

Until 2026-08-16 this repository published a page selling a multi-runtime agent deployment platform over a control plane labelled with the name of a database it has never depended on. The claims were removed rather than softened, and they are quoted here so that removing them stays checkable. A new domain name does not retire a retraction.

Retracted, in place, rather than quietly refreshed

The 8 strings below were on this page. The publication gate counts each one on the emitted artifact and refuses the build if any occurrence appears outside this paragraph — or inside a comment or an attribute, where a reader cannot see it and a search engine can. That is what makes this a retraction rather than an intention.

  • multi-runtime AI agent deployment platform — The meta description and the hero subtitle. Neither runtime was wired to anything.
  • deploy to Cloudflare Workers or AWS Bedrock AgentCore — The hero's second sentence. The deploy function writes a row and stops.
  • AgentCore for enterprise — Said twice, in the stack diagram and in the plane description.
  • from ampersand.json to production — Nothing in this repository or its edge functions reads an ampersand.json.
  • All systems operational — A footer badge with no status source behind it. It was a decoration shaped like an instrument.
  • Launch Dashboard — Pointed at a dashboard host whose backend project had already stopped resolving.
  • Open Dashboard — The same target, in the hero.
  • Launch App — The same target, in the nav.

Two of them are worth naming again. The control-plane box was labelled Convex, and this repository has never depended on Convex — the only trace of it in any manifest is an extraneous lock-file record for a workspace that is not on disk — while the plane it labelled runs on Postgres. And the footer carried a live-looking status badge with no status source behind it at all: a decoration shaped like an instrument, which is the same defect as a number read out of an animation, and this page now carries a rule against both.

What replaced them is smaller and checkable. The claims that remain each cite a file and a line, the build re-opens every one of those files and refuses to emit the page if a cited line has stopped saying what it is quoted as saying, and the rung this surface holds is ? rather than a flattering guess.

Evidence, recomputed at build time

Every row below is re-derived from disk when this page is built.

File probes, not prose. The build opens each file, checks the cited line still says what it is quoted as saying, and refuses to emit on any disagreement — so if somebody wires a carrier adapter up, this page stops building rather than going quietly out of date.

What is being claimedWhere it is settledWhat is there
Nothing is shipped to a runtimeampersand-supabase/functions/webhost-deploy/index.ts:94// TODO: Actual Cloudflare Workers API call goes here.
The deploy writes a marker insteadampersand-supabase/functions/webhost-deploy/index.ts:107: { simulated: true }),
invoke/v1 answers from a model providerampersand-supabase/functions/webhost-invoke/index.ts:11import { invokeOpenRouter, invokeOpenRouterStream } from "../_shared/openrouter.ts";
AgentCore is an enum memberampersand-supabase/migrations/020_webhost_schema.sql:16create type webhost.runtime_provider as enum ('cloudflare', 'agentcore');
...and an option in a select elementapps/web/src/components/AgentsPage/AgentsListPanel.tsx:209<option value="agentcore">agentcore</option>
The workspace declares packages/* and there is nonepackages/no such directory
Nothing reads an ampersand.jsonapps/ and the webhost edge functions0 source files mention it
No AWS or Bedrock package anywhere2 package.json files, node_modules excluded0 dependencies match /aws|bedrock|agentcore/
No Convex dependency in any manifest2 package.json files, node_modules excluded0 dependencies match /convex/
webhost edge functionsampersand-supabase/functions/webhost-activate-deployment, webhost-billing-webhook, webhost-delegated-invoke, webhost-deploy, webhost-invoke, webhost-telemetry
webhost database migrationsampersand-supabase/migrations/020_webhost_schema.sql, 021_webhost_rls.sql, 022_webhost_cron.sql, 023_webhost_rpc.sql, 024_webhost_extra_tables.sql, 025_webhost_openrouter.sql
specification documentsdocs/spec/00_MASTER_SPEC.md, 10_API_CONTRACTS.md, 20_RUNTIME_PROVIDER_INTERFACE.md, 30_DATA_MODEL_SUPABASE.md, 40_SECURITY_SECRETS_COMPLIANCE.md, 50_OBSERVABILITY_BILLING_LIMITS.md, 60_TESTING_ACCEPTANCE.md, 70_AMPERSAND_PROTOCOL_INTEGRATION.md, 80_SERVICE_MANAGEMENT_PILOT.md, 90_LOCUS_HOSTING.md, README.md, REALIGNMENT_PLAN.md
tests passingnpm test — vitest, in this repository143 tests across 12 files, 0 failures

Each row was produced by opening the named file during this build and searching it for the string the row is about — the line number is where it was found, and the third column is that line, trimmed. The absence rows are the same mechanism run backwards: every package.json in the repository is parsed and its dependency names searched, and a single match refuses the build. The test row is not quoted from anywhere: the build runs the repository's own test command, parses the summary it prints, and refuses if a single test fails or if the summary cannot be parsed. Frozen in records/evidence.json and compared on every run, so a value that moves has to be looked at by a person before it can be published.

Status

Where this stands, and what would move it.

Status
? A direction was ruled on 2026-09-14 and written into the specification set, which now holds 12 documents. A console prototype for it is served at /console/ against a sample fleet in the visitor's own browser. From the abandoned agent-deployment direction there remain 6 edge functions, 6 database migrations and a React dashboard, with 143 tests passing across 12 files. Nothing here has hosted a locus, admitted a transition, or charged anyone.
Covers
No rung is claimed here, and the portfolio nav records none. Nothing on this domain has hosted a locus, admitted a transition, placed anything on a carrier or charged anyone. What is in the tree is listed on this page, and every row cites the file that settles it.
Last verified
2026-09-14
Source
Measured 2026-09-14, in this repository and against the live domain. The test count is re-run by build-site.mjs on every build, not carried in prose. Every file citation below is a path, a line number and the text on that line, recomputed at build time and refused on drift.
Limit
This establishes that a direction has been written down, that a panel for it has been drawn against invented data, and that an older control plane's tests pass in a Node process against mocked clients. It does not establish that a locus has ever been placed on a carrier by this code, that a transition has been admitted or counted, that a seal has survived a real rehome, that the price model is arithmetically viable at any rate, or that anyone will buy it. The strongest things on this page are a ruling and a drawing.
Next rung
spec — The ruling record is a specification and it is in the tree, which is what the spec rung names. What moves the chip is the portfolio nav recording a rung for this surface, which is owned elsewhere. What moves the surface past spec is a carrier adapter that places one locus and returns what happened, which nobody has written.
Loci this host has placed
0. Nothing here has ever put a locus on a carrier. The older deploy path stopped at a database row, and no adapter for this direction has been written.
Transitions admitted and counted
0. The unit this direction would bill on has never been metered by anything on this domain. It is the first number the ruling's gates would move.
Paying customers
0. None, and there is nothing to buy on this page. No rate has been published because none is derivable yet.
Carriers this code can reach
0. The runtime provider interface is specified and has no implementation on either side. Cloudflare and Hetzner are named by a ruling, not by a connector.
Corrections

Tell us a number of ours you think is wrong.

Most of this page is a list of things that do not exist yet. A claim that does not hold, a file that no longer says what it is quoted as saying, a wrong count, or a step in the pricing argument that does not follow — that is the most useful thing anyone can send.

It posts to Formspree, which is a third party and the only one this page hands anything to; nothing is sent until you press the button. If you would rather not use it, open an issue instead — both reach the same person.