Install, list, and remove
This page covers installing catalog packages into a project Safehouse (or Station-wide where supported), listing what is installed, and removing packages. Removal is always for the entire catalog package, not individual parts.
Preconditions
Section titled “Preconditions”- Station initialised (
atp station init). - Project has
.atp_safehousefromatp safehouse init. - Agent selected (
atp agent <name>). - Package appears in
atp catalog list.
Install
Section titled “Install”atp install <package-name>Common flags
Section titled “Common flags”| Flag | Role |
|---|---|
--project | Prompt-like material goes into the project agent tree (typical default). |
--station | Prompt-like material goes toward the user or Station agent area per agent-paths. |
--user-bin | Bundle executables use the user binary layout (common default). |
--project-bin | Executables go under the Safehouse project bin layout. |
--dependencies | Install declared dependencies in the same run; otherwise missing deps fail fast. |
--force-config | On MCP or hooks JSON conflict, replace the conflicting entry with the package version. |
--skip-config | Skip MCP and hooks merges for this run; still copies tree assets where allowed. Mutually exclusive with --force-config. |
--verbose | Merge ambiguity errors may print an extra JSON line on stderr (same detail when DEBUG contains atp). |
If validation of the catalog extract fails, install stops before mutating the project.
List installed packages
Section titled “List installed packages”Project scope:
atp safehouse listatp safehouse list --extendedStation scope:
atp station listCatalog contents (names from atp-catalog.yaml, not necessarily installed anywhere):
atp catalog listatp catalog list --verboseRemove a user catalog entry
Section titled “Remove a user catalog entry”atp catalog remove <package-name>Removes user catalog rows and the matching user_packages/<name>/ tree. Standard entries are not removed this way—edit atp-catalog.yaml or your standard source.
Remove from a project Safehouse
Section titled “Remove from a project Safehouse”atp remove safehouse <package-name>Tears down everything ATP recorded for that package in this project’s manifest. It does not remove the package from the Station catalog.
Remove from the Station
Section titled “Remove from the Station”atp remove station <package-name>Optional --exfiltrate copies package material into registered Safehouses before removal from the Station—useful for migration-style workflows.
MCP and hooks merges
Section titled “MCP and hooks merges”Packages with Mcp or Hook parts merge into agent-specific configuration files (examples: Cursor .cursor/mcp.json and .cursor/hooks.json, Gemini .gemini/settings.json, Codex .codex/config.toml and .codex/hooks.json). If a server name or hook identity already exists with different content, install fails until you choose --force-config or --skip-config. Errors should name the file and the flags.
Practical tips
Section titled “Practical tips”- Run
atp validate catalog-packageon a Station package directory if install fails and you want the installer’s gate. - After changing agents, reinstall or handover per the Safehouse manual so paths match the new agent.
- Keep
STATION_PATHconsistent on every command when not using the default~/.atp_station.