Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add instructions/tools-for-agents/anvil/agents-mdgit clone --depth 1 https://github.com/tools-for-agents/anvilWrote 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/tools-for-agents/anvil/agents-md)<a href="https://agentmods.dev/instructions/tools-for-agents/anvil/agents-md"><img src="https://agentmods.dev/badge/instructions/tools-for-agents/anvil/agents-md.svg" alt="Measured on agentmods" 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 | $0.00854 | $0.00854 |
| Opus 5 | $0.00427 | $0.00427 |
| Sonnet 5 | $0.00171 | $0.00171 |
| Haiku 4.5 | $0.00085 | $0.00085 |
Grade A, and why
anvil AGENTS.md scanned grade A with 0 findings 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 3d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 67 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AGENTS.md — anvil
⚒ A throwaway Docker sandbox for agents. Run code or commands in an isolated, resource-limited, network-off container and get structured results back — so an agent verifies work without touching the host. CLI + web + MCP. Part of tools-for-agents.
Setup
node --version # 22+ required. Nothing to install.
docker info # Docker must be running — anvil is a shell around it
npm test # = node --test (docker-dependent tests skip without it)
node src/cli.js check # docker + presets: run this first
node src/cli.js run python 'print(1+1)' # langs: bash, sh, node, javascript, python
node src/cli.js run python - # read the code from stdin
node src/cli.js sh 'ls -la' # a shell command in alpine
node src/cli.js serve --port 7930 # the run log (real, but absent from --help)
npm run mcp # the MCP server, stdio
Defaults every run inherits: --network none, 512m memory, 1 cpu, caps dropped, 30s timeout.
Zero runtime dependencies, and that is a hard rule. No dependencies in package.json, ever — anvil
shells out to docker rather than pulling in a client library. Node 22+ gives you node:sqlite.
| Env | For |
|---|---|
ANVIL_DB |
the run log — always redirect this in tests |
ANVIL_PORT |
serve port (default 7930) |
ANVIL_CORTEX_URL |
optional cortex link-up |
The rules this repo is built on
1. The sandbox's promises are the product. Network off, memory and CPU capped, a hard timeout, and the container is thrown away. Every one of those is a claim someone will rely on to run code they have not read. If you touch container setup, write the test that proves the promise still holds — a sandbox that usually has the network off is not a sandbox.
2. Only the picture is evidence. Run iris against any UI
change and look at the shot. Audit phone,tablet,desktop, both themes, with --hover — the run log's rows
raise under the pointer, and the ink did not survive it until someone rendered that state.
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.
- 3d ago First seen · 67 lines · 854 tokens per session scan A 8d662f51efa6
anvil AGENTS.md is an instructions file published in the GitHub repository tools-for-agents/anvil (0 stars, last pushed 28d ago), licensed MIT. It adds 854 tokens to every session, about $0.0043 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
microsandbox AGENTS.md
AGENTS.md instructions for superradcompany/microsandbox, covering agents.md, scope, project map, design principles and backward compatibility review.
MultiGen CLAUDE.md
Instructions for lingyuanli/MultiGen, covering claude.md, architecture, development commands, full stack (docker) and api (local).
sandboxd AGENTS.md
Instructions for tastyeffectco/sandboxd, covering agents.md — operating sandboxd, what this is, prerequisites, install and core api.
greywall CLAUDE.md
Instructions for GreyhavenHQ/greywall, covering greywall, build & run, test, lint & format and project structure.
tensorlake AGENTS.md
Instructions for tensorlakeai/tensorlake, a project described as: Tensorlake is a serverless runtime for sandboxes and deploying background agentic applications.
agentbox CLAUDE.md
Instructions for madarco/agentbox, covering agentbox — context for claude code, architecture overview, important notes, testing / verifying and conventions.