Skip to main content

AMP

Prerequisites

Initialize the repository

$ swamp repo init --tool amp

You will see output like:

20:46:55.279 INF repo·init Initialized swamp repository at "/path/to/your/repo" (tool: "amp")

What this sets up

Swamp adds its rules and skill list to AGENTS.md, installs bundled skills in ~/.agents/skills/ in your home directory, and writes a managed Amp plugin, .amp/plugins/swamp.ts. Your own project instructions coexist in AGENTS.md via managed sections — Swamp only touches its own delimited block.

Amp runs tools without asking by default. The plugin asks before any shell command containing read-secret runs (such as swamp vault read-secret), and refuses it when nobody can answer, for example under amp --execute. Every other tool call runs as normal.

Use alongside another agent

Enroll multiple tools by repeating --tool on swamp repo init. Each tool's scaffolding is written independently, so AGENTS.md and another tool's instructions file (such as CLAUDE.md) coexist in the same repository.

$ swamp repo init --tool amp --tool claude

To enroll an additional tool in an existing repository, run swamp repo upgrade with the full intended list — upgrade replaces the enrolled tools, so any tool you want to keep must appear in the command:

$ swamp repo upgrade --tool amp --tool claude

Verify it works

Run Amp in your repository and type:

I am new to swamp

The agent matches the getting-started skill and walks you through creating your first behavior.

Upgrading

When a new version of Swamp is released, upgrade the repository to get updated skills and instructions:

$ swamp repo upgrade

The managed section in AGENTS.md is replaced with the latest content. Anything you wrote outside the managed section is preserved. .amp/plugins/swamp.ts is overwritten with the latest version.

Amp no longer reads the amp.commands allowlist earlier versions of Swamp wrote to .amp/settings.json. Upgrade removes Swamp's swamp * entry from it, keeping your entries and other settings. It drops the amp.commands block when nothing but strict is left, and deletes .amp/settings.json only if nothing is left in it.