~ / rigs / RyanAlberts / best-of-Agent-Harnesses

RyanAlberts/best-of-Agent-Harnesses

🏆 Ranked list of 167 AI agent harnesses, plus copy-paste templates (AGENTS.md, safe Claude Code settings, a minimal harness) and step-by-step playbooks. MCP server, llms.txt & JSON. Rescored weekly.

↗ GitHub ★ 990 cc-by-sa-4.0 updated 12d ago personal setup Claude CodeCodexCursorGemini CLI
share on X
ARCHETYPE
Fort Knox
Deny lists, pre-tool hooks, sandboxing. Nothing touches prod without a signature.
CONTEXT TAX · EVERY TURN
~2.2k tokens
Moderate · median rig: 2.3k · breakdown
GUARDRAILS
5/5
Blocks destructive commands · Protects secrets · Pre-tool screening hook · No YOLO mode · Sandbox or ask-first rules · details

Copy this rig

# review before running: this installs third-party code
$ npx degit RyanAlberts/best-of-Agent-Harnesses/templates/claude-code-safe-settings/.claude ./rig-best-of-agent-harnesses  # inspect, then merge into .claude/

MCP servers are added to Claude Code at local scope; env vars are shown as YOUR_… placeholders — we never store values. Files are fetched with degit into a separate folder so you can review before merging.

$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/agents-md-checker .claude/skills/agents-md-checker
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/claim-check .claude/skills/claim-check
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/guardrail-tester .claude/skills/guardrail-tester
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/harness-test-drive .claude/skills/harness-test-drive
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/regression-finder .claude/skills/regression-finder
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/rules-to-guards .claude/skills/rules-to-guards
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/runaway-guard .claude/skills/runaway-guard
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/sandbox-check .claude/skills/sandbox-check
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/session-waste-report .claude/skills/session-waste-report
$ npx degit RyanAlberts/best-of-Agent-Harnesses/skills/tool-design-checker .claude/skills/tool-design-checker
$ curl -fsSL --create-dirs -o .claude/agents/harness-radar.md https://raw.githubusercontent.com/RyanAlberts/best-of-Agent-Harnesses/main/agents/harness-radar.md
$ curl -fsSL --create-dirs -o .claude/agents/harness-scout.md https://raw.githubusercontent.com/RyanAlberts/best-of-Agent-Harnesses/main/agents/harness-scout.md
$ curl -fsSL --create-dirs -o .claude/agents/stack-auditor.md https://raw.githubusercontent.com/RyanAlberts/best-of-Agent-Harnesses/main/agents/stack-auditor.md

Merge into .claude/settings.json (project) or ~/.claude/settings.json (user). Hook commands reference scripts in the source repo — copy those too.

{
  "permissions": {
    "deny": [
      "Read(.env)",
      "Read(.env.*)",
      "Read(**/*.pem)",
      "Read(**/*.key)",
      "Read(**/id_rsa*)",
      "Read(**/id_ed25519*)",
      "Read(./secrets/**)",
      "Read(~/.ssh/**)",
      "Read(~/.aws/**)",
      "Edit(.env)",
      "Edit(.env.*)",
      "Edit(.git/hooks/**)",
      "Edit(.claude/settings.json)",
      "Edit(.claude/settings.local.json)",
      "Edit(.claude/hooks/**)",
      "Edit(~/.zshrc)",
      "Edit(~/.bashrc)",
      "Edit(~/.profile)",
      "Edit(~/Library/LaunchAgents/**)",
      "Bash(git push --force *)",
      "Bash(git push -f *)",
      "Bash(git reset --hard *)",
      "Bash(git clean *)",
      "Bash(rm -rf *)",
      "Bash(sudo *)"
    ],
    "ask": [
      "Bash(git push *)",
      "Bash(git commit *)",
      "Bash(npm publish *)",
      "Bash(docker *)",
      "Bash(kubectl *)",
      "Bash(terraform *)"
    ]
  },
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/guard.sh"
          }
        ]
      }
    ]
  }
}

Skills (10)

Subagents (3)

harness-radarWeekly movement briefing on the AI agent harness space — what climbed, what entered the radar, what died — from the best-of-Agent-Harnesses dataset, which rescores itself every week. Use on a schedule
harness-scoutPicks the right AI agent harness for a described task or project. Use when the user asks "what harness/framework/agent tool should I use", compares agent frameworks, or starts an agent project without
stack-auditorAudits a codebase's AI agent stack against the live best-of-Agent-Harnesses dataset — finds which harnesses the repo uses, flags dead or graveyarded ones, and names live replacements. Use when the use

Hooks (1)

eventmatcherruns
PreToolUseBash"$CLAUDE_PROJECT_DIR"/.claude/hooks/guard.sh

Cursor rules (1)

git-author · always

Permissions

deny (25)
Read(.env)
Read(.env.*)
Read(**/*.pem)
Read(**/*.key)
Read(**/id_rsa*)
Read(**/id_ed25519*)
Read(./secrets/**)
Read(~/.ssh/**)
Read(~/.aws/**)
Edit(.env)
Edit(.env.*)
Edit(.git/hooks/**)
Edit(.claude/settings.json)
Edit(.claude/settings.local.json)
Edit(.claude/hooks/**)
Edit(~/.zshrc)
Edit(~/.bashrc)
Edit(~/.profile)
Edit(~/Library/LaunchAgents/**)
Bash(git push --force *)
Bash(git push -f *)
Bash(git reset --hard *)
Bash(git clean *)
Bash(rm -rf *)
Bash(sudo *)
ask (6)
Bash(git push *)
Bash(git commit *)
Bash(npm publish *)
Bash(docker *)
Bash(kubectl *)
Bash(terraform *)
allow (4)
Bash(git status *)
Bash(git diff *)
Bash(git log *)
Bash(git show *)

Similar rigs

copied ✓