Brigade can connect to 1,000+ external apps — Gmail, Slack, GitHub, Notion, Google Calendar, Linear, HubSpot, Jira, and many more — and act on them on your behalf (read your email, post to Slack, open a GitHub issue, add a calendar event, …).
This works through Composio (composio.dev), a service that handles the sign-in (OAuth) and the per-app plumbing. You bring one Composio API key; after that you just ask your crew in plain language — "connect my Gmail", "send a Slack message to #team" — and Brigade does the rest.
⚠️ The one thing people get wrong. The Composio dashboard has two modes, shown as a toggle in the top‑left next to the logo:
Mode What it's for Use it for Brigade? PLATFORM "Build and manage AI agents with the Composio SDK" ✅ Yes — this is the key Brigade needs FOR YOU "Connect apps to AI clients like Claude, Cursor, ChatGPT" ❌ No — this gives a different key (for desktop AI apps) that Brigade can't use Brigade is built on the Composio SDK, so it needs a PLATFORM key. The FOR YOU section hands out a consumer key (starts with
ck_) for plugging apps into Claude/Cursor/ChatGPT — it will be rejected by Brigade. A PLATFORM key starts withak_.
- Go to dashboard.composio.dev and sign in.
- In the top‑left, make sure the mode toggle is set to PLATFORM (not FOR YOU).
- Open Settings → API Keys and copy your key (it looks like
ak_…).
That's the only thing you need from the dashboard for everyday use.
Just tell your crew, in any channel:
"Here's my Composio key:
ak_…" — or — "set my Composio key toak_…"
Brigade verifies the key with Composio and stores it privately and encrypted — it is never shown back to you or written into chat logs. You only do this once.
If the key is wrong, Brigade tells you immediately ("that key was rejected") rather than failing later — so you'll know right away if you grabbed a FOR YOU key by mistake.
Ask for whatever you want to hook up:
"Connect my Gmail." "Hook up Slack." "Connect GitHub."
Brigade replies with a secure sign‑in link. Click it, approve access in the normal provider screen (Google, Slack, GitHub, …), and you're connected. Ask "is it connected yet?" any time to check.
Not sure what's available? Ask "what apps can I connect?" (optionally "…to do with calendars?"). The list is pulled live from Composio, so apps Composio adds later show up automatically — nothing is hard‑coded.
Once an app is connected, just ask:
"Email Sarah the Q3 numbers." "Post the release notes to #announcements." "Open a GitHub issue titled 'Login bug' in acme/web." "What's on my calendar tomorrow?"
Brigade finds the right action and runs it.
Composio hosts the sign‑in for most apps, so they connect with zero setup. A few apps (and some on certain plans) require your own OAuth credentials instead. If you hit one, Brigade will tell you, and the fix is a one‑time setup in the dashboard:
- In dashboard.composio.dev (PLATFORM mode), open Toolkits, search for the app, and Add to project.
- When prompted, either use Composio's default integration if offered, or paste in OAuth credentials you create on that app's developer site (the dashboard tells you the exact redirect URL to use).
- Once the app shows as added, ask Brigade to "connect it" again — you'll get the normal sign‑in link.
- Your Composio API key is encrypted at rest and kept private to your Brigade — it is never echoed back, logged, or sent to the model.
- Connecting apps and acting on your accounts is owner‑only: only you (the operator) can ask Brigade to connect apps or run actions on them.
- App access lives in your Composio account — you can review or revoke any connection from the Composio dashboard at any time.
| Symptom | Cause | Fix |
|---|---|---|
| "That key was rejected" | You used a FOR YOU key (ck_…) or mistyped/truncated the key |
Get a PLATFORM key (ak_…) from dashboard.composio.dev → PLATFORM → Settings → API Keys |
| "No Composio API key is set" | Key not provided yet | Tell Brigade "set my Composio key to ak_…" |
| "Composio doesn't host a managed sign‑in for X" | That app needs your own OAuth credentials | Add the app in the dashboard (see Apps that need your own sign‑in credentials above), then connect again |
| The connect link doesn't activate | You haven't finished the sign‑in in the browser | Click the link, approve access, then ask "is it connected yet?" |
For operators / developers: the integration is the always‑on, owner‑gated composio
tool (src/agents/tools/composio-tool.ts). The key resolves from the sealed credential
store first, then tools.composio.apiKey in config, then the COMPOSIO_API_KEY
environment variable; the connecting user id can be set via tools.composio.userId
(defaults to brigade-owner).