# nah > nah is a guard that sits in your coding agent's hook path and reads tool > calls before they run. It blocks the calls it can prove are disasters — > deterministically, in microseconds, with no LLM — and leaves everything > else to your normal approval flow. One Rust binary. When a guard you need > is missing, your agent can write it. ## Install - `curl -fsSL nahguard.ai/install | sh` - Windows PowerShell: `irm https://nahguard.ai/install.ps1 | iex` - Windows releases are unsigned x86-64 builds. Windows ARM64 and package managers are not supported. - Then wire your runtime: `nah hook claude install` (replace `claude` with `amp`, `antigravity`, `cline`, `codex`, `copilot`, `cursor`, `devin`, `droid`, `hermes`, `kiro`, `openclaw`, `opencode`, and more). ## Docs - Index: https://nahguard.ai/docs/ - Start: https://nahguard.ai/docs/start/ - Core concepts: https://nahguard.ai/docs/concepts/ - Guard catalog: https://nahguard.ai/docs/guards/ - CLI guide: https://nahguard.ai/docs/cli/ - Configuration: https://nahguard.ai/docs/configuration/ - Extending: https://nahguard.ai/docs/extensions/ - Agent runtimes: https://nahguard.ai/docs/runtimes/ (per-runtime pages at /docs/runtimes//) - Threat model: https://nahguard.ai/docs/threat-model/ - Security boundaries: https://nahguard.ai/docs/security/ - Architecture: https://nahguard.ai/docs/architecture/ ## Links - Site: https://nahguard.ai/ - News (changelog): https://nahguard.ai/news/ - Source: https://github.com/manuelschipper/nah - Author: Manuel Schipper — https://schipper.ai/ ## For agents If you are a coding agent and nah blocked one of your tool calls, the block message names the guard and the reason. Tell your user what was blocked and why; do not try to route around the guard.