getcargohq/cargo-skills/cargo-ai/SKILL.md
cargo-ai
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 ChatGP
- Source repository stars
- 15
- Declared platforms
- 1
- Static risk flags
- 3
- Last source update
- 2026-08-24
- Source checked
- 2026-08-25
Decision brief
What it does: where it fits
Agent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.
Not for
- Tasks that require unconfirmed production actions or broad system permissions.
- Environments where the pinned source and install steps cannot be inspected.
Compatibility matrix
Platform support, with evidence labels
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Declared | Source record | Install path and trigger |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
Inspect first. Install second.
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/getcargohq/cargo-skills --skill "cargo-ai"Inspect the Agent Skill "cargo-ai" from https://github.com/getcargohq/cargo-skills/blob/da11a0957aec4343130fb41fc3192c12bc67af60/cargo-ai/SKILL.md at commit da11a0957aec4343130fb41fc3192c12bc67af60. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
What the source asks the agent to do
- 01
Bootstrap
Already signed in (cargo-ai whoami returns a workspace)? Skip to the next section.
Already signed in (cargo-ai whoami returns a workspace)? Skip to the next section.Every 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… - 02
Discover resources first
bash cargo-ai ai agent list all agents (uuid, name, description) cargo-ai ai template list all AI agent templates (slug, name) cargo-ai ai mcp-server list all MCP servers (uuid, name) cargo-ai ai memory list --scope agent --agent-uuid agent memories
bash cargo-ai ai agent list all agents (uuid, name, description) cargo-ai ai template list all AI agent templates (slug, name) cargo-ai ai mcp-server list all MCP servers (uuid, name) cargo-ai ai memory list --scope age… - 03
Knowledge files & libraries live in the content domain — see cargo-content:
Review the “Knowledge files & libraries live in the content domain — see cargo-content:” section in the pinned source before continuing.
Review and apply the “Knowledge files & libraries live in the content domain — see cargo-content:” source section. - 04
cargo-ai content file list / cargo-ai content library list
bash cargo-ai ai agent list cargo-ai ai agent get cargo-ai ai agent create --name --icon-color blue --icon-face 🤖 cargo-ai ai agent update --uuid --name cargo-ai ai agent remove cargo-ai ai release list --agent-uuid cargo-ai ai release get cargo-ai ai release get-draft --agent-…
bash cargo-ai ai agent list cargo-ai ai agent get cargo-ai ai agent create --name --icon-color blue --icon-face 🤖 cargo-ai ai agent update --uuid --name cargo-ai ai agent remove cargo-ai ai release list --agent-uuid ca… - 05
Quick reference
Review the “Quick reference” section in the pinned source before continuing.
Review and apply the “Quick reference” source section.
Permission review
Static risk signals and limitations
Runs scripts
The documentation asks the agent to run terminal commands or scripts.
npm install -g @cargo-ai/cli # no global install? prefix every command with `npx @cargo-ai/cli`Runs scripts
The documentation asks the agent to run terminal commands or scripts.
cargo-ai login --email [email protected] # emailed code, no browser; creates the account on first useNetwork access
The documentation includes network, browsing, or remote request actions.
cargo-ai ai mcp-client connect --name "My MCP" --url https://mcp.example.com/sseWrites files
The documentation asks the agent to create, modify, or delete local files.
cargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>Writes files
The documentation asks the agent to create, modify, or delete local files.
*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-Network access
The documentation includes network, browsing, or remote request actions.
curl -sS -X PUT "$CARGO_API_BASE/v1/ai/releases/draft/update" \Evidence record
Why each signal appears
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 95/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 15 | Source | Repository attention, not individual Skill quality |
| Compatibility | 1 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Provenance and original SKILL.md
- Repository
- getcargohq/cargo-skills
- Skill path
- cargo-ai/SKILL.md
- Commit
- da11a0957aec4343130fb41fc3192c12bc67af60
- License
- MIT
- Collected
- 2026-08-25
- Default branch
- main
View the original SKILL.md
Cargo CLI — AI
Agent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.
For using agents (sending messages, multi-turn chat, polling), use
cargo-orchestration. For uploading knowledge files and building knowledge libraries (thecontentdomain), usecargo-content. This skill covers how that knowledge attaches to an agent. For workspace administration — folders (used to organize agents and files), users, API tokens, roles, and submitting reports when the CLI fails — usecargo-workspace-management.
See
references/response-shapes.mdfor full JSON response structures. Seereferences/troubleshooting.mdfor common errors and how to fix them. Seereferences/examples/agents.mdfor agent CRUD and configuration examples. Seereferences/examples/mcp-servers.mdfor MCP server creation and management examples.
Bootstrap
Already signed in (cargo-ai whoami returns a workspace)? Skip to the next section.
npm install -g @cargo-ai/cli # no global install? prefix every command with `npx @cargo-ai/cli`
cargo-ai login --email [email protected] # emailed code, no browser; creates the account on first use
# alternatives: --oauth (browser) · --token <api-token> (CI)
cargo-ai whoami # confirm the active workspace before any write
Every 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 adds the CLI version pin, token scopes, and the admin-only surface.
Discover resources first
cargo-ai ai agent list # all agents (uuid, name, description)
cargo-ai ai template list # all AI agent templates (slug, name)
cargo-ai ai mcp-server list # all MCP servers (uuid, name)
cargo-ai ai memory list --scope agent --agent-uuid <uuid> # agent memories
# Knowledge files & libraries live in the content domain — see cargo-content:
# cargo-ai content file list / cargo-ai content library list
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.
Quick reference
cargo-ai ai agent list
cargo-ai ai agent get <agent-uuid>
cargo-ai ai agent create --name <name> --icon-color blue --icon-face 🤖
cargo-ai ai agent update --uuid <agent-uuid> --name <name>
cargo-ai ai agent remove <agent-uuid>
cargo-ai ai release list --agent-uuid <uuid>
cargo-ai ai release get <release-uuid>
cargo-ai ai release get-draft --agent-uuid <uuid>
cargo-ai ai release update-draft --agent-uuid <uuid> --language-model-slug gpt-4o
cargo-ai ai release deploy-draft --agent-uuid <uuid>
cargo-ai ai template list
cargo-ai ai template get <slug>
cargo-ai ai mcp-server list
cargo-ai ai mcp-server create --name "Internal Tools"
cargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name "Updated Name"
cargo-ai ai mcp-server remove <mcp-server-uuid>
cargo-ai ai mcp-client connect --name "My MCP" --url https://mcp.example.com/sse
cargo-ai mcp --server <mcp-server-uuid> # serve a workspace MCP server over stdio
cargo-ai ai memory list --scope agent --agent-uuid <uuid>
cargo-ai ai memory update --mem0-id <id> --scope agent --agent-uuid <uuid> --content "Updated memory"
cargo-ai ai memory remove --mem0-id <id> --scope agent --agent-uuid <uuid>
Agents
Agents are AI resources with configured instructions, a language model, actions, and optional resources.
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:
cargo-ai ai template list # browse available patterns
cargo-ai ai template get <slug> # inspect system prompt, model, and actions
# List all agents
cargo-ai ai agent list
# Get a single agent (includes deployed release details)
cargo-ai ai agent get <agent-uuid>
# Create an agent
cargo-ai ai agent create \
--name "Lead Researcher" \
--icon-color blue --icon-face 🤖 \
--description "Researches leads and enriches data"
# Update an agent
cargo-ai ai agent update --uuid <agent-uuid> \
--name "Senior Lead Researcher" \
--description "Updated description"
# Move to a folder (find folder UUIDs via cargo-workspace-management)
cargo-ai ai agent update --uuid <agent-uuid> --folder-uuid <folder-uuid>
# Remove an agent
cargo-ai ai agent remove <agent-uuid>
Agent icon: --icon-color must be one of: grey, green, purple, yellow, blue, red. --icon-face is an emoji string.
Folders: Folder creation, listing, and management lives in cargo-workspace-management (cargo-ai workspaceManagement folder list/create/...). Use that skill to discover or create the <folder-uuid> you pass to --folder-uuid here.
Releases
Releases are versioned snapshots of an agent's configuration (system prompt, actions, resources, model, temperature). Agents execute against their deployed release.
# List releases for an agent
cargo-ai ai release list --agent-uuid <uuid>
# Get a specific release
cargo-ai ai release get <release-uuid>
# Get the current draft release (editable)
cargo-ai ai release get-draft --agent-uuid <uuid>
# Update the draft release
cargo-ai ai release update-draft --agent-uuid <uuid> \
--system-prompt "You are a lead research assistant..." \
--language-model-slug gpt-4o \
--temperature 0.3 \
--max-steps 10
# Deploy the draft release (makes it live)
cargo-ai ai release deploy-draft --agent-uuid <uuid> \
--integration-slug openai \
--language-model-slug gpt-4o \
--actions '[]' \
--mcp-clients '[]' \
--resources '[]' \
--capabilities '[]' \
--suggested-actions '[]' \
--description "Added research actions"
Structured output & heartbeat — not yet exposed as CLI flags
The 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):
| Field | Shape | Purpose |
|---|---|---|
output | {"type":"text"} or {"type":"jsonSchema","jsonSchema": <standard JSON Schema object>} | Force the agent to return structured output matching a JSON Schema. |
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"). |
The 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:
# Structured (JSON Schema) output on the draft release
curl -sS -X PUT "$CARGO_API_BASE/v1/ai/releases/draft/update" \
-H "Authorization: Bearer $CARGO_TOKEN" -H "Content-Type: application/json" \
-d '{"agentUuid":"<uuid>","output":{"type":"jsonSchema","jsonSchema":{"type":"object","properties":{"score":{"type":"number"}},"required":["score"]}}}'
# Deploy carries the same fields — POST .../v1/ai/releases/draft/deploy
Send 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) to request first-class --output / --heartbeat flags — this is the documented feedback channel for CLI/UI parity gaps.
Agent configuration workflow:
- Browse templates for inspiration:
cargo-ai ai template list— find a template close to your use case, thencargo-ai ai template get <slug>to see its system prompt, model, and temperature - Create the agent:
cargo-ai ai agent create --name "..." --icon-color blue --icon-face 🤖 - Get the draft release:
cargo-ai ai release get-draft --agent-uuid <uuid> - Update the draft with configured actions, resources, prompt, model:
cargo-ai ai release update-draft --agent-uuid <uuid> ... - Deploy:
cargo-ai ai release deploy-draft --agent-uuid <uuid> ...
Templates
Templates 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.
# List available agent templates
cargo-ai ai template list
# Get a template by slug — inspect its system prompt, model, and settings
cargo-ai ai template get <slug>
Templates 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.
Model and temperature guidance
| Use case | Recommended model | Temperature |
|---|---|---|
| Classification, extraction, scoring | gpt-4o-mini or claude-3-5-haiku | 0.0 – 0.2 |
| Research, summarization, analysis | gpt-4o or claude-3-5-sonnet | 0.2 – 0.5 |
| Copywriting, personalization | gpt-4o or claude-3-5-sonnet | 0.5 – 0.8 |
| Brainstorming, creative ideation | gpt-4o or claude-opus | 0.7 – 1.0 |
Low 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.
Knowledge for RAG (files & libraries)
Knowledge that grounds agent responses (retrieval-augmented generation, RAG) comes from the content domain — see cargo-content:
- Files — uploaded binaries (PDFs, CSVs, text).
- Libraries — collections that group files, either
native(workspace-managed) orconnector-backed (synced from an external source via an unstructured-data extractor).
Files and libraries moved out of
aiinto the top-levelcontentdomain in CLI ≥ 1.0.19 (cargo-ai content file …/cargo-ai content library …). The oldai file …commands are gone. Everything content-related now lives incargo-content.
Attaching knowledge to an agent
A 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, then wire them in here with release update-draft --resources … followed by release deploy-draft. See ../cargo-content/references/examples/files.md for the full upload → attach → deploy sequence.
MCP — two directions, don't mix them up
MCP (Model Context Protocol) runs both ways in Cargo, and the two surfaces are unrelated:
Publish — ai mcp-server | Consume — ai mcp-client | |
|---|---|---|
| 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 |
| Who calls it | Any MCP client — Claude Code, Claude Desktop, Cursor, ChatGPT | Your Cargo agents, during a chat or a workflow run |
| Wired via | cargo-ai mcp (stdio bridge, below) | release update-draft --mcp-clients … |
There is no first-party "Cargo MCP server" to install. A workspace builds its own and decides what goes in it.
Publishing a workspace MCP server
cargo-ai ai mcp-server list
cargo-ai ai mcp-server create --name "CRM tools" \
--actions '[{"slug":"<tool-uuid>","kind":"tool","name":null,"description":null,"isBulkAllowed":false,"config":{}}]' \
--resources '[{"kind":"model","slug":"<slug>","name":"Accounts","description":null,"integrationSlug":"hubspot","modelUuid":null,"filter":null,"selectedColumnSlugs":null,"limit":null,"prompt":null,"isReadOnly":true}]'
cargo-ai ai mcp-server update --uuid <mcp-server-uuid> --name "Updated name"
cargo-ai ai mcp-server remove <mcp-server-uuid>
- Actions take
kind: "tool"orkind: "agent"— an agent can be exposed as a callable MCP tool, not just a tool.waitUntilFinishedcontrols whether the call blocks on the run. - Resources take
kind: "model"(a filtered, column-selected view of a model — keepisReadOnly: trueunless the client is meant to write) orkind: "file"(workspace files by UUID, see../cargo-content/SKILL.md). updatereplaces--actions/--resourceswholesale rather than merging — read the current server withmcp-server listand pass the full array back.
Serving it to a coding agent — cargo-ai mcp
The published server reaches any stdio MCP client through the CLI, using the credentials already on the machine. No token is copied into client config.
cargo-ai ai mcp-server list # find the server UUID
claude mcp add cargo -- cargo-ai mcp --server <uuid> # Claude Code / Claude Desktop
# Cursor, Windsurf, and other stdio clients: same command as the server entry
With no --server, the bridge uses CARGO_MCP_SERVER_UUID, or the workspace's only MCP server when there is exactly one. stdout carries the MCP protocol and all logs go to stderr, so never print anything to stdout around it.
When to reach for this instead of the skills: the skills give an agent the whole CLI; a published MCP server gives it a curated, safe subset with no shell. Use the bridge for the in-conversation lookups a workspace has already blessed, and the CLI for batches, workflows, schema changes, and anything with a cost gate. Full routing rule: ../cargo/SKILL.md → "These skills vs a workspace MCP server".
Consuming an external MCP server
cargo-ai ai mcp-client connect --name "My MCP" --url https://mcp.example.com/sse
cargo-ai ai mcp-client connect --name "My MCP" --url https://mcp.example.com/sse \
--disabled-tool-slugs "dangerous_tool,other_tool"
--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.
Memories
Memories are pieces of information an agent stores from conversations for future reference. They can be scoped to a workspace, user, or specific agent.
# List agent memories
cargo-ai ai memory list --scope agent --agent-uuid <uuid>
# List workspace-wide memories
cargo-ai ai memory list --scope workspace
# List user-scoped memories
cargo-ai ai memory list --scope user
# Update a memory
cargo-ai ai memory update \
--mem0-id <id> \
--scope agent --agent-uuid <uuid> \
--content "Updated memory content"
# Remove a memory
cargo-ai ai memory remove \
--mem0-id <id> \
--scope agent --agent-uuid <uuid>
Help
Every command supports --help:
cargo-ai ai agent create --help
cargo-ai ai release update-draft --help
cargo-ai ai mcp-server create --help
cargo-ai ai memory list --help
Frequently asked questions
What to verify before installation and use
What does the cargo-ai source document cover?
Agent resource management: creating and configuring agents, attaching knowledge for retrieval-augmented generation (RAG), connecting MCP servers, and managing agent memories.
How do I install cargo-ai?
The source record exposes this install command: npx skills add https://github.com/getcargohq/cargo-skills --skill "cargo-ai". Inspect the command and pinned source before running it.
Which Agent platforms does the source record declare?
The pinned source record declares support for: cursor.
Which permission-related actions were detected?
Static rules flagged exec-script, network, write-files in the source; the page lists the matching lines and excerpts.
Alternatives
Compare before choosing
vasilyu1983/AI-Agents-public
research-git
Scans public GitHub repos for agent skills, dev practices, and code patterns. Use when enriching skills, setting team policy, or researching a build domain.
open-edge-platform/edge-ai-libraries
chatqna-helm-deploy
Deploy Chat Question-and-Answer Core to Kubernetes using Helm (OpenVINO CPU, OpenVINO GPU, or Ollama), including values.yaml configuration, helm install/upgrade, deployment verification, uninstall, and translation from Docker Compose setup_env.sh variables into Helm override values. Use this skill when the user says "deploy chatqna core to kubernetes", "helm install chatqna-core", "configure values.yaml", "convert compose config to helm", or "translate setup_env.sh to chart values".
almanak-co/sdk
almanak-strategy-builder
Build, test, and deploy DeFi trading strategies using the Almanak SDK. ALWAYS use this skill when the user mentions almanak, DeFi strategy, trading strategy, yield farming, liquidity provision, token swap, borrowing, lending, perpetuals, staking, vault deposit, bridging tokens, backtesting, paper trading, or on-chain execution. Use for writing strategy.py files, composing intents (Swap, LP, Borrow, Supply, Perp, Bridge, Stake, Vault, Prediction), working with config.json strategy parameters, run
nexus-substrate/nexus-agents
release
Execute a release following project standards. Use when publishing a new version, creating release tags, or deploying. Triggers on "release", "publish", "version bump", "create release".