CLI Reference
Every harbor command.
CLI Reference
harbor — tool control plane for AI agents
usage: harbor <command> [args...]
setup:
setup connect this agent to an operator
setup status check approval status / retrieve token
whoami show agent identity and connection info
agents list detected agents on this machine
agents scaffold create profiles for all detected agents
discovery:
status show available plugins and lease status
plugins list all plugins
plugins tools <slug> show tools and parameters for a plugin
skills list agent skills
skills get <name> print a skill to stdout
skills get --all print all skills
execution:
p.<slug> <args...> run a plugin
harbor p.modal volume list
harbor p.exa search --query "test"
harbor p.gh issue list
communication:
request <plugin> request access to a plugin
msg "text" send a message to your operator
messages show message history
runs:
runs get <id> show run details and events
system:
doctor run diagnostic checks
doctor --reset kill daemon, wipe ~/.harbor, clean agent configs, upgrade
update update harbor to the latest version
options:
--json machine-readable JSON output
--help show this helpGlobal flags
--profile <name> — target a specific profile. Harbor auto-detects the calling agent runtime (Claude Code → claude-code, Codex → codex, etc.) and uses that as the default. Global flags must come before the command name.
harbor --profile codex status
harbor --json whoami--json — machine-readable JSON output. Supported by status, whoami, plugins, agents, skills, and doctor.
setup
harbor setup
Creates an agent identity and a claim for your operator to approve. Stores profile at ~/.harbor/profiles/<name>.json.
If already set up (daemon token present), prints status: ready immediately.
If a pending claim already exists, reminds you to share the URL instead of creating a new claim.
Also auto-scaffolds stub profiles for other agents detected on the machine.
harbor setup status
Polls the claim. When the operator has approved, retrieves and stores the daemon token. Returns status: ready on success.
Possible statuses: ready, pending, expired, approved_no_token.
Identity
harbor whoami
Shows profile name, daemon ID, paired operator email, and token expiry.
harbor agents
Lists AI agent runtimes detected on this machine. Detection covers: Claude Code, Codex, Cursor, pi, Amp, Gemini CLI, OpenClaw, Hermes, OpenCode, MastraCode, Mistral Vibe, GitHub Copilot.
harbor agents scaffold
Creates ~/.harbor/profiles/<family>.json for every detected agent that doesn't already have a profile.
Discovery
harbor status
The main status command. Shows profile info, paired operator, and all plugins grouped by status:
- ready — has an active lease, shows time remaining
- needs_lease / needs_setup — available, request access with
harbor request - missing_secrets — operator needs to add credentials in the dashboard
- mcp_disconnected — MCP connection lost
harbor plugins
Lists all plugins registered in the workspace. Shows slug, display name, and description.
harbor plugins tools <slug>
Shows the tools/operations for a specific plugin — method, path, parameters, types, defaults. Supports suffix matching (e.g. harbor plugins tools linear matches mcp.linear).
For CLI plugins, shows the binary name and whether it's installed locally.
Execution
harbor p.<slug> [args...]
Runs a plugin. The slug matches what harbor plugins lists.
harbor p.modal volume list
harbor p.exa search --query "latest AI news"
harbor p.gh issue listIf no args are passed, Harbor sends --help by default.
Communication
harbor request <plugin>
Requests access to a plugin. Sends a request message to the operator visible in the dashboard.
harbor request linear
harbor request modal --reason "need for batch jobs"
harbor request modal need for batch jobsThe reason can be passed with --reason or as trailing positional arguments.
harbor msg "text"
Sends a free-form message to the operator.
harbor messages
Shows the message history between this agent and the operator.
Runs
harbor runs get <id>
Shows details for a specific run. Prints the raw response from the Harbor API.
Skills
harbor skills
Lists embedded agent skills (name and description).
harbor skills get <name>
Prints a skill's content to stdout.
harbor skills get --all
Prints all skills, separated by ---.
System
harbor doctor
Runs five health checks:
- profile — config file exists and loads
- token — daemon token present and not expired
- orbital — API server reachable
- daemon — local daemon process running
- plugins — at least one plugin ready
harbor doctor --reset
Kills the daemon, wipes ~/.harbor, cleans agent config directories, and optionally upgrades. Pass --no-upgrade to skip the upgrade step.
harbor update
Updates the harbor CLI to the latest version.
Config
Profiles are stored at ~/.harbor/profiles/<name>.json.
The Harbor API defaults to https://api.tryharbor.ai. Override with HARBOR_ORBITAL_URL or ORBITAL_URL. Config directory defaults to ~/.harbor; override with HARBOR_DIR or HARBOR_CONFIG_DIR (for profiles directory only).
To suppress auto-update checks, set HARBOR_NO_AUTO_UPDATE=1.