一键导入
composio-oauth
Use when connecting OAuth-backed SaaS apps (Gmail, Calendar, Sheets, HubSpot, Slack, X, LinkedIn, Instagram) or calling curated Composio actions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when connecting OAuth-backed SaaS apps (Gmail, Calendar, Sheets, HubSpot, Slack, X, LinkedIn, Instagram) or calling curated Composio actions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Use when shell commands fail, npx/curl/git won't run, or you must choose run_shell vs web_fetch vs file tools in Nodebox vs host.
Use when the user says remember this, save a preference or API key, or you must pick memory_save vs session notes vs skill (action=manage) vs wiki_* tools.
Use when the input is an image, screenshot, diagram, PDF/DOCX, audio file, or YouTube link—extract metadata/text before reasoning.
Use when the user wants to discover, search, or install agent skills from online registries—top results by installs, stars, or votes. Or user sends /find_skills.
Use when calling REST or GraphQL APIs with web_fetch/web_post — auth headers, query params, GraphQL shape, Directus GraphQL mutations/relations, discovery order, and reading error bodies.
Use when the user or agent installs a skill from skills.sh or GitHub — map WebFetch, Bash, Python, Playwright, and MCP references to Web Agent built-ins.
基于 SOC 职业分类
| name | Composio OAuth |
| description | Use when connecting OAuth-backed SaaS apps (Gmail, Calendar, Sheets, HubSpot, Slack, X, LinkedIn, Instagram) or calling curated Composio actions. |
| version | 1.0.0 |
| category | bundled |
| primary-tools | ["composio_connect","composio_status","composio_action"] |
| tags | ["composio","oauth","gmail","sheets","calendar","hubspot","slack","saas"] |
| triggers | ["composio","oauth","gmail","google sheets","google calendar","hubspot","connect app","composio_action","composio_connect","composio_status","linkedin","my linkedin","my gmail","my inbox","my calendar","my slack","my account","connected app","what's happening on my","whats happening on my","social media account"] |
| Need | Tool |
|---|---|
| Check key + accounts + allowlist | composio_status — always first for "my LinkedIn/Gmail/…" |
| Start OAuth link | composio_connect { app } — only when status shows app missing |
| Run curated action | composio_action { action, args } — when status shows connected |
Non-negotiable: Never tell the user an OAuth app is unavailable without calling composio_status first. Use stable Web Agent action ids from this skill or composio_status.allowed_actions — not arbitrary Composio catalog slugs.
web_post.Composio setup lives in Settings → Composio → API key (composio_api_key). There is no external SETUP.md or repo doc to fetch — when composio_status returns configured: false, tell the user to add their key in Settings (from Composio dashboard), then run composio_connect for the app.
Do not web_search or web_fetch GitHub/raw URLs for Web Agent setup instructions.
composio_status — confirm API key, list connected accounts, read allowed_actions.composio_connect → share redirect_url with the user.composio_action with action id + args. Send/post/delete/publish may require approval.Google Calendar: google_calendar_list_events, google_calendar_get_event, google_calendar_create_event, google_calendar_patch_event, google_calendar_delete_event, google_calendar_find_free_slots
Gmail: gmail_fetch_emails, gmail_list_drafts, gmail_create_draft, gmail_send_draft, gmail_send_email, gmail_add_label_to_email
Google Sheets: googlesheets_batch_get, googlesheets_values_get, googlesheets_spreadsheets_values_append, googlesheets_values_update, googlesheets_create_spreadsheet_row, googlesheets_upsert_rows
X/Twitter: x_search_recent, x_create_post, x_list_post_likers
LinkedIn: linkedin_create_post, linkedin_create_article_or_url_share, linkedin_get_my_info
LinkedIn publish args use Web Agent-friendly fields (Composio schemas are normalized automatically):
linkedin_create_post — { text, url?, draft?, images? }linkedin_create_article_or_url_share — { text, url, draft? }author is auto-filled from linkedin_get_my_info when omittedcomposio_status with { app: "linkedin", catalog_check: true } to detect stale action idsInstagram: instagram_get_user_info, instagram_get_user_media, instagram_post_media, instagram_publish_media, instagram_send_text_message, instagram_send_image
HubSpot: hubspot_search_contacts, hubspot_create_contact, hubspot_update_contact
Notion: notion_search, notion_create_page
Slack: slack_send_message
YouTube: youtube_search
Also supported: see composio_status.allowed_actions for the full allowlist.
http-api — public REST/GraphQL without OAuth; use web_fetch/web_post.browser-runtime-map — never use shell curl for Composio.WEBAGENT_COMPOSIO_API_KEY → composio_status returns setup guidance; do not loop failed actions.allowed_actions instead of guessing.version; Web Agent sends latest automatically. Override with WEBAGENT_COMPOSIO_TOOLKIT_VERSION or per-app env vars if needed.composio_status first.composio_connect when composio_status.connected_accounts already includes the app.web_post to Google/Slack/LinkedIn APIs without OAuth setup.