text
| 1 | # Human In The Loop |
| 2 | |
| 3 | The failure mode of an approval gate is not that it lets something bad through. It is |
| 4 | that it asks so often, and so vaguely, that the human starts approving without |
| 5 | reading. This harness defines what genuinely needs a human, how to ask so the answer |
| 6 | is informed, and how far a given approval extends. |
| 7 | |
| 8 | ## When to use |
| 9 | |
| 10 | - Agents that can write, send, deploy, delete, or spend. |
| 11 | - Unattended or scheduled runs, where a bad action is found long after the fact. |
| 12 | - Any workflow where a mistake is expensive to undo. |
| 13 | |
| 14 | ## Install |
| 15 | |
| 16 | ```bash |
| 17 | npx openagents-cli add openagents/human-in-the-loop |
| 18 | ``` |
| 19 | |
| 20 | | Runtime | Installed to | |
| 21 | |---|---| |
| 22 | | `claude-code` | `.claude/skills/human-in-the-loop/` | |
| 23 | | `cursor` | `.cursor/rules/human-in-the-loop/` | |
| 24 | | `codex` | `.codex/skills/human-in-the-loop/` | |
| 25 | | `openai-agents` | `agents/human-in-the-loop/` | |
| 26 | | `langgraph` | `graphs/human-in-the-loop/` | |
| 27 | | `generic` | `.openagents/human-in-the-loop/` | |
| 28 | |
| 29 | ## What is in the package |
| 30 | |
| 31 | - `HARNESS.md` - when to stop, how to ask, and the scope of an approval. |
| 32 | - `gates.md` - a classification of actions by reversibility, with the gate each needs. |
| 33 | |
| 34 | ## License |
| 35 | |
| 36 | MIT |
| 37 |