Skip to main content

Experiments

An Experiment is a structured test: a hypothesis, one or more variants, a decision rule, a primary metric, and the evidence datasets that measure it. It’s the “decide” side of an Erdo loop — a Workstream does the work, an Experiment decides whether a change worked. An experiment can be hosted by a workstream or stand alone. The day-to-day measurement is deterministic: a recipe reads metrics and appends observations (metric reads, decision checks, actions) to an append-only log — no agent per tick. You read that log to see whether the loop is working, then record the decision (ship / stop / iterate / inconclusive). In your workspace, Experiments live under Activity, usually inside the Workstream that hosts the work. An agent sets one up with a hypothesis and a decision rule, the measurement loop appends observations over time, and you read the evidence and record the call. They can also stand alone when you just want to test one thing.

Lifecycle

plannedrunningreadingdecided. When you decide, set status=decided, a decision (ship/stop/iterate/inconclusive), and an outcome_markdown narrative together.

Programmatic access

Everything below is org-scoped and RBAC’d (project view for reads, contribute for writes) and referenced by slug.

CLI

# inspect
erdo experiment list --status running
erdo experiment get acme-cpl-ab
erdo experiment observations acme-cpl-ab --type metric_read   # the loop's evidence

# create + drive
erdo experiment create \
  --project acme \
  --slug acme-cpl-ab \
  --title "Landing page CPL A/B" \
  --workstream acme-lead-engine-2026-06 \
  --primary-metric cost_per_lead \
  --hypothesis "Variant B's shorter form lifts conversion"

erdo experiment set-status acme-cpl-ab running
erdo experiment decide acme-cpl-ab --decision ship --outcome "B cut CPL 22% over 2 weeks, shipping"

MCP tools

ToolWhat it does
erdo_list_experimentsList experiment runs (filter by workstream / scope / status).
erdo_get_experimentOne experiment by slug — hypothesis, variants, evidence, decision.
erdo_create_experimentStart an experiment with variants, decision rule, primary metric, evidence datasets.
erdo_update_experimentFlip status or record the decision + outcome.
erdo_list_experiment_observationsRead the append-only observation log — how you observe the loop.

REST

Base URL https://api.erdo.ai. Authorization: Bearer <token> + X-Organization-ID.
MethodPath
GET/v1/experiments
GET/v1/experiments/:slug
POST/v1/experiments
PATCH/v1/experiments/:slug
GET/v1/experiments/:slug/observations