harness-cli

An agentic coding CLI for the terminal — bring any model, keep full control.

↓Multi-provider routing
◈Privacy-first, local by default
◈No vendor lock-in
harness
$ harness -p "explain this code and find any security issues" --model deepseek-v4
◈ Loading model deepseek-v4 via OpenRouter
● Analyzing codebase...
✓ Found 2 potential issues:
1. SQL injection risk in query builder (line 47)
2. Unvalidated redirect in auth handler (line 132)
✓ Suggested fixes applied
✨ Done — session saved (ID: 20260815-...). Resume with harness -r
$

Features

🏠

Local-First

Works with Ollama, llama.cpp, OpenAI, OpenRouter, or any OpenAI-compatible API. No mandatory cloud service, no vendor lock-in, no telemetry.

>

CLI-First

Interactive REPL, single-shot print mode (-p), or full TUI. Auto-saved sessions. Cross-platform on Linux, macOS, and Windows.

⚔

Plan & Build Modes

Two operating modes in one session. Plan is read-only (read, search, browse). Build unlocks write, edit, and shell tools. Toggle at any time with /plan, /build, or Tab.

⚙

Customizable

Define custom agents as TOML files with per-tool permissions. Chain agents into pipelines. Drop a SKILL.md, AGENTS.md, or CLAUDE.md in any project for domain-specific instructions.

🛡

Sandbox Mode

Run agents inside isolated Docker containers. Launch local inference servers (Ollama, llama.cpp) with automatic Docker fallback.

Install

npm (recommended)

npm install -g @x0rn/harness-cli

Build from source

git clone https://gitlab.com/x0rn/harness
cd harness && npm install && npm run build

Initialize

harness init

Documentation

Full CLI reference, configuration guide, how-to tutorials, and examples.

Dedicated documentation site coming soon.