Skip to content

Safehouse and agent configuration

A project that should receive ATP installs needs a Safehouse (.atp_safehouse) and a chosen agent id so ATP knows which directory layout (agent-paths in the Station) to write into.

ATP walks upward from the current working directory looking for markers such as .git or .vscode within a limited depth to decide the project base.

For an explicit root (CI or a layout without markers):

Terminal window
export SAFEHOUSE_PROJECT_PATH=/absolute/path/to/project

From inside the project (or with SAFEHOUSE_PROJECT_PATH):

Terminal window
atp safehouse init

This creates .atp_safehouse with an empty manifest.yaml and local config. On success, the Station may append this Safehouse path to atp-safehouse-list.yaml when the Station exists.

ATP refuses to create a Safehouse when the resolved project root is your user home directory—that pattern is usually accidental. To override (only if you intend it):

Terminal window
export ATP_ALLOW_HOME_SAFEHOUSE=1

Install requires a nominated agent. Only names that appear in Station agent-paths are accepted:

Terminal window
atp agent cursor

Use the lowercase id that matches your Station configuration (cursor, claude, gemini, codex, kiro, …).

To switch agents later:

Terminal window
atp agent handover to claude

Handover re-applies installs for the new agent where the CLI supports that workflow—verify project files after switching.

  1. atp station init (once per machine or per STATION_PATH).
  2. cd your git project.
  3. atp safehouse init.
  4. atp agent <name>.
  5. atp install <package> (see Install, list, and remove).

You cannot install before the Safehouse exists and an agent is set; the CLI should say so clearly.

manifest.yaml lists installed packages with enough metadata to remove them later and to record binary scope (user-bin vs project-bin). It is the source of truth for “what is installed here,” not a second catalog.


← Manual index · Site home