The PKCE flow needs a local browser to receive the OAuth callback. On a remote SSH session, in CI, or on a headless server there’s no browser to open. Use the Device Code flow instead — you log in on a separate device and authsome polls the token endpoint until you authorize.Documentation Index
Fetch the complete documentation index at: https://authsome.mbajaj.me/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
The provider must support the device authorization grant. In a provider definition, that means:authsome inspect <provider> for supports_device_flow: true.
Run the login
Open the URL on any device
On your laptop, phone, or any machine with a browser, visit the URL printed in the terminal.
When to choose device code
Use the device code flow when:- You are SSHed into a remote server and don’t want to set up X11 forwarding.
- You are running setup in a CI pipeline that has terminal output but no browser.
- You are inside a Docker container with no exposed ports back to your laptop.
Use it in CI
In CI, you can capture the authorization URL and code from the command output and surface them in the build log so a human can complete the authorization:API key providers
API-key providers don’t have a device flow. On a headless machine withoutDISPLAY, authsome’s API-key flow falls back to masked terminal input through getpass:
Override the default flow per provider
To makedevice_code the default for a provider — for example, you always log in to GitHub from servers — drop a custom JSON file at ~/.authsome/providers/github.json with "flow": "device_code". See Provider registry for how overrides work.
What’s next
Log in with OAuth
The full OAuth login guide, including PKCE and DCR.
Run agents with the proxy
What to do once you’re authenticated.