Agent runtimes
Install, inspect, or remove one integration:
nah hook <runtime> install
nah hook <runtime> status
nah hook <runtime> uninstall
nah supports macOS and Linux. Native Windows is not supported.
Run nah docs runtime-<name> for a runtime-specific guide:
amp— Ampantigravity— Google Antigravityclaude— Claude Codecline— Clinecodex— Codexcopilot— GitHub Copilotcursor— Cursordevin— Devindroid— Factory Droidhermes— Hermeskiro— Kiro CLIopenclaw— OpenClawopencode— OpenCodepi— Pi
Shared contract
Runtime hooks are observation points, not sandboxes. nah returns block to
tell the runtime to stop the intercepted call, or delegate to return it to
the runtime's normal approval, permission, or sandbox flow. nah never approves
a call.
Unknown valid tool semantics delegate absent understood danger. If an adapter
cannot produce a valid nah decision, including from malformed outer input, it
uses its runtime-specific unavailable fallback. Fixed, non-secret feedback is
sent only when the runtime has a non-blocking channel. Built-in evaluation
failures yield delegate. A custom-guard failure contributes no finding, so
other guards still decide. Persisted redacted details are available through
nah log and nah why.
install writes nah-owned integration files or configuration. uninstall
removes only that wiring. status reports not configured, wiring current,
or reinstall required from the wiring on disk. It cannot prove that a running
agent loaded the hook, that the runtime permits it, or that every tool path
emits an intercepted event.
Users are responsible for configuring their runtime so the hook is loaded and remains active. Hook deadlines are runtime-owned and vary by product, surface, configuration, and version.
Once an adapter is active, nah blocks understood intercepted attempts to alter
its active wiring or launch a child that skips the hook. The response tells the
agent not to retry and to ask the operator for nah nap.
Current installations are user-scoped, not same-user tamper-proof. Users still own filesystem and runtime hardening.
Project shadow settings, UI actions, unrecognized or opaque launch forms, already-unhooked processes, and direct operator commands outside an intercepted call remain available. nah does not guarantee that a runtime will load or invoke its adapter.
Each integration is best effort. Read its runtime-* page for known
limitations and verification steps, and double-check the latest upstream
runtime documentation after upgrades.
After installation, restart or reload the runtime, inspect its active hooks, and test the integration before relying on it.