Installation
Requirements
Section titled “Requirements”- Node.js 20 or newer
- npm
- Git
- Docker — required. Mission Control runs as a container (
har control up) and harness profiles start shared infrastructure through Docker Compose (.har/setup-infra.sh). Install it from docs.docker.com and make sure the daemon is running before you onboard.
har onboard probes Docker on start and warns when the CLI is missing or the
daemon is down. Onboarding still completes without Docker, but it will not offer
to start Mission Control until Docker is available.
Install from npm
Section titled “Install from npm”npm install -g @osfactory/har@latesthar --versionHAR’s CLI, MCP server, bundled harness profiles, and Mission Control launcher ship
in the same @osfactory/har package.
Install activates full agent telemetry by default (traces, logs, metrics, and
prompts → local Mission Control). Preference is written to ~/.har/telemetry.json
when missing. Disable with har telemetry off, or keep usage without prompt text
via har telemetry on --no-prompts. For a guided first-run in a repository
(including telemetry and Mission Control choices), use har onboard.
Install from source
Section titled “Install from source”git clone https://github.com/os-factory/har.gitcd harnpm installnpm run buildnpm linkRe-run npm run build after source changes. Remove the global link with:
npm unlink -g @osfactory/harConnect an MCP client
Section titled “Connect an MCP client”Start HAR as a stdio MCP server:
har mcp --repo /absolute/path/to/your/repositoryFor clients that accept JSON MCP configuration:
{ "mcpServers": { "har": { "command": "har", "args": ["mcp", "--repo", "/absolute/path/to/your/repository"] } }}The configured repository is the default. Every MCP tool also accepts a repo
argument, so one server can operate another harness explicitly.
Upgrade
Section titled “Upgrade”npm install -g @osfactory/har@latesthar env maintainUpdating the package never silently overwrites an adapted .har/ directory. Use
maintain to inspect template drift and apply updates deliberately.
