ResearchClaw LLM auth: ACP via claude -p with OAuth token

Decision

Use Claude Code CLI in print mode (claude -p) inside Docker container with OAuth token from mounted ~/.claude/.credentials.json. Entrypoint extracts live token at startup. No settings.json mounted (hooks cause hangs in container).

Rationale

OAuth setup tokens (sk-ant-oat01-*) cannot be used for direct Anthropic API calls (401 rejected). ACP via acpx also failed (session disconnect). Claude Code CLI with -p flag and no settings.json (to avoid hook-induced hangs) is the only zero-cost path that works reliably in a Docker container.

Alternatives Rejected

  1. Standard Anthropic API key (sk-ant-api03-*) — works but costs money per token\n2. ACP via acpx — session disconnects in container\n3. Anthropic SDK with Bearer auth — API rejects OAuth tokens\n4. Anthropic SDK with x-api-key — OAuth tokens not valid as API keys

Outcome

Pending