Command line
HarborClient ships as a single product binary. With no arguments it opens the desktop app; with an HTTP method, run, or workflow it acts as a command-line client that shares the same HTTP stack and local data as the GUI. Download and install HarborClient for your platform, then invoke harborclient from a terminal.
harborclient --help
harborclient -VAd-hoc requests
Send a one-off HTTP request without opening the GUI:
harborclient <METHOD> <url> [options]Supported methods: GET, POST, PUT, PATCH, DELETE, HEAD, and OPTIONS (case-insensitive).
harborclient GET https://echo.harborclient.com
harborclient POST https://echo.harborclient.com --json '{"ok":true}'
harborclient GET https://echo.harborclient.com -H 'X-Token: secret' -vThe response body is written to stdout. With -v / --verbose, status and response headers go to stderr so you can pipe the body separately.
Ad-hoc options
| Option | Description |
|---|---|
-H, --header <Name: value> | Add a request header. Repeat for multiple headers. The value is split on the first :. |
-d, --data <body> | Set the request body as a raw string. |
--json <body> | Set a JSON body. Adds Content-Type: application/json when that header is not already set. |
--timeout <ms> | Request timeout in milliseconds. |
--no-verify-ssl | Disable TLS certificate verification. |
-v, --verbose | Print HTTP status and response headers to stderr; body still goes to stdout. |
-h, --help | Show help. Prefer harborclient --help on the product binary. |
Run a collection
Run every request in a saved collection by name or uuid. The CLI reads collections from the same Electron userData directory as the desktop app (for example ~/.config/HarborClient on Linux, ~/Library/Application Support/HarborClient on macOS, and %APPDATA%\HarborClient on Windows).
harborclient run <name-or-uuid> [options]harborclient run "My Collection"
harborclient run <collection-uuid> --stop-on-failure
harborclient run "My Collection" --user-data /path/to/HarborClient| Option | Description |
|---|---|
--user-data <path> | Override the Electron userData directory used to find saved collections. |
--stop-on-failure | Stop after the first failed request or test. |
Run a workflow
Run a saved workflow by name or uuid. Workflows are loaded from the same Electron userData directory as collections (for example ~/.config/HarborClient on Linux, ~/Library/Application Support/HarborClient on macOS, and %APPDATA%\HarborClient on Windows). Create and edit workflows in the GUI first — see Workflows.
Playback is headless: the CLI executes request.load, request.draft, request.send, and environment.activate actions. Pure UI actions (tabs, pages, workspaces) and persistence side effects (request.save, request.create, request.cancel) are skipped. For action coverage and hello-world recipes, see Workflows — Run from the CLI.
harborclient workflow run <name-or-uuid> [options]harborclient workflow run "My Workflow"
harborclient workflow run <workflow-uuid> --stop-on-failure
harborclient workflow run "My Workflow" --export ./results
harborclient workflow run "My Workflow" --user-data /path/to/HarborClient| Option | Description |
|---|---|
--user-data <path> | Override the Electron userData directory used to find saved workflows. |
--stop-on-failure | Stop after the first failed request.send (HTTP status 400 or higher, transport error, or failed test). |
--export <dir> | Write a workflow-run JSON export to this directory (workflow-yyyy-mm-dd-hh-mm-ss.json). |
Exit codes
| Code | Meaning |
|---|---|
0 | Success (ad-hoc requests also require an HTTP status below 400). |
1 | Transport error, missing or invalid arguments, unknown option, failed collection or workflow run, missing workflow/collection, or (for ad-hoc) HTTP status ≥ 400. |
GUI vs CLI
The same binary serves both modes. Empty argv or GUI-only flags open the desktop app; an HTTP method, run, or workflow as the first argument routes to the CLI.
harborclient --verbose/harborclient -v(with no method) opens the GUI with main-process verbose logging. See Getting started — Verbose logging.harborclient GET https://echo.harborclient.com -vis CLI verbose: status and response headers on stderr.
Desktop startup flags such as --seed, --theme, and --disable-plugins are documented under Getting started. They are not CLI request options.
What's next
- Download — install HarborClient for your operating system.
- Getting started — launch the desktop app and use startup flags.
- Making requests — build, send, and inspect HTTP requests in the GUI.
- Collections — organize saved requests and run them from the sidebar or CLI.
- Workflows — record multi-step sessions and run them from the GUI or CLI.
