OAuth integrations
Cadence connects to external services through OAuth2. Instead of pasting API keys into chat, you authorize the assistant once in a browser. The access token is stored in the local credential vault. The model never sees raw tokens.
Each integration is a bundled skill with its own tools. Connecting
Gmail adds gmail_send, gmail_search, and
gmail_archive. Connecting Google Calendar adds event
create, list, and update. You pick which services to connect, and
you can revoke any of them.
In 0.1 you bring the OAuth client IDs and secrets. Cadence does not
host a managed OAuth app catalog or bill per-call credits. Check
live status with assistant oauth status.
Supported services
| Service | Auth | What you can do |
|---|---|---|
| OAuth2 | Gmail, Calendar, Drive, Contacts. One Google connect can cover several skills. | |
| GitHub | OAuth2 | Repos, issues, PRs, labels. Private repos if you grant them. |
| Slack | OAuth2 / bot | User integration and Slack bot are different connects. Scan, send, react. |
| Notion | OAuth2 | Pages and databases the integration is added to. |
| Linear | OAuth2 | Issues and projects. Access follows your Linear role. |
| Discord | OAuth2 | Send, read channels. The bot must be added to each server. |
| Outlook / Microsoft | OAuth2 | Email and calendar on Microsoft 365. |
| Asana, Todoist, HubSpot | OAuth2 | Tasks, projects, CRM. Scoped to that workspace. |
| Telegram | Bot token | Not OAuth. Token from BotFather. See Channels. |
If a service you need is missing, connect it with a custom skill and its API key. See Your first skill.
Connecting
Fastest: ask the assistant. Example: “Connect my Gmail.”
- Open Settings → Integrations or Services.
- Find the service and click Connect.
- Finish the OAuth flow in the browser window.
- Return to Cadence. Status should show Connected.
Disconnect from the same panel, or ask the assistant to disconnect. Disconnecting deletes the stored token from the local vault immediately.
Security
- Local vault. Tokens live with the hatch, not on an Aevum server. The platform never sees them.
- LLM isolation. When a skill needs an API, the assistant injects the token at the transport layer.
- Scoped permissions. Cadence requests the minimum OAuth scopes for that skill. Review them before you grant.
- Revocation. Disconnect in Cadence, and also revoke the app in Google / Slack / GitHub account settings if you want both sides gone.
Sends, purchases, and other sensitive calls still need approval unless you write a trust rule.
Billing
Cadence does not bill OAuth in 0.1. Google, GitHub, Slack, Notion, and the rest are billed by those vendors under your account with them. There is no Cadence-credit Twitter SKU here. If a vendor charges for API usage, you pay that vendor.
Troubleshooting
- OAuth failed. Corporate networks sometimes block third-party OAuth. Try a personal network, or ask IT to allow the vendor's OAuth domain.
- Token expired. Say “Reconnect my Gmail.” The assistant walks the flow again.
- Insufficient permissions. Disconnect and reconnect, and grant the requested scopes.
- Rate limited. The assistant tells you. Upgrade that vendor's API tier if you need more.
Related: Common issues, Gmail, Google Calendar, Privacy and data.