This walkthrough takes you from a fresh install to running an agent with valid GitHub and OpenAI credentials in about five minutes.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
- Python 3.13 or newer
- A graphical browser on the same machine (for the initial login). For SSH or CI, see Headless setup.
Install
doctor runs health checks on the home directory layout, encryption availability, and provider parsing. All checks should pass.
Log in to your first provider
Run the login command
http://127.0.0.1:7999/callback.Approve access
Click Authorize in the browser. The terminal prints
Successfully logged in to github (default).Add an API-key provider
API-key providers like OpenAI use the same login command, but the flow is different — authsome opens a local form so you can paste the key without it appearing in shell history or process listings.Run an agent with injected credentials
You have two ways to give credentials to an agent.Option 1: Export to environment variables
Best for quick scripts and existing tooling that reads from environment variables.export prints valid KEY=value lines and writes them into the calling shell when sourced.
Option 2: Run behind the auth proxy
Best for production-style agents. Authsome starts a local HTTP proxy that intercepts outbound requests to known provider hosts and injects the auth headers — the child process never sees the raw secret.OPENAI_API_KEY is set to the placeholder authsome-proxy-managed. The real key is added to outbound requests at the proxy layer.
HTTPS interception requires the mitmproxy CA certificate to be trusted on your machine. See Proxy networking if you see TLS errors.
Next steps
Login flows
Pick the right flow for each provider: PKCE, device code, DCR.
Custom providers
Add any service that authsome doesn’t ship as a bundled provider.
CLI reference
Every command, every flag.
Troubleshooting
Diagnose login failures, refresh errors, and proxy issues.