MCPInstall

harness-engineering

Initialize a Harness Engineering framework in the current project. Use when user says 'harness', 'init harness', 'initialize framework', 'setup harness engineering', '/harness', or wants to set up a Plan-Build-Verify development workflow with specialized agents (planner, generator, evaluator). Creates CLAUDE.md, agent definitions, command templates, hooks, and documentation structure for autonomous AI-driven development.

Installs
180
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/kangarooking/kangarooking-skills --skill harness-engineering
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads harness-engineering automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Harness Engineering Framework

One-click initialization of a complete Harness Engineering framework in any project directory.

Based on insights from OpenAI (Codex), Anthropic (3-agent GAN architecture), and LangChain (self-verify loops), this skill sets up:

  • 3-agent architecture: Planner (spec), Generator (build), Evaluator (test)
  • Sprint contracts: Machine-verifiable "done" criteria before coding
  • Quality hooks: Loop detection, pre-completion checklist, context injection
  • Slash commands: /plan, /build, /qa, /sprint
  • Golden principles: 10 non-negotiable rules enforced across all agents

When to Use

  • Starting a new project and want structured AI-assisted development
  • Want to set up Plan-Build-Verify-Fix workflow in current project
  • User says "harness", "init harness", "setup framework", or similar

Initialization Process

Step 1: Gather Project Info

Before generating files, ask the user:

  1. Project name (or detect from current directory name)
  2. Tech stack (optional, e.g. "React + Node.js", "Python FastAPI", "Go microservice")
  3. Project type (web app, API service, CLI tool, library, etc.)

If the user provides a description with /harness <description>, extract the info from context.

Step 2: Generate Framework Files

Execute the scaffold script:

python3 {{SKILL_PATH}}/scripts/scaffold.py --project-name "<PROJECT_NAME>" --tech-stack "<TECH_STACK>" --project-type "<PROJECT_TYPE>" --target-dir "<CURRENT_PROJECT_DIR>"

This generates the following structure in the current project:

<project>/
  CLAUDE.md                        # Project map (<80 lines)
  .claude/
    agents/
      planner.md                   # Spec creation agent
      generator.md                 # Implementation agent
      evaluator.md                 # Testing/grading agent
      doc-gardener.md              # Doc freshness agent
    commands/
      plan.md                      # /plan command
      build.md                     # /build command
      qa.md                        # /qa command
      sprint.md                    # /sprint command
    hooks/
      loop-detector.py             # File edit loop detection
      pre-completion-check.py      # Task completion checklist
      context-injector.py          # Session context middleware
  docs/
    architecture.md                # System design
    golden-principles.md           # Non-negotiable rules
    sprint-workflow.md             # Sprint process
    contracts/
      TEMPLATE.md                  # Sprint contract template
    specs/                         # (populated by planner)
    plans/                         # (populated by planner)

Step 3: Configure Hooks

After generating files, merge hook configuration into the project's .claude/settings.json (or create it):

python3 {{SKILL_PATH}}/scripts/merge_settings.py --target-dir "<CURRENT_PROJECT_DIR>"

This adds hook definitions without overwriting existing settings.

Step 4: Verify Installation

Confirm all files were created:

ls -la CLAUDE.md .claude/agents/ .claude/commands/ .claude/hooks/ docs/

Report to the user what was created and how to start using it.

Usage After Initialization

CommandPurpose
/plan <description>Create a feature specification from 1-4 sentences
/buildBuild the most recent spec using sprint workflow
/qaRun evaluator against current code
/sprint <description>Full Plan-Build-Verify cycle from scratch

Key Principles

The framework enforces these rules (see docs/golden-principles.md after install):

  1. Spec before code - No implementation without a written spec
  2. Testable criteria - Every feature has machine-verifiable acceptance criteria
  3. Self-verify first - Generator must self-check before evaluator runs
  4. Loop awareness - Editing same file 5+ times triggers a stop-and-reassess
  5. Contract-driven - Sprint contracts define "done" before coding begins

Architecture

For full details, read the generated docs/architecture.md after installation. Key flow:

User Prompt → Planner (spec) → Generator + Evaluator negotiate contract
→ Generator builds → Evaluator tests → Fix loop (max 3x) → Complete

FAQ

What does the harness-engineering skill do?

Initialize a Harness Engineering framework in the current project. Use when user says 'harness', 'init harness', 'initialize framework', 'setup harness engineering', '/harness', or wants to set up a Plan-Build-Verify development workflow with specialized agents (planner, generator, evaluator). Creates CLAUDE.md, agent definitions, command templates, hooks, and documentation structure for autonomous AI-driven development.

How do I install harness-engineering?

Run npx skills add https://github.com/kangarooking/kangarooking-skills --skill harness-engineering in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/harness-engineering/ (personal) or .claude/skills/harness-engineering/ (project).

Which AI agents can use harness-engineering?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is harness-engineering safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains harness-engineering?

It is published by kangarooking in kangarooking/kangarooking-skills. It has 180 recorded installs.

More from kangarooking/kangarooking-skills

View all →

twitter-monitor

kangarooking/kangarooking-skills

Open the skill to read its SKILL.md instructions.

Marketing & SEO198 installs

book-illustration-workflow

kangarooking/kangarooking-skills

Open the skill to read its SKILL.md instructions.

Media & Creative190 installs

multi-agent-image

kangarooking/kangarooking-skills

Standalone multi-agent image generation skill for Hermes. Includes an internal design compiler, GPT-Image-2 generation via apimart.ai, case library reuse, interactive reference selection, batch workflows, and style-consistent series generation.

Media & Creative180 installs

task-harness

kangarooking/kangarooking-skills

将需求拆解为结构化任务清单,生成长时运行 Agent 的任务管理系统(基于 Anthropic Effective harnesses 方法论)。当用户需要管理多会话开发任务、跟踪功能完成进度、或要求"拆解任务""任务管理""项目规划"时自动触发

reshape-your-life

kangarooking/kangarooking-skills

Open the skill to read its SKILL.md instructions.

178 installs

video-downloader

kangarooking/kangarooking-skills

Open the skill to read its SKILL.md instructions.

Media & Creative95 installs

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.