Skip to content

Runtime vs. platform

The runtime and the platform own different problems. Neither is a subset of the other — the platform runs the runtime, it doesn’t reimplement it.

Everything about running one team correctly:

  • Compiling a folder tree into an org chart and running it (AgentRuntime)
  • Orchestration: planning tasks, dispatching them to worker agents, checking a definitionOfDone, respecting budgets
  • Tool and process execution, permission decisions (auto / ask / deny), and the deferred-approval (proposal) queue
  • Inter-agent messaging along the org tree
  • Per-team memory (agent / team / org scopes)
  • Scheduling (adaptive and cron) for a single team
  • A durable, local audit log of every tool call and run — .ravel/audit.jsonl
  • Plugins: team-scoped tools and the executor actions that back them

All of this is open source, and all of it runs identically whether you’re running ravel serve on your laptop or the platform is running the same process inside a worker.

Everything about running many teams, for many people, safely, in production — problems that only exist once there’s more than one team and more than one person:

  • Identity: SSO, org membership, per-team roles (viewer / operator / owner)
  • Connecting a GitHub repo, validating it before activation, and the deploy/rollback pipeline
  • Provisioning and isolating a worker per team (its own container, its own network, its own state)
  • Secret binding, encrypted at rest, scoped per agent
  • Spend governance: per-team and org-wide dollar ceilings, with an automatic kill-switch on breach
  • A tenant-level audit trail of platform actions (deploys, budget breaches)

None of this exists in the open-source runtime, on purpose — a single developer running one team locally doesn’t need SSO or multi-tenant secret isolation. It needs exactly what the runtime gives it.

The dividing line is “does this concern exist for a single team run by one person locally?” If no, it belongs to the platform. This keeps the runtime small, auditable, and genuinely useful standalone — and it means the platform’s job is narrowly to make many instances of that same runtime safe to operate for a business, not to be a different product wearing the same name.