# Run

> The runtime underneath AI work: where apps and agents execute, the data and secrets they need, and the portability to run all of it where the data already is.

Source: https://brocs.fyi/run/
Part of the surface: R · Run. Give the work somewhere to live.
Framework: BROCS (Build, Run, Observe, Control, Secure), brocs.fyi. CC BY 4.0, attribute to brocs.fyi.

---

## The Run surface

- Runtime: where apps and agents actually execute
- Data and state: provisioned, owned, backed up
- Secrets: injected at runtime, never in code or chat
- Provisioning: self-service, provision-build-deploy as one motion
- Portability: the runtime goes where the data goes


**Run** is the part of the surface concerned with execution. Where AI applications and
agents actually run, what they can reach from there, the databases and object stores and
indexes they accumulate, the secrets they hold while working, how all of it gets
provisioned, and whether any of it can move.

It is the letter that vendors most often push back onto you. A product that covers a
corner of [Build](/build/) and then says &#34;deploy it on your infrastructure&#34; has handed
you Run, and Run is where the operational cost lives.

## The claim

Long-running agents are not web requests. They are stateful, they hold credentials for
the length of a session, they execute generated code, and they read untrusted content
while doing it. A platform designed around stateless services has nowhere correct to put
one, so it ends up on a machine somebody set up by hand.

The second claim is about placement. In any organization large enough to be regulated,
the data is not all in one place and will not be. The runtime therefore has to go where
the data is, which means one system with multiple placements rather than a migration
plan.

## The tests that matter

1. **Name the machine.** Where does a long-running agent execute today, and what can it
   reach from there: which network, which cloud role, which databases?
2. **Name the stores.** List everything your AI applications write to. If the list does
   not include the vector index and the prompt log, the list is incomplete.
3. **Name the second placement.** Could this run somewhere else, and what would break?

## The tension

Run pulls against [Build](/build/): every isolation boundary is friction for the person
trying to ship. It pulls against [Secure](/secure/) in the opposite direction, because
the fastest runtime is the one with no boundaries at all. The
[Replit incident](/resources/failure-modes/#replit-prod-db) is what the second tension
looks like when nobody resolves it: an agent with production credentials, no separation
to enforce, and a code freeze that was a request rather than a control.




## Pages under Run

- [Runtime](https://brocs.fyi/run/runtime/): Where AI apps and agents actually execute. Containers, functions, and jobs, and why the interesting workload is the long-running one.
- [Data and state](https://brocs.fyi/run/data-and-state/): Databases, object storage, vector indexes, and session state for AI workloads: provisioned on demand, owned, and backed up.
- [Secrets](https://brocs.fyi/run/secrets/): Runtime secret injection for AI workloads. Never in code, never in a prompt, never in chat history.
- [Provisioning](https://brocs.fyi/run/provisioning/): Self-service infrastructure for AI work: provision, build, and deploy as one motion rather than three queues.
- [Portability](https://brocs.fyi/run/portability/): Hybrid by default. Multi-cloud, on-premise, and edge, because the runtime has to go where the data already is.

