How Providers Connect
Each provider is an OAuth-protected service that the gateway can proxy access to: For each provider, you register an OAuth app with that provider (getting aclient_id and client_secret), then add it to your gateway’s providers.json.
providers.json Format
Each provider needs 6 fields:provider-id is what agents use in their requests (e.g., athx proxy github GET /user).
GitHub
- Go to GitHub → Settings → Developer settings → OAuth Apps → New
- Set Authorization callback URL to
https://your-gateway.com/ath/callback
athx proxy github GET /user
Google (Calendar, Gmail, etc.)
- Go to Google Cloud Console → APIs & Services → Credentials
- Create OAuth 2.0 Client ID → Web application
- Add redirect URI:
https://your-gateway.com/ath/callback - Enable the APIs you need (Calendar API, Gmail API, etc.)
athx proxy google-calendar GET /calendars/primary/events
Slack
- Go to api.slack.com/apps → Create New App
- Under OAuth & Permissions, add redirect URL:
https://your-gateway.com/ath/callback
Any OAuth 2.0 Provider
If the service supports standard OAuth 2.0 Authorization Code flow:Multiple Providers
Just add them all to the sameproviders.json: