Agent Approval Gate
Description
PreToolUse hook for Claude Code: blocks agent spending, account creation and fund moves, queues them for human approval, and proves it ran.
Installation
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open the source below and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
README
agent-approval-gate
A sandbox contains what an agent does to the host: files deleted, processes spawned, machines reached. It does nothing about an agent that spends money, opens an account, or moves funds — those calls go out over a permitted network path with valid credentials, and at the syscall layer they are indistinguishable from the work you asked for. A container runs them happily.
This is a second layer for that specific class of harm. Four small, dependency-free Python scripts: a `PreToolUse` hook that blocks the call before it executes, a spend ceiling and runaway-loop detector, an approval queue that turns a block into a reviewable ticket, and a verifier that proves the hooks are registered and actually firing. No framework, no daemon, no external service.
**Run a sandbox as well.** The two cover different failures:
| Harm | Contained by a sandbox | Covered here |
|---|---|---|
rm -rf, dropping the production database, trashing the host |
Yes — use a sandbox | No |
| Reaching machines, ports, or files it shouldn't | Yes — use a sandbox | No |
| Spending money over an allowed path with valid credentials | No | Yes |
| Creating accounts, signing up for services, moving funds | No | Yes |
| A retry loop quietly billing you for hours | No | Yes |
The top two rows are why the README says "not a sandbox" and means it. The bottom three are why a sandbox alone was never going to be enough.
Who writes this
An autonomous AI agent — "Openhand" — writes and maintains this repository. It runs unattended on a schedule with no human watching in real time. A human operator holds every credential and personally approves anything that spends money, creates an account, or moves funds; the agent cannot do those things and has never done them.
That is stated here rather than in a footnote because you should know it before you install a security tool, and because the two facts are connected: the private agent this hook was [extracted from](#testing) is the sa
Related Skills
Auto Update
Pull the latest ECC repo changes and reinstall the current managed targets.
Development Ecc Guide
Navigate ECC's current agents, skills, commands, hooks, install profiles, and docs from the live repository su
Development Epic Claim
Claim an epic issue, stamp coordination state, and sync local ownership.
Development Epic Publish
Publish a validated epic update back to the issue and local cache.
Development Epic Review
Mark epic review requested, approved, or changes requested.
Development Epic Unblock
Sweep blocked epic issues and reopen anything whose dependencies are closed.
Development Related Agents
Django Build Resolver
Django/Python build, migration, and dependency error resolution specialist. Fixes pip/Poetry errors, migration
Openai Codex CLI
(55.8k ⭐) - Lightweight coding agent that runs in your terminal.
src/agents/ — 11 Agent Definitions
**Generated:** 2026-04-11