Skip to content
DocsHaarness CLI
On this page

Find the right command

Run haarness in a project folder to open the terminal UI there. Everything else is a subcommand; haarness <command> --help lists its flags. A misspelled command, such as haarness doctr, is reported with the closest one instead of being sent to the model.

This section covers the command line and the settings every Haarness app shares: configuration, agents, MCP servers, hooks, plugins, extensions, workflows and schedules.

Start working

To Run
Chat with the agent in this folder haarness
Pick up the last chat haarness --continue
Run one prompt from a script or CI haarness run "…"
Work on a branch in its own checkout haarness worktree create
Open the desktop app, installing it if needed haarness desktop
Connect the terminal UI to a server elsewhere haarness attach <url>
Run a server for the desktop app or another machine haarness serve
Use Haarness from an editor that speaks ACP haarness acp

Find past work

To Run
List, open, fork or archive chats haarness sessions …
Ask about a chat without changing it haarness btw <id> "…"
Export or import a chat haarness sessions export | import
See tokens and cost haarness stats, haarness insights

Connect models

To Run
Sign in to a provider or store an API key haarness auth login <provider>
See which providers are connected haarness providers
List the models you can use haarness models
Add an OpenAI-compatible or other endpoint haarness provider add
Use your own Haarness Router haarness provider connect-router

Extend the agent

To Run
Save a reusable prompt, agent or skill haarness command, agent, skill
Change a built-in prompt, such as the system prompt haarness prompt list | show | eject | diff
Add tools from an MCP server haarness mcp add
Keep an MCP server's secret in the system keychain haarness mcp secret set <name>
Run your own script when something happens in a chat Hooks, in your configuration
Install a plugin haarness plugin install
Write your own tool in TypeScript haarness extension init
Install from the Haarness marketplace haarness marketplace

Use your Chrome

To Run
Let agents work in your own Chrome haarness browser setup
See whether Chrome is set up and connected haarness browser status
Undo the Chrome setup haarness browser remove

Automate

To Run
Run a multi-step workflow haarness workflow run
Run a prompt on a timetable haarness schedule add

Use Haarness Cloud

To Run
Sign in to your Haarness account haarness login
Sign out of it haarness logout
Show or switch the account, plan and credits haarness account
Start and manage Cloud workspaces haarness cloud …
Reach this computer from Haarness Cloud haarness remote …

Look after your installation

To Run
Save or restore your settings as a profile haarness profile …
Check the version and bundled tools haarness doctor
Find or read the logs haarness logs
Log more detail for a while haarness logs level debug
Pack the logs for a bug report haarness logs export
Update Haarness haarness --update (or haarness upgrade --channel preview for previews)
See or stop the usage statistics Haarness shares haarness telemetry status | preview | off

Flags most commands share

Flag Does
--workspace <path> Act on another folder instead of the current one
-c, --continue Continue the most recent chat (terminal UI, run, attach, worktree open)
-s, --thread <id> Open a specific chat (--session also works)
--approvals <mode> Put the chat in review, auto or yolo (every request approved once without asking). The chat keeps the mode, in every app, until someone changes it. See Review, Auto or Yolo
--auto Short for --approvals auto: a reviewer model approves routine requests once and leaves the rest to you
--yolo Approve every permission prompt, for this command only: a run, or the terminal UI it opens. With serve, for every chat; read what it approves. --dangerously-skip-permissions also works
--disable-project-config Ignore the project's settings and add-ons, keep yours
--log-level <level> trace, debug, info, warn or error
--print-logs Also print logs to the terminal

--auto and --yolo cannot be used together. haarness <command> --help lists the flags that command uses.

What keeps running in the background

The terminal UI, haarness run and the other commands that work with chats start a Haarness server for the folder, or reuse the one already running. The server keeps running after you close the terminal, so a turn in progress can finish. Each folder has its own server and its own chats.

haarness serve --daemon    # start it without opening anything
haarness serve --stop      # stop it, ending any turn still running

Next

Run a prompt from a script or CI.