{"steps":["curl -fsSL https://cainstudio.online/api/v1/codeguard-keystone/hook.py -o ~/.claude/codeguard-hook.py","read the file (about 30 lines), then add the snippet below to ~/.claude/settings.json"],"settings_json":{"hooks":{"PreToolUse":[{"matcher":"Bash|Write|Edit|MultiEdit|NotebookEdit|Read","hooks":[{"type":"command","command":"python3 ~/.claude/codeguard-hook.py"}]}]}},"note":"ALLOW prints nothing, so the hook only adds denials and approval prompts. The pending tool call (command, path and, unless CODEGUARD_SEND_CONTENT=0, file content) is sent to the gate and not stored."}