> For the complete documentation index, see [llms.txt](https://docs.carto.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.carto.com/carto-for-agents/agent-skills/installation.md).

# Installation

CARTO Agent Skills are distributed from the public repo at [`CartoDB/agent-skills`](https://github.com/CartoDB/agent-skills). The catalog ships ready-made install manifests for the coding agents below; any other agent that supports a compatible plugin or rules mechanism can consume the same catalog. They all read the same upstream source.

## Prerequisites

Before installing the skills, you need:

* A [**CARTO account**](https://carto.com/signup) with workspace access.
* A coding agent that can load the skills (see the per-agent instructions below).

Many skills route through the [CARTO MCP Server](/carto-for-agents/mcp-server.md), which needs no local install — [connect it](/carto-for-agents/connect-your-platform.md) so its tools are available to your agent, including creating and editing maps and Workflows. Skills that script, run headless, do bulk and cross-organization work, or handle deeper administration and auditing (such as querying usage logs) use the [**CARTO CLI**](/carto-for-agents/cli.md). Install and authenticate it when you need those:

```bash
npm install -g @carto/carto-cli
carto auth login
carto auth status      # confirm: ✓ Authenticated
```

The `carto-basics` skill walks first-time users through CLI install, login, and profile setup.

## Claude Code

Install via the Claude Code plugin marketplace:

```
/plugin marketplace add CartoDB/agent-skills
/plugin install carto-skills@carto-agent-skills
```

All skills ship together as a single bundle (`carto-skills`). Once installed, Claude Code routes to individual skills automatically based on the user's request — there's nothing additional to invoke.

## Skills CLI

```bash
npx skills add CartoDB/agent-skills
```

The Skills CLI reads `skills/catalog.json` from the repo and registers each skill independently. Useful when you want to install a subset.

## Codex

The Codex plugin manifest is at [`.codex-plugin/plugin.json`](https://github.com/CartoDB/agent-skills/blob/master/.codex-plugin/plugin.json) in the repo. Install it with your Codex client's extension command (refer to your Codex version's docs for the exact verb).

## Gemini CLI

The Gemini extension manifest is at [`gemini-extension.json`](https://github.com/CartoDB/agent-skills/blob/master/gemini-extension.json), with one command per skill under [`commands/carto/`](https://github.com/CartoDB/agent-skills/tree/master/commands/carto). After install, invoke a skill via `/carto:<skill-name>` — for example `/carto:carto-basics`.

## Claude.ai, Claude Desktop, and Gemini Enterprise

These hosts don't install skills from a repo. Each takes a skill through an upload form, one skill at a time, as a **ZIP file with `SKILL.md` at the archive root**. You don't need to clone or zip anything: every skill is published as a ready-made ZIP that always reflects the current version:

```
https://github.com/CartoDB/agent-skills/releases/latest/download/<skill-name>.zip
```

The **Download** column of the [Skills catalog](/carto-for-agents/agent-skills/skills-catalog.md) has the link for each skill.

**Claude.ai / Claude Desktop.** Go to **Settings > Capabilities > Skills**, click **Upload skill**, and choose the ZIP. Repeat for each skill. Organization admins can upload the same ZIPs from the Admin Console to share them with everyone in the organization.

**Gemini Enterprise.** Open **Skills**, click **Upload skill**, and drop the ZIP. Gemini reads the skill name and description from `SKILL.md` and turns the skill on.

{% hint style="info" %}
Skills are layered: a use-case skill relies on `carto-create-workflow`, which relies on the utility skills. Upload forms don't follow those references, so upload the dependencies too, starting with the four utility skills. See [Dependencies and routing](/carto-for-agents/agent-skills/skills-catalog.md#dependencies-and-routing).
{% endhint %}

## Other agents

These four have ready-made manifests, but the catalog isn't limited to them. Any coding agent that can load a skill, plugin, or rules file from a repo can use the same skills — point it at [`CartoDB/agent-skills`](https://github.com/CartoDB/agent-skills) and its `skills/catalog.json`.

## Upgrading

Skills ship continuously from upstream `master`. Re-install or refresh through your harness to pull the latest catalog. Skills uploaded to Claude.ai, Claude Desktop, or Gemini Enterprise don't update themselves: download the ZIP again from the [Skills catalog](/carto-for-agents/agent-skills/skills-catalog.md) and upload it; the host asks whether to replace the existing skill of the same name. The catalog version is tracked in [`skills/catalog.json`](https://github.com/CartoDB/agent-skills/blob/master/skills/catalog.json) at the repo root.

## Verify the install

Once installed, ask your agent something CARTO-specific that maps to a skill — for example:

> "List my CARTO maps."
>
> "Connect to my BigQuery warehouse called `analytics` and show me the available tables."
>
> "Run a hotspot analysis on the `crashes_2024` table."

If the skills are installed correctly, the agent will route to the appropriate skill (`carto-basics`, `carto-explore-datawarehouse`, `carto-hotspot-analysis`, …), follow the skill's playbook, and drive CARTO on your behalf through the MCP Server or the CLI, whichever fits the request.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.carto.com/carto-for-agents/agent-skills/installation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
