Atrium
platform docsTroubleshooting

Atrium platform docs

Troubleshooting

Common failure modes for CLI auth, manifests, deploy status, logs, and AgentCase rendering.

Updated 2026-08-30

Device-code approval opens the wrong page

Production CLI auth should open:

https://auth.atrium.st/activate?user_code=XXXX-XXXX

If you see an API-hosted HTML approval page, the client is using an old flow. The API verify route now redirects to the auth app.

CLI POST gets a trailing slash redirect

CLI OAuth POSTs should target the route without relying on a redirect:

/v0/oauth/device/code
/v0/oauth/token

The auth app does not expose these POST routes. If a client posts to auth.atrium.st, update the CLI or environment override to use the API domain.

atrium validate rejects my env var

Build env is allowlisted. The current placeholder allowlist only contains:

NEXT_PUBLIC_FEATURE_X

Platform-owned env vars such as NEXT_PUBLIC_API_BASE_URL, DATABASE_URL, NEON_DATABASE_URL, and HASURA_GRAPHQL_DATABASE_URL must never be added to atrium.yaml.

Deploy status stays queued

The backend records deployment requests even when no worker is configured. If ATRIUM_DEPLOY_WEBHOOK_URL is not set, status can stay queued. That means the control plane accepted the request but did not dispatch a Cloud Run deploy worker.

Status returns Agent not found

Validation only proves the local manifest shape is valid. It does not prove the agent exists in the control plane.

If status returns:

404 {"detail":"Agent not found"}

the agent needs to be registered first. atrium init registers new agents. For an existing repo, a current atrium deploy dry-run can preview first-time registration with action: "create" when the request includes the manifest.

atrium env returns Service not found

env, logs, and sync use the persisted control-plane manifest. If an agent only has a placeholder manifest in the control plane, dry-run deploy can still preview the real local services while env backend returns:

404 {"detail":"Service not found"}

Run a confirmed deploy only when the agent owner is ready for the manifest to be persisted and a deployment request to be queued.

atrium logs --follow does not stream

The logs endpoint supports recent reads. Backend streaming is not implemented yet, and follow=true returns 501. The CLI should poll for now.

Agent cases are missing on the host

The host treats failed case reads as unavailable data, not a host error. A missing case card can mean:

  • the agent does not implement GET /api/cases
  • the agent returned 401, 404, or another non-2xx status
  • the response shape failed normalization
  • the server-side proxy timed out

The installed agent card should still render with ordinary agent metadata.