# Agent setup

Install the Volcano agent skills and plugins into the coding agents on your machine, and keep them up to date.

## What it is

`volcano setup` installs the Volcano skills/plugins into the coding agents
("harnesses") on your machine so they know how to build on Volcano. It detects
what is installed, sets each one up, and reports what changed.

## Harnesses

| Harness | How Volcano is installed |
|---|---|
| `claude-code`, `codex` | via the agent's own plugin marketplace (`Kong/volcano-agentic-plugins`) |
| `cursor`, `opencode`, `pi` | Volcano skills written into the agent's skills directory |
| `manual` (fallback) | skills + `AGENTS.md` under `~/.volcano` when no harness is detected |

## Usage

```bash
volcano setup                        # detect and set up all detected harnesses
volcano setup --agent claude-code    # only the named agent(s)
volcano setup --manual               # force the ~/.volcano manual install
volcano setup --dry-run              # show what would change, write nothing
volcano setup --yes                  # skip the prompt (use in agents/CI)
```

On a real terminal, `setup` shows a picker of detected harnesses (an installed
harness that is behind its latest version is marked `[outdated]`). If it finds
no coding agents, it shows a message with supported examples instead of a picker,
then installs the manual fallback under `~/.volcano`. It runs
non-interactively — installing all detected — when stdin/stdout is piped, in CI,
when `VOLCANO_NONINTERACTIVE` is set, or with `--yes`.

The picker wraps its heading and key hints in narrow terminals, including split tmux panes. Use the arrow keys to move, Space to toggle an agent, and Enter to confirm.

## Reruns keep things current

`volcano setup` is meant to be re-run. Each run refreshes the source and lands
on the latest version, and the report says what happened per harness:

- `[installed]` — set up for the first time.
- `[updated]` — a newer version replaced an older one; marketplace plugins show
  the version delta (e.g. `0.2.14 → 0.2.16`) and skills show how many files
  changed.
- `[current]` — already up to date, so nothing was written.

For the marketplace harnesses (`claude-code`, `codex`) the plugin loads only
after you **restart the agent**, so an install/update row ends with
`(restart your agent to apply)`.

## Agent detection

The CLI reports which agent ran each command to the Volcano API, whether or not
you have run `volcano setup`. See [agent-detection.md](https://docs.volcano.dev/cli/agent-detection.md) for
what is detected and sent, and [telemetry.md](https://docs.volcano.dev/cli/telemetry.md) to turn it off.
