Skip to content

Troubleshooting

Every call is denied with kernel-integrity

Section titled “Every call is denied with kernel-integrity”
moat: deny [kernel-integrity] — /Users/you/.moat/policy.yaml was modified;
run `moat doctor` to inspect; `moat doctor --accept` or `moat init` to re-pin

A pinned file (the policy, a hook, an agent’s settings) changed without you accepting it. Run moat: it shows the change and asks whether to accept it. If you did not make the change, you caught what OpenMoat exists for: look at moat doctor before accepting.

An agent shows “hook only” or “not protected”

Section titled “An agent shows “hook only” or “not protected””
Terminal window
moat status
It says Run
not protected: hook missing moat init
sandbox differs from the policy moat sandbox sync, then start a new agent session
hook only on native Windows Expected: use WSL2 for the OS sandbox

Hooks are read when a session starts. Start a new agent session after moat init, and check moat status.

Claude Code and Codex then run calls without the check, and Cursor blocks them. Reinstall it (brew reinstall crocodile-labs/tap/moat, or the installer), then run moat status.

See Something was blocked. If the default policy is wrong, please report a False positive on GitHub.

Please report it privately, as described in SECURITY.md. Valid bypasses become tests before the fix is published.