EtherDocs
Guide/Platform

Platform overview

Ether is split into product surfaces, platform API, and execution harnesses. This page is the map integrators use before writing code.

Architecture

mermaid
flowchart TB
  subgraph clients [Clients]
    App[ether-app<br/>app.tryether.ai]
    Yours[Your UI / CLI]
  end

  subgraph platform [Ether OS — api.tryether.ai]
    Tasks[Task management]
    Context[Context & memory]
    Harness[Harness API]
    RT[Realtime hub]
    Delivery[Delivery projector]
  end

  subgraph exec [Execution — your infra]
    EC[Ether Code]
    Custom[Your harness]
  end

  App --> Tasks
  Yours --> Tasks
  Tasks --> Context
  Tasks --> Harness
  EC --> Harness
  Custom --> Harness
  Harness --> RT
  Harness --> Delivery
  RT --> App
  RT --> Yours

Repositories

RepoRole
ether-corePlatform backend (ether-api), harness contract, @ether/os-sdk, migrations
ether-appProduct UI — task grid, run view, delivery cards
ether-codeReference external coding harness (SDK-only, no Rust dependency on core)
ether-docsThis documentation site
landingMarketing site (tryether.ai)

Integrators typically depend on HTTP + @ether/os-sdk, not on importing Rust crates from ether-core.

Task lifecycle

  1. CreatePOST /api/tasks with a prompt (from ether-app or your client).
  2. Classify — Ether assigns execution_domain, pipeline_id, and delivery domain on the task.
  3. Execute — In-process OS brain and/or external harness (claim → work → result).
  4. Report — Harness sends steps (live UI) and final ExecutionResult.
  5. Deliver — On success, Ether publishes task.delivered and persists a delivery payload.

What Ether owns vs what you own

Ether ownsHarness / integrator owns
Task record, status, timelineModel calls, tool loop, repo checkout
User/project context corpusLocal filesystem, secrets, CI
Claim leases and run IDsEscalation when stuck (interrupt API)
Judge + delivery composition (product path)Git operations, PR creation
WebSocket topics tasks/{id}Runtime choice (local Node, cloud VM, etc.)

APIs you will touch

APIAudiencePurpose
Product APIApps, automationsAuth, tasks, activity, onboarding
Harness APICoding/research agentsClaim, context, steps, result
RealtimeFrontendsos.harness.step, task.interrupted, task.delivered

Harness routes live under /api/harness/* and are documented in the Harness API guide.

Environments

EnvironmentAPI baseApp
Productionhttps://api.tryether.aihttps://app.tryether.ai
Local devhttp://127.0.0.1:8080Point NEXT_PUBLIC_ETHER_API_BASE_URL at local API

See Authentication for obtaining a bearer token in each environment.