mirror of
https://github.com/outbackdingo/optimclaw.git
synced 2026-08-29 00:49:31 +00:00
Add Composio integration as a WASM tool (tools-src/composio/), providing a single multiplexed tool with 4 actions: list, execute, connect, and connected_accounts. Supports 250+ third-party apps via Composio's REST API with WASM sandbox security (fuel metering, memory limits, network allowlisting, host-injected credentials). Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
76 lines
2.2 KiB
JSON
76 lines
2.2 KiB
JSON
{
|
|
"version": "0.1.0",
|
|
"wit_version": "0.3.0",
|
|
"description": "Connect to 250+ apps (Gmail, GitHub, Slack, Notion, etc.) via Composio. Actions: list (browse tools), execute (run a tool), connect (OAuth-link an app), connected_accounts (list linked accounts). Authentication is handled via the 'composio_api_key' secret injected by the host.",
|
|
"parameters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"action": {
|
|
"type": "string",
|
|
"enum": ["list", "execute", "connect", "connected_accounts"],
|
|
"description": "Action to perform"
|
|
},
|
|
"app": {
|
|
"type": "string",
|
|
"description": "App/toolkit slug (e.g., \"gmail\", \"github\", \"notion\")"
|
|
},
|
|
"tool_slug": {
|
|
"type": "string",
|
|
"description": "Tool action slug for execute (e.g., \"GMAIL_SEND_EMAIL\")"
|
|
},
|
|
"params": {
|
|
"description": "Parameters for the tool action (JSON object)"
|
|
},
|
|
"connected_account_id": {
|
|
"type": "string",
|
|
"description": "Specific connected account ID (auto-resolved if omitted)"
|
|
}
|
|
},
|
|
"required": ["action"],
|
|
"additionalProperties": false
|
|
},
|
|
"capabilities": {
|
|
"http": {
|
|
"allowlist": [
|
|
{
|
|
"host": "backend.composio.dev",
|
|
"path_prefix": "/api/v3/",
|
|
"methods": ["GET", "POST"]
|
|
}
|
|
],
|
|
"credentials": {
|
|
"composio_api_key": {
|
|
"secret_name": "composio_api_key",
|
|
"location": {
|
|
"type": "header",
|
|
"name": "x-api-key"
|
|
},
|
|
"host_patterns": ["backend.composio.dev"]
|
|
}
|
|
},
|
|
"rate_limit": {
|
|
"requests_per_minute": 30,
|
|
"requests_per_hour": 500
|
|
}
|
|
},
|
|
"secrets": {
|
|
"allowed_names": ["composio_api_key"]
|
|
}
|
|
},
|
|
"auth": {
|
|
"secret_name": "composio_api_key",
|
|
"display_name": "Composio",
|
|
"instructions": "Get an API key at app.composio.dev — go to Settings > API Keys to generate one.",
|
|
"setup_url": "https://app.composio.dev/",
|
|
"env_var": "COMPOSIO_API_KEY"
|
|
},
|
|
"setup": {
|
|
"required_secrets": [
|
|
{
|
|
"name": "composio_api_key",
|
|
"prompt": "Composio API key (from app.composio.dev)"
|
|
}
|
|
]
|
|
}
|
|
}
|