Join the waitlist to take part in the alpha.
Let the agents work

REFLEXES

What an agent worked out once, it now just runs.

A reflex is code the agent wrote itself, compiled against your workspace schema, replayed identically the next time round.

Not a rule, actual code

A reflex is not configured in a rules screen with an « if » and a « then ». It is a real program, in TypeScript, and an agent writes it.

The idea fits in a sentence. An agent that solves a problem by reasoning pays full price every time: time, tokens, and a share of uncertainty. By the tenth run that price has no reason to exist. So the agent writes the computation down once, and from then on simply calls it.

Nobody reviews that code. What you sign off are its effects: the records read, the ones created, the ones changed.

Compiled against your schema, not against an idea of it

Before it exists, a reflex is compiled. The types for your objects are generated from your workspace at compile time, never taken from a cache: a stale type file would be worse than a slow one.

An invented field does not compile. A computed field cannot be written to, the type system forbids it. An import to anything other than the SDK is refused.

The result is a self-contained module, identified by its digest. Compiled once, never recompiled.

One door, and no key in the room

The code runs in an isolated micro virtual machine, one per workspace, kept warm between runs. The bridge to the platform goes through the process's standard input and output, not over the network.

No credential ever goes down there. The run token stays server-side, signed, valid for three minutes and five at most.

And a reflex has exactly five moves available: read a record, search records, create, update, delete. Each is recorded as an effect, and a version that was not granted a capability does not acquire it at run time.

Its own name in the log

A reflex borrows nobody's identity. It is an actor in its own right, with its own role, empty by default: zero data access until something is granted. An agent is interactive and watched, a reflex is repetitive and unattended, and the two have no business starting with the same rights.

The chain stays readable end to end: the reflex acted, an agent called it, a person was at the origin. All three are stamped on every run.

So an agent cannot reach through a reflex what it could not reach directly. The reflex's role is the ceiling, and it is the narrower of the two.

How it works

Recomputing the outstanding balance across four hundred portfolio records.

  1. The agent does it by hand. It reads the records, applies the rule, writes the values, and reasons on every single line.

  2. It writes the reflex: the same computation, as code, against the real schema of your workspace. The types come from your objects, not from a guess about them.

  3. The platform compiles. Strict typing, a single permitted import, a check on what the code can reach. The module gets its digest.

  4. The version is promoted in one operation, and the previous one marked superseded. Nothing can be promoted without an artefact.

  5. The next call does no reasoning. Two minutes at most, effects counted, duration measured without the code having to report on itself.