Skip to main content

Workstreams

A Workstream is a record of multi-step business work in motion — a campaign launch, a lead engine, a weekly report, a communication loop. One per business outcome. Each has a status, an ordered set of phases, attached resources (datasets, pages, jobs, experiments), and a chronological event log — a git-log-style record of what happened and what’s next. In your workspace, Workstreams live under Activity. As an agent takes on a multi-step job it opens a Workstream and keeps it current — advancing phases, logging what it did, and flipping status to awaiting_user when it needs you. You watch progress, read the event log, and pick up or hand work back from there. A Workstream can host Experiments that decide whether a change worked.

Concepts

  • Statusactive, awaiting_user (paused for input/approval), blocked (external blocker), completed.
  • Phases — ordered steps (brand-brief, landing-pages, …), each with its own status.
  • Event log — append short factual lines ("Brand brief drafted, sent for review", "Blocked: Google Ads admin access missing", "Next: build the landing pages"). This is how you and future agents read history and what remains.

Programmatic access

You can also create, drive, and observe Workstreams over MCP, the REST API, or the CLI — the same surface an agent uses internally. Everything is org-scoped and RBAC’d (read needs project view, writes need contribute), and Workstreams are referenced by slug, never UUID.

CLI

# list / inspect
erdo workstream list                       # all workstreams in the active org
erdo workstream list --status active blocked
erdo workstream get acme-lead-engine-2026-06

# create
erdo workstream create \
  --project acme \
  --slug acme-lead-engine-2026-06 \
  --title "Acme lead engine" \
  --description "Stand up the Acme outbound lead engine"

# drive
erdo workstream phase-add acme-lead-engine-2026-06 --phase-slug brand-brief --title "Brand brief"
erdo workstream log acme-lead-engine-2026-06 "Landing pages live, monitoring conversions"
erdo workstream set-state acme-lead-engine-2026-06 --status awaiting_user --description "Awaiting brand sign-off"
erdo workstream events acme-lead-engine-2026-06 --limit 50
The CLI authenticates with your Erdo token and the active organization (erdo login, erdo org).

MCP tools

ToolWhat it does
erdo_list_workstreamsList your org’s workstreams (optionally filtered by status).
erdo_get_workstreamOne workstream by slug — status, phases, resources, recent log.
erdo_create_workstreamStart a workstream in a project (by project_slug).
erdo_add_workstream_phaseAppend a new phase to an existing workstream.
erdo_update_work_stateUpdate overall status, title, description, or per-phase status.
erdo_append_workstream_eventAppend one line to the event log.
erdo_list_workstream_eventsRead the full event log (paginated, newest first).
Identity and RBAC ride the request context, so a caller can only reach their own org’s work.

REST

Base URL https://api.erdo.ai. Authenticate with Authorization: Bearer <token> and select the org with X-Organization-ID.
MethodPath
GET/v1/workstreams
GET/v1/workstreams/:slug
POST/v1/workstreams
POST/v1/workstreams/:slug/phases
PATCH/v1/workstreams/:slug/state
POST/v1/workstreams/:slug/events
GET/v1/workstreams/:slug/events