connect は何をしますか?
Composio CLI を使って Codex をあらゆるアプリに接続しましょう。何ができるか説明する文章を生成するのはもうやめて、シェルから実際に実行してください。
このスキルを使うべきタイミング
Codex に次のことを依頼するときにこのスキルを使用します。
- メールを送信する(下書きを作成するのではなく)
- 課題を作成する(説明するのではなく)
- メッセージを投稿する(提案するのではなく)
- データベースを更新する(方法を説明するのではなく)
何が変わるか
| Connect なし | Connect あり |
|---|---|
| 「こちらがメールの下書きです…」 | メールを送信する |
| 「課題を作成すべきです…」 | 課題を作成する |
| 「これをSlackに投稿してください…」 | 投稿する |
| 「これをNotionに追加してください…」 | 追加する |
サポートされているアプリ
1000以上の連携が含まれます。
- メール: Gmail、Outlook、SendGrid
- チャット: Slack、Discord、Teams、Telegram
- 開発: GitHub、GitLab、Jira、Linear
- ドキュメント: Notion、Google ドキュメント、Confluence
- データ: Sheets、Airtable、PostgreSQL
- CRM: HubSpot、Salesforce、Pipedrive
- ストレージ: Drive、Dropbox、S3
- ソーシャル: Twitter、LinkedIn、Reddit
セットアップ
1. Composio CLI のインストール
curl -fsSL https://composio.dev/install | bash
2. ログイン
composio login
composio whoami
これによりブラウザが開いて認証され、デフォルトの組織とプロジェクトを選択できます。自動化フローでプロンプトをスキップするには -y を使用します。
3. 必要なツールキットをリンクする
composio link github
composio link gmail
composio link slack
各コマンドは OAuth を一度実行し、その後接続が保持されます。
完了です。Codex はこれで接続された任意のアプリをシェルから操作できるようになります。
コアワークフロー
- ツールスラッグがわかっている場合 →
composio execute - スラッグがわからない場合 →
composio search - 入力項目の確認が必要な場合 →
composio execute --get-schemaまたは--dry-run - ツールキットが接続されていない場合 →
composio link <toolkit>で再試行 - 複数ステップが必要な場合 → ワークフローには
composio run、生の API 呼び出しにはcomposio proxy
例
ツールを検索する
composio search "create a github issue"
composio search "send an email" --toolkits gmail
呼び出し前に入力を確認する
composio tools info GITHUB_CREATE_ISSUE
composio execute GITHUB_CREATE_ISSUE --get-schema
composio execute GITHUB_CREATE_ISSUE --dry-run -d '{"owner":"acme","repo":"app","title":"Bug"}'
メールを送信する
composio execute GMAIL_SEND_EMAIL -d '{
"recipient_email": "[email protected]",
"subject": "リリースしました!",
"body": "v2.0 が公開されました。問題があれば教えてください"
}'
GitHub の課題を作成する
composio execute GITHUB_CREATE_ISSUE -d '{
"owner": "my-org",
"repo": "repo",
"title": "モバイルタイムアウトのバグ",
"labels": ["bug"]
}'
Slack に投稿する
composio execute SLACK_SEND_MESSAGE -d '{
"channel": "engineering",
"text": "デプロイ完了 - v2.4.0 が稼働中"
}'
呼び出しを並列実行する
composio execute --parallel \
GMAIL_FETCH_EMAILS -d '{"max_results": 2}' \
GITHUB_GET_THE_AUTHENTICATED_USER -d '{}'
composio run でアクションを連鎖させる
composio run '
const issues = await search("github issues labeled bug this week");
const summary = issues.map(i => `- ${i.title}`).join("\n");
await execute("SLACK_SEND_MESSAGE", {
channel: "bugs",
text: `今週のバグ:\n${summary}`
});
'
ファイルから再利用可能なワークフローを読み込む:
composio run --file ./workflow.ts -- --repo composiohq/composio
生の API アクセス(proxy)
専用のツールがない場合、認証済みの API に直接アクセスします。
composio proxy https://gmail.googleapis.com/gmail/v1/users/me/profile \
--toolkit gmail
composio proxy https://gmail.googleapis.com/gmail/v1/users/me/drafts \
--toolkit gmail -X POST -H 'content-type: application/json' \
-d '{"message":{"raw":"..."}}'
仕組み
- ユーザーが Codex に何かをするよう依頼する
- Codex が
composio searchまたは既存の知識からスラッグを選択する - CLI が接続を確認し、不足していれば
composio linkを促す - アクションが 実際の API に対して実行され、結果が JSON で標準出力に返される
設定
グローバルフラグ:
--log-level <all|trace|debug|info|warning|error|fatal|none>--helpコマンドごとのドキュメントを表示
環境変数:
COMPOSIO_API_KEY- 認証情報(非対話的な使用のために設定)COMPOSIO_BASE_URL- カスタム API エンドポイントCOMPOSIO_SESSION_DIR- アーティファクト保存場所の上書きCOMPOSIO_DISABLE_TELEMETRY=true- テレメトリーを無効化
型安全な SDK(オプション)
シェルではなくアプリからツールを呼び出す場合に、型付きクライアントコードを生成します。
composio generate ts # TypeScript の型
composio generate py # Python の型
フラグ: -o <dir>、--toolkits <list>、--compact、--transpiled、--type-tools。
トラブルシューティング
Not logged in→composio loginを実行Connection required for <toolkit>→composio link <toolkit>を実行- 不明なスラッグ →
composio search "<目的>"またはcomposio tools list <toolkit> - 不正な入力 →
composio execute <SLUG> --get-schemaの後に--dry-runを実行 - アクションが失敗した → 対象アプリの権限を確認
詳細なリファレンス: docs.composio.dev/docs/cli