Borrowing it
Nothing to install: this file belongs to wedow/harness. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/wedow/harness/master/AGENTS.mdgit clone --depth 1 https://github.com/wedow/harnessWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/wedow/harness/agents-md)<a href="https://agentmods.dev/instructions/wedow/harness/agents-md"><img src="https://agentmods.dev/badge/instructions/wedow/harness/agents-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/wedow/harness/agents-md"><img src="https://agentmods.dev/badge/instructions/wedow/harness/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.02266 | $0.02266 |
| Opus 5.5 | $0.00906 | $0.00906 |
| Sonnet 5.5 | $0.00453 | $0.00453 |
| Haiku 4.5 | $0.00227 | $0.00227 |
Grade A, and why
harness AGENTS.md scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
Dependencies: bash 4+, jq, curl. No package manager, no language runtime. How it starts
The opening of the file, as written. The whole thing — 121 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AGENTS.md
This file provides guidance to agents when working with code in this repository.
What This Is
Harness is a minimal agent loop in bash. The core script (~100 SLOC) is a bootstrap, hook pipeline runner (call), state follower, and CLI dispatch. Even source discovery is hookable — the sources stage lets plugins control which directories participate. Everything else — session management, provider discovery, tool discovery, message assembly, API calls, response parsing, tool execution, prompt loading — lives in hooks and plugins that can be written in any language.
Dependencies: bash 4+, jq, curl. No package manager, no language runtime.
Commands
# Run the agent
bin/harness "do something" # one-shot (args = message)
echo "do X" | bin/harness # one-shot (stdin)
bin/harness # interactive REPL
bin/harness <session-id> # resume session
# Inspect
bin/harness tools # list discovered tools
bin/harness hooks [stage] # list discovered hooks
bin/harness session list # list sessions
bin/harness session show <id> # inspect session
# Tests
spec/run # run all tests
SPEC_DIR=spec bash spec/tests/NAME/test.sh # single test
The bin/hs symlink is an alias for bin/harness.
Architecture
The State Machine
The core loop is a pure state follower. It dispatches hooks for the current state, reads next_state from the hook output, and transitions. The core has no built-in transitions — state flow is entirely declared by hooks. An empty or absent next_state stops the loop. After the loop ends, output is read from the terminal state's result and printed.
start → assemble → send → receive → done
↑ │
│ tool_exec → tool_done
│ │
└──────────────────┘
This diagram is emergent from hooks, not hardcoded. Hooks drive iteration: tool_exec pops one call, tool_done routes back to tool_exec or assemble.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 121 lines · 2,266 tokens per session scan A 600f199386f9
harness AGENTS.md is an instructions file published in the GitHub repository wedow/harness (170 stars, last pushed 22d ago), licensed MIT. It adds 2,266 tokens to every session, about $0.0091 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
harness AGENTS.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| harness AGENTS.mdwedow/harness | Instructions file | 170 | 22d ago | MIT | A | 2,266 | Codex, OpenCode |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | today | MIT | A | 7,461 | Codex, OpenCode |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | yesterday | MIT | A | 4,680 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 5,516 | GitHub Copilot |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 3,093 | GitHub Copilot |
| deepseek-harness AGENTS.mddeepseek-ai/deepseek-harness | Instructions file | 274k | 2d ago | MIT | A | 4,313 | Codex, OpenCode |