State & Metrics
Core orchestrator state, runtime metadata, real-time events, and observability.
| Method | Path | Description |
|---|
GET | /api/v1/state | Full orchestrator snapshot — queued, running, completed issues and token totals |
GET | /api/v1/runtime | Runtime info — version, data directory, feature flags |
POST | /api/v1/refresh | Trigger an immediate poll/reconciliation cycle |
GET | /api/v1/transitions | Available state machine transitions per issue |
GET | /metrics | Prometheus-format service metrics |
GET | /api/v1/events | SSE stream of real-time orchestrator events |
GET | /api/v1/models | List available AI models from the configured provider |
POST /api/v1/refresh returns 202 Accepted, not 200. The reconciliation runs asynchronously.
curl http://127.0.0.1:4000/api/v1/state
Issue Management
Inspect individual issues, control running agents, override models and templates, and transition issue state.
| Method | Path | Description |
|---|
GET | /api/v1/:id | Issue detail with recent events and attempts |
POST | /api/v1/:id/abort | Abort a running issue |
POST | /api/v1/:id/model | Set per-issue model override |
POST | /api/v1/:id/steer | Send mid-turn guidance to the running agent |
POST | /api/v1/:id/template | Override the prompt template for this issue |
DELETE | /api/v1/:id/template | Clear the template override |
POST | /api/v1/:id/transition | Transition issue to a new workflow state |
The :id parameter is the Linear issue identifier (e.g. ENG-123).
Model Override
The model identifier to use for this issue (e.g. o4-mini, gpt-4.1).
curl -X POST http://127.0.0.1:4000/api/v1/ENG-123/model \
-H "Content-Type: application/json" \
-d '{"model": "o4-mini"}'
Mid-Turn Steering
Guidance text injected into the running agent’s context.
curl -X POST http://127.0.0.1:4000/api/v1/ENG-123/steer \
-H "Content-Type: application/json" \
-d '{"message": "Focus on the auth module first, skip the tests for now."}'
State Transition
Target state name. Use GET /api/v1/transitions to see valid transitions.
Optional human-readable reason for the transition.
curl -X POST http://127.0.0.1:4000/api/v1/ENG-123/transition \
-H "Content-Type: application/json" \
-d '{"to": "queued", "reason": "Retry after fix"}'
Attempts
Each issue can have multiple attempts. An attempt represents a single agent execution run.
| Method | Path | Description |
|---|
GET | /api/v1/:id/attempts | List all attempts for an issue |
GET | /api/v1/attempts/:aid | Detail for a specific attempt including event timeline |
curl http://127.0.0.1:4000/api/v1/ENG-123/attempts
Configuration
Read the effective merged config, inspect the schema, and manage runtime overlay overrides.
| Method | Path | Description |
|---|
GET | /api/v1/config | Effective merged configuration (base + overlay) |
GET | /api/v1/config/schema | Config JSON schema with example payloads |
GET | /api/v1/config/overlay | Current overlay values only |
PUT | /api/v1/config/overlay | Replace the entire overlay |
DELETE | /api/v1/config/overlay/:path | Delete a specific overlay path |
The overlay is persisted to disk and survives restarts. It merges on top of the base config file and environment variables.
curl http://127.0.0.1:4000/api/v1/config
Secrets
Manage runtime secrets without restarting the service. Secrets are encrypted at rest.
| Method | Path | Description |
|---|
GET | /api/v1/secrets | List configured secret keys (values are not exposed) |
POST | /api/v1/secrets/:key | Store a secret |
DELETE | /api/v1/secrets/:key | Delete a secret |
GET /api/v1/secrets returns key names only, never the secret values.
curl http://127.0.0.1:4000/api/v1/secrets
Templates
Manage prompt templates for agent instructions. Templates support variable interpolation.
| Method | Path | Description |
|---|
GET | /api/v1/templates | List all prompt templates |
GET | /api/v1/templates/:id | Get a specific template |
POST | /api/v1/templates | Create a new template |
PUT | /api/v1/templates/:id | Update an existing template |
DELETE | /api/v1/templates/:id | Delete a template |
POST | /api/v1/templates/:id/preview | Preview rendered output with sample variables |
curl http://127.0.0.1:4000/api/v1/templates
Workspaces & Git
Inspect and manage the working directory pool and git routing context.
| Method | Path | Description |
|---|
GET | /api/v1/workspaces | List workspaces with disk usage |
DELETE | /api/v1/workspaces/:key | Remove a workspace and free disk |
GET | /api/v1/git/context | Git repo context — branches, remotes, routing rules |
curl http://127.0.0.1:4000/api/v1/workspaces
Audit
Paginated audit log of all orchestrator actions for compliance and debugging.
| Method | Path | Description |
|---|
GET | /api/v1/audit | Query audit log entries (supports pagination) |
curl "http://127.0.0.1:4000/api/v1/audit?limit=50&offset=0"
Webhooks
Inbound webhook receivers for external integrations.
| Method | Path | Description |
|---|
POST | /webhooks/linear | Linear webhook receiver — processes issue and comment events |
Webhook endpoints have a separate rate limit of 600 requests/minute. Configure the webhook URL in your Linear workspace settings.
Docs & Spec
Machine-readable API specification and interactive documentation.
| Method | Path | Description |
|---|
GET | /api/v1/openapi.json | OpenAPI 3.0 specification |
GET | /api/docs | Swagger UI — interactive API explorer |
curl http://127.0.0.1:4000/api/v1/openapi.json | jq .info