{"id":"9bd3e2f4-9d02-4d37-8d48-904234966fa8","entityType":"agent","slug":"clawhub-cargo-ai-cargo-ai","name":"cargo-ai","canonicalUrl":"https://www.xpersona.co/agent/clawhub-cargo-ai-cargo-ai","canonicalPath":"/agent/clawhub-cargo-ai-cargo-ai","generatedAt":"2026-10-10T14:46:14.691Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T12:42:16.173Z","emptyReason":null},"description":"Build and configure AI agents inside Cargo — create an agent, choose its model and temperature, write its prompt, attach knowledge for retrieval (RAG), connect MCP tool servers, manage memories, and deploy releases. Triggers: \"create an agent\", \"make an agent that\", \"give the agent our docs\", \"attach this knowledge base\", \"attach this library to the agent\", \"add resources to the agent release\", \"connect an MCP server\", \"expose our tools as an MCP server\", \"use Cargo from Claude Desktop or ChatGPT\", \"change the agent model\", \"what does the agent remember\", \"deploy the agent\", \"the agent is answering wrong\". Skip when: uploading the knowledge files themselves — use cargo-content; sending the agent a message or running it over records — use cargo-orchestration.","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.4K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s178dcd9wkfn0a2fqrygmt3jzn87j9e1:cargo-ai","sourceUrl":"https://clawhub.ai/cargo-ai/cargo-ai","homepage":"https://clawhub.ai/cargo-ai/skills/cargo-ai","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/cargo-ai/cargo-ai","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/cargo-ai/skills/cargo-ai","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":63,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"cargo-ai technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T12:42:16.173Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T12:42:16.173Z","emptyReason":null},"stars":null,"forks":null,"downloads":1428,"packageName":null,"latestVersion":"2.4.0","tractionLabel":"1.4K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T12:42:16.172Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T12:42:16.173Z","lastCrawledAt":"2026-10-10T12:42:16.172Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T12:42:16.172Z","lastVerifiedAt":null,"highlights":[{"version":"2.4.0","createdAt":"2026-09-16T07:25:49.483Z","changelog":"cargo-ai v2.4.0 - Updated SKILL.md and skill-metadata.json; removed skill-card.md. - Documentation and metadata improvements for clarity and maintenance. - No CLI/API changes; all existing commands and behavior remain unchanged.","fileCount":9,"zipByteSize":17494},{"version":"2.3.1","createdAt":"2026-09-01T23:28:58.000Z","changelog":"cargo-ai 2.3.1 - The agent template listing behavior is clarified: `template list` now returns full template details, making `template get` unnecessary (this is now documented). - Quick reference and usage sections updated to reflect that `template get` is no longer available. - Documentation improved for template selection: example added for using `jq` to select a template by slug. - Outdated references to `template get` removed from SKILL.md and example files. - Removed the redundant file `skill-card.md`.","fileCount":9,"zipByteSize":17151},{"version":"2.3.0","createdAt":"2026-08-27T23:43:04.532Z","changelog":"cargo-ai v2.3.0 - Updated SKILL.md: modernized the description and added more trigger phrases and scenarios. - Expanded bootstrap/setup instructions for signing in and initial CLI setup. - Enhanced quick reference to show new or additional command patterns (notably with MCP servers/clients). - Removed legacy skill-card.md file.","fileCount":9,"zipByteSize":16821},{"version":"2.2.1","createdAt":"2026-08-11T21:43:50.115Z","changelog":"cargo-ai 2.2.1 - Added skill-metadata.json for enhanced metadata management. - Updated SKILL.md for improved login instructions—CLI now supports email authentication without requiring a browser. - Expanded compatibility details in documentation. - Removed outdated skill-card.md. - Documentation examples/templates updated for clarity.","fileCount":9,"zipByteSize":14799},{"version":"2.2.0","createdAt":"2026-06-09T00:09:28.544Z","changelog":"cargo-ai 2.2.0 - Added documentation for structured output and heartbeat configuration via direct API payloads (not yet exposed as CLI flags). - Clarified that the generic --options flag does not support output or heartbeat fields. - Provided example curl commands for advanced release configuration. - Updated references to removed or changed documentation files. - Removed skill-card.md.","fileCount":8,"zipByteSize":14296},{"version":"2.1.0","createdAt":"2026-06-08T07:43:57.400Z","changelog":"cargo-ai 2.1.0 - Split knowledge file and library management into a new cargo-content skill; this skill now focuses on agent config, release management, server connections, and memories. - File and knowledge library upload, listing, and management commands and docs have been removed here—use cargo-content instead. - Updated documentation to clarify separation of responsibilities between skills (cargo-ai for agents, cargo-content for knowledge, cargo-orchestration for chat). - Removed obsolete example and documentation files related to files (references/examples/files.md, skill-card.md). - Updated command references and usage docs to reflect the new structure and flows.","fileCount":8,"zipByteSize":13142},{"version":"1.1.1","createdAt":"2026-05-28T22:13:01.989Z","changelog":"cargo-ai 1.1.1 - Updated CLI install instructions: install @cargo-ai/cli using the latest version. - Prerequisites section now links to shared documentation for install and login steps. - No breaking changes to commands or options.","fileCount":9,"zipByteSize":13718},{"version":"1.1.0","createdAt":"2026-05-28T19:28:11.031Z","changelog":"cargo-ai 1.1.0 - Improved documentation for agent, file, MCP server, and memory management using Cargo CLI. - Added clear guidance on prerequisites, agent resource discovery, and command usage. - Clarified distinction between this skill (resource management) and related skills: cargo-orchestration (agent communication) and cargo-workspace-management (workspace/folder admin). - Expanded example commands and quick references for all core actions. - Included step-by-step workflows for agent creation and release management.","fileCount":9,"zipByteSize":13893}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s178dcd9wkfn0a2fqrygmt3jzn87j9e1:cargo-ai","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s178dcd9wkfn0a2fqrygmt3jzn87j9e1:cargo-ai` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/cargo-ai/cargo-ai before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T14:46:14.688Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-cargo-ai-cargo-ai/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T12:42:16.173Z","emptyReason":null},"readme":"Skill: cargo-ai\n\nOwner: cargo-ai\n\nSummary: Build and configure AI agents inside Cargo — create an agent, choose its model and temperature, write its prompt, attach knowledge for retrieval (RAG), connect MCP tool servers, manage memories, and deploy releases. Triggers: \"create an agent\", \"make an agent that\", \"give the agent our docs\", \"attach this knowledge base\", \"attach this library to the agent\", \"add resources to the agent release\", \"connect an MCP server\", \"expose our tools as an MCP server\", \"use Cargo from Claude Desktop or ChatGPT\", \"change the agent model\", \"what does the agent remember\", \"deploy the agent\", \"the agent is answering wrong\". Skip when: uploading the knowledge files themselves — use cargo-content; sending the agent a message or running it over records — use cargo-orchestration.\n\nTags: latest:2.4.0\n\nVersion history:\n\nv2.4.0 | 2026-09-16T07:25:49.483Z | auto\n\ncargo-ai v2.4.0\n\n- Updated SKILL.md and skill-metadata.json; removed skill-card.md.\n- Documentation and metadata improvements for clarity and maintenance.\n- No CLI/API changes; all existing commands and behavior remain unchanged.\n\nv2.3.1 | 2026-09-01T23:28:58.000Z | auto\n\ncargo-ai 2.3.1\n\n- The agent template listing behavior is clarified: `template list` now returns full template details, making `template get` unnecessary (this is now documented).\n- Quick reference and usage sections updated to reflect that `template get` is no longer available.\n- Documentation improved for template selection: example added for using `jq` to select a template by slug.\n- Outdated references to `template get` removed from SKILL.md and example files.\n- Removed the redundant file `skill-card.md`.\n\nv2.3.0 | 2026-08-27T23:43:04.532Z | auto\n\ncargo-ai v2.3.0\n\n- Updated SKILL.md: modernized the description and added more trigger phrases and scenarios.\n- Expanded bootstrap/setup instructions for signing in and initial CLI setup.\n- Enhanced quick reference to show new or additional command patterns (notably with MCP servers/clients).\n- Removed legacy skill-card.md file.\n\nv2.2.1 | 2026-08-11T21:43:50.115Z | auto\n\ncargo-ai 2.2.1\n\n- Added skill-metadata.json for enhanced metadata management.\n- Updated SKILL.md for improved login instructions—CLI now supports email authentication without requiring a browser.\n- Expanded compatibility details in documentation.\n- Removed outdated skill-card.md.\n- Documentation examples/templates updated for clarity.\n\nv2.2.0 | 2026-06-09T00:09:28.544Z | auto\n\ncargo-ai 2.2.0\n\n- Added documentation for structured output and heartbeat configuration via direct API payloads (not yet exposed as CLI flags).\n- Clarified that the generic --options flag does not support output or heartbeat fields.\n- Provided example curl commands for advanced release configuration.\n- Updated references to removed or changed documentation files.\n- Removed skill-card.md.\n\nv2.1.0 | 2026-06-08T07:43:57.400Z | auto\n\ncargo-ai 2.1.0\n\n- Split knowledge file and library management into a new cargo-content skill; this skill now focuses on agent config, release management, server connections, and memories.\n- File and knowledge library upload, listing, and management commands and docs have been removed here—use cargo-content instead.\n- Updated documentation to clarify separation of responsibilities between skills (cargo-ai for agents, cargo-content for knowledge, cargo-orchestration for chat).\n- Removed obsolete example and documentation files related to files (references/examples/files.md, skill-card.md).\n- Updated command references and usage docs to reflect the new structure and flows.\n\nv1.1.1 | 2026-05-28T22:13:01.989Z | auto\n\ncargo-ai 1.1.1\n\n- Updated CLI install instructions: install @cargo-ai/cli using the latest version.\n- Prerequisites section now links to shared documentation for install and login steps.\n- No breaking changes to commands or options.\n\nv1.1.0 | 2026-05-28T19:28:11.031Z | auto\n\ncargo-ai 1.1.0\n\n- Improved documentation for agent, file, MCP server, and memory management using Cargo CLI.\n- Added clear guidance on prerequisites, agent resource discovery, and command usage.\n- Clarified distinction between this skill (resource management) and related skills: cargo-orchestration (agent communication) and cargo-workspace-management (workspace/folder admin).\n- Expanded example commands and quick references for all core actions.\n- Included step-by-step workflows for agent creation and release management.\n\nArchive index:\n\nArchive v2.4.0: 9 files, 17494 bytes\n\nFiles: references/examples/agents.md (3421b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4741b), references/response-shapes.md (7560b), references/troubleshooting.md (3908b), skill-card.md (2479b), skill-metadata.json (1020b), SKILL.md (19239b), _meta.json (127b)\n\nFile v2.4.0:SKILL.md\n\n---\nname: cargo-ai\ndescription: \"Build and configure AI agents inside Cargo — create an agent, choose its model and temperature, write its prompt, attach knowledge for retrieval (RAG), connect MCP tool servers, manage memories, and deploy releases. Triggers: \\\"create an agent\\\", \\\"make an agent that\\\", \\\"give the agent our docs\\\", \\\"attach this knowledge base\\\", \\\"attach this library to the agent\\\", \\\"add resources to the agent release\\\", \\\"connect an MCP server\\\", \\\"expose our tools as an MCP server\\\", \\\"use Cargo from Claude Desktop or ChatGPT\\\", \\\"change the agent model\\\", \\\"what does the agent remember\\\", \\\"deploy the agent\\\", \\\"the agent is answering wrong\\\". Skip when: uploading the knowledge files themselves — use cargo-content; sending the agent a message or running it over records — use cargo-orchestration.\"\nversion: \"2.4.0\"\ncompatibility: Requires @cargo-ai/cli (npm). Sign in or create an account with `cargo-ai login --email` (emailed code, no browser), `--oauth`, or an API token\nhomepage: https://github.com/getcargohq/cargo-skills\nmetadata:\n  author: getcargo\n  openclaw:\n    requires:\n      bins:\n        - cargo-ai\n    install:\n      - kind: node\n        package: \"@cargo-ai/cli@latest\"\n        bins:\n          - cargo-ai\n    homepage: https://github.com/getcargohq/cargo-skills\n---\n\n# Cargo CLI — AI\n\nAgent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.\n\n> For *using* agents (sending messages, multi-turn chat, polling), use `cargo-orchestration`.\n> For uploading knowledge **files** and building knowledge **libraries** (the `content` domain), use [`cargo-content`](../cargo-content/SKILL.md). This skill covers how that knowledge attaches to an agent.\n> For workspace administration — folders (used to organize agents and files), users, API tokens, roles, and submitting reports when the CLI fails — use [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md).\n\n> See `references/response-shapes.md` for full JSON response structures.\n> See `references/troubleshooting.md` for common errors and how to fix them.\n> See `references/examples/agents.md` for agent CRUD and configuration examples.\n> See `references/examples/mcp-servers.md` for MCP server creation and management examples.\n\n## Bootstrap\n\nAlready signed in (`cargo-ai whoami` returns a workspace)? Skip to the next section.\n\n```bash\nnpm install -g @cargo-ai/cli            # no global install? prefix every command with `npx @cargo-ai/cli`\ncargo-ai login --email you@company.com  # emailed code, no browser; creates the account on first use\n                                        # alternatives: --oauth (browser) · --token <api-token> (CI)\ncargo-ai whoami                         # confirm the active workspace before any write\n```\n\nEvery command prints JSON to stdout; failures exit non-zero with `{\"errorMessage\": \"...\"}`. Anything that creates a run or a batch is async — pass `--wait-until-finished` or poll the matching `get`. When the full skill bundle is installed, [`../cargo/references/prerequisites.md`](../cargo/references/prerequisites.md) adds the CLI version pin, token scopes, and the admin-only surface.\n\n## Discover resources first\n\n```bash\ncargo-ai ai agent list                     # all agents (uuid, name, description)\ncargo-ai ai template list                  # all AI agent templates (slug, name)\ncargo-ai ai mcp-server list                # all MCP servers (uuid, name)\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>  # agent memories\n# Knowledge files & libraries live in the content domain — see cargo-content:\n#   cargo-ai content file list   /   cargo-ai content library list\n```\n\n**Retrieve in the UI:** agents live at `app.getcargo.io/workspaces/<WORKSPACE_UUID>/agents/<AGENT_UUID>`. Get `<WORKSPACE_UUID>` from `cargo-ai whoami` under `workspace.uuid`.\n\n## Quick reference\n\n```bash\ncargo-ai ai agent list\ncargo-ai ai agent get <agent-uuid>\ncargo-ai ai agent create --name <name> --icon-color blue --icon-face 🤖\ncargo-ai ai agent update --uuid <agent-uuid> --name <name>\ncargo-ai ai agent remove <agent-uuid>\ncargo-ai ai release list --agent-uuid <uuid>\ncargo-ai ai release get <release-uuid>\ncargo-ai ai release get-draft --agent-uuid <uuid>\ncargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o\ncargo-ai ai release deploy-draft --agent-uuid <uuid>\ncargo-ai ai template list                  # full detail; there is no `template get`\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"Internal Tools\"\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated Name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse\ncargo-ai mcp                               # serve the platform MCP over stdio\ncargo-ai mcp --server <mcp-server-uuid>    # serve a curated workspace MCP server instead\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\ncargo-ai ai memory update --mem0-id <id> --scope agent --agent-uuid <uuid> --content \"Updated memory\"\ncargo-ai ai memory remove --mem0-id <id> --scope agent --agent-uuid <uuid>\n```\n\n## Agents\n\nAgents are AI resources with configured instructions, a language model, actions, and optional resources.\n\n**Before creating an agent from scratch, check existing templates — they capture proven patterns for common use cases (lead research, classification, email drafting) and give you a ready-made system prompt, model, and temperature to start from:**\n\n```bash\ncargo-ai ai template list          # browse patterns — full detail, not a summary\n# there is no `template get`: `list` already returns systemPrompt, temperature,\n# languageModelSlug, actions and resources, so select the one you want\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<slug>\")' \n```\n\n```bash\n# List all agents\ncargo-ai ai agent list\n\n# Get a single agent (includes deployed release details)\ncargo-ai ai agent get <agent-uuid>\n\n# Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color blue --icon-face 🤖 \\\n  --description \"Researches leads and enriches data\"\n\n# Update an agent\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Updated description\"\n\n# Move to a folder (find folder UUIDs via cargo-workspace-management)\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n\n# Remove an agent\ncargo-ai ai agent remove <agent-uuid>\n```\n\n**Agent icon:** `--icon-color` must be one of: `grey`, `green`, `purple`, `yellow`, `blue`, `red`. `--icon-face` is an emoji string.\n\n**Folders:** Folder creation, listing, and management lives in [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md) (`cargo-ai workspaceManagement folder list/create/...`). Use that skill to discover or create the `<folder-uuid>` you pass to `--folder-uuid` here.\n\n## Releases\n\nReleases are versioned snapshots of an agent's configuration (system prompt, actions, resources, model, temperature). Agents execute against their deployed release.\n\n```bash\n# List releases for an agent\ncargo-ai ai release list --agent-uuid <uuid>\n\n# Get a specific release\ncargo-ai ai release get <release-uuid>\n\n# Get the current draft release (editable)\ncargo-ai ai release get-draft --agent-uuid <uuid>\n\n# Update the draft release\ncargo-ai ai release update-draft --agent-uuid <uuid> \\\n  --system-prompt \"You are a lead research assistant...\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3 \\\n  --max-steps 10\n\n# Deploy the draft release (makes it live)\ncargo-ai ai release deploy-draft --agent-uuid <uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Added research actions\"\n```\n\n### Structured output & heartbeat — not yet exposed as CLI flags\n\nThe release API payload (both `draft/update` and `draft/deploy`) accepts two fields that **`release update-draft` / `release deploy-draft` do not surface as flags** (verified against the CLI source — there is no `--output` / `--output-schema` or `--heartbeat`):\n\n| Field | Shape | Purpose |\n|---|---|---|\n| `output` | `{\"type\":\"text\"}` **or** `{\"type\":\"jsonSchema\",\"jsonSchema\": <standard JSON Schema object>}` | Force the agent to return structured output matching a JSON Schema. |\n| `heartbeat` | `{\"intervalMinutes\": number, \"maxMessages\": number, \"prompt\": string \\| null}` | Periodically re-wake the chat (`intervalMinutes`) until it reaches `maxMessages`; `prompt` is the wake message (null = generic \"continue\"). |\n\nThe generic `--options` flag does **not** carry these — the API's `options` only holds `{connectorUuidsByIntegrationSlug, modelUuidsByIntegrationSlug}`. Until the flags ship, set these with a direct API call against the same endpoints the CLI uses:\n\n```bash\n# Structured (JSON Schema) output on the draft release\ncurl -sS -X PUT \"$CARGO_API_BASE/v1/ai/releases/draft/update\" \\\n  -H \"Authorization: Bearer $CARGO_TOKEN\" -H \"Content-Type: application/json\" \\\n  -d '{\"agentUuid\":\"<uuid>\",\"output\":{\"type\":\"jsonSchema\",\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"score\":{\"type\":\"number\"}},\"required\":[\"score\"]}}}'\n# Deploy carries the same fields — POST .../v1/ai/releases/draft/deploy\n```\n\nSend these payloads alongside the other fields you're updating (the endpoint replaces the draft config). **File a `workspaceManagement report`** (see [`../cargo-workspace-management/SKILL.md`](../cargo-workspace-management/SKILL.md)) to request first-class `--output` / `--heartbeat` flags — this is the documented feedback channel for CLI/UI parity gaps.\n\n**Agent configuration workflow:**\n\n1. **Browse templates for inspiration**: `cargo-ai ai template list` — it returns each template in full (system prompt, model, temperature, actions), so pick the one closest to your use case straight out of that response\n2. Create the agent: `cargo-ai ai agent create --name \"...\" --icon-color blue --icon-face 🤖`\n3. Get the draft release: `cargo-ai ai release get-draft --agent-uuid <uuid>`\n4. Update the draft with configured actions, resources, prompt, model: `cargo-ai ai release update-draft --agent-uuid <uuid> ...`\n5. Deploy: `cargo-ai ai release deploy-draft --agent-uuid <uuid> ...`\n\n## Templates\n\nTemplates are pre-built agent configurations that capture proven patterns for common use cases. **Always check templates before designing an agent from scratch** — they give you a ready-made system prompt, recommended language model, temperature, and tool configuration that you can adopt as-is or adapt.\n\n```bash\n# List available agent templates — each entry is complete, so this is the only\n# call you need. There is no `template get` subcommand.\ncargo-ai ai template list\n\n# Inspect one by slug: filter the same response\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<slug>\")' \n```\n\nTemplates include a system prompt, actions, resources, and recommended model settings. Use them as a starting point and customize via `release update-draft`. See `references/examples/templates.md` for the full guide including an end-to-end example of creating an agent from a template.\n\n## Model and temperature guidance\n\n| Use case | Recommended model | Temperature |\n|---|---|---|\n| Classification, extraction, scoring | `gpt-4o-mini` or `claude-3-5-haiku` | `0.0` – `0.2` |\n| Research, summarization, analysis | `gpt-4o` or `claude-3-5-sonnet` | `0.2` – `0.5` |\n| Copywriting, personalization | `gpt-4o` or `claude-3-5-sonnet` | `0.5` – `0.8` |\n| Brainstorming, creative ideation | `gpt-4o` or `claude-opus` | `0.7` – `1.0` |\n\nLow temperature (`0.0`–`0.2`) = deterministic, consistent outputs. High temperature (`0.7`+) = creative, varied outputs. For production workflows processing thousands of records, prefer low temperature.\n\n## Knowledge for RAG (files & libraries)\n\nKnowledge that grounds agent responses (retrieval-augmented generation, RAG) comes from the **`content`** domain — see [`cargo-content`](../cargo-content/SKILL.md):\n\n- **Files** — uploaded binaries (PDFs, CSVs, text).\n- **Libraries** — collections that group files, either `native` (workspace-managed) or `connector`-backed (synced from an external source via an unstructured-data extractor).\n\n> Files and libraries moved out of `ai` into the top-level **`content`** domain in CLI ≥ 1.0.19 (`cargo-ai content file …` / `cargo-ai content library …`). The old `ai file …` commands are gone. Everything content-related now lives in [`cargo-content`](../cargo-content/SKILL.md).\n\n### Attaching knowledge to an agent\n\nA file or library is inert until attached to an agent via the draft release's `resources` array and deployed. Upload files / build libraries in [`cargo-content`](../cargo-content/SKILL.md), then wire them in here with `release update-draft --resources …` followed by `release deploy-draft`. See [`../cargo-content/references/examples/files.md`](../cargo-content/references/examples/files.md) for the full upload → attach → deploy sequence.\n\n## MCP — two directions, don't mix them up\n\nMCP (Model Context Protocol) runs both ways in Cargo, and the two surfaces are unrelated:\n\n| | **Publish** — `ai mcp-server` | **Consume** — `ai mcp-client` |\n|---|---|---|\n| What it is | A server **your workspace exposes**: the tools, agents, and data you choose to make callable | A connection **to someone else's** MCP server |\n| Who calls it | Any MCP client — Claude Code, Claude Desktop, Cursor, ChatGPT | Your Cargo agents, during a chat or a workflow run |\n| Wired via | `cargo-ai mcp --server <uuid>` (stdio bridge, below) | `release update-draft --mcp-clients …` |\n\n**Before building one, check whether the platform MCP already covers it.** Cargo now serves a first-party MCP at `https://mcp.getcargo.io/mcp` — every workspace member, nothing to deploy — with a small fixed toolset for operating the workspace (`whoami`, `get_usage`, `search_actions`, `get_action_schema`, `autocomplete_action`, `execute_action`, `execute_action_batch`, `get_run`, `get_batch`, `list_runs`, `list_models`, `describe_model`, `query_models`). Hosted clients (ChatGPT connectors, Claude.ai, Cursor over HTTP) point at that URL and sign in with OAuth; the consent screen picks the workspace when the user belongs to several. `ai mcp-server` is for the other job: a **curated, named** subset — this tool, that agent, this filtered model — for a client that should see exactly that and nothing else.\n\n### Publishing a workspace MCP server\n\n```bash\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"CRM tools\" \\\n  --actions '[{\"slug\":\"<tool-uuid>\",\"kind\":\"tool\",\"name\":null,\"description\":null,\"isBulkAllowed\":false,\"config\":{}}]' \\\n  --resources '[{\"kind\":\"model\",\"slug\":\"<slug>\",\"name\":\"Accounts\",\"description\":null,\"integrationSlug\":\"hubspot\",\"modelUuid\":null,\"filter\":null,\"selectedColumnSlugs\":null,\"limit\":null,\"prompt\":null,\"isReadOnly\":true}]'\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\n```\n\n- **Actions** take `kind: \"tool\"` **or** `kind: \"agent\"` — an agent can be exposed as a callable MCP tool, not just a tool. `waitUntilFinished` controls whether the call blocks on the run.\n- **Resources** take `kind: \"model\"` (a filtered, column-selected view of a model — keep `isReadOnly: true` unless the client is meant to write) or `kind: \"file\"` (workspace files by UUID, see [`../cargo-content/SKILL.md`](../cargo-content/SKILL.md)).\n- **Capabilities** (`--capabilities`, CLI ≥ 1.0.86) expose Cargo's own built-in tools on the server, alongside your actions and resources. JSON array of `{slug, config}`:\n  ```bash\n  cargo-ai ai mcp-server create --name \"Research\" \\\n    --capabilities '[{\"slug\":\"webSearch\",\"config\":{}}]'\n  ```\n  The nine slugs are `sandbox`, `memory`, `context`, `app`, `document`, `webSearch`, `model`, `file`, and `documentationSearch` — the same set an **agent** release takes in its own `--capabilities`, which is why the examples above pass `'[]'` rather than omitting it. In a CDK project the same field accepts a bare slug (`capabilities: [\"webSearch\"]`).\n- `update` replaces `--actions` / `--resources` / `--capabilities` wholesale rather than merging — read the current server with `mcp-server list` and pass the full array back.\n\n### Serving it to a coding agent — `cargo-ai mcp`\n\nEither server reaches any stdio MCP client through the CLI, using the credentials already on the machine. **No token is copied into client config.**\n\n```bash\nclaude mcp add cargo -- cargo-ai mcp                     # the platform MCP (no setup)\ncargo-ai ai mcp-server list                              # find a curated server's UUID\nclaude mcp add cargo -- cargo-ai mcp --server <uuid>     # that curated server instead\n# Cursor, Windsurf, and other stdio clients: same command as the server entry\n```\n\nWith no `--server`, the bridge uses `CARGO_MCP_SERVER_UUID` when set, otherwise the platform `/mcp`. **This changed:** older CLIs resolved \"the workspace's only MCP server\" and failed with `InvalidUsage` when the workspace had none or several — a bare `cargo-ai mcp` now always has something to serve. stdout carries the MCP protocol and all logs go to stderr, so never print anything to stdout around it.\n\n**When to reach for this instead of the skills:** the skills give an agent the whole CLI; an MCP surface gives it a bounded set with no shell. Use the bridge for in-conversation lookups and one-off actions, and the CLI for batches, workflows, schema changes, and anything with a cost gate. Full routing rule: [`../cargo/SKILL.md`](../cargo/SKILL.md) → \"These skills vs Cargo's MCP surfaces\".\n\n### Consuming an external MCP server\n\n```bash\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse \\\n  --disabled-tool-slugs \"dangerous_tool,other_tool\"\n```\n\n`--authentication` takes `{\"issuedAt\": \"...\", \"accessToken\": \"...\"}` or `\"null\"`. Connected clients are attached to an agent through its release: `release update-draft --mcp-clients …`, then `release deploy-draft`.\n\n## Memories\n\nMemories are pieces of information an agent stores from conversations for future reference. They can be scoped to a workspace, user, or specific agent.\n\n```bash\n# List agent memories\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\n\n# List workspace-wide memories\ncargo-ai ai memory list --scope workspace\n\n# List user-scoped memories\ncargo-ai ai memory list --scope user\n\n# Update a memory\ncargo-ai ai memory update \\\n  --mem0-id <id> \\\n  --scope agent --agent-uuid <uuid> \\\n  --content \"Updated memory content\"\n\n# Remove a memory\ncargo-ai ai memory remove \\\n  --mem0-id <id> \\\n  --scope agent --agent-uuid <uuid>\n```\n\n## Help\n\nEvery command supports `--help`:\n\n```bash\ncargo-ai ai agent create --help\ncargo-ai ai release update-draft --help\ncargo-ai ai mcp-server create --help\ncargo-ai ai memory list --help\n```\n\nFile v2.4.0:_meta.json\n\n{\n  \"ownerId\": \"kn7by8t6yt9yghbxtxz6hv0bts87k6bq\",\n  \"slug\": \"cargo-ai\",\n  \"version\": \"2.4.0\",\n  \"publishedAt\": 1789543549483\n}\n\nFile v2.4.0:references/examples/agents.md\n\n# Agent examples\n\n## List all agents\n\n```bash\ncargo-ai ai agent list\n```\n\n## Find an agent by name\n\n```bash\ncargo-ai ai agent list\n# → Scan the \"name\" fields in the response to find the target agent UUID\n```\n\n## Create an agent\n\n```bash\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --description \"Researches and qualifies leads using web data\"\n```\n\n## Create an agent in a folder\n\nFolders are managed by the [`cargo-workspace-management`](../../../cargo-workspace-management/SKILL.md) skill — see its `references/examples/folders.md` for create/list/update.\n\n```bash\ncargo-ai workspaceManagement folder list\n# → Find the folder UUID (kind: \"agent\")\n\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --folder-uuid <folder-uuid>\n```\n\n## Configure and deploy an agent (full workflow)\n\n```bash\n# 1. Create the agent\ncargo-ai ai agent create \\\n  --name \"Company Scorer\" \\\n  --icon-color green --icon-face 📊\n# → agent.uuid\n\n# 2. Get the draft release\ncargo-ai ai release get-draft --agent-uuid <agent-uuid>\n# → release.uuid\n\n# 3. Configure the draft: set model, temperature, prompt\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o-mini \\\n  --temperature 0.0 \\\n  --max-steps 5 \\\n  --system-prompt \"You are a company scoring assistant. Given a company record, score it from 1-10 based on fit criteria.\"\n\n# 4. Deploy the draft\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o-mini \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Initial deployment with scoring prompt\"\n```\n\n## Update an agent's name and description\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Advanced lead research with enrichment capabilities\"\n```\n\n## Move an agent to a different folder\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n```\n\n## Remove an agent\n\n```bash\ncargo-ai ai agent remove <agent-uuid>\n```\n\n## Create an agent from a template\n\n```bash\n# 1. Browse templates — the response is complete, not a summary\ncargo-ai ai template list\n\n# 2. Pick one out of that same response (there is no `template get`)\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<template-slug>\")'\n# → Copy the systemPrompt, actions, resources, model settings\n\n# 3. Create the agent\ncargo-ai ai agent create \\\n  --name \"My Custom Agent\" \\\n  --icon-color blue --icon-face 🤖\n\n# 4. Apply template settings to the draft\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"<from template>\" \\\n  --language-model-slug <from template> \\\n  --temperature <from template>\n\n# 5. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug <from template> \\\n  --language-model-slug <from template> \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]'\n```\n\n## List releases for an agent\n\n```bash\ncargo-ai ai release list --agent-uuid <agent-uuid>\n```\n\n## View the current live configuration\n\n```bash\ncargo-ai ai agent get <agent-uuid>\n# → .deployedRelease contains the full live config (prompt, model, actions, resources)\n```\n\nFile v2.4.0:references/examples/mcp-servers.md\n\n# MCP server examples\n\n## List all MCP servers\n\n```bash\ncargo-ai ai mcp-server list\n```\n\n## Create an MCP server\n\n```bash\ncargo-ai ai mcp-server create --name \"Internal Tools\"\n```\n\n## Connect an MCP server to an agent\n\nMCP servers are connected to agents as MCP clients on the release:\n\n```bash\n# 1. Create or find the MCP server\ncargo-ai ai mcp-server list\n# → mcp-server-uuid\n\n# 2. Add as an MCP client on the agent's draft release\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n**MCP client kinds:**\n\n- `custom` — URL-based MCP server. Requires `name`, `url`, and optionally `authentication`.\n- `connector` — Integration-backed MCP client. Requires `name`, `connectorUuid`, `integrationSlug`.\n\n## Connect a connector-backed MCP client\n\n```bash\n# 1. Find the connector\ncargo-ai connection connector list\n# → connector-uuid, integrationSlug\n\n# 2. Add as an MCP client\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"connector\",\"name\":\"HubSpot Tools\",\"connectorUuid\":\"<connector-uuid>\",\"integrationSlug\":\"hubspot\",\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n## Disable specific actions from an MCP server\n\nUse `disabledToolSlugs` to prevent the agent from using specific MCP actions:\n\n```bash\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[\"dangerous_tool\",\"admin_tool\"]}]'\n```\n\n## Update an MCP server name\n\n```bash\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Production Tools\"\n```\n\n## Remove an MCP server\n\n```bash\ncargo-ai ai mcp-server remove <mcp-server-uuid>\n```\n\nFile v2.4.0:references/examples/templates.md\n\n# AI template examples\n\n## What is an AI template?\n\nAn **AI template** is a pre-built agent configuration — a ready-to-use agent blueprint with instructions, model settings, and action configuration already defined. Templates capture common agent patterns (lead research, company classification, email drafting) so you don't have to configure an agent from scratch.\n\n**Always check templates before creating an agent.** Even if no template is a perfect match, they provide:\n- A proven system prompt structure for the use case\n- A recommended language model and temperature setting\n- A list of actions and resources to consider attaching\n\nAI templates are read-only. You discover them by listing, then use their configuration as a starting point when creating or updating an agent.\n\n## List all AI templates\n\n```bash\ncargo-ai ai template list\n```\n\nResponse:\n\n```json\n{\n  \"templates\": [\n    {\n      \"slug\": \"lead-researcher\",\n      \"name\": \"Lead Researcher\",\n      \"description\": \"Researches a prospect's company, role, and contact details\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3\n    },\n    {\n      \"slug\": \"company-classifier\",\n      \"name\": \"Company Classifier\",\n      \"description\": \"Classifies a company by industry, size, and ICP fit\",\n      \"languageModelSlug\": \"gpt-4.1-mini\",\n      \"temperature\": 0.1\n    },\n    {\n      \"slug\": \"email-drafter\",\n      \"name\": \"Email Drafter\",\n      \"description\": \"Drafts personalised outbound emails based on enrichment data\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.7\n    }\n  ]\n}\n```\n\nKey fields:\n\n- **`slug`** — identifier for reference\n- **`name`** — human-readable name\n- **`description`** — what the agent does\n- **`languageModelSlug`** — recommended model for this use case\n- **`temperature`** — recommended temperature setting\n\n## Use a template to create an agent\n\nThe standard pattern:\n\n1. List templates to find the right one\n2. Create a new agent using the template's recommended settings\n3. Attach any files or MCP servers the agent needs\n4. Start chatting or embed the agent in a workflow\n\n```bash\n# 1. Find the right template\ncargo-ai ai template list\n# → Find \"lead-researcher\"\n\n# 2. Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍\n# → Extract agent.uuid\n\n# 3. Configure the draft release with template settings\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"You are a research assistant. Given a company domain and a contact name, find their role, LinkedIn profile, and email address. Be concise and structured.\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3\n\n# 4. Attach a knowledge file (optional)\ncargo-ai content file upload --file ./icp-criteria.pdf\n# → Extract file.uuid — attach to agent via release update-draft --resources\n\n# 5. Test with a message\ncargo-ai ai chat create \\\n  --trigger '{\"type\":\"draft\"}' \\\n  --agent-uuid <agent-uuid> \\\n  --name \"Test session\"\n# → Extract chat.uuid\n\ncargo-ai ai message create \\\n  --chat-uuid <chat-uuid> \\\n  --parts '[{\"type\":\"text\",\"text\":\"Research the VP of Sales at acme.com\"}]'\n# → Poll with: cargo-ai ai message get <assistant-msg-uuid>\n```\n\n## Use a template to configure an agent in a workflow node\n\nAI templates also inform how to configure an inline `agent` node inside a workflow node graph. Use the template's `languageModelSlug` and `temperature` in the node's `advancedSettings`:\n\n```json\n{\n  \"uuid\": \"ab12cd34-ab12-4ab1-aab1-ab12cd34ef56\",\n  \"slug\": \"research_lead\",\n  \"kind\": \"native\",\n  \"actionSlug\": \"agent\",\n  \"config\": {\n    \"prompt\": {\n      \"kind\": \"templateExpression\",\n      \"expression\": \"Research the person {{nodes.start.first_name}} {{nodes.start.last_name}} at {{nodes.start.domain}}. Return their role, LinkedIn URL, and a 2-sentence summary.\",\n      \"instructTo\": \"none\",\n      \"fromRecipe\": false\n    },\n    \"advancedSettings\": {\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3,\n      \"maxSteps\": 5\n    }\n  },\n  \"childrenUuids\": [\"cd34ef56-cd34-4cd3-acd3-cd34ef567890\"],\n  \"fallbackOnFailure\": false,\n  \"position\": { \"x\": 0, \"y\": 166 }\n}\n```\n\nSee `cargo-orchestration/references/nodes.md` for the full node creation guide.\n\n## Template-to-agent quick reference\n\n| Template slug         | Use case                     | Recommended model  | Temperature |\n| --------------------- | ---------------------------- | ------------------ | ----------- |\n| `lead-researcher`     | Prospect research            | `gpt-4o`           | 0.3         |\n| `company-classifier`  | Industry / ICP classification| `gpt-4.1-mini`     | 0.1         |\n| `email-drafter`       | Personalised outbound emails | `gpt-4o`           | 0.7         |\n\nFile v2.4.0:references/response-shapes.md\n\n# Response shapes\n\nJSON response structures returned by Cargo CLI commands used in the `cargo-ai` skill.\n\n## cargo-ai ai agent list\n\n```json\n{\n  \"agents\": [\n    {\n      \"uuid\": \"agent-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"name\": \"Sales Research Agent\",\n      \"icon\": { \"color\": \"blue\", \"face\": \"🤖\" },\n      \"description\": \"Researches leads and enriches data\",\n      \"triggers\": [],\n      \"deployedRelease\": {\n        \"uuid\": \"release-uuid\",\n        \"version\": \"3\",\n        \"description\": \"Added email step\",\n        \"systemPrompt\": \"You are a sales research assistant...\",\n        \"languageModelSlug\": \"gpt-4o\",\n        \"integrationSlug\": \"openai\",\n        \"temperature\": 0.3,\n        \"maxSteps\": 10,\n        \"actions\": [],\n        \"resources\": [],\n        \"capabilities\": [],\n        \"mcpClients\": [],\n        \"deployedAt\": \"2025-01-10T09:00:00Z\",\n        \"createdAt\": \"2025-01-10T09:00:00Z\"\n      },\n      \"folderUuid\": null,\n      \"template\": null,\n      \"isReadOnly\": false,\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `uuid` (needed for chat create, release operations), `name` (match by name), `deployedRelease` (current live config — `null` if never deployed).\n\n**Agent icon colors:** `grey`, `green`, `purple`, `yellow`, `blue`, `red`.\n\n## cargo-ai ai agent get\n\nSame structure as a single item from `agent list`, nested under `agent`:\n\n```json\n{\n  \"agent\": {\n    \"uuid\": \"agent-uuid\",\n    \"name\": \"Sales Research Agent\",\n    \"icon\": { \"color\": \"blue\", \"face\": \"🤖\" },\n    \"deployedRelease\": { ... },\n    ...\n  }\n}\n```\n\n## cargo-ai ai release list\n\n```json\n{\n  \"releases\": [\n    {\n      \"uuid\": \"release-uuid\",\n      \"agentUuid\": \"agent-uuid\",\n      \"version\": \"3\",\n      \"status\": \"deployed\",\n      \"description\": \"Added research actions\",\n      \"systemPrompt\": \"You are a sales research assistant...\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"integrationSlug\": \"openai\",\n      \"temperature\": 0.3,\n      \"maxSteps\": 10,\n      \"withReasoning\": false,\n      \"actions\": [],\n      \"resources\": [],\n      \"capabilities\": [],\n      \"suggestedActions\": [],\n      \"mcpClients\": [],\n      \"deployedAt\": \"2025-01-10T09:00:00Z\",\n      \"createdAt\": \"2025-01-10T09:00:00Z\",\n      \"updatedAt\": \"2025-01-10T09:00:00Z\"\n    }\n  ]\n}\n```\n\n**Status values:** `draft`, `deployed`, `archived`.\n\nSupports `--agent-uuid`, `--limit`, `--offset`.\n\n## cargo-ai ai release get\n\n```json\n{\n  \"release\": {\n    \"uuid\": \"release-uuid\",\n    \"agentUuid\": \"agent-uuid\",\n    \"version\": \"3\",\n    \"status\": \"deployed\",\n    \"description\": \"Added research actions\",\n    \"systemPrompt\": \"You are a sales research assistant...\",\n    \"languageModelSlug\": \"gpt-4o\",\n    \"integrationSlug\": \"openai\",\n    \"connectorUuid\": null,\n    \"temperature\": 0.3,\n    \"maxSteps\": 10,\n    \"withReasoning\": false,\n    \"actions\": [\n      {\n        \"kind\": \"connector\",\n        \"integrationSlug\": \"clearbit\",\n        \"connectorUuid\": \"connector-uuid\",\n        \"actionSlug\": \"company_enrich\",\n        \"slug\": \"enrich_company\",\n        \"name\": \"Enrich Company\",\n        \"description\": \"Enriches company data\",\n        \"isBulkAllowed\": false,\n        \"config\": {}\n      }\n    ],\n    \"resources\": [\n      {\n        \"kind\": \"file\",\n        \"slug\": \"knowledge_base\",\n        \"name\": \"Knowledge Base\",\n        \"description\": null,\n        \"prompt\": null,\n        \"items\": [{ \"kind\": \"file\", \"fileUuid\": \"file-uuid\" }]\n      }\n    ],\n    \"capabilities\": [],\n    \"suggestedActions\": [],\n    \"mcpClients\": [\n      {\n        \"kind\": \"custom\",\n        \"name\": \"Internal Tools\",\n        \"url\": \"https://mcp.example.com\",\n        \"authentication\": null,\n        \"disabledToolSlugs\": []\n      }\n    ],\n    \"deployedAt\": \"2025-01-10T09:00:00Z\",\n    \"createdAt\": \"2025-01-10T09:00:00Z\",\n    \"updatedAt\": \"2025-01-10T09:00:00Z\"\n  }\n}\n```\n\n**Key fields:** `actions` (array of tool/connector/agent actions), `resources` (file or model resources), `mcpClients` (MCP server connections), `systemPrompt`, `languageModelSlug`, `temperature`, `maxSteps`.\n\n**Action kinds:** `tool` (workflow tool), `connector` (integration action), `agent` (sub-agent).\n\n**Resource kinds:** `file` (uploaded files/folders), `model` (data model reference).\n\n**MCP client kinds:** `custom` (URL-based), `connector` (integration-backed).\n\n## cargo-ai ai template list\n\n```json\n{\n  \"templates\": [\n    {\n      \"slug\": \"lead-researcher\",\n      \"name\": \"Lead Researcher\",\n      \"description\": \"Researches and qualifies leads using web data\",\n      \"scope\": \"public\",\n      \"isPreset\": true,\n      \"kind\": \"agent\",\n      \"icon\": { \"color\": \"purple\", \"face\": \"🔍\" },\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3,\n      \"categories\": [\"prospecting\"],\n      \"author\": {\n        \"name\": \"Cargo\",\n        \"title\": \"Platform\",\n        \"company\": { \"name\": \"Cargo\", \"url\": \"https://getcargo.ai\" }\n      },\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `slug` (the handle you filter this list by), `name`, `languageModelSlug`, `temperature`.\n\n**Template categories:** `prospecting`, `ops`, `enablement`, `outreach`, `expansion`, `public`, `private`.\n\n## `cargo-ai ai template list` — one entry\n\nEach element of `templates[]` is returned in full. There is no `template get` subcommand; filter this response by `slug` instead.\n\n```json\n{\n  \"template\": {\n    \"slug\": \"lead-researcher\",\n    \"name\": \"Lead Researcher\",\n    \"kind\": \"agent\",\n    \"description\": \"...\",\n    \"systemPrompt\": \"You are a lead research assistant...\",\n    \"languageModelSlug\": \"gpt-4o\",\n    \"integrationSlug\": \"openai\",\n    \"temperature\": 0.3,\n    \"maxSteps\": 10,\n    \"withReasoning\": false,\n    \"actions\": [...],\n    \"resources\": [...],\n    \"capabilities\": [],\n    \"suggestedActions\": [],\n    \"icon\": { \"color\": \"purple\", \"face\": \"🔍\" },\n    \"scope\": \"public\",\n    \"isPreset\": true,\n    \"categories\": [\"prospecting\"],\n    \"author\": { ... },\n    \"createdAt\": \"2025-01-01T00:00:00Z\",\n    \"updatedAt\": \"2025-01-15T00:00:00Z\"\n  }\n}\n```\n\n> **Content files & libraries** (`cargo-ai content file …` / `content library …`) live in the [`cargo-content`](../../cargo-content/SKILL.md) skill — see `cargo-content/references/response-shapes.md` for their shapes.\n\n## cargo-ai ai mcp-server list\n\n```json\n{\n  \"mcpServers\": [\n    {\n      \"uuid\": \"mcp-server-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"name\": \"Internal Tools\",\n      \"actions\": [\n        {\n          \"kind\": \"tool\",\n          \"slug\": \"search_docs\",\n          \"name\": \"Search Docs\",\n          \"description\": \"Searches internal documentation\",\n          \"isBulkAllowed\": false,\n          \"config\": {}\n        }\n      ],\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `uuid`, `name`, `actions` (discovered actions from the MCP server).\n\n## cargo-ai ai memory list\n\n```json\n{\n  \"memories\": [\n    {\n      \"mem0Id\": \"memory-id\",\n      \"content\": \"The user prefers concise responses with bullet points\",\n      \"scope\": \"agent\",\n      \"agentUuid\": \"agent-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"createdAt\": \"2025-01-15T10:00:00Z\",\n      \"updatedAt\": \"2025-01-15T10:00:00Z\"\n    }\n  ]\n}\n```\n\n**Memory scopes:**\n\n- `workspace` — shared across all agents and users in the workspace. Has `workspaceUuid`.\n- `user` — specific to a user. Has `userUuid`.\n- `agent` — specific to an agent. Has `agentUuid` and `workspaceUuid`.\n\n**Key field:** `mem0Id` (needed for update and remove operations).\n\nFile v2.4.0:references/troubleshooting.md\n\n# Troubleshooting\n\nCommon errors and solutions for `cargo-ai` commands.\n\n## General\n\n**`{\"errorMessage\": \"...\"}`**\nAll failed commands exit non-zero and return an error JSON. Read the `errorMessage` for the specific issue.\n\n**`Unauthorized` / `403`**\nYour API token may lack the required permissions. Verify with `cargo-ai whoami` and check that your role includes `ai:agent:*` or `ai:agent:write` actions.\n\n## Agents\n\n**`agentNotFound`**\nThe agent UUID does not exist or has been deleted. Re-run `cargo-ai ai agent list` to get the current list of agents.\n\n**`folderNotFound`**\nThe folder UUID passed to `--folder-uuid` does not exist. Folders are managed by the [`cargo-workspace-management`](../../cargo-workspace-management/SKILL.md) skill — run `cargo-ai workspaceManagement folder list` to find valid folder UUIDs, or `cargo-ai workspaceManagement folder create --kind agent ...` to create one.\n\n**Agent has no deployed release**\nIf `agent get` shows `deployedRelease: null`, the agent has never been deployed. Follow the release workflow:\n1. `cargo-ai ai release get-draft --agent-uuid <uuid>`\n2. `cargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o --system-prompt \"...\"`\n3. `cargo-ai ai release deploy-draft --agent-uuid <uuid> --language-model-slug gpt-4o --integration-slug openai`\n\n## Releases\n\n**`draftReleaseNotFound`**\nThe agent does not have a draft release. This can happen if the agent was just created. Try `cargo-ai ai release get-draft --agent-uuid <uuid>` first — it may auto-create the draft.\n\n**`invalidParent`**\nThe `--parent-uuid` passed to `release update-draft` does not match a valid release. Omit it or use a UUID from `release list`.\n\n**`invalidReleaseVersion`**\nThe version string is invalid. Version must be a non-empty string (not a number).\n\n**`invalidConnector`**\nA connector UUID referenced in the release actions or configuration does not exist. Verify connector UUIDs with `cargo-ai connection connector list`.\n\n**`failedToReconciliateAgentAiTools`**\nThe actions configuration in the release is invalid — a referenced tool, agent, or connector UUID may not exist. Verify all UUIDs in the actions array.\n\n**Can't set structured (JSON Schema) output or a heartbeat from the CLI**\n`release update-draft` / `release deploy-draft` have no `--output` / `--output-schema` or `--heartbeat` flag, even though the release API payload accepts `output` and `heartbeat`. The generic `--options` flag won't carry them. See the \"Structured output & heartbeat\" section in [`../SKILL.md`](../SKILL.md) for the shapes and the direct-API workaround, and file a `workspaceManagement report` to request the flags.\n\n## Templates\n\n**`templateNotFound`**\nThe template slug does not exist. Run `cargo-ai ai template list` to see available templates.\n\n## Files & libraries\n\nKnowledge files and libraries moved to the `content` domain (CLI ≥ 1.0.19). For `fileNotFound`, `folderNotFound`, upload failures, and the `unknown command` error on the old `ai file …` path, see [`cargo-content`](../../cargo-content/SKILL.md) → `references/troubleshooting.md`.\n\n## MCP Servers\n\n**`mcpServerNotFound`**\nThe MCP server UUID does not exist or has been deleted. Run `cargo-ai ai mcp-server list` to get the current list.\n\n**MCP actions not appearing in agent**\nMCP servers are connected to agents via MCP clients on the release. After creating an MCP server, add it as an MCP client to the agent's draft release using `release update-draft`, then deploy.\n\n## Memories\n\n**`memoryNotFound`**\nThe `mem0Id` does not match any existing memory. Run `cargo-ai ai memory list` with the correct `--scope` and `--agent-uuid` to find valid memory IDs.\n\n**Wrong scope**\nMemory operations require the correct scope. An agent-scoped memory needs `--scope agent --agent-uuid <uuid>`. A workspace-scoped memory needs `--scope workspace`. Mismatched scopes return not-found errors.\n\nFile v2.4.0:skill-card.md\n\n## Description:\n\nBuild and configure AI agents inside Cargo by creating agents, choosing model settings, writing prompts, attaching knowledge for retrieval, connecting MCP tool servers, managing memories, and deploying releases.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[cargo-ai](https://clawhub.ai/user/cargo-ai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and operators use this skill to manage Cargo AI agent resources from the CLI, including agent creation, release configuration, knowledge attachment, MCP setup, and memory maintenance.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill relies on a mutable global npm install for @cargo-ai/cli.\n\nMitigation: Use a pinned, reviewed CLI version where possible before installing or running commands.\n\nRisk: The skill documents credentialed operations that can change agents, releases, memories, MCP servers, and other workspace state.\n\nMitigation: Confirm the active Cargo workspace with cargo-ai whoami, use least-privileged or short-lived tokens, and review remove, deploy, memory, and MCP changes before execution.\n\nRisk: Direct curl examples depend on CARGO_API_BASE and bearer-token configuration.\n\nMitigation: Verify CARGO_API_BASE and token scope before running direct API calls.\n\n## Reference(s):\n\n- [Cargo Skills Homepage](https://github.com/getcargohq/cargo-skills)\n- [ClawHub cargo-ai Skill](https://clawhub.ai/cargo-ai/skills/cargo-ai)\n- [Response Shapes](references/response-shapes.md)\n- [Troubleshooting](references/troubleshooting.md)\n- [Agent Examples](references/examples/agents.md)\n- [MCP Server Examples](references/examples/mcp-servers.md)\n- [AI Template Examples](references/examples/templates.md)\n\n## Skill Output:\n\n**Output Type(s):** [Guidance, Shell commands, Configuration, JSON, API calls]\n\n**Output Format:** [Markdown with inline bash and JSON code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Commands generally return JSON; workspace-changing operations require Cargo authentication and should be reviewed before execution.]\n\n## Skill Version(s):\n\n2.4.0 (source: frontmatter and server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v2.4.0:skill-metadata.json\n\n{\n  \"$comment\": \"Generated by .github/scripts/skills-metadata.mjs — do not hand-edit. Regenerate with: node .github/scripts/skills-metadata.mjs --write .\",\n  \"name\": \"cargo-ai\",\n  \"version\": \"2.4.0\",\n  \"documents\": [\n    {\n      \"path\": \"SKILL.md\",\n      \"kind\": \"entrypoint\",\n      \"title\": \"Cargo CLI — AI\"\n    },\n    {\n      \"path\": \"references/examples/agents.md\",\n      \"kind\": \"example\",\n      \"title\": \"Agent examples\"\n    },\n    {\n      \"path\": \"references/examples/mcp-servers.md\",\n      \"kind\": \"example\",\n      \"title\": \"MCP server examples\"\n    },\n    {\n      \"path\": \"references/examples/templates.md\",\n      \"kind\": \"example\",\n      \"title\": \"AI template examples\"\n    },\n    {\n      \"path\": \"references/response-shapes.md\",\n      \"kind\": \"reference\",\n      \"title\": \"Response shapes\"\n    },\n    {\n      \"path\": \"references/troubleshooting.md\",\n      \"kind\": \"reference\",\n      \"title\": \"Troubleshooting\"\n    }\n  ],\n  \"contentHash\": \"430beb88a52f8b9b5e979cda75166243e53c93618f163d27f15812a59436a48d\"\n}\n\nArchive v2.3.1: 9 files, 17151 bytes\n\nFiles: references/examples/agents.md (3421b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4741b), references/response-shapes.md (7560b), references/troubleshooting.md (3908b), skill-card.md (2282b), skill-metadata.json (1020b), SKILL.md (18568b), _meta.json (127b)\n\nFile v2.3.1:SKILL.md\n\n---\nname: cargo-ai\ndescription: \"Build and configure AI agents inside Cargo — create an agent, choose its model and temperature, write its prompt, attach knowledge for retrieval (RAG), connect MCP tool servers, manage memories, and deploy releases. Triggers: \\\"create an agent\\\", \\\"make an agent that\\\", \\\"give the agent our docs\\\", \\\"attach this knowledge base\\\", \\\"attach this library to the agent\\\", \\\"add resources to the agent release\\\", \\\"connect an MCP server\\\", \\\"expose our tools as an MCP server\\\", \\\"use Cargo from Claude Desktop or ChatGPT\\\", \\\"change the agent model\\\", \\\"what does the agent remember\\\", \\\"deploy the agent\\\", \\\"the agent is answering wrong\\\". Skip when: uploading the knowledge files themselves — use cargo-content; sending the agent a message or running it over records — use cargo-orchestration.\"\nversion: \"2.3.1\"\ncompatibility: Requires @cargo-ai/cli (npm). Sign in or create an account with `cargo-ai login --email` (emailed code, no browser), `--oauth`, or an API token\nhomepage: https://github.com/getcargohq/cargo-skills\nmetadata:\n  author: getcargo\n  openclaw:\n    requires:\n      bins:\n        - cargo-ai\n    install:\n      - kind: node\n        package: \"@cargo-ai/cli@latest\"\n        bins:\n          - cargo-ai\n    homepage: https://github.com/getcargohq/cargo-skills\n---\n\n# Cargo CLI — AI\n\nAgent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.\n\n> For *using* agents (sending messages, multi-turn chat, polling), use `cargo-orchestration`.\n> For uploading knowledge **files** and building knowledge **libraries** (the `content` domain), use [`cargo-content`](../cargo-content/SKILL.md). This skill covers how that knowledge attaches to an agent.\n> For workspace administration — folders (used to organize agents and files), users, API tokens, roles, and submitting reports when the CLI fails — use [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md).\n\n> See `references/response-shapes.md` for full JSON response structures.\n> See `references/troubleshooting.md` for common errors and how to fix them.\n> See `references/examples/agents.md` for agent CRUD and configuration examples.\n> See `references/examples/mcp-servers.md` for MCP server creation and management examples.\n\n## Bootstrap\n\nAlready signed in (`cargo-ai whoami` returns a workspace)? Skip to the next section.\n\n```bash\nnpm install -g @cargo-ai/cli            # no global install? prefix every command with `npx @cargo-ai/cli`\ncargo-ai login --email you@company.com  # emailed code, no browser; creates the account on first use\n                                        # alternatives: --oauth (browser) · --token <api-token> (CI)\ncargo-ai whoami                         # confirm the active workspace before any write\n```\n\nEvery command prints JSON to stdout; failures exit non-zero with `{\"errorMessage\": \"...\"}`. Anything that creates a run or a batch is async — pass `--wait-until-finished` or poll the matching `get`. When the full skill bundle is installed, [`../cargo/references/prerequisites.md`](../cargo/references/prerequisites.md) adds the CLI version pin, token scopes, and the admin-only surface.\n\n## Discover resources first\n\n```bash\ncargo-ai ai agent list                     # all agents (uuid, name, description)\ncargo-ai ai template list                  # all AI agent templates (slug, name)\ncargo-ai ai mcp-server list                # all MCP servers (uuid, name)\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>  # agent memories\n# Knowledge files & libraries live in the content domain — see cargo-content:\n#   cargo-ai content file list   /   cargo-ai content library list\n```\n\n**Retrieve in the UI:** agents live at `app.getcargo.io/workspaces/<WORKSPACE_UUID>/agents/<AGENT_UUID>`. Get `<WORKSPACE_UUID>` from `cargo-ai whoami` under `workspace.uuid`.\n\n## Quick reference\n\n```bash\ncargo-ai ai agent list\ncargo-ai ai agent get <agent-uuid>\ncargo-ai ai agent create --name <name> --icon-color blue --icon-face 🤖\ncargo-ai ai agent update --uuid <agent-uuid> --name <name>\ncargo-ai ai agent remove <agent-uuid>\ncargo-ai ai release list --agent-uuid <uuid>\ncargo-ai ai release get <release-uuid>\ncargo-ai ai release get-draft --agent-uuid <uuid>\ncargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o\ncargo-ai ai release deploy-draft --agent-uuid <uuid>\ncargo-ai ai template list                  # full detail; there is no `template get`\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"Internal Tools\"\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated Name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse\ncargo-ai mcp                               # serve the platform MCP over stdio\ncargo-ai mcp --server <mcp-server-uuid>    # serve a curated workspace MCP server instead\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\ncargo-ai ai memory update --mem0-id <id> --scope agent --agent-uuid <uuid> --content \"Updated memory\"\ncargo-ai ai memory remove --mem0-id <id> --scope agent --agent-uuid <uuid>\n```\n\n## Agents\n\nAgents are AI resources with configured instructions, a language model, actions, and optional resources.\n\n**Before creating an agent from scratch, check existing templates — they capture proven patterns for common use cases (lead research, classification, email drafting) and give you a ready-made system prompt, model, and temperature to start from:**\n\n```bash\ncargo-ai ai template list          # browse patterns — full detail, not a summary\n# there is no `template get`: `list` already returns systemPrompt, temperature,\n# languageModelSlug, actions and resources, so select the one you want\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<slug>\")' \n```\n\n```bash\n# List all agents\ncargo-ai ai agent list\n\n# Get a single agent (includes deployed release details)\ncargo-ai ai agent get <agent-uuid>\n\n# Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color blue --icon-face 🤖 \\\n  --description \"Researches leads and enriches data\"\n\n# Update an agent\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Updated description\"\n\n# Move to a folder (find folder UUIDs via cargo-workspace-management)\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n\n# Remove an agent\ncargo-ai ai agent remove <agent-uuid>\n```\n\n**Agent icon:** `--icon-color` must be one of: `grey`, `green`, `purple`, `yellow`, `blue`, `red`. `--icon-face` is an emoji string.\n\n**Folders:** Folder creation, listing, and management lives in [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md) (`cargo-ai workspaceManagement folder list/create/...`). Use that skill to discover or create the `<folder-uuid>` you pass to `--folder-uuid` here.\n\n## Releases\n\nReleases are versioned snapshots of an agent's configuration (system prompt, actions, resources, model, temperature). Agents execute against their deployed release.\n\n```bash\n# List releases for an agent\ncargo-ai ai release list --agent-uuid <uuid>\n\n# Get a specific release\ncargo-ai ai release get <release-uuid>\n\n# Get the current draft release (editable)\ncargo-ai ai release get-draft --agent-uuid <uuid>\n\n# Update the draft release\ncargo-ai ai release update-draft --agent-uuid <uuid> \\\n  --system-prompt \"You are a lead research assistant...\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3 \\\n  --max-steps 10\n\n# Deploy the draft release (makes it live)\ncargo-ai ai release deploy-draft --agent-uuid <uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Added research actions\"\n```\n\n### Structured output & heartbeat — not yet exposed as CLI flags\n\nThe release API payload (both `draft/update` and `draft/deploy`) accepts two fields that **`release update-draft` / `release deploy-draft` do not surface as flags** (verified against the CLI source — there is no `--output` / `--output-schema` or `--heartbeat`):\n\n| Field | Shape | Purpose |\n|---|---|---|\n| `output` | `{\"type\":\"text\"}` **or** `{\"type\":\"jsonSchema\",\"jsonSchema\": <standard JSON Schema object>}` | Force the agent to return structured output matching a JSON Schema. |\n| `heartbeat` | `{\"intervalMinutes\": number, \"maxMessages\": number, \"prompt\": string \\| null}` | Periodically re-wake the chat (`intervalMinutes`) until it reaches `maxMessages`; `prompt` is the wake message (null = generic \"continue\"). |\n\nThe generic `--options` flag does **not** carry these — the API's `options` only holds `{connectorUuidsByIntegrationSlug, modelUuidsByIntegrationSlug}`. Until the flags ship, set these with a direct API call against the same endpoints the CLI uses:\n\n```bash\n# Structured (JSON Schema) output on the draft release\ncurl -sS -X PUT \"$CARGO_API_BASE/v1/ai/releases/draft/update\" \\\n  -H \"Authorization: Bearer $CARGO_TOKEN\" -H \"Content-Type: application/json\" \\\n  -d '{\"agentUuid\":\"<uuid>\",\"output\":{\"type\":\"jsonSchema\",\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"score\":{\"type\":\"number\"}},\"required\":[\"score\"]}}}'\n# Deploy carries the same fields — POST .../v1/ai/releases/draft/deploy\n```\n\nSend these payloads alongside the other fields you're updating (the endpoint replaces the draft config). **File a `workspaceManagement report`** (see [`../cargo-workspace-management/SKILL.md`](../cargo-workspace-management/SKILL.md)) to request first-class `--output` / `--heartbeat` flags — this is the documented feedback channel for CLI/UI parity gaps.\n\n**Agent configuration workflow:**\n\n1. **Browse templates for inspiration**: `cargo-ai ai template list` — it returns each template in full (system prompt, model, temperature, actions), so pick the one closest to your use case straight out of that response\n2. Create the agent: `cargo-ai ai agent create --name \"...\" --icon-color blue --icon-face 🤖`\n3. Get the draft release: `cargo-ai ai release get-draft --agent-uuid <uuid>`\n4. Update the draft with configured actions, resources, prompt, model: `cargo-ai ai release update-draft --agent-uuid <uuid> ...`\n5. Deploy: `cargo-ai ai release deploy-draft --agent-uuid <uuid> ...`\n\n## Templates\n\nTemplates are pre-built agent configurations that capture proven patterns for common use cases. **Always check templates before designing an agent from scratch** — they give you a ready-made system prompt, recommended language model, temperature, and tool configuration that you can adopt as-is or adapt.\n\n```bash\n# List available agent templates — each entry is complete, so this is the only\n# call you need. There is no `template get` subcommand.\ncargo-ai ai template list\n\n# Inspect one by slug: filter the same response\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<slug>\")' \n```\n\nTemplates include a system prompt, actions, resources, and recommended model settings. Use them as a starting point and customize via `release update-draft`. See `references/examples/templates.md` for the full guide including an end-to-end example of creating an agent from a template.\n\n## Model and temperature guidance\n\n| Use case | Recommended model | Temperature |\n|---|---|---|\n| Classification, extraction, scoring | `gpt-4o-mini` or `claude-3-5-haiku` | `0.0` – `0.2` |\n| Research, summarization, analysis | `gpt-4o` or `claude-3-5-sonnet` | `0.2` – `0.5` |\n| Copywriting, personalization | `gpt-4o` or `claude-3-5-sonnet` | `0.5` – `0.8` |\n| Brainstorming, creative ideation | `gpt-4o` or `claude-opus` | `0.7` – `1.0` |\n\nLow temperature (`0.0`–`0.2`) = deterministic, consistent outputs. High temperature (`0.7`+) = creative, varied outputs. For production workflows processing thousands of records, prefer low temperature.\n\n## Knowledge for RAG (files & libraries)\n\nKnowledge that grounds agent responses (retrieval-augmented generation, RAG) comes from the **`content`** domain — see [`cargo-content`](../cargo-content/SKILL.md):\n\n- **Files** — uploaded binaries (PDFs, CSVs, text).\n- **Libraries** — collections that group files, either `native` (workspace-managed) or `connector`-backed (synced from an external source via an unstructured-data extractor).\n\n> Files and libraries moved out of `ai` into the top-level **`content`** domain in CLI ≥ 1.0.19 (`cargo-ai content file …` / `cargo-ai content library …`). The old `ai file …` commands are gone. Everything content-related now lives in [`cargo-content`](../cargo-content/SKILL.md).\n\n### Attaching knowledge to an agent\n\nA file or library is inert until attached to an agent via the draft release's `resources` array and deployed. Upload files / build libraries in [`cargo-content`](../cargo-content/SKILL.md), then wire them in here with `release update-draft --resources …` followed by `release deploy-draft`. See [`../cargo-content/references/examples/files.md`](../cargo-content/references/examples/files.md) for the full upload → attach → deploy sequence.\n\n## MCP — two directions, don't mix them up\n\nMCP (Model Context Protocol) runs both ways in Cargo, and the two surfaces are unrelated:\n\n| | **Publish** — `ai mcp-server` | **Consume** — `ai mcp-client` |\n|---|---|---|\n| What it is | A server **your workspace exposes**: the tools, agents, and data you choose to make callable | A connection **to someone else's** MCP server |\n| Who calls it | Any MCP client — Claude Code, Claude Desktop, Cursor, ChatGPT | Your Cargo agents, during a chat or a workflow run |\n| Wired via | `cargo-ai mcp --server <uuid>` (stdio bridge, below) | `release update-draft --mcp-clients …` |\n\n**Before building one, check whether the platform MCP already covers it.** Cargo now serves a first-party MCP at `https://mcp.getcargo.io/mcp` — every workspace member, nothing to deploy — with a small fixed toolset for operating the workspace (`whoami`, `get_usage`, `search_actions`, `get_action_schema`, `autocomplete_action`, `execute_action`, `execute_action_batch`, `get_run`, `get_batch`, `list_runs`, `list_models`, `describe_model`, `query_models`). Hosted clients (ChatGPT connectors, Claude.ai, Cursor over HTTP) point at that URL and sign in with OAuth; the consent screen picks the workspace when the user belongs to several. `ai mcp-server` is for the other job: a **curated, named** subset — this tool, that agent, this filtered model — for a client that should see exactly that and nothing else.\n\n### Publishing a workspace MCP server\n\n```bash\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"CRM tools\" \\\n  --actions '[{\"slug\":\"<tool-uuid>\",\"kind\":\"tool\",\"name\":null,\"description\":null,\"isBulkAllowed\":false,\"config\":{}}]' \\\n  --resources '[{\"kind\":\"model\",\"slug\":\"<slug>\",\"name\":\"Accounts\",\"description\":null,\"integrationSlug\":\"hubspot\",\"modelUuid\":null,\"filter\":null,\"selectedColumnSlugs\":null,\"limit\":null,\"prompt\":null,\"isReadOnly\":true}]'\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\n```\n\n- **Actions** take `kind: \"tool\"` **or** `kind: \"agent\"` — an agent can be exposed as a callable MCP tool, not just a tool. `waitUntilFinished` controls whether the call blocks on the run.\n- **Resources** take `kind: \"model\"` (a filtered, column-selected view of a model — keep `isReadOnly: true` unless the client is meant to write) or `kind: \"file\"` (workspace files by UUID, see [`../cargo-content/SKILL.md`](../cargo-content/SKILL.md)).\n- `update` replaces `--actions` / `--resources` wholesale rather than merging — read the current server with `mcp-server list` and pass the full array back.\n\n### Serving it to a coding agent — `cargo-ai mcp`\n\nEither server reaches any stdio MCP client through the CLI, using the credentials already on the machine. **No token is copied into client config.**\n\n```bash\nclaude mcp add cargo -- cargo-ai mcp                     # the platform MCP (no setup)\ncargo-ai ai mcp-server list                              # find a curated server's UUID\nclaude mcp add cargo -- cargo-ai mcp --server <uuid>     # that curated server instead\n# Cursor, Windsurf, and other stdio clients: same command as the server entry\n```\n\nWith no `--server`, the bridge uses `CARGO_MCP_SERVER_UUID` when set, otherwise the platform `/mcp`. **This changed:** older CLIs resolved \"the workspace's only MCP server\" and failed with `InvalidUsage` when the workspace had none or several — a bare `cargo-ai mcp` now always has something to serve. stdout carries the MCP protocol and all logs go to stderr, so never print anything to stdout around it.\n\n**When to reach for this instead of the skills:** the skills give an agent the whole CLI; an MCP surface gives it a bounded set with no shell. Use the bridge for in-conversation lookups and one-off actions, and the CLI for batches, workflows, schema changes, and anything with a cost gate. Full routing rule: [`../cargo/SKILL.md`](../cargo/SKILL.md) → \"These skills vs Cargo's MCP surfaces\".\n\n### Consuming an external MCP server\n\n```bash\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse \\\n  --disabled-tool-slugs \"dangerous_tool,other_tool\"\n```\n\n`--authentication` takes `{\"issuedAt\": \"...\", \"accessToken\": \"...\"}` or `\"null\"`. Connected clients are attached to an agent through its release: `release update-draft --mcp-clients …`, then `release deploy-draft`.\n\n## Memories\n\nMemories are pieces of information an agent stores from conversations for future reference. They can be scoped to a workspace, user, or specific agent.\n\n```bash\n# List agent memories\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\n\n# List workspace-wide memories\ncargo-ai ai memory list --scope workspace\n\n# List user-scoped memories\ncargo-ai ai memory list --scope user\n\n# Update a memory\ncargo-ai ai memory update \\\n  --mem0-id <id> \\\n  --scope agent --agent-uuid <uuid> \\\n  --content \"Updated memory content\"\n\n# Remove a memory\ncargo-ai ai memory remove \\\n  --mem0-id <id> \\\n  --scope agent --agent-uuid <uuid>\n```\n\n## Help\n\nEvery command supports `--help`:\n\n```bash\ncargo-ai ai agent create --help\ncargo-ai ai release update-draft --help\ncargo-ai ai mcp-server create --help\ncargo-ai ai memory list --help\n```\n\nFile v2.3.1:_meta.json\n\n{\n  \"ownerId\": \"kn7by8t6yt9yghbxtxz6hv0bts87k6bq\",\n  \"slug\": \"cargo-ai\",\n  \"version\": \"2.3.1\",\n  \"publishedAt\": 1788305338000\n}\n\nFile v2.3.1:references/examples/agents.md\n\n# Agent examples\n\n## List all agents\n\n```bash\ncargo-ai ai agent list\n```\n\n## Find an agent by name\n\n```bash\ncargo-ai ai agent list\n# → Scan the \"name\" fields in the response to find the target agent UUID\n```\n\n## Create an agent\n\n```bash\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --description \"Researches and qualifies leads using web data\"\n```\n\n## Create an agent in a folder\n\nFolders are managed by the [`cargo-workspace-management`](../../../cargo-workspace-management/SKILL.md) skill — see its `references/examples/folders.md` for create/list/update.\n\n```bash\ncargo-ai workspaceManagement folder list\n# → Find the folder UUID (kind: \"agent\")\n\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --folder-uuid <folder-uuid>\n```\n\n## Configure and deploy an agent (full workflow)\n\n```bash\n# 1. Create the agent\ncargo-ai ai agent create \\\n  --name \"Company Scorer\" \\\n  --icon-color green --icon-face 📊\n# → agent.uuid\n\n# 2. Get the draft release\ncargo-ai ai release get-draft --agent-uuid <agent-uuid>\n# → release.uuid\n\n# 3. Configure the draft: set model, temperature, prompt\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o-mini \\\n  --temperature 0.0 \\\n  --max-steps 5 \\\n  --system-prompt \"You are a company scoring assistant. Given a company record, score it from 1-10 based on fit criteria.\"\n\n# 4. Deploy the draft\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o-mini \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Initial deployment with scoring prompt\"\n```\n\n## Update an agent's name and description\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Advanced lead research with enrichment capabilities\"\n```\n\n## Move an agent to a different folder\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n```\n\n## Remove an agent\n\n```bash\ncargo-ai ai agent remove <agent-uuid>\n```\n\n## Create an agent from a template\n\n```bash\n# 1. Browse templates — the response is complete, not a summary\ncargo-ai ai template list\n\n# 2. Pick one out of that same response (there is no `template get`)\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<template-slug>\")'\n# → Copy the systemPrompt, actions, resources, model settings\n\n# 3. Create the agent\ncargo-ai ai agent create \\\n  --name \"My Custom Agent\" \\\n  --icon-color blue --icon-face 🤖\n\n# 4. Apply template settings to the draft\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"<from template>\" \\\n  --language-model-slug <from template> \\\n  --temperature <from template>\n\n# 5. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug <from template> \\\n  --language-model-slug <from template> \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]'\n```\n\n## List releases for an agent\n\n```bash\ncargo-ai ai release list --agent-uuid <agent-uuid>\n```\n\n## View the current live configuration\n\n```bash\ncargo-ai ai agent get <agent-uuid>\n# → .deployedRelease contains the full live config (prompt, model, actions, resources)\n```\n\nFile v2.3.1:references/examples/mcp-servers.md\n\n# MCP server examples\n\n## List all MCP servers\n\n```bash\ncargo-ai ai mcp-server list\n```\n\n## Create an MCP server\n\n```bash\ncargo-ai ai mcp-server create --name \"Internal Tools\"\n```\n\n## Connect an MCP server to an agent\n\nMCP servers are connected to agents as MCP clients on the release:\n\n```bash\n# 1. Create or find the MCP server\ncargo-ai ai mcp-server list\n# → mcp-server-uuid\n\n# 2. Add as an MCP client on the agent's draft release\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n**MCP client kinds:**\n\n- `custom` — URL-based MCP server. Requires `name`, `url`, and optionally `authentication`.\n- `connector` — Integration-backed MCP client. Requires `name`, `connectorUuid`, `integrationSlug`.\n\n## Connect a connector-backed MCP client\n\n```bash\n# 1. Find the connector\ncargo-ai connection connector list\n# → connector-uuid, integrationSlug\n\n# 2. Add as an MCP client\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"connector\",\"name\":\"HubSpot Tools\",\"connectorUuid\":\"<connector-uuid>\",\"integrationSlug\":\"hubspot\",\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n## Disable specific actions from an MCP server\n\nUse `disabledToolSlugs` to prevent the agent from using specific MCP actions:\n\n```bash\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[\"dangerous_tool\",\"admin_tool\"]}]'\n```\n\n## Update an MCP server name\n\n```bash\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Production Tools\"\n```\n\n## Remove an MCP server\n\n```bash\ncargo-ai ai mcp-server remove <mcp-server-uuid>\n```\n\nFile v2.3.1:references/examples/templates.md\n\n# AI template examples\n\n## What is an AI template?\n\nAn **AI template** is a pre-built agent configuration — a ready-to-use agent blueprint with instructions, model settings, and action configuration already defined. Templates capture common agent patterns (lead research, company classification, email drafting) so you don't have to configure an agent from scratch.\n\n**Always check templates before creating an agent.** Even if no template is a perfect match, they provide:\n- A proven system prompt structure for the use case\n- A recommended language model and temperature setting\n- A list of actions and resources to consider attaching\n\nAI templates are read-only. You discover them by listing, then use their configuration as a starting point when creating or updating an agent.\n\n## List all AI templates\n\n```bash\ncargo-ai ai template list\n```\n\nResponse:\n\n```json\n{\n  \"templates\": [\n    {\n      \"slug\": \"lead-researcher\",\n      \"name\": \"Lead Researcher\",\n      \"description\": \"Researches a prospect's company, role, and contact details\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3\n    },\n    {\n      \"slug\": \"company-classifier\",\n      \"name\": \"Company Classifier\",\n      \"description\": \"Classifies a company by industry, size, and ICP fit\",\n      \"languageModelSlug\": \"gpt-4.1-mini\",\n      \"temperature\": 0.1\n    },\n    {\n      \"slug\": \"email-drafter\",\n      \"name\": \"Email Drafter\",\n      \"description\": \"Drafts personalised outbound emails based on enrichment data\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.7\n    }\n  ]\n}\n```\n\nKey fields:\n\n- **`slug`** — identifier for reference\n- **`name`** — human-readable name\n- **`description`** — what the agent does\n- **`languageModelSlug`** — recommended model for this use case\n- **`temperature`** — recommended temperature setting\n\n## Use a template to create an agent\n\nThe standard pattern:\n\n1. List templates to find the right one\n2. Create a new agent using the template's recommended settings\n3. Attach any files or MCP servers the agent needs\n4. Start chatting or embed the agent in a workflow\n\n```bash\n# 1. Find the right template\ncargo-ai ai template list\n# → Find \"lead-researcher\"\n\n# 2. Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍\n# → Extract agent.uuid\n\n# 3. Configure the draft release with template settings\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"You are a research assistant. Given a company domain and a contact name, find their role, LinkedIn profile, and email address. Be concise and structured.\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3\n\n# 4. Attach a knowledge file (optional)\ncargo-ai content file upload --file ./icp-criteria.pdf\n# → Extract file.uuid — attach to agent via release update-draft --resources\n\n# 5. Test with a message\ncargo-ai ai chat create \\\n  --trigger '{\"type\":\"draft\"}' \\\n  --agent-uuid <agent-uuid> \\\n  --name \"Test session\"\n# → Extract chat.uuid\n\ncargo-ai ai message create \\\n  --chat-uuid <chat-uuid> \\\n  --parts '[{\"type\":\"text\",\"text\":\"Research the VP of Sales at acme.com\"}]'\n# → Poll with: cargo-ai ai message get <assistant-msg-uuid>\n```\n\n## Use a template to configure an agent in a workflow node\n\nAI templates also inform how to configure an inline `agent` node inside a workflow node graph. Use the template's `languageModelSlug` and `temperature` in the node's `advancedSettings`:\n\n```json\n{\n  \"uuid\": \"ab12cd34-ab12-4ab1-aab1-ab12cd34ef56\",\n  \"slug\": \"research_lead\",\n  \"kind\": \"native\",\n  \"actionSlug\": \"agent\",\n  \"config\": {\n    \"prompt\": {\n      \"kind\": \"templateExpression\",\n      \"expression\": \"Research the person {{nodes.start.first_name}} {{nodes.start.last_name}} at {{nodes.start.domain}}. Return their role, LinkedIn URL, and a 2-sentence summary.\",\n      \"instructTo\": \"none\",\n      \"fromRecipe\": false\n    },\n    \"advancedSettings\": {\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3,\n      \"maxSteps\": 5\n    }\n  },\n  \"childrenUuids\": [\"cd34ef56-cd34-4cd3-acd3-cd34ef567890\"],\n  \"fallbackOnFailure\": false,\n  \"position\": { \"x\": 0, \"y\": 166 }\n}\n```\n\nSee `cargo-orchestration/references/nodes.md` for the full node creation guide.\n\n## Template-to-agent quick reference\n\n| Template slug         | Use case                     | Recommended model  | Temperature |\n| --------------------- | ---------------------------- | ------------------ | ----------- |\n| `lead-researcher`     | Prospect research            | `gpt-4o`           | 0.3         |\n| `company-classifier`  | Industry / ICP classification| `gpt-4.1-mini`     | 0.1         |\n| `email-drafter`       | Personalised outbound emails | `gpt-4o`           | 0.7         |\n\nFile v2.3.1:references/response-shapes.md\n\n# Response shapes\n\nJSON response structures returned by Cargo CLI commands used in the `cargo-ai` skill.\n\n## cargo-ai ai agent list\n\n```json\n{\n  \"agents\": [\n    {\n      \"uuid\": \"agent-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"name\": \"Sales Research Agent\",\n      \"icon\": { \"color\": \"blue\", \"face\": \"🤖\" },\n      \"description\": \"Researches leads and enriches data\",\n      \"triggers\": [],\n      \"deployedRelease\": {\n        \"uuid\": \"release-uuid\",\n        \"version\": \"3\",\n        \"description\": \"Added email step\",\n        \"systemPrompt\": \"You are a sales research assistant...\",\n        \"languageModelSlug\": \"gpt-4o\",\n        \"integrationSlug\": \"openai\",\n        \"temperature\": 0.3,\n        \"maxSteps\": 10,\n        \"actions\": [],\n        \"resources\": [],\n        \"capabilities\": [],\n        \"mcpClients\": [],\n        \"deployedAt\": \"2025-01-10T09:00:00Z\",\n        \"createdAt\": \"2025-01-10T09:00:00Z\"\n      },\n      \"folderUuid\": null,\n      \"template\": null,\n      \"isReadOnly\": false,\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `uuid` (needed for chat create, release operations), `name` (match by name), `deployedRelease` (current live config — `null` if never deployed).\n\n**Agent icon colors:** `grey`, `green`, `purple`, `yellow`, `blue`, `red`.\n\n## cargo-ai ai agent get\n\nSame structure as a single item from `agent list`, nested under `agent`:\n\n```json\n{\n  \"agent\": {\n    \"uuid\": \"agent-uuid\",\n    \"name\": \"Sales Research Agent\",\n    \"icon\": { \"color\": \"blue\", \"face\": \"🤖\" },\n    \"deployedRelease\": { ... },\n    ...\n  }\n}\n```\n\n## cargo-ai ai release list\n\n```json\n{\n  \"releases\": [\n    {\n      \"uuid\": \"release-uuid\",\n      \"agentUuid\": \"agent-uuid\",\n      \"version\": \"3\",\n      \"status\": \"deployed\",\n      \"description\": \"Added research actions\",\n      \"systemPrompt\": \"You are a sales research assistant...\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"integrationSlug\": \"openai\",\n      \"temperature\": 0.3,\n      \"maxSteps\": 10,\n      \"withReasoning\": false,\n      \"actions\": [],\n      \"resources\": [],\n      \"capabilities\": [],\n      \"suggestedActions\": [],\n      \"mcpClients\": [],\n      \"deployedAt\": \"2025-01-10T09:00:00Z\",\n      \"createdAt\": \"2025-01-10T09:00:00Z\",\n      \"updatedAt\": \"2025-01-10T09:00:00Z\"\n    }\n  ]\n}\n```\n\n**Status values:** `draft`, `deployed`, `archived`.\n\nSupports `--agent-uuid`, `--limit`, `--offset`.\n\n## cargo-ai ai release get\n\n```json\n{\n  \"release\": {\n    \"uuid\": \"release-uuid\",\n    \"agentUuid\": \"agent-uuid\",\n    \"version\": \"3\",\n    \"status\": \"deployed\",\n    \"description\": \"Added research actions\",\n    \"systemPrompt\": \"You are a sales research assistant...\",\n    \"languageModelSlug\": \"gpt-4o\",\n    \"integrationSlug\": \"openai\",\n    \"connectorUuid\": null,\n    \"temperature\": 0.3,\n    \"maxSteps\": 10,\n    \"withReasoning\": false,\n    \"actions\": [\n      {\n        \"kind\": \"connector\",\n        \"integrationSlug\": \"clearbit\",\n        \"connectorUuid\": \"connector-uuid\",\n        \"actionSlug\": \"company_enrich\",\n        \"slug\": \"enrich_company\",\n        \"name\": \"Enrich Company\",\n        \"description\": \"Enriches company data\",\n        \"isBulkAllowed\": false,\n        \"config\": {}\n      }\n    ],\n    \"resources\": [\n      {\n        \"kind\": \"file\",\n        \"slug\": \"knowledge_base\",\n        \"name\": \"Knowledge Base\",\n        \"description\": null,\n        \"prompt\": null,\n        \"items\": [{ \"kind\": \"file\", \"fileUuid\": \"file-uuid\" }]\n      }\n    ],\n    \"capabilities\": [],\n    \"suggestedActions\": [],\n    \"mcpClients\": [\n      {\n        \"kind\": \"custom\",\n        \"name\": \"Internal Tools\",\n        \"url\": \"https://mcp.example.com\",\n        \"authentication\": null,\n        \"disabledToolSlugs\": []\n      }\n    ],\n    \"deployedAt\": \"2025-01-10T09:00:00Z\",\n    \"createdAt\": \"2025-01-10T09:00:00Z\",\n    \"updatedAt\": \"2025-01-10T09:00:00Z\"\n  }\n}\n```\n\n**Key fields:** `actions` (array of tool/connector/agent actions), `resources` (file or model resources), `mcpClients` (MCP server connections), `systemPrompt`, `languageModelSlug`, `temperature`, `maxSteps`.\n\n**Action kinds:** `tool` (workflow tool), `connector` (integration action), `agent` (sub-agent).\n\n**Resource kinds:** `file` (uploaded files/folders), `model` (data model reference).\n\n**MCP client kinds:** `custom` (URL-based), `connector` (integration-backed).\n\n## cargo-ai ai template list\n\n```json\n{\n  \"templates\": [\n    {\n      \"slug\": \"lead-researcher\",\n      \"name\": \"Lead Researcher\",\n      \"description\": \"Researches and qualifies leads using web data\",\n      \"scope\": \"public\",\n      \"isPreset\": true,\n      \"kind\": \"agent\",\n      \"icon\": { \"color\": \"purple\", \"face\": \"🔍\" },\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3,\n      \"categories\": [\"prospecting\"],\n      \"author\": {\n        \"name\": \"Cargo\",\n        \"title\": \"Platform\",\n        \"company\": { \"name\": \"Cargo\", \"url\": \"https://getcargo.ai\" }\n      },\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `slug` (the handle you filter this list by), `name`, `languageModelSlug`, `temperature`.\n\n**Template categories:** `prospecting`, `ops`, `enablement`, `outreach`, `expansion`, `public`, `private`.\n\n## `cargo-ai ai template list` — one entry\n\nEach element of `templates[]` is returned in full. There is no `template get` subcommand; filter this response by `slug` instead.\n\n```json\n{\n  \"template\": {\n    \"slug\": \"lead-researcher\",\n    \"name\": \"Lead Researcher\",\n    \"kind\": \"agent\",\n    \"description\": \"...\",\n    \"systemPrompt\": \"You are a lead research assistant...\",\n    \"languageModelSlug\": \"gpt-4o\",\n    \"integrationSlug\": \"openai\",\n    \"temperature\": 0.3,\n    \"maxSteps\": 10,\n    \"withReasoning\": false,\n    \"actions\": [...],\n    \"resources\": [...],\n    \"capabilities\": [],\n    \"suggestedActions\": [],\n    \"icon\": { \"color\": \"purple\", \"face\": \"🔍\" },\n    \"scope\": \"public\",\n    \"isPreset\": true,\n    \"categories\": [\"prospecting\"],\n    \"author\": { ... },\n    \"createdAt\": \"2025-01-01T00:00:00Z\",\n    \"updatedAt\": \"2025-01-15T00:00:00Z\"\n  }\n}\n```\n\n> **Content files & libraries** (`cargo-ai content file …` / `content library …`) live in the [`cargo-content`](../../cargo-content/SKILL.md) skill — see `cargo-content/references/response-shapes.md` for their shapes.\n\n## cargo-ai ai mcp-server list\n\n```json\n{\n  \"mcpServers\": [\n    {\n      \"uuid\": \"mcp-server-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"name\": \"Internal Tools\",\n      \"actions\": [\n        {\n          \"kind\": \"tool\",\n          \"slug\": \"search_docs\",\n          \"name\": \"Search Docs\",\n          \"description\": \"Searches internal documentation\",\n          \"isBulkAllowed\": false,\n          \"config\": {}\n        }\n      ],\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `uuid`, `name`, `actions` (discovered actions from the MCP server).\n\n## cargo-ai ai memory list\n\n```json\n{\n  \"memories\": [\n    {\n      \"mem0Id\": \"memory-id\",\n      \"content\": \"The user prefers concise responses with bullet points\",\n      \"scope\": \"agent\",\n      \"agentUuid\": \"agent-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"createdAt\": \"2025-01-15T10:00:00Z\",\n      \"updatedAt\": \"2025-01-15T10:00:00Z\"\n    }\n  ]\n}\n```\n\n**Memory scopes:**\n\n- `workspace` — shared across all agents and users in the workspace. Has `workspaceUuid`.\n- `user` — specific to a user. Has `userUuid`.\n- `agent` — specific to an agent. Has `agentUuid` and `workspaceUuid`.\n\n**Key field:** `mem0Id` (needed for update and remove operations).\n\nFile v2.3.1:references/troubleshooting.md\n\n# Troubleshooting\n\nCommon errors and solutions for `cargo-ai` commands.\n\n## General\n\n**`{\"errorMessage\": \"...\"}`**\nAll failed commands exit non-zero and return an error JSON. Read the `errorMessage` for the specific issue.\n\n**`Unauthorized` / `403`**\nYour API token may lack the required permissions. Verify with `cargo-ai whoami` and check that your role includes `ai:agent:*` or `ai:agent:write` actions.\n\n## Agents\n\n**`agentNotFound`**\nThe agent UUID does not exist or has been deleted. Re-run `cargo-ai ai agent list` to get the current list of agents.\n\n**`folderNotFound`**\nThe folder UUID passed to `--folder-uuid` does not exist. Folders are managed by the [`cargo-workspace-management`](../../cargo-workspace-management/SKILL.md) skill — run `cargo-ai workspaceManagement folder list` to find valid folder UUIDs, or `cargo-ai workspaceManagement folder create --kind agent ...` to create one.\n\n**Agent has no deployed release**\nIf `agent get` shows `deployedRelease: null`, the agent has never been deployed. Follow the release workflow:\n1. `cargo-ai ai release get-draft --agent-uuid <uuid>`\n2. `cargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o --system-prompt \"...\"`\n3. `cargo-ai ai release deploy-draft --agent-uuid <uuid> --language-model-slug gpt-4o --integration-slug openai`\n\n## Releases\n\n**`draftReleaseNotFound`**\nThe agent does not have a draft release. This can happen if the agent was just created. Try `cargo-ai ai release get-draft --agent-uuid <uuid>` first — it may auto-create the draft.\n\n**`invalidParent`**\nThe `--parent-uuid` passed to `release update-draft` does not match a valid release. Omit it or use a UUID from `release list`.\n\n**`invalidReleaseVersion`**\nThe version string is invalid. Version must be a non-empty string (not a number).\n\n**`invalidConnector`**\nA connector UUID referenced in the release actions or configuration does not exist. Verify connector UUIDs with `cargo-ai connection connector list`.\n\n**`failedToReconciliateAgentAiTools`**\nThe actions configuration in the release is invalid — a referenced tool, agent, or connector UUID may not exist. Verify all UUIDs in the actions array.\n\n**Can't set structured (JSON Schema) output or a heartbeat from the CLI**\n`release update-draft` / `release deploy-draft` have no `--output` / `--output-schema` or `--heartbeat` flag, even though the release API payload accepts `output` and `heartbeat`. The generic `--options` flag won't carry them. See the \"Structured output & heartbeat\" section in [`../SKILL.md`](../SKILL.md) for the shapes and the direct-API workaround, and file a `workspaceManagement report` to request the flags.\n\n## Templates\n\n**`templateNotFound`**\nThe template slug does not exist. Run `cargo-ai ai template list` to see available templates.\n\n## Files & libraries\n\nKnowledge files and libraries moved to the `content` domain (CLI ≥ 1.0.19). For `fileNotFound`, `folderNotFound`, upload failures, and the `unknown command` error on the old `ai file …` path, see [`cargo-content`](../../cargo-content/SKILL.md) → `references/troubleshooting.md`.\n\n## MCP Servers\n\n**`mcpServerNotFound`**\nThe MCP server UUID does not exist or has been deleted. Run `cargo-ai ai mcp-server list` to get the current list.\n\n**MCP actions not appearing in agent**\nMCP servers are connected to agents via MCP clients on the release. After creating an MCP server, add it as an MCP client to the agent's draft release using `release update-draft`, then deploy.\n\n## Memories\n\n**`memoryNotFound`**\nThe `mem0Id` does not match any existing memory. Run `cargo-ai ai memory list` with the correct `--scope` and `--agent-uuid` to find valid memory IDs.\n\n**Wrong scope**\nMemory operations require the correct scope. An agent-scoped memory needs `--scope agent --agent-uuid <uuid>`. A workspace-scoped memory needs `--scope workspace`. Mismatched scopes return not-found errors.\n\nFile v2.3.1:skill-card.md\n\n## Description:\n\nHelps agents administer Cargo AI resources by creating and configuring agents, attaching retrieval knowledge, connecting MCP servers, managing memories, and deploying releases.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[cargo-ai](https://clawhub.ai/user/cargo-ai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and operators use this skill to configure Cargo AI agents, attach knowledge and MCP tools, manage release settings, and deploy agent changes in a Cargo workspace.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can guide changes to live Cargo workspace AI resources, including agent updates, MCP server changes, memory edits, and release deployments.\n\nMitigation: Confirm the active workspace with cargo-ai whoami, verify UUIDs before write operations, and review deploy, remove, and direct API commands before execution.\n\nRisk: MCP resource configuration can expose tools or data beyond the intended agent scope if configured too broadly.\n\nMitigation: Keep MCP resources read-only unless writes are required, disable unnecessary tools, and review the full actions and resources arrays before deploying changes.\n\n## Reference(s):\n\n- [Cargo Skills GitHub Repository](https://github.com/getcargohq/cargo-skills)\n- [Response Shapes](references/response-shapes.md)\n- [Troubleshooting](references/troubleshooting.md)\n- [Agent Examples](references/examples/agents.md)\n- [MCP Server Examples](references/examples/mcp-servers.md)\n- [AI Template Examples](references/examples/templates.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with inline shell commands and JSON examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Commands generally return JSON on stdout; failures return JSON with an errorMessage.]\n\n## Skill Version(s):\n\n2.3.1 (source: frontmatter and server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v2.3.1:skill-metadata.json\n\n{\n  \"$comment\": \"Generated by .github/scripts/skills-metadata.mjs — do not hand-edit. Regenerate with: node .github/scripts/skills-metadata.mjs --write .\",\n  \"name\": \"cargo-ai\",\n  \"version\": \"2.3.1\",\n  \"documents\": [\n    {\n      \"path\": \"SKILL.md\",\n      \"kind\": \"entrypoint\",\n      \"title\": \"Cargo CLI — AI\"\n    },\n    {\n      \"path\": \"references/examples/agents.md\",\n      \"kind\": \"example\",\n      \"title\": \"Agent examples\"\n    },\n    {\n      \"path\": \"references/examples/mcp-servers.md\",\n      \"kind\": \"example\",\n      \"title\": \"MCP server examples\"\n    },\n    {\n      \"path\": \"references/examples/templates.md\",\n      \"kind\": \"example\",\n      \"title\": \"AI template examples\"\n    },\n    {\n      \"path\": \"references/response-shapes.md\",\n      \"kind\": \"reference\",\n      \"title\": \"Response shapes\"\n    },\n    {\n      \"path\": \"references/troubleshooting.md\",\n      \"kind\": \"reference\",\n      \"title\": \"Troubleshooting\"\n    }\n  ],\n  \"contentHash\": \"868107b6398bc5a73fca444133786baf88e858a5cfec3cd8741d5c7b263da495\"\n}\n\nArchive v2.3.0: 9 files, 16821 bytes\n\nFiles: references/examples/agents.md (3288b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4741b), references/response-shapes.md (7401b), references/troubleshooting.md (3908b), skill-card.md (2321b), skill-metadata.json (1020b), SKILL.md (18232b), _meta.json (127b)\n\nFile v2.3.0:SKILL.md\n\n---\nname: cargo-ai\ndescription: \"Build and configure AI agents inside Cargo — create an agent, choose its model and temperature, write its prompt, attach knowledge for retrieval (RAG), connect MCP tool servers, manage memories, and deploy releases. Triggers: \\\"create an agent\\\", \\\"make an agent that\\\", \\\"give the agent our docs\\\", \\\"attach this knowledge base\\\", \\\"attach this library to the agent\\\", \\\"add resources to the agent release\\\", \\\"connect an MCP server\\\", \\\"expose our tools as an MCP server\\\", \\\"use Cargo from Claude Desktop or ChatGPT\\\", \\\"change the agent model\\\", \\\"what does the agent remember\\\", \\\"deploy the agent\\\", \\\"the agent is answering wrong\\\". Skip when: uploading the knowledge files themselves — use cargo-content; sending the agent a message or running it over records — use cargo-orchestration.\"\nversion: \"2.3.0\"\ncompatibility: Requires @cargo-ai/cli (npm). Sign in or create an account with `cargo-ai login --email` (emailed code, no browser), `--oauth`, or an API token\nhomepage: https://github.com/getcargohq/cargo-skills\nmetadata:\n  author: getcargo\n  openclaw:\n    requires:\n      bins:\n        - cargo-ai\n    install:\n      - kind: node\n        package: \"@cargo-ai/cli@latest\"\n        bins:\n          - cargo-ai\n    homepage: https://github.com/getcargohq/cargo-skills\n---\n\n# Cargo CLI — AI\n\nAgent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.\n\n> For *using* agents (sending messages, multi-turn chat, polling), use `cargo-orchestration`.\n> For uploading knowledge **files** and building knowledge **libraries** (the `content` domain), use [`cargo-content`](../cargo-content/SKILL.md). This skill covers how that knowledge attaches to an agent.\n> For workspace administration — folders (used to organize agents and files), users, API tokens, roles, and submitting reports when the CLI fails — use [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md).\n\n> See `references/response-shapes.md` for full JSON response structures.\n> See `references/troubleshooting.md` for common errors and how to fix them.\n> See `references/examples/agents.md` for agent CRUD and configuration examples.\n> See `references/examples/mcp-servers.md` for MCP server creation and management examples.\n\n## Bootstrap\n\nAlready signed in (`cargo-ai whoami` returns a workspace)? Skip to the next section.\n\n```bash\nnpm install -g @cargo-ai/cli            # no global install? prefix every command with `npx @cargo-ai/cli`\ncargo-ai login --email you@company.com  # emailed code, no browser; creates the account on first use\n                                        # alternatives: --oauth (browser) · --token <api-token> (CI)\ncargo-ai whoami                         # confirm the active workspace before any write\n```\n\nEvery command prints JSON to stdout; failures exit non-zero with `{\"errorMessage\": \"...\"}`. Anything that creates a run or a batch is async — pass `--wait-until-finished` or poll the matching `get`. When the full skill bundle is installed, [`../cargo/references/prerequisites.md`](../cargo/references/prerequisites.md) adds the CLI version pin, token scopes, and the admin-only surface.\n\n## Discover resources first\n\n```bash\ncargo-ai ai agent list                     # all agents (uuid, name, description)\ncargo-ai ai template list                  # all AI agent templates (slug, name)\ncargo-ai ai mcp-server list                # all MCP servers (uuid, name)\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>  # agent memories\n# Knowledge files & libraries live in the content domain — see cargo-content:\n#   cargo-ai content file list   /   cargo-ai content library list\n```\n\n**Retrieve in the UI:** agents live at `app.getcargo.io/workspaces/<WORKSPACE_UUID>/agents/<AGENT_UUID>`. Get `<WORKSPACE_UUID>` from `cargo-ai whoami` under `workspace.uuid`.\n\n## Quick reference\n\n```bash\ncargo-ai ai agent list\ncargo-ai ai agent get <agent-uuid>\ncargo-ai ai agent create --name <name> --icon-color blue --icon-face 🤖\ncargo-ai ai agent update --uuid <agent-uuid> --name <name>\ncargo-ai ai agent remove <agent-uuid>\ncargo-ai ai release list --agent-uuid <uuid>\ncargo-ai ai release get <release-uuid>\ncargo-ai ai release get-draft --agent-uuid <uuid>\ncargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o\ncargo-ai ai release deploy-draft --agent-uuid <uuid>\ncargo-ai ai template list\ncargo-ai ai template get <slug>\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"Internal Tools\"\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated Name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse\ncargo-ai mcp                               # serve the platform MCP over stdio\ncargo-ai mcp --server <mcp-server-uuid>    # serve a curated workspace MCP server instead\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\ncargo-ai ai memory update --mem0-id <id> --scope agent --agent-uuid <uuid> --content \"Updated memory\"\ncargo-ai ai memory remove --mem0-id <id> --scope agent --agent-uuid <uuid>\n```\n\n## Agents\n\nAgents are AI resources with configured instructions, a language model, actions, and optional resources.\n\n**Before creating an agent from scratch, check existing templates — they capture proven patterns for common use cases (lead research, classification, email drafting) and give you a ready-made system prompt, model, and temperature to start from:**\n\n```bash\ncargo-ai ai template list          # browse available patterns\ncargo-ai ai template get <slug>    # inspect system prompt, model, and actions\n```\n\n```bash\n# List all agents\ncargo-ai ai agent list\n\n# Get a single agent (includes deployed release details)\ncargo-ai ai agent get <agent-uuid>\n\n# Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color blue --icon-face 🤖 \\\n  --description \"Researches leads and enriches data\"\n\n# Update an agent\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Updated description\"\n\n# Move to a folder (find folder UUIDs via cargo-workspace-management)\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n\n# Remove an agent\ncargo-ai ai agent remove <agent-uuid>\n```\n\n**Agent icon:** `--icon-color` must be one of: `grey`, `green`, `purple`, `yellow`, `blue`, `red`. `--icon-face` is an emoji string.\n\n**Folders:** Folder creation, listing, and management lives in [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md) (`cargo-ai workspaceManagement folder list/create/...`). Use that skill to discover or create the `<folder-uuid>` you pass to `--folder-uuid` here.\n\n## Releases\n\nReleases are versioned snapshots of an agent's configuration (system prompt, actions, resources, model, temperature). Agents execute against their deployed release.\n\n```bash\n# List releases for an agent\ncargo-ai ai release list --agent-uuid <uuid>\n\n# Get a specific release\ncargo-ai ai release get <release-uuid>\n\n# Get the current draft release (editable)\ncargo-ai ai release get-draft --agent-uuid <uuid>\n\n# Update the draft release\ncargo-ai ai release update-draft --agent-uuid <uuid> \\\n  --system-prompt \"You are a lead research assistant...\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3 \\\n  --max-steps 10\n\n# Deploy the draft release (makes it live)\ncargo-ai ai release deploy-draft --agent-uuid <uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Added research actions\"\n```\n\n### Structured output & heartbeat — not yet exposed as CLI flags\n\nThe release API payload (both `draft/update` and `draft/deploy`) accepts two fields that **`release update-draft` / `release deploy-draft` do not surface as flags** (verified against the CLI source — there is no `--output` / `--output-schema` or `--heartbeat`):\n\n| Field | Shape | Purpose |\n|---|---|---|\n| `output` | `{\"type\":\"text\"}` **or** `{\"type\":\"jsonSchema\",\"jsonSchema\": <standard JSON Schema object>}` | Force the agent to return structured output matching a JSON Schema. |\n| `heartbeat` | `{\"intervalMinutes\": number, \"maxMessages\": number, \"prompt\": string \\| null}` | Periodically re-wake the chat (`intervalMinutes`) until it reaches `maxMessages`; `prompt` is the wake message (null = generic \"continue\"). |\n\nThe generic `--options` flag does **not** carry these — the API's `options` only holds `{connectorUuidsByIntegrationSlug, modelUuidsByIntegrationSlug}`. Until the flags ship, set these with a direct API call against the same endpoints the CLI uses:\n\n```bash\n# Structured (JSON Schema) output on the draft release\ncurl -sS -X PUT \"$CARGO_API_BASE/v1/ai/releases/draft/update\" \\\n  -H \"Authorization: Bearer $CARGO_TOKEN\" -H \"Content-Type: application/json\" \\\n  -d '{\"agentUuid\":\"<uuid>\",\"output\":{\"type\":\"jsonSchema\",\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"score\":{\"type\":\"number\"}},\"required\":[\"score\"]}}}'\n# Deploy carries the same fields — POST .../v1/ai/releases/draft/deploy\n```\n\nSend these payloads alongside the other fields you're updating (the endpoint replaces the draft config). **File a `workspaceManagement report`** (see [`../cargo-workspace-management/SKILL.md`](../cargo-workspace-management/SKILL.md)) to request first-class `--output` / `--heartbeat` flags — this is the documented feedback channel for CLI/UI parity gaps.\n\n**Agent configuration workflow:**\n\n1. **Browse templates for inspiration**: `cargo-ai ai template list` — find a template close to your use case, then `cargo-ai ai template get <slug>` to see its system prompt, model, and temperature\n2. Create the agent: `cargo-ai ai agent create --name \"...\" --icon-color blue --icon-face 🤖`\n3. Get the draft release: `cargo-ai ai release get-draft --agent-uuid <uuid>`\n4. Update the draft with configured actions, resources, prompt, model: `cargo-ai ai release update-draft --agent-uuid <uuid> ...`\n5. Deploy: `cargo-ai ai release deploy-draft --agent-uuid <uuid> ...`\n\n## Templates\n\nTemplates are pre-built agent configurations that capture proven patterns for common use cases. **Always check templates before designing an agent from scratch** — they give you a ready-made system prompt, recommended language model, temperature, and tool configuration that you can adopt as-is or adapt.\n\n```bash\n# List available agent templates\ncargo-ai ai template list\n\n# Get a template by slug — inspect its system prompt, model, and settings\ncargo-ai ai template get <slug>\n```\n\nTemplates include a system prompt, actions, resources, and recommended model settings. Use them as a starting point and customize via `release update-draft`. See `references/examples/templates.md` for the full guide including an end-to-end example of creating an agent from a template.\n\n## Model and temperature guidance\n\n| Use case | Recommended model | Temperature |\n|---|---|---|\n| Classification, extraction, scoring | `gpt-4o-mini` or `claude-3-5-haiku` | `0.0` – `0.2` |\n| Research, summarization, analysis | `gpt-4o` or `claude-3-5-sonnet` | `0.2` – `0.5` |\n| Copywriting, personalization | `gpt-4o` or `claude-3-5-sonnet` | `0.5` – `0.8` |\n| Brainstorming, creative ideation | `gpt-4o` or `claude-opus` | `0.7` – `1.0` |\n\nLow temperature (`0.0`–`0.2`) = deterministic, consistent outputs. High temperature (`0.7`+) = creative, varied outputs. For production workflows processing thousands of records, prefer low temperature.\n\n## Knowledge for RAG (files & libraries)\n\nKnowledge that grounds agent responses (retrieval-augmented generation, RAG) comes from the **`content`** domain — see [`cargo-content`](../cargo-content/SKILL.md):\n\n- **Files** — uploaded binaries (PDFs, CSVs, text).\n- **Libraries** — collections that group files, either `native` (workspace-managed) or `connector`-backed (synced from an external source via an unstructured-data extractor).\n\n> Files and libraries moved out of `ai` into the top-level **`content`** domain in CLI ≥ 1.0.19 (`cargo-ai content file …` / `cargo-ai content library …`). The old `ai file …` commands are gone. Everything content-related now lives in [`cargo-content`](../cargo-content/SKILL.md).\n\n### Attaching knowledge to an agent\n\nA file or library is inert until attached to an agent via the draft release's `resources` array and deployed. Upload files / build libraries in [`cargo-content`](../cargo-content/SKILL.md), then wire them in here with `release update-draft --resources …` followed by `release deploy-draft`. See [`../cargo-content/references/examples/files.md`](../cargo-content/references/examples/files.md) for the full upload → attach → deploy sequence.\n\n## MCP — two directions, don't mix them up\n\nMCP (Model Context Protocol) runs both ways in Cargo, and the two surfaces are unrelated:\n\n| | **Publish** — `ai mcp-server` | **Consume** — `ai mcp-client` |\n|---|---|---|\n| What it is | A server **your workspace exposes**: the tools, agents, and data you choose to make callable | A connection **to someone else's** MCP server |\n| Who calls it | Any MCP client — Claude Code, Claude Desktop, Cursor, ChatGPT | Your Cargo agents, during a chat or a workflow run |\n| Wired via | `cargo-ai mcp --server <uuid>` (stdio bridge, below) | `release update-draft --mcp-clients …` |\n\n**Before building one, check whether the platform MCP already covers it.** Cargo now serves a first-party MCP at `https://mcp.getcargo.io/mcp` — every workspace member, nothing to deploy — with a small fixed toolset for operating the workspace (`whoami`, `get_usage`, `search_actions`, `get_action_schema`, `autocomplete_action`, `execute_action`, `execute_action_batch`, `get_run`, `get_batch`, `list_runs`, `list_models`, `describe_model`, `query_models`). Hosted clients (ChatGPT connectors, Claude.ai, Cursor over HTTP) point at that URL and sign in with OAuth; the consent screen picks the workspace when the user belongs to several. `ai mcp-server` is for the other job: a **curated, named** subset — this tool, that agent, this filtered model — for a client that should see exactly that and nothing else.\n\n### Publishing a workspace MCP server\n\n```bash\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"CRM tools\" \\\n  --actions '[{\"slug\":\"<tool-uuid>\",\"kind\":\"tool\",\"name\":null,\"description\":null,\"isBulkAllowed\":false,\"config\":{}}]' \\\n  --resources '[{\"kind\":\"model\",\"slug\":\"<slug>\",\"name\":\"Accounts\",\"description\":null,\"integrationSlug\":\"hubspot\",\"modelUuid\":null,\"filter\":null,\"selectedColumnSlugs\":null,\"limit\":null,\"prompt\":null,\"isReadOnly\":true}]'\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\n```\n\n- **Actions** take `kind: \"tool\"` **or** `kind: \"agent\"` — an agent can be exposed as a callable MCP tool, not just a tool. `waitUntilFinished` controls whether the call blocks on the run.\n- **Resources** take `kind: \"model\"` (a filtered, column-selected view of a model — keep `isReadOnly: true` unless the client is meant to write) or `kind: \"file\"` (workspace files by UUID, see [`../cargo-content/SKILL.md`](../cargo-content/SKILL.md)).\n- `update` replaces `--actions` / `--resources` wholesale rather than merging — read the current server with `mcp-server list` and pass the full array back.\n\n### Serving it to a coding agent — `cargo-ai mcp`\n\nEither server reaches any stdio MCP client through the CLI, using the credentials already on the machine. **No token is copied into client config.**\n\n```bash\nclaude mcp add cargo -- cargo-ai mcp                     # the platform MCP (no setup)\ncargo-ai ai mcp-server list                              # find a curated server's UUID\nclaude mcp add cargo -- cargo-ai mcp --server <uuid>     # that curated server instead\n# Cursor, Windsurf, and other stdio clients: same command as the server entry\n```\n\nWith no `--server`, the bridge uses `CARGO_MCP_SERVER_UUID` when set, otherwise the platform `/mcp`. **This changed:** older CLIs resolved \"the workspace's only MCP server\" and failed with `InvalidUsage` when the workspace had none or several — a bare `cargo-ai mcp` now always has something to serve. stdout carries the MCP protocol and all logs go to stderr, so never print anything to stdout around it.\n\n**When to reach for this instead of the skills:** the skills give an agent the whole CLI; an MCP surface gives it a bounded set with no shell. Use the bridge for in-conversation lookups and one-off actions, and the CLI for batches, workflows, schema changes, and anything with a cost gate. Full routing rule: [`../cargo/SKILL.md`](../cargo/SKILL.md) → \"These skills vs Cargo's MCP surfaces\".\n\n### Consuming an external MCP server\n\n```bash\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse \\\n  --disabled-tool-slugs \"dangerous_tool,other_tool\"\n```\n\n`--authentication` takes `{\"issuedAt\": \"...\", \"accessToken\": \"...\"}` or `\"null\"`. Connected clients are attached to an agent through its release: `release update-draft --mcp-clients …`, then `release deploy-draft`.\n\n## Memories\n\nMemories are pieces of information an agent stores from conversations for future reference. They can be scoped to a workspace, user, or specific agent.\n\n```bash\n# List agent memories\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\n\n# List workspace-wide memories\ncargo-ai ai memory list --scope workspace\n\n# List user-scoped memories\ncargo-ai ai memory list --scope user\n\n# Update a memory\ncargo-ai ai memory update \\\n  --mem0-id <id> \\\n  --scope agent --agent-uuid <uuid> \\\n  --content \"Updated memory content\"\n\n# Remove a memory\ncargo-ai ai memory remove \\\n  --mem0-id <id> \\\n  --scope agent --agent-uuid <uuid>\n```\n\n## Help\n\nEvery command supports `--help`:\n\n```bash\ncargo-ai ai agent create --help\ncargo-ai ai release update-draft --help\ncargo-ai ai mcp-server create --help\ncargo-ai ai memory list --help\n```\n\nFile v2.3.0:_meta.json\n\n{\n  \"ownerId\": \"kn7by8t6yt9yghbxtxz6hv0bts87k6bq\",\n  \"slug\": \"cargo-ai\",\n  \"version\": \"2.3.0\",\n  \"publishedAt\": 1787874184532\n}\n\nFile v2.3.0:references/examples/agents.md\n\n# Agent examples\n\n## List all agents\n\n```bash\ncargo-ai ai agent list\n```\n\n## Find an agent by name\n\n```bash\ncargo-ai ai agent list\n# → Scan the \"name\" fields in the response to find the target agent UUID\n```\n\n## Create an agent\n\n```bash\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --description \"Researches and qualifies leads using web data\"\n```\n\n## Create an agent in a folder\n\nFolders are managed by the [`cargo-workspace-management`](../../../cargo-workspace-management/SKILL.md) skill — see its `references/examples/folders.md` for create/list/update.\n\n```bash\ncargo-ai workspaceManagement folder list\n# → Find the folder UUID (kind: \"agent\")\n\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --folder-uuid <folder-uuid>\n```\n\n## Configure and deploy an agent (full workflow)\n\n```bash\n# 1. Create the agent\ncargo-ai ai agent create \\\n  --name \"Company Scorer\" \\\n  --icon-color green --icon-face 📊\n# → agent.uuid\n\n# 2. Get the draft release\ncargo-ai ai release get-draft --agent-uuid <agent-uuid>\n# → release.uuid\n\n# 3. Configure the draft: set model, temperature, prompt\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o-mini \\\n  --temperature 0.0 \\\n  --max-steps 5 \\\n  --system-prompt \"You are a company scoring assistant. Given a company record, score it from 1-10 based on fit criteria.\"\n\n# 4. Deploy the draft\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o-mini \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Initial deployment with scoring prompt\"\n```\n\n## Update an agent's name and description\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Advanced lead research with enrichment capabilities\"\n```\n\n## Move an agent to a different folder\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n```\n\n## Remove an agent\n\n```bash\ncargo-ai ai agent remove <agent-uuid>\n```\n\n## Create an agent from a template\n\n```bash\n# 1. Browse templates\ncargo-ai ai template list\n\n# 2. Get the template\ncargo-ai ai template get <template-slug>\n# → Copy the systemPrompt, actions, resources, model settings\n\n# 3. Create the agent\ncargo-ai ai agent create \\\n  --name \"My Custom Agent\" \\\n  --icon-color blue --icon-face 🤖\n\n# 4. Apply template settings to the draft\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"<from template>\" \\\n  --language-model-slug <from template> \\\n  --temperature <from template>\n\n# 5. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug <from template> \\\n  --language-model-slug <from template> \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]'\n```\n\n## List releases for an agent\n\n```bash\ncargo-ai ai release list --agent-uuid <agent-uuid>\n```\n\n## View the current live configuration\n\n```bash\ncargo-ai ai agent get <agent-uuid>\n# → .deployedRelease contains the full live config (prompt, model, actions, resources)\n```\n\nFile v2.3.0:references/examples/mcp-servers.md\n\n# MCP server examples\n\n## List all MCP servers\n\n```bash\ncargo-ai ai mcp-server list\n```\n\n## Create an MCP server\n\n```bash\ncargo-ai ai mcp-server create --name \"Internal Tools\"\n```\n\n## Connect an MCP server to an agent\n\nMCP servers are connected to agents as MCP clients on the release:\n\n```bash\n# 1. Create or find the MCP server\ncargo-ai ai mcp-server list\n# → mcp-server-uuid\n\n# 2. Add as an MCP client on the agent's draft release\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n**MCP client kinds:**\n\n- `custom` — URL-based MCP server. Requires `name`, `url`, and optionally `authentication`.\n- `connector` — Integration-backed MCP client. Requires `name`, `connectorUuid`, `integrationSlug`.\n\n## Connect a connector-backed MCP client\n\n```bash\n# 1. Find the connector\ncargo-ai connection connector list\n# → connector-uuid, integrationSlug\n\n# 2. Add as an MCP client\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"connector\",\"name\":\"HubSpot Tools\",\"connectorUuid\":\"<connector-uuid>\",\"integrationSlug\":\"hubspot\",\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n## Disable specific actions from an MCP server\n\nUse `disabledToolSlugs` to prevent the agent from using specific MCP actions:\n\n```bash\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[\"dangerous_tool\",\"admin_tool\"]}]'\n```\n\n## Update an MCP server name\n\n```bash\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Production Tools\"\n```\n\n## Remove an MCP server\n\n```bash\ncargo-ai ai mcp-server remove <mcp-server-uuid>\n```\n\nFile v2.3.0:references/examples/templates.md\n\n# AI template examples\n\n## What is an AI template?\n\nAn **AI template** is a pre-built agent configuration — a ready-to-use agent blueprint with instructions, model settings, and action configuration already defined. Templates capture common agent patterns (lead research, company classification, email drafting) so you don't have to configure an agent from scratch.\n\n**Always check templates before creating an agent.** Even if no template is a perfect match, they provide:\n- A proven system prompt structure for the use case\n- A recommended language model and temperature setting\n- A list of actions and resources to consider attaching\n\nAI templates are read-only. You discover them by listing, then use their configuration as a starting point when creating or updating an agent.\n\n## List all AI templates\n\n```bash\ncargo-ai ai template list\n```\n\nResponse:\n\n```json\n{\n  \"templates\": [\n    {\n      \"slug\": \"lead-researcher\",\n      \"name\": \"Lead Researcher\",\n      \"description\": \"Researches a prospect's company, role, and contact details\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3\n    },\n    {\n      \"slug\": \"company-classifier\",\n      \"name\": \"Company Classifier\",\n      \"description\": \"Classifies a company by industry, size, and ICP fit\",\n      \"languageModelSlug\": \"gpt-4.1-mini\",\n      \"temperature\": 0.1\n    },\n    {\n      \"slug\": \"email-drafter\",\n      \"name\": \"Email Drafter\",\n      \"description\": \"Drafts personalised outbound emails based on enrichment data\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.7\n    }\n  ]\n}\n```\n\nKey fields:\n\n- **`slug`** — identifier for reference\n- **`name`** — human-readable name\n- **`description`** — what the agent does\n- **`languageModelSlug`** — recommended model for this use case\n- **`temperature`** — recommended temperature setting\n\n## Use a template to create an agent\n\nThe standard pattern:\n\n1. List templates to find the right one\n2. Create a new agent using the template's recommended settings\n3. Attach any files or MCP servers the agent needs\n4. Start chatting or embed the agent in a workflow\n\n```bash\n# 1. Find the right template\ncargo-ai ai template list\n# → Find \"lead-researcher\"\n\n# 2. Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍\n# → Extract agent.uuid\n\n# 3. Configure the draft release with template settings\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"You are a research assistant. Given a company domain and a contact name, find their role, LinkedIn profile, and email address. Be concise and structured.\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3\n\n# 4. Attach a knowledge file (optional)\ncargo-ai content file upload --file ./icp-criteria.pdf\n# → Extract file.uuid — attach to agent via release update-draft --resources\n\n# 5. Test with a message\ncargo-ai ai chat create \\\n  --trigger '{\"type\":\"draft\"}' \\\n  --agent-uuid <agent-uuid> \\\n  --name \"Test session\"\n# → Extract chat.uuid\n\ncargo-ai ai message create \\\n  --chat-uuid <chat-uuid> \\\n  --parts '[{\"type\":\"text\",\"text\":\"Research the VP of Sales at acme.com\"}]'\n# → Poll with: cargo-ai ai message get <assistant-msg-uuid>\n```\n\n## Use a template to configure an agent in a workflow node\n\nAI templates also inform how to configure an inline `agent` node inside a workflow node graph. Use the template's `languageModelSlug` and `temperature` in the node's `advancedSettings`:\n\n```json\n{\n  \"uuid\": \"ab12cd34-ab12-4ab1-aab1-ab12cd34ef56\",\n  \"slug\": \"research_lead\",\n  \"kind\": \"native\",\n  \"actionSlug\": \"agent\",\n  \"config\": {\n    \"prompt\": {\n      \"kind\": \"templateExpression\",\n      \"expression\": \"Research the person {{nodes.start.first_name}} {{nodes.start.last_name}} at {{nodes.start.domain}}. Return their role, LinkedIn URL, and a 2-sentence summary.\",\n      \"instructTo\": \"none\",\n      \"fromRecipe\": false\n    },\n    \"advancedSettings\": {\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3,\n      \"maxSteps\": 5\n    }\n  },\n  \"childrenUuids\": [\"cd34ef56-cd34-4cd3-acd3-cd34ef567890\"],\n  \"fallbackOnFailure\": false,\n  \"position\": { \"x\": 0, \"y\": 166 }\n}\n```\n\nSee `cargo-orchestration/references/nodes.md` for the full node creation guide.\n\n## Template-to-agent quick reference\n\n| Template slug         | Use case                     | Recommended model  | Temperature |\n| --------------------- | ---------------------------- | ------------------ | ----------- |\n| `lead-researcher`     | Prospect research            | `gpt-4o`           | 0.3         |\n| `company-classifier`  | Industry / ICP classification| `gpt-4.1-mini`     | 0.1         |\n| `email-drafter`       | Personalised outbound emails | `gpt-4o`           | 0.7         |\n\nFile v2.3.0:references/response-shapes.md\n\n# Response shapes\n\nJSON response structures returned by Cargo CLI commands used in the `cargo-ai` skill.\n\n## cargo-ai ai agent list\n\n```json\n{\n  \"agents\": [\n    {\n      \"uuid\": \"agent-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"name\": \"Sales Research Agent\",\n      \"icon\": { \"color\": \"blue\", \"face\": \"🤖\" },\n      \"description\": \"Researches leads and enriches data\",\n      \"triggers\": [],\n      \"deployedRelease\": {\n        \"uuid\": \"release-uuid\",\n        \"version\": \"3\",\n        \"description\": \"Added email step\",\n        \"systemPrompt\": \"You are a sales research assistant...\",\n        \"languageModelSlug\": \"gpt-4o\",\n        \"integrationSlug\": \"openai\",\n        \"temperature\": 0.3,\n        \"maxSteps\": 10,\n        \"actions\": [],\n        \"resources\": [],\n        \"capabilities\": [],\n        \"mcpClients\": [],\n        \"deployedAt\": \"2025-01-10T09:00:00Z\",\n        \"createdAt\": \"2025-01-10T09:00:00Z\"\n      },\n      \"folderUuid\": null,\n      \"template\": null,\n      \"isReadOnly\": false,\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `uuid` (needed for chat create, release operations), `name` (match by name), `deployedRelease` (current live config — `null` if never deployed).\n\n**Agent icon colors:** `grey`, `green`, `purple`, `yellow`, `blue`, `red`.\n\n## cargo-ai ai agent get\n\nSame structure as a single item from `agent list`, nested under `agent`:\n\n```json\n{\n  \"agent\": {\n    \"uuid\": \"agent-uuid\",\n    \"name\": \"Sales Research Agent\",\n    \"icon\": { \"color\": \"blue\", \"face\": \"🤖\" },\n    \"deployedRelease\": { ... },\n    ...\n  }\n}\n```\n\n## cargo-ai ai release list\n\n```json\n{\n  \"releases\": [\n    {\n      \"uuid\": \"release-uuid\",\n      \"agentUuid\": \"agent-uuid\",\n      \"version\": \"3\",\n      \"status\": \"deployed\",\n      \"description\": \"Added research actions\",\n      \"systemPrompt\": \"You are a sales research assistant...\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"integrationSlug\": \"openai\",\n      \"temperature\": 0.3,\n      \"maxSteps\": 10,\n      \"withReasoning\": false,\n      \"actions\": [],\n      \"resources\": [],\n      \"capabilities\": [],\n      \"suggestedActions\": [],\n      \"mcpClients\": [],\n      \"deployedAt\": \"2025-01-10T09:00:00Z\",\n      \"createdAt\": \"2025-01-10T09:00:00Z\",\n      \"updatedAt\": \"2025-01-10T09:00:00Z\"\n    }\n  ]\n}\n```\n\n**Status values:** `draft`, `deployed`, `archived`.\n\nSupports `--agent-uuid`, `--limit`, `--offset`.\n\n## cargo-ai ai release get\n\n```json\n{\n  \"release\": {\n    \"uuid\": \"release-uuid\",\n    \"agentUuid\": \"agent-uuid\",\n    \"version\": \"3\",\n    \"status\": \"deployed\",\n    \"description\": \"Added research actions\",\n    \"systemPrompt\": \"You are a sales research assistant...\",\n    \"languageModelSlug\": \"gpt-4o\",\n    \"integrationSlug\": \"openai\",\n    \"connectorUuid\": null,\n    \"temperature\": 0.3,\n    \"maxSteps\": 10,\n    \"withReasoning\": false,\n    \"actions\": [\n      {\n        \"kind\": \"connector\",\n        \"integrationSlug\": \"clearbit\",\n        \"connectorUuid\": \"connector-uuid\",\n        \"actionSlug\": \"company_enrich\",\n        \"slug\": \"enrich_company\",\n        \"name\": \"Enrich Company\",\n        \"description\": \"Enriches company data\",\n        \"isBulkAllowed\": false,\n        \"config\": {}\n      }\n    ],\n    \"resources\": [\n      {\n        \"kind\": \"file\",\n        \"slug\": \"knowledge_base\",\n        \"name\": \"Knowledge Base\",\n        \"description\": null,\n        \"prompt\": null,\n        \"items\": [{ \"kind\": \"file\", \"fileUuid\": \"file-uuid\" }]\n      }\n    ],\n    \"capabilities\": [],\n    \"suggestedActions\": [],\n    \"mcpClients\": [\n      {\n        \"kind\": \"custom\",\n        \"name\": \"Internal Tools\",\n        \"url\": \"https://mcp.example.com\",\n        \"authentication\": null,\n        \"disabledToolSlugs\": []\n      }\n    ],\n    \"deployedAt\": \"2025-01-10T09:00:00Z\",\n    \"createdAt\": \"2025-01-10T09:00:00Z\",\n    \"updatedAt\": \"2025-01-10T09:00:00Z\"\n  }\n}\n```\n\n**Key fields:** `actions` (array of tool/connector/agent actions), `resources` (file or model resources), `mcpClients` (MCP server connections), `systemPrompt`, `languageModelSlug`, `temperature`, `maxSteps`.\n\n**Action kinds:** `tool` (workflow tool), `connector` (integration action), `agent` (sub-agent).\n\n**Resource kinds:** `file` (uploaded files/folders), `model` (data model reference).\n\n**MCP client kinds:** `custom` (URL-based), `connector` (integration-backed).\n\n## cargo-ai ai template list\n\n```json\n{\n  \"templates\": [\n    {\n      \"slug\": \"lead-researcher\",\n      \"name\": \"Lead Researcher\",\n      \"description\": \"Researches and qualifies leads using web data\",\n      \"scope\": \"public\",\n      \"isPreset\": true,\n      \"kind\": \"agent\",\n      \"icon\": { \"color\": \"purple\", \"face\": \"🔍\" },\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3,\n      \"categories\": [\"prospecting\"],\n      \"author\": {\n        \"name\": \"Cargo\",\n        \"title\": \"Platform\",\n        \"company\": { \"name\": \"Cargo\", \"url\": \"https://getcargo.ai\" }\n      },\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `slug` (used for `template get`), `name`, `languageModelSlug`, `temperature`.\n\n**Template categories:** `prospecting`, `ops`, `enablement`, `outreach`, `expansion`, `public`, `private`.\n\n## cargo-ai ai template get\n\n```json\n{\n  \"template\": {\n    \"slug\": \"lead-researcher\",\n    \"name\": \"Lead Researcher\",\n    \"kind\": \"agent\",\n    \"description\": \"...\",\n    \"systemPrompt\": \"You are a lead research assistant...\",\n    \"languageModelSlug\": \"gpt-4o\",\n    \"integrationSlug\": \"openai\",\n    \"temperature\": 0.3,\n    \"maxSteps\": 10,\n    \"withReasoning\": false,\n    \"actions\": [...],\n    \"resources\": [...],\n    \"capabilities\": [],\n    \"suggestedActions\": [],\n    \"icon\": { \"color\": \"purple\", \"face\": \"🔍\" },\n    \"scope\": \"public\",\n    \"isPreset\": true,\n    \"categories\": [\"prospecting\"],\n    \"author\": { ... },\n    \"createdAt\": \"2025-01-01T00:00:00Z\",\n    \"updatedAt\": \"2025-01-15T00:00:00Z\"\n  }\n}\n```\n\n> **Content files & libraries** (`cargo-ai content file …` / `content library …`) live in the [`cargo-content`](../../cargo-content/SKILL.md) skill — see `cargo-content/references/response-shapes.md` for their shapes.\n\n## cargo-ai ai mcp-server list\n\n```json\n{\n  \"mcpServers\": [\n    {\n      \"uuid\": \"mcp-server-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"name\": \"Internal Tools\",\n      \"actions\": [\n        {\n          \"kind\": \"tool\",\n          \"slug\": \"search_docs\",\n          \"name\": \"Search Docs\",\n          \"description\": \"Searches internal documentation\",\n          \"isBulkAllowed\": false,\n          \"config\": {}\n        }\n      ],\n      \"createdAt\": \"2025-01-01T00:00:00Z\",\n      \"updatedAt\": \"2025-01-15T00:00:00Z\"\n    }\n  ]\n}\n```\n\n**Key fields:** `uuid`, `name`, `actions` (discovered actions from the MCP server).\n\n## cargo-ai ai memory list\n\n```json\n{\n  \"memories\": [\n    {\n      \"mem0Id\": \"memory-id\",\n      \"content\": \"The user prefers concise responses with bullet points\",\n      \"scope\": \"agent\",\n      \"agentUuid\": \"agent-uuid\",\n      \"workspaceUuid\": \"...\",\n      \"createdAt\": \"2025-01-15T10:00:00Z\",\n      \"updatedAt\": \"2025-01-15T10:00:00Z\"\n    }\n  ]\n}\n```\n\n**Memory scopes:**\n\n- `workspace` — shared across all agents and users in the workspace. Has `workspaceUuid`.\n- `user` — specific to a user. Has `userUuid`.\n- `agent` — specific to an agent. Has `agentUuid` and `workspaceUuid`.\n\n**Key field:** `mem0Id` (needed for update and remove operations).\n\nFile v2.3.0:references/troubleshooting.md\n\n# Troubleshooting\n\nCommon errors and solutions for `cargo-ai` commands.\n\n## General\n\n**`{\"errorMessage\": \"...\"}`**\nAll failed commands exit non-zero and return an error JSON. Read the `errorMessage` for the specific issue.\n\n**`Unauthorized` / `403`**\nYour API token may lack the required permissions. Verify with `cargo-ai whoami` and check that your role includes `ai:agent:*` or `ai:agent:write` actions.\n\n## Agents\n\n**`agentNotFound`**\nThe agent UUID does not exist or has been deleted. Re-run `cargo-ai ai agent list` to get the current list of agents.\n\n**`folderNotFound`**\nThe folder UUID passed to `--folder-uuid` does not exist. Folders are managed by the [`cargo-workspace-management`](../../cargo-workspace-management/SKILL.md) skill — run `cargo-ai workspaceManagement folder list` to find valid folder UUIDs, or `cargo-ai workspaceManagement folder create --kind agent ...` to create one.\n\n**Agent has no deployed release**\nIf `agent get` shows `deployedRelease: null`, the agent has never been deployed. Follow the release workflow:\n1. `cargo-ai ai release get-draft --agent-uuid <uuid>`\n2. `cargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o --system-prompt \"...\"`\n3. `cargo-ai ai release deploy-draft --agent-uuid <uuid> --language-model-slug gpt-4o --integration-slug openai`\n\n## Releases\n\n**`draftReleaseNotFound`**\nThe agent does not have a draft release. This can happen if the agent was just created. Try `cargo-ai ai release get-draft --agent-uuid <uuid>` first — it may auto-create the draft.\n\n**`invalidParent`**\nThe `--parent-uuid` passed to `release update-draft` does not match a valid release. Omit it or use a UUID from `release list`.\n\n**`invalidReleaseVersion`**\nThe version string is invalid. Version must be a non-empty string (not a number).\n\n**`invalidConnector`**\nA connector UUID referenced in the release actions or configuration does not exist. Verify connector UUIDs with `cargo-ai connection connector list`.\n\n**`failedToReconciliateAgentAiTools`**\nThe actions configuration in the release is invalid — a referenced tool, agent, or connector UUID may not exist. Verify all UUIDs in the actions array.\n\n**Can't set structured (JSON Schema) output or a heartbeat from the CLI**\n`release update-draft` / `release deploy-draft` have no `--output` / `--output-schema` or `--heartbeat` flag, even though the release API payload accepts `output` and `heartbeat`. The generic `--options` flag won't carry them. See the \"Structured output & heartbeat\" section in [`../SKILL.md`](../SKILL.md) for the shapes and the direct-API workaround, and file a `workspaceManagement report` to request the flags.\n\n## Templates\n\n**`templateNotFound`**\nThe template slug does not exist. Run `cargo-ai ai template list` to see available templates.\n\n## Files & libraries\n\nKnowledge files and libraries moved to the `content` domain (CLI ≥ 1.0.19). For `fileNotFound`, `folderNotFound`, upload failures, and the `unknown command` error on the old `ai file …` path, see [`cargo-content`](../../cargo-content/SKILL.md) → `references/troubleshooting.md`.\n\n## MCP Servers\n\n**`mcpServerNotFound`**\nThe MCP server UUID does not exist or has been deleted. Run `cargo-ai ai mcp-server list` to get the current list.\n\n**MCP actions not appearing in agent**\nMCP servers are connected to agents via MCP clients on the release. After creating an MCP server, add it as an MCP client to the agent's draft release using `release update-draft`, then deploy.\n\n## Memories\n\n**`memoryNotFound`**\nThe `mem0Id` does not match any existing memory. Run `cargo-ai ai memory list` with the correct `--scope` and `--agent-uuid` to find valid memory IDs.\n\n**Wrong scope**\nMemory operations require the correct scope. An agent-scoped memory needs `--scope agent --agent-uuid <uuid>`. A workspace-scoped memory needs `--scope workspace`. Mismatched scopes return not-found errors.\n\nFile v2.3.0:skill-card.md\n\n## Description:\n\nBuild and configure Cargo AI agents, including prompts, model settings, RAG resources, MCP connections, memories, and deployments.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[cargo-ai](https://clawhub.ai/user/cargo-ai)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and operators use this skill to create, configure, connect, and deploy Cargo AI agents through the Cargo CLI. It helps manage agent releases, knowledge attachments, MCP server/client setup, templates, model settings, and memories.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can guide write operations that change Cargo agents, releases, MCP settings, memories, and related workspace resources.\n\nMitigation: Review write commands before execution and confirm the active workspace with `cargo-ai whoami`.\n\nRisk: API tokens and MCP connections can expose or extend workspace access.\n\nMitigation: Use appropriate token scopes, avoid unnecessary token sharing, and review MCP connection settings before deployment.\n\nRisk: Lead and contact research workflows may involve personal or business data.\n\nMitigation: Ensure research and enrichment workflows comply with organizational policies, platform terms, and applicable privacy laws.\n\n## Reference(s):\n\n- [Cargo skills repository](https://github.com/getcargohq/cargo-skills)\n- [Response shapes](references/response-shapes.md)\n- [Troubleshooting](references/troubleshooting.md)\n- [Agent examples](references/examples/agents.md)\n- [MCP server examples](references/examples/mcp-servers.md)\n- [AI template examples](references/examples/templates.md)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Code, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown with bash, JSON, and curl examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Commands generally return JSON and may require Cargo authentication.]\n\n## Skill Version(s):\n\n2.3.0 (source: frontmatter and server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v2.3.0:skill-metadata.json\n\n{\n  \"$comment\": \"Generated by .github/scripts/skills-metadata.mjs — do not hand-edit. Regenerate with: node .github/scripts/skills-metadata.mjs --write .\",\n  \"name\": \"cargo-ai\",\n  \"version\": \"2.3.0\",\n  \"documents\": [\n    {\n      \"path\": \"SKILL.md\",\n      \"kind\": \"entrypoint\",\n      \"title\": \"Cargo CLI — AI\"\n    },\n    {\n      \"path\": \"references/examples/agents.md\",\n      \"kind\": \"example\",\n      \"title\": \"Agent examples\"\n    },\n    {\n      \"path\": \"references/examples/mcp-servers.md\",\n      \"kind\": \"example\",\n      \"title\": \"MCP server examples\"\n    },\n    {\n      \"path\": \"references/examples/templates.md\",\n      \"kind\": \"example\",\n      \"title\": \"AI template examples\"\n    },\n    {\n      \"path\": \"references/response-shapes.md\",\n      \"kind\": \"reference\",\n      \"title\": \"Response shapes\"\n    },\n    {\n      \"path\": \"references/troubleshooting.md\",\n      \"kind\": \"reference\",\n      \"title\": \"Troubleshooting\"\n    }\n  ],\n  \"contentHash\": \"a38dabf40fcf32ec09ceee0a32570780af84fb97f5009c9feb8a5eb03e838f58\"\n}\n\nArchive v2.2.1: 9 files, 14799 bytes\n\nFiles: references/examples/agents.md (3288b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4741b), references/response-shapes.md (7401b), references/troubleshooting.md (3908b), skill-card.md (2306b), skill-metadata.json (1020b), SKILL.md (13112b), _meta.json (127b)\n\nFile v2.2.1:SKILL.md\n\n---\nname: cargo-ai\ndescription: Create and configure AI agents, attach knowledge for RAG, manage MCP servers, and handle agent memories using the Cargo CLI. Use when the user wants to create or update agents, configure agent releases, connect MCP tool servers, or manage agent memories. To upload knowledge files or build knowledge libraries, use the cargo-content skill. For sending messages to agents, use the cargo-orchestration skill instead.\nversion: \"2.2.1\"\ncompatibility: Requires @cargo-ai/cli (npm). Sign in or create an account with `cargo-ai login --email` (emailed code, no browser), `--oauth`, or an API token\nhomepage: https://github.com/getcargohq/cargo-skills\nmetadata:\n  author: getcargo\n  openclaw:\n    requires:\n      bins:\n        - cargo-ai\n    install:\n      - kind: node\n        package: \"@cargo-ai/cli@latest\"\n        bins:\n          - cargo-ai\n    homepage: https://github.com/getcargohq/cargo-skills\n---\n\n# Cargo CLI — AI\n\nAgent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.\n\n> For *using* agents (sending messages, multi-turn chat, polling), use `cargo-orchestration`.\n> For uploading knowledge **files** and building knowledge **libraries** (the `content` domain), use [`cargo-content`](../cargo-content/SKILL.md). This skill covers how that knowledge attaches to an agent.\n> For workspace administration — folders (used to organize agents and files), users, API tokens, roles, and submitting reports when the CLI fails — use [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md).\n\n> See `references/response-shapes.md` for full JSON response structures.\n> See `references/troubleshooting.md` for common errors and how to fix them.\n> See `references/examples/agents.md` for agent CRUD and configuration examples.\n> See `references/examples/mcp-servers.md` for MCP server creation and management examples.\n\n## Prerequisites\n\nSee [`../cargo/references/prerequisites.md`](../cargo/references/prerequisites.md) for install, login (`--oauth` / `--token`), JSON output conventions, and error shapes. Verify the session with `cargo-ai whoami` before running any of the commands below.\n\n## Discover resources first\n\n```bash\ncargo-ai ai agent list                     # all agents (uuid, name, description)\ncargo-ai ai template list                  # all AI agent templates (slug, name)\ncargo-ai ai mcp-server list                # all MCP servers (uuid, name)\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>  # agent memories\n# Knowledge files & libraries live in the content domain — see cargo-content:\n#   cargo-ai content file list   /   cargo-ai content library list\n```\n\n**Retrieve in the UI:** agents live at `app.getcargo.io/workspaces/<WORKSPACE_UUID>/agents/<AGENT_UUID>`. Get `<WORKSPACE_UUID>` from `cargo-ai whoami` under `workspace.uuid`.\n\n## Quick reference\n\n```bash\ncargo-ai ai agent list\ncargo-ai ai agent get <agent-uuid>\ncargo-ai ai agent create --name <name> --icon-color blue --icon-face 🤖\ncargo-ai ai agent update --uuid <agent-uuid> --name <name>\ncargo-ai ai agent remove <agent-uuid>\ncargo-ai ai release list --agent-uuid <uuid>\ncargo-ai ai release get <release-uuid>\ncargo-ai ai release get-draft --agent-uuid <uuid>\ncargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o\ncargo-ai ai release deploy-draft --agent-uuid <uuid>\ncargo-ai ai template list\ncargo-ai ai template get <slug>\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"Internal Tools\"\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated Name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\ncargo-ai ai memory update --mem0-id <id> --scope agent --agent-uuid <uuid> --content \"Updated memory\"\ncargo-ai ai memory remove --mem0-id <id> --scope agent --agent-uuid <uuid>\n```\n\n## Agents\n\nAgents are AI resources with configured instructions, a language model, actions, and optional resources.\n\n**Before creating an agent from scratch, check existing templates — they capture proven patterns for common use cases (lead research, classification, email drafting) and give you a ready-made system prompt, model, and temperature to start from:**\n\n```bash\ncargo-ai ai template list          # browse available patterns\ncargo-ai ai template get <slug>    # inspect system prompt, model, and actions\n```\n\n```bash\n# List all agents\ncargo-ai ai agent list\n\n# Get a single agent (includes deployed release details)\ncargo-ai ai agent get <agent-uuid>\n\n# Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color blue --icon-face 🤖 \\\n  --description \"Researches leads and enriches data\"\n\n# Update an agent\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Updated description\"\n\n# Move to a folder (find folder UUIDs via cargo-workspace-management)\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n\n# Remove an agent\ncargo-ai ai agent remove <agent-uuid>\n```\n\n**Agent icon:** `--icon-color` must be one of: `grey`, `green`, `purple`, `yellow`, `blue`, `red`. `--icon-face` is an emoji string.\n\n**Folders:** Folder creation, listing, and management lives in [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md) (`cargo-ai workspaceManagement folder list/create/...`). Use that skill to discover or create the `<folder-uuid>` you pass to `--folder-uuid` here.\n\n## Releases\n\nReleases are versioned snapshots of an agent's configuration (system prompt, actions, resources, model, temperature). Agents execute against their deployed release.\n\n```bash\n# List releases for an agent\ncargo-ai ai release list --agent-uuid <uuid>\n\n# Get a specific release\ncargo-ai ai release get <release-uuid>\n\n# Get the current draft release (editable)\ncargo-ai ai release get-draft --agent-uuid <uuid>\n\n# Update the draft release\ncargo-ai ai release update-draft --agent-uuid <uuid> \\\n  --system-prompt \"You are a lead research assistant...\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3 \\\n  --max-steps 10\n\n# Deploy the draft release (makes it live)\ncargo-ai ai release deploy-draft --agent-uuid <uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Added research actions\"\n```\n\n### Structured output & heartbeat — not yet exposed as CLI flags\n\nThe release API payload (both `draft/update` and `draft/deploy`) accepts two fields that **`release update-draft` / `release deploy-draft` do not surface as flags** (verified against the CLI source — there is no `--output` / `--output-schema` or `--heartbeat`):\n\n| Field | Shape | Purpose |\n|---|---|---|\n| `output` | `{\"type\":\"text\"}` **or** `{\"type\":\"jsonSchema\",\"jsonSchema\": <standard JSON Schema object>}` | Force the agent to return structured output matching a JSON Schema. |\n| `heartbeat` | `{\"intervalMinutes\": number, \"maxMessages\": number, \"prompt\": string \\| null}` | Periodically re-wake the chat (`intervalMinutes`) until it reaches `maxMessages`; `prompt` is the wake message (null = generic \"continue\"). |\n\nThe generic `--options` flag does **not** carry these — the API's `options` only holds `{connectorUuidsByIntegrationSlug, modelUuidsByIntegrationSlug}`. Until the flags ship, set these with a direct API call against the same endpoints the CLI uses:\n\n```bash\n# Structured (JSON Schema) output on the draft release\ncurl -sS -X PUT \"$CARGO_API_BASE/v1/ai/releases/draft/update\" \\\n  -H \"Authorization: Bearer $CARGO_TOKEN\" -H \"Content-Type: application/json\" \\\n  -d '{\"agentUuid\":\"<uuid>\",\"output\":{\"type\":\"jsonSchema\",\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"score\":{\"type\":\"number\"}},\"required\":[\"score\"]}}}'\n# Deploy carries the same fields — POST .../v1/ai/releases/draft/deploy\n```\n\nSend these payloads alongside the other fields you're updating (the endpoint replaces the draft config). **File a `workspaceManagement report`** (see [`../cargo-workspace-management/SKILL.md`](../cargo-workspace-management/SKILL.md)) to request first-class `--output` / `--heartbeat` flags — this is the documented feedback channel for CLI/UI parity gaps.\n\n**Agent configuration workflow:**\n\n1. **Browse templates for inspiration**: `cargo-ai ai template list` — find a template close to your use case, then `cargo-ai ai template get <slug>` to see its system prompt, model, and temperature\n2. Create the agent: `cargo-ai ai agent create --name \"...\" --icon-color blue --icon-face 🤖`\n3. Get the draft release: `cargo-ai ai release get-draft --agent-uuid <uuid>`\n4. Update the draft with configured actions, resources, prompt, model: `cargo-ai ai release update-draft --agent-uuid <uuid> ...`\n5. Deploy: `cargo-ai ai release deploy-draft --agent-uuid <uuid> ...`\n\n## Templates\n\nTemplates are pre-built agent configurations that capture proven patterns for common use cases. **Always check templates before designing an agent from scratch** — they give you a ready-made system prompt, recommended \n\nArchive v2.2.0: 8 files, 14296 bytes\n\nFiles: references/examples/agents.md (3288b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4746b), references/response-shapes.md (7401b), references/troubleshooting.md (3908b), skill-card.md (2535b), SKILL.md (13064b), _meta.json (127b)\n\nArchive v2.1.0: 8 files, 13142 bytes\n\nFiles: references/examples/agents.md (3288b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4746b), references/response-shapes.md (7401b), references/troubleshooting.md (3418b), skill-card.md (2214b), SKILL.md (11220b), _meta.json (127b)\n\nArchive v1.1.1: 9 files, 13718 bytes\n\nFiles: references/examples/agents.md (3288b), references/examples/files.md (1650b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4741b), references/response-shapes.md (7707b), references/troubleshooting.md (3752b), skill-card.md (2399b), SKILL.md (10606b), _meta.json (127b)\n\nArchive v1.1.0: 9 files, 13893 bytes\n\nFiles: references/examples/agents.md (3288b), references/examples/files.md (1650b), references/examples/mcp-servers.md (2099b), references/examples/templates.md (4741b), references/response-shapes.md (7707b), references/troubleshooting.md (3752b), skill-card.md (2627b), SKILL.md (10906b), _meta.json (127b)","readmeExcerpt":"Skill: cargo-ai Owner: cargo-ai Summary: Build and configure AI agents inside Cargo — create an agent, choose its model and temperature, write its prompt, attach knowledge for retrieval (RAG), connect MCP tool servers, manage memories, and deploy releases. Triggers: \"create an agent\", \"make an agent that\", \"give the agent our docs\", \"attach this knowledge base\", \"attach this library to the agent\", \"add resources to t","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"npm install -g @cargo-ai/cli            # no global install? prefix every command with `npx @cargo-ai/cli`\ncargo-ai login --email you@company.com  # emailed code, no browser; creates the account on first use\n                                        # alternatives: --oauth (browser) · --token <api-token> (CI)\ncargo-ai whoami                         # confirm the active workspace before any write"},{"language":"bash","snippet":"cargo-ai ai agent list                     # all agents (uuid, name, description)\ncargo-ai ai template list                  # all AI agent templates (slug, name)\ncargo-ai ai mcp-server list                # all MCP servers (uuid, name)\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>  # agent memories\n# Knowledge files & libraries live in the content domain — see cargo-content:\n#   cargo-ai content file list   /   cargo-ai content library list"},{"language":"bash","snippet":"cargo-ai ai agent list\ncargo-ai ai agent get <agent-uuid>\ncargo-ai ai agent create --name <name> --icon-color blue --icon-face 🤖\ncargo-ai ai agent update --uuid <agent-uuid> --name <name>\ncargo-ai ai agent remove <agent-uuid>\ncargo-ai ai release list --agent-uuid <uuid>\ncargo-ai ai release get <release-uuid>\ncargo-ai ai release get-draft --agent-uuid <uuid>\ncargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o\ncargo-ai ai release deploy-draft --agent-uuid <uuid>\ncargo-ai ai template list                  # full detail; there is no `template get`\ncargo-ai ai mcp-server list\ncargo-ai ai mcp-server create --name \"Internal Tools\"\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Updated Name\"\ncargo-ai ai mcp-server remove <mcp-server-uuid>\ncargo-ai ai mcp-client connect --name \"My MCP\" --url https://mcp.example.com/sse\ncargo-ai mcp                               # serve the platform MCP over stdio\ncargo-ai mcp --server <mcp-server-uuid>    # serve a curated workspace MCP server instead\ncargo-ai ai memory list --scope agent --agent-uuid <uuid>\ncargo-ai ai memory update --mem0-id <id> --scope agent --agent-uuid <uuid> --content \"Updated memory\"\ncargo-ai ai memory remove --mem0-id <id> --scope agent --agent-uuid <uuid>"},{"language":"bash","snippet":"cargo-ai ai template list          # browse patterns — full detail, not a summary\n# there is no `template get`: `list` already returns systemPrompt, temperature,\n# languageModelSlug, actions and resources, so select the one you want\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<slug>\")'"},{"language":"bash","snippet":"# List all agents\ncargo-ai ai agent list\n\n# Get a single agent (includes deployed release details)\ncargo-ai ai agent get <agent-uuid>\n\n# Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color blue --icon-face 🤖 \\\n  --description \"Researches leads and enriches data\"\n\n# Update an agent\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Updated description\"\n\n# Move to a folder (find folder UUIDs via cargo-workspace-management)\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n\n# Remove an agent\ncargo-ai ai agent remove <agent-uuid>"},{"language":"bash","snippet":"# List releases for an agent\ncargo-ai ai release list --agent-uuid <uuid>\n\n# Get a specific release\ncargo-ai ai release get <release-uuid>\n\n# Get the current draft release (editable)\ncargo-ai ai release get-draft --agent-uuid <uuid>\n\n# Update the draft release\ncargo-ai ai release update-draft --agent-uuid <uuid> \\\n  --system-prompt \"You are a lead research assistant...\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3 \\\n  --max-steps 10\n\n# Deploy the draft release (makes it live)\ncargo-ai ai release deploy-draft --agent-uuid <uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Added research actions\""}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: cargo-ai\ndescription: \"Build and configure AI agents inside Cargo — create an agent, choose its model and temperature, write its prompt, attach knowledge for retrieval (RAG), connect MCP tool servers, manage memories, and deploy releases. Triggers: \\\"create an agent\\\", \\\"make an agent that\\\", \\\"give the agent our docs\\\", \\\"attach this knowledge base\\\", \\\"attach this library to the agent\\\", \\\"add resources to the agent release\\\", \\\"connect an MCP server\\\", \\\"expose our tools as an MCP server\\\", \\\"use Cargo from Claude Desktop or ChatGPT\\\", \\\"change the agent model\\\", \\\"what does the agent remember\\\", \\\"deploy the agent\\\", \\\"the agent is answering wrong\\\". Skip when: uploading the knowledge files themselves — use cargo-content; sending the agent a message or running it over records — use cargo-orchestration.\"\nversion: \"2.4.0\"\ncompatibility: Requires @cargo-ai/cli (npm). Sign in or create an account with `cargo-ai login --email` (emailed code, no browser), `--oauth`, or an API token\nhomepage: https://github.com/getcargohq/cargo-skills\nmetadata:\n  author: getcargo\n  openclaw:\n    requires:\n      bins:\n        - cargo-ai\n    install:\n      - kind: node\n        package: \"@cargo-ai/cli@latest\"\n        bins:\n          - cargo-ai\n    homepage: https://github.com/getcargohq/cargo-skills\n---\n\n# Cargo CLI — AI\n\nAgent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.\n\n> For *using* agents (sending messages, multi-turn chat, polling), use `cargo-orchestration`.\n> For uploading knowledge **files** and building knowledge **libraries** (the `content` domain), use [`cargo-content`](../cargo-content/SKILL.md). This skill covers how that knowledge attaches to an agent.\n> For workspace administration — folders (used to organize agents and files), users, API tokens, roles, and submitting reports when the CLI fails — use [`cargo-workspace-management`](../cargo-workspace-management/SKILL.md).\n\n> See `references/response-shapes.md` for full JSON response structures.\n> See `references/troubleshooting.md` for common errors and how to fix them.\n> See `references/examples/agents.md` for agent CRUD and configuration examples.\n> See `references/examples/mcp-servers.md` for MCP server creation and management examples.\n\n## Bootstrap\n\nAlready signed in (`cargo-ai whoami` returns a workspace)? Skip to the next section.\n\n```bash\nnpm install -g @cargo-ai/cli            # no global install? prefix every command with `npx @cargo-ai/cli`\ncargo-ai login --email you@company.com  # emailed code, no browser; creates the account on first use\n                                        # alternatives: --oauth (browser) · --token <api-token> (CI)\ncargo-ai whoami                         # confirm the active workspace before any write\n```\n\nEvery command prints JSON to stdout; failures exit non-zero with `{\"errorMessage\": \"...\"}`. Anything that creates a run or a batch is "},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7by8t6yt9yghbxtxz6hv0bts87k6bq\",\n  \"slug\": \"cargo-ai\",\n  \"version\": \"2.4.0\",\n  \"publishedAt\": 1789543549483\n}"},{"path":"references/examples/agents.md","content":"# Agent examples\n\n## List all agents\n\n```bash\ncargo-ai ai agent list\n```\n\n## Find an agent by name\n\n```bash\ncargo-ai ai agent list\n# → Scan the \"name\" fields in the response to find the target agent UUID\n```\n\n## Create an agent\n\n```bash\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --description \"Researches and qualifies leads using web data\"\n```\n\n## Create an agent in a folder\n\nFolders are managed by the [`cargo-workspace-management`](../../../cargo-workspace-management/SKILL.md) skill — see its `references/examples/folders.md` for create/list/update.\n\n```bash\ncargo-ai workspaceManagement folder list\n# → Find the folder UUID (kind: \"agent\")\n\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍 \\\n  --folder-uuid <folder-uuid>\n```\n\n## Configure and deploy an agent (full workflow)\n\n```bash\n# 1. Create the agent\ncargo-ai ai agent create \\\n  --name \"Company Scorer\" \\\n  --icon-color green --icon-face 📊\n# → agent.uuid\n\n# 2. Get the draft release\ncargo-ai ai release get-draft --agent-uuid <agent-uuid>\n# → release.uuid\n\n# 3. Configure the draft: set model, temperature, prompt\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o-mini \\\n  --temperature 0.0 \\\n  --max-steps 5 \\\n  --system-prompt \"You are a company scoring assistant. Given a company record, score it from 1-10 based on fit criteria.\"\n\n# 4. Deploy the draft\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug openai \\\n  --language-model-slug gpt-4o-mini \\\n  --actions '[]' \\\n  --mcp-clients '[]' \\\n  --resources '[]' \\\n  --capabilities '[]' \\\n  --suggested-actions '[]' \\\n  --description \"Initial deployment with scoring prompt\"\n```\n\n## Update an agent's name and description\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> \\\n  --name \"Senior Lead Researcher\" \\\n  --description \"Advanced lead research with enrichment capabilities\"\n```\n\n## Move an agent to a different folder\n\n```bash\ncargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>\n```\n\n## Remove an agent\n\n```bash\ncargo-ai ai agent remove <agent-uuid>\n```\n\n## Create an agent from a template\n\n```bash\n# 1. Browse templates — the response is complete, not a summary\ncargo-ai ai template list\n\n# 2. Pick one out of that same response (there is no `template get`)\ncargo-ai ai template list | jq '.templates[] | select(.slug == \"<template-slug>\")'\n# → Copy the systemPrompt, actions, resources, model settings\n\n# 3. Create the agent\ncargo-ai ai agent create \\\n  --name \"My Custom Agent\" \\\n  --icon-color blue --icon-face 🤖\n\n# 4. Apply template settings to the draft\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"<from template>\" \\\n  --language-model-slug <from template> \\\n  --temperature <from template>\n\n# 5. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --integration-slug <from template> \\\n  --language-model-slug <from tem"},{"path":"references/examples/mcp-servers.md","content":"# MCP server examples\n\n## List all MCP servers\n\n```bash\ncargo-ai ai mcp-server list\n```\n\n## Create an MCP server\n\n```bash\ncargo-ai ai mcp-server create --name \"Internal Tools\"\n```\n\n## Connect an MCP server to an agent\n\nMCP servers are connected to agents as MCP clients on the release:\n\n```bash\n# 1. Create or find the MCP server\ncargo-ai ai mcp-server list\n# → mcp-server-uuid\n\n# 2. Add as an MCP client on the agent's draft release\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n**MCP client kinds:**\n\n- `custom` — URL-based MCP server. Requires `name`, `url`, and optionally `authentication`.\n- `connector` — Integration-backed MCP client. Requires `name`, `connectorUuid`, `integrationSlug`.\n\n## Connect a connector-backed MCP client\n\n```bash\n# 1. Find the connector\ncargo-ai connection connector list\n# → connector-uuid, integrationSlug\n\n# 2. Add as an MCP client\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"connector\",\"name\":\"HubSpot Tools\",\"connectorUuid\":\"<connector-uuid>\",\"integrationSlug\":\"hubspot\",\"disabledToolSlugs\":[]}]'\n\n# 3. Deploy\ncargo-ai ai release deploy-draft --agent-uuid <agent-uuid> \\\n  --language-model-slug gpt-4o \\\n  --integration-slug openai\n```\n\n## Disable specific actions from an MCP server\n\nUse `disabledToolSlugs` to prevent the agent from using specific MCP actions:\n\n```bash\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --mcp-clients '[{\"kind\":\"custom\",\"name\":\"Internal Tools\",\"url\":\"https://mcp.example.com\",\"authentication\":null,\"disabledToolSlugs\":[\"dangerous_tool\",\"admin_tool\"]}]'\n```\n\n## Update an MCP server name\n\n```bash\ncargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name \"Production Tools\"\n```\n\n## Remove an MCP server\n\n```bash\ncargo-ai ai mcp-server remove <mcp-server-uuid>\n```"},{"path":"references/examples/templates.md","content":"# AI template examples\n\n## What is an AI template?\n\nAn **AI template** is a pre-built agent configuration — a ready-to-use agent blueprint with instructions, model settings, and action configuration already defined. Templates capture common agent patterns (lead research, company classification, email drafting) so you don't have to configure an agent from scratch.\n\n**Always check templates before creating an agent.** Even if no template is a perfect match, they provide:\n- A proven system prompt structure for the use case\n- A recommended language model and temperature setting\n- A list of actions and resources to consider attaching\n\nAI templates are read-only. You discover them by listing, then use their configuration as a starting point when creating or updating an agent.\n\n## List all AI templates\n\n```bash\ncargo-ai ai template list\n```\n\nResponse:\n\n```json\n{\n  \"templates\": [\n    {\n      \"slug\": \"lead-researcher\",\n      \"name\": \"Lead Researcher\",\n      \"description\": \"Researches a prospect's company, role, and contact details\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.3\n    },\n    {\n      \"slug\": \"company-classifier\",\n      \"name\": \"Company Classifier\",\n      \"description\": \"Classifies a company by industry, size, and ICP fit\",\n      \"languageModelSlug\": \"gpt-4.1-mini\",\n      \"temperature\": 0.1\n    },\n    {\n      \"slug\": \"email-drafter\",\n      \"name\": \"Email Drafter\",\n      \"description\": \"Drafts personalised outbound emails based on enrichment data\",\n      \"languageModelSlug\": \"gpt-4o\",\n      \"temperature\": 0.7\n    }\n  ]\n}\n```\n\nKey fields:\n\n- **`slug`** — identifier for reference\n- **`name`** — human-readable name\n- **`description`** — what the agent does\n- **`languageModelSlug`** — recommended model for this use case\n- **`temperature`** — recommended temperature setting\n\n## Use a template to create an agent\n\nThe standard pattern:\n\n1. List templates to find the right one\n2. Create a new agent using the template's recommended settings\n3. Attach any files or MCP servers the agent needs\n4. Start chatting or embed the agent in a workflow\n\n```bash\n# 1. Find the right template\ncargo-ai ai template list\n# → Find \"lead-researcher\"\n\n# 2. Create an agent\ncargo-ai ai agent create \\\n  --name \"Lead Researcher\" \\\n  --icon-color purple --icon-face 🔍\n# → Extract agent.uuid\n\n# 3. Configure the draft release with template settings\ncargo-ai ai release update-draft --agent-uuid <agent-uuid> \\\n  --system-prompt \"You are a research assistant. Given a company domain and a contact name, find their role, LinkedIn profile, and email address. Be concise and structured.\" \\\n  --language-model-slug gpt-4o \\\n  --temperature 0.3\n\n# 4. Attach a knowledge file (optional)\ncargo-ai content file upload --file ./icp-criteria.pdf\n# → Extract file.uuid — attach to agent via release update-draft --resources\n\n# 5. Test with a message\ncargo-ai ai chat create \\\n  --trigger '{\"type\":\"draft\"}' \\\n  --agent-uuid <agent-uuid> \\\n  --name \"Test session\"\n# → Extract chat.uuid\n\ncar"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1746,"uniquenessScore":35,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T12:42:16.173Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T12:42:16.173Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T14:46:14.691Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}