Harnessctl banner
mnvsk97 mnvsk97

Harnessctl

Development community

Description

a lightweight cli to switch between agent harnesses with ease

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

harnessctl

**One command for Claude Code, Codex, DeepAgents, Gemini, Cursor, OpenCode, and custom coding agents.**

[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![npm version](https://img.shields.io/npm/v/harnessctl)](https://www.npmjs.com/package/harnessctl)

`harnessctl` is a small CLI that lets you run, compare, hand off, and fail over between coding-agent CLIs without changing how you work.

Use it when one agent is better at planning, another is better at editing, and a third is available when the first one hits a rate limit.

Install

npm install -g harnessctl
harnessctl setup

Or use Homebrew:

brew install mnvsk97/tap/harnessctl

Other options:

# Linux / macOS binary installer
curl -fsSL https://raw.githubusercontent.com/mnvsk97/harnessctl/main/install/install.sh | bash

# From source
git clone https://github.com/mnvsk97/harnessctl.git
cd harnessctl
bun install
bun run src/cli.ts --help

Quick Start

# Run the default agent
harnessctl run "fix the auth bug"

# Pick an agent
harnessctl run --agent codex "refactor the database layer"
harnessctl run --agent deepagents "run the tests and fix failures"

# Open an interactive agent shell
harnessctl shell --agent claude

# Check configured agents
harnessctl doctor

Core Workflows

Hand Off Between Agents

Every run gets a run ID. Use it to continue with another agent.

harnessctl run --agent codex "refactor auth"
# run: 1713364500000-codex

harnessctl handoff 1713364500000-codex --agent claude "review and add tests"

The next agent gets a compact handoff: original task, summary, changed files, and a pointer to the full context file under `.harnessctl/handoffs/`.

Compare Agents

Run the same prompt across agents and optionally ask a judge agent to pick the best result.

harnessctl compare "fix this bug" --agents codex,claude
harnessctl compare "fix this bug" --agents codex,claude --judge claude