Research Commons arcp
00

The multi-tenant
agent control plane.

arcp is the operator's seat for agent companies. Register your fleet, wire it to sandbox, gateway, and inference providers, and watch every run unfold over a single API and UI. Built on Tensile.

Status
operational
Version
v0.0.1
01

Agent ops needs its own control plane

Every serious agent shop ends up rebuilding the same plumbing: identity and orgs, an agent registry, dropdowns for sandbox / gateway / inference, a run timeline, observability. arcp is that layer — multi-tenant, OIDC-first, with Tensile wired in as the default substrate.

A

Built for multi-tenant fleets

Orgs, roles, API tokens, OIDC SSO — the same pattern Tensile uses. Bring your IdP, give your engineers their own keys, and isolate every run by tenant.

B

Agent-first, not job-first

An agent declares the capabilities it serves. Operators register their fleet once and reuse them across runs. Capabilities are still job kinds — the data model stays clean.

C

Tensile by default, BYO when you need

Sandbox, gateway, and inference default to Tensile. Swap in Modal, OpenAI, Anthropic, or your own provider per agent — without touching the control-plane code.

02

RC's pre-built agents

Four production agents ship in every arcp install. Each one is an AgentEntry you can clone, fork, or swap out for your own. Sign in to inspect their configs and runs.

03

How it works

Three steps from zero to a live agent fleet. Each step is backed by a first-class page in the product.

01 · Register

Declare your agent

Walk the 7-step wizard. Name, repo URL, capabilities, transport, and resource bindings — all dropdowns, persisted as an AgentEntry in the registry.

02 · Pick resources

Wire to providers

Choose your sandbox, gateway, inference, evals, rubrics, and verifiers from a single page. Tensile is preselected wherever it's the default.

03 · Run + observe

Watch the fleet

Trigger runs from the agent detail page, the API, or your CI. Every run lands in /runs with a live event feed, aggregate metrics in /observability.

04

What you get

Eight features the rest of agent ops keeps re-implementing. They're all in arcp out of the box.

A Tenancy

Multi-tenant by design

Orgs, roles, per-tenant agents, per-tenant resources, per-tenant runs.

B Identity

OIDC SSO

Authentik, Okta, Azure AD, Auth0 — any OIDC provider. PKCE, JWKS caching, sessions + CSRF.

C Substrate

Tensile-by-default

Firecracker microVMs and the Front Door API wired in. Modal and local execution are peer options.

D Extensibility

BYO agents

Register your own via the wizard or the POST /v1/agents API. In-process, HTTP, or subprocess transports.

E Configuration

Resource registry

One polymorphic store for sandboxes, gateways, inference, models, evals, rubrics, verifiers, SDKs, finetuning.

F Runs

Pipeline runs

Parent / child grouping, live event feeds, stages visualized — the whole run, one page.

G Observability

Live aggregates

Runs per day, cost per agent, error rate per kind. Server-side aggregation in SQL, no external metrics store needed.

H API

Token-based API

arcp_ tokens, Argon2id-hashed, org-pinned, role-scoped. Browsers get cookies + CSRF.

05

Stack

arcp is one of the Research Commons stack of agent infrastructure products. They're designed to work together.

06

Who's running on it

Research Commons runs every internal agent on arcp. We're opening it up to a small group of design partners.

Research Commons
your company
your lab
your team
07 Built on

Tensile — the Research Commons infrastructure layer.

Schedulers, sandboxes, observability, and shared services that every RC product runs on. arcp is one of those products.

lab.researchcommons.ai ↗
08

Get started

Two repos, two terminals, two minutes. Sign in via OIDC, claim the bootstrap token to become an admin, then register your first agent.

A Backend

Run arcp on :8765

# Clone + boot the control plane
git clone git@github.com:Research-Commons/auto-research-control-plane.git
cd        auto-research-control-plane
make      serve
# → JSON API + WebSocket on http://127.0.0.1:8765
B Frontend

Run the UI on :3000

# In a second terminal
git clone   git@github.com:Research-Commons/auto-research-control-plane-ui.git
cd          auto-research-control-plane-ui
npm install && npm run dev
# → open http://127.0.0.1:3000