Cover Codex, Cursor, Copilot and Antigravity

Hook every coding agent on a machine into the same Prismor policy. Each agent keeps its own hook file, and Prismor screens every tool call the same way. Takes about two minutes.

You'll need

  • prismor installed (pip install prismor). To report to the console, enroll the device first: see Enroll a device.
  • The agents you want to cover, installed on the machine.

1. Hook each agent in the project

From the project directory, run install-hooks once per agent. --scope project writes the hook file into this repo. --mode observe logs every call and blocks nothing.

prismor install-hooks --agent codex --scope project --mode observe
prismor install-hooks --agent cursor --scope project --mode observe
prismor install-hooks --agent copilot --scope project --mode observe
prismor install-hooks --agent antigravity --scope project --mode observe

Each command prints the file it wrote:

AgentHook file
Codex.codex/hooks.json
Cursor.cursor/hooks.json
GitHub Copilot.github/hooks/prismor.json
Antigravity.agents/hooks.json

To hook every supported agent at once, use --agent all. That also covers Claude Code, Windsurf, Gemini CLI, Kiro, OpenHands, Qwen, Continue, Goose, opencode, Grok and Crush.

Terminal: install-hooks for codex, cursor, copilot and antigravity, then prismor status

2. Trust the hooks in Codex

Codex won't run project hooks until you approve them. install-hooks and prismor status both warn about it:

Codex has not trusted these hooks yet, so it will NOT run them

Open codex in the project once and accept the hook-trust prompt. For headless runs, use codex exec --dangerously-bypass-hook-trust. Until you do one of these, this workspace isn't screened for Codex.

3. Check what's hooked

prismor status

The Hooks line lists every agent that's wired in this workspace, plus the mode and scope:

Hooks:       antigravity, codex, copilot, cursor  (observe, project; configured)

status only reads the config files. It doesn't prove an agent ran through the hooks. Run prismor doctor for configuration checks, or use the agent once and look for the session in the console under Sessions.


Project or global scope

ScopeWhere hooks goWhen to use
--scope projectFiles inside this repoTrying Prismor on one project, or committing the hook config with the repo
--scope globalThe agent's user config, e.g. ~/.claudeAn enrolled developer machine, so no directory is left unguarded

If an agent is hooked at both scopes, every call is screened twice. install-hooks warns about this. Remove one with prismor uninstall-hooks --agent <agent> --scope project|global.

Troubleshooting

SymptomFix
Codex calls never show upAccept the hook-trust prompt (step 2).
OpenClaw or Hermes say NOT activeOpenClaw has to list the plugin (openclaw plugins list). Hermes loads project plugins only with HERMES_ENABLE_PROJECT_PLUGINS=1, or install with --scope global.
Hook file is committed but another machine shows nothingHook commands contain machine-specific paths. Re-run with --portable for a config you commit and clone elsewhere.

Next