SuperAPI AI Directory

composio-cli

Agents & models

View repository

Updated 10-15 20:25

About this skill

Composio CLI

A unified terminal interface to 1000+ SaaS tools with managed auth. The reliable path is always: discover → inspect schema → ensure connection → execute. Never invent a tool slug; never execute without confirming the connected account.

Setup

curl -fsSL https://composio.dev/install | bash   # install
composio --version
composio login                                   # browser auth
composio whoami                                   # confirm identity

If composio is missing, install first. If whoami fails, the user must composio login (interactive — suggest they run it themselves).

The execution loop

1. Discover the slug (never guess)

composio search "send a slack message" --human
composio search "create issue" --toolkits github
composio tools list github            # all tools in a toolkit
composio tools info GITHUB_CREATE_AN_ISSUE

2. Inspect the schema before calling

composio execute GITHUB_CREATE_AN_ISSUE --get-schema

Map the user's intent onto the required fields. If a required field is unknown, ask — do not fabricate.

3. Ensure the account is connected

composio link github --list      # already connected?
composio link github             # connect if not (interactive)
composio connections list

A tool call against an unconnected toolkit will fail — check first.

4. Dry-run, then execute

composio execute GITHUB_CREATE_AN_ISSUE --dry-run -d '{"owner":"acme","repo":"api","title":"Bug"}'
composio execute GITHUB_CREATE_AN_ISSUE -d '{"owner":"acme","repo":"api","title":"Bug"}'
composio execute SLUG -d @payload.json     # large payloads from file
composio execute SLUG --file ./image.png   # file upload
composio execute -p SLUG_A -d '...' SLUG_B -d '...'   # parallel

For a write/destructive action, dry-run first and confirm with the user before the real call.

Other modes

Need Command
Raw authenticated API call composio proxy <URL> --toolkit <tk> -X POST -d '{...}'
Subscribe to events composio triggers list <tk> → composio listen <TRIGGER_SLUG> --timeout 5m --max-events 5
Scripted multi-step workflow composio run --file ./workflow.ts (preview with --dry-run)
Typed SDK stubs composio generate ts --toolkits github gmail

Quality bar

  • Slug came from search/tools list, never memory.
  • Schema inspected; payload matches required fields exactly.
  • Connection verified before execute.
  • Write actions dry-run'd and user-confirmed.
  • Missing required input → ask, don't fabricate.

Anti-patterns

  • Guessing a tool slug or payload shape instead of --get-schema.
  • execute before checking connections list → opaque auth failure.
  • Skipping --dry-run on a destructive call.
  • Hardcoding secrets into payloads (Composio manages auth — don't pass tokens).
  • Treating composio login as scriptable; it is interactive — have the user run it.