Skip to main content
healos is the HealOS command line. It talks to the HealOS API, so every command uses the same API keys, scopes and rate limits as your own integration. It works the same for people at a terminal and for scripts or AI agents (--json).

Install

Requires Node.js 18 or later (or Bun).
Or run it without installing:
Check the install with healos --version.

Standalone binary

Each release can also ship a single healos binary that needs no Node.js, for macOS (Apple silicon and Intel), Linux x64 and Windows x64, with a SHA256SUMS file. Check a download before you run it:
The binaries are not yet code-signed. On macOS, clear the download quarantine flag (xattr -d com.apple.quarantine /usr/local/bin/healos) or install from npm instead.

Updating

healos update tells you whether a newer version is out and how to upgrade the copy you have (the npm command, or the release binary to download). It asks the public npm registry and sends no API key. It does not replace the binary itself. With npm, npm install -g @healos/cli@latest updates in place.

Sign in

This opens HealOS in your browser. Approve the request and the CLI saves a new API key on this machine. The key is labeled CLI · <computer> · <date> in Settings → API keys and expires after 90 days. The key is read-only by default. The approval page shows exactly which scopes it asks for. To let the CLI create or change data, ask for more:
Only organization admins can approve a CLI sign-in, because API keys are organization-wide. If you are a member, ask an admin to create a key for you in Settings → API keys, then pass it on standard input:
--api-key hlsk_... also works, but the CLI warns you: a key typed on the command line ends up in your shell history.
logout does not revoke the key. Revoke it in Settings → API keys. Where the key is stored: the macOS Keychain when available, otherwise ~/.config/healos/credentials.json, readable only by you. The CLI refuses to use a credentials file that other users can read. Several accounts: add --profile <name> to login and to any command, for example healos login --profile clinic-b.

Commands

Every command has --help, for example healos notes create --help. Lists take --page, --limit and --all (every page).

Patients and documents

Clinical notes

notes create returns as soon as the note is queued. Add --wait to wait for the finished note (up to 5 minutes, or --timeout <seconds>).

Scheduling, eligibility and prior auth

AI Receptionist

EHR actions

These need the ehr:read scope.

Examples

Scripts, CI and AI agents

  • --json prints the raw API response. Errors go to stderr, also as JSON.
  • HEALOS_API_KEY uses a key without signing in, and takes precedence over the saved profile.
  • --dry-run prints the request it would send and sends nothing.
  • Writes ask for confirmation, and deletes always do. Pass --yes to skip the prompt. Without a terminal to ask on, they are refused unless --yes is passed.
  • The CLI only sends your key over HTTPS to HealOS, and never follows a redirect to another host.
  • healos mcp runs an MCP server for Claude, Cursor and other AI agents, read-only unless you pass --allow-writes (it ships in the next CLI release). See Use HealOS from an AI agent.