1. Device flow: orca login
On a terminal with no usable browser (a coding agent, SSH, a container), orca login runs an RFC 8628 device flow automatically:
~/.config/orca/config.json; the key never appears on a screen or in a paste buffer. Force this flow anywhere with --headless.
Security shape worth knowing: the minted key inherits the approving user’s role, the approval screen shows which terminal asked (the key label, for example claude-code-ada@laptop), and codes are single-use with a 15 minute expiry.
2. Environment variables
For processes that should never prompt:3. Pre-minted token
Verify
Honest caveat: keys have no scopes
An Orca API key carries exactly one authorization dimension: the RBAC role it inherited from whoever minted or approved it (owner, admin, member, or viewer). There are no per-resource or per-operation scopes yet. Treat an admin key as admin everywhere; prefer approving device logins from a member account when the agent only needs day-to-day operations, and revoke keys you stop using (orca auth logout --revoke, or the dashboard key list).