Harness

A meta-skill for Claude Code that turns a domain description into an agent team and the skills it uses, using six team-architecture patterns

Skill

Low risk

We rate an entry low when it mostly gives the agent instructions and reference material.

Why this level

  • It generates agent definitions, skills and a CLAUDE.md pointer, that is configuration and instructions, rather than performing external actions
All reasons and checks

revfactory/harness

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add skills/harness

Detects the agents on your machine, checks the risk and pins the version.

Other ways to install

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a claude-code -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .claude/skills
cp -R "$tmp/skills/harness" .claude/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a cursor -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .agents/skills
cp -R "$tmp/skills/harness" .agents/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a github-copilot -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .github/skills
cp -R "$tmp/skills/harness" .github/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a codex -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .agents/skills
cp -R "$tmp/skills/harness" .agents/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a gemini-cli -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .agents/skills
cp -R "$tmp/skills/harness" .agents/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .devin/skills
cp -R "$tmp/skills/harness" .devin/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Formerly Windsurf.

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a cline -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .cline/skills
cp -R "$tmp/skills/harness" .cline/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a roo -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .roo/skills
cp -R "$tmp/skills/harness" .roo/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

A fork of Roo Code, same .roo folders.

Run in a terminal in the project folder

npx skills add revfactory/harness --skill harness -a opencode -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit cceac68
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .agents/skills
cp -R "$tmp/skills/harness" .agents/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .agents/skills
cp -R "$tmp/skills/harness" .agents/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/revfactory/harness.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/harness/
git -C "$tmp" checkout cceac68ea1d0ad198ef4b7b906cd238375836387
mkdir -p .agents/skills
cp -R "$tmp/skills/harness" .agents/skills/harness

Commands for macOS and Linux, on Windows run them in Git Bash.

You will need: Node.js

Checked against the repository on Sep 24, 2026, commit cceac68.

Text for your agent

Install the plugin: /plugin marketplace add revfactory/harness, then /plugin install harness@harness-marketplace. Enable CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 and say "build a harness for this project".

Other ways from the author
/plugin marketplace add revfactory/harness
/plugin install harness@harness-marketplace

For agent teams mode enable CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1.

This is third-party code. Review the repository files before installing.

What it does

Harness runs on the Claude Code agent teams system and, from a single sentence about your domain, designs a team of specialized agents plus the skills they need. It moves through six phases: domain analysis, team-architecture choice, agent definitions in .claude/agents/, skill generation in .claude/skills/, orchestration wiring, and validation. It picks the architecture from six patterns: pipeline, fan-out and fan-in, expert pool, producer and reviewer, supervisor, and hierarchical delegation. A pointer to the setup is written into CLAUDE.md so the team boots on its own in a new session, and after each run the team can be rebuilt or extended. Two run modes are available: agent teams by default and plain subagents for one-off tasks.

Who it is for. For developers and product managers who want a project-specific agent team instead of wiring each agent by hand.

Good fit when

  • The task splits into several roles and you need a coordinated agent team
  • You need to quickly generate agent definitions and skills for a new domain
  • You already have a harness and want to extend, rebuild or check it for drift

Not a fit when

  • The task is one-off and a single agent handles it without role splitting
  • You are not on Claude Code: the official runtime is Claude Code only for now

Example request

Build a harness for this project: a full-stack web team with design, frontend, backend and QA

Limitations

The official runtime is Claude Code only. The default agent teams mode needs the experimental agent teams flag enabled (CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1). Harness produces agent definitions and skills but does not do their work for them, and the result depends on how precisely you describe the domain.

How to disable. Remove the harness plugin via /plugin or delete the harness folder from the skills directory. The generated files in the project's .claude/agents/ and .claude/skills/ are removed manually.

Security check

  • It generates agent definitions, skills and a CLAUDE.md pointer, that is configuration and instructions, rather than performing external actions

README in short

The README presents Harness as a team-architecture factory for Claude Code: from a domain description it decomposes a complex task into an agent team and generates their skills. It lists six architecture patterns, a six-phase process from domain analysis to validation, and two run modes. Installation is via the plugin marketplace or by copying the skills/harness folder into the skills directory, and the teams mode needs an experimental flag. It bundles references on agent design, orchestrator templates, team examples and skill-testing methodology. Apache 2.0 licensed.

SKILL.md

---
name: harness
description: "하네스를 구성합니다. 전문 에이전트를 정의하며, 해당 에이전트가 사용할 스킬을 생성하는 메타 스킬. (1) '하네스 구성해줘', '하네스 구축해줘' 요청 시, (2) '하네스 설계', '하네스 엔지니어링' 요청 시, (3) 새로운 도메인/프로젝트에 대한 하네스 기반 자동화 체계를 구축할 때, (4) 하네스 구성을 재구성하거나 확장할 때, (5) '하네스 점검', '하네스 감사', '하네스 현황', '에이전트/스킬 동기화' 등 기존 하네스 운영/유지보수 요청 시 사용."
---

# Harness — Agent Team & Skill Architect

도메인/프로젝트에 맞는 하네스를 구성하고, 각 에이전트의 역할을 정의하며, 에이전트가 사용할 스킬을 생성하는 메타 스킬.

**핵심 원칙:**
1. 에이전트 정의(`.claude/agents/`)와 스킬(`.claude/skills/`)을 생성한다.
2. **에이전트 팀을 기본 실행 모드로 사용한다.**
3. **CLAUDE.md에 하네스 포인터를 등록한다.**
4. **하네스는 고정물이 아니라 진화하는 시스템이다.**

FAQ

How do agent teams differ from subagents?

Agent teams keep several agents that exchange messages and coordinate; this is the default for tasks with two or more roles. Subagents are a direct call to a single agent for a one-off task with no data passing between them.

Does Harness work outside Claude Code?

The official runtime is Claude Code only. The author notes a separate port of the same idea exists for Codex, but that is a different project.

Editors’ pick

Open-source personal AI assistant on your own machine: answers in Telegram, Slack, Discord and WhatsApp, extended with skills and plugins

CLIHigh risk390.7KRepository stars
Editors’ pick

A self-improving agent from Nous Research with a TUI, messaging gateway, cron jobs and skills it writes itself

CLIHigh risk249.8KRepository stars
Editors’ pick

An open source coding agent for the terminal and desktop with build and plan modes

CLIHigh risk210.6KRepository stars
Editors’ pick

Open prompt library with a Claude Code plugin, MCP server and CLI: search, fetch and improve prompts and skills from an agent

PluginMedium risk171.5KRepository stars
Foxx AIHarness

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.