What problem does it solve? AI coding agents often guess instead of investigating, producing edits that break importers, mismatch data schemas, or ignore existing patterns. GateGuard replaces ineffective self-evaluation with a fact-forcing PreToolUse gate that demands concrete evidence before allowing file edits, new file creation, or destructive commands. ## Core Features & Use Cases - Edit/MultiEdit Gate: Blocks the first edit per file and requires listing all importing files, affected public functions, data schemas, and the verbatim user instruction. - Write Gate: Requires naming the callers of a new file and confirming via Glob that no existing file serves the same purpose. - Destructive Bash Gate: Triggers on commands like rm -rf, git reset --hard, and drop table, demanding a modification list and rollback procedure. - Use Case: When an agent tries to edit a shared module, the gate forces it to Grep for every importer first, preventing breaking changes across a federated GraphQL or DDD codebase. ## Quick Start Enable the included gateguard-fact-force.js hook via hooks.json, or run pip install gateguard-ai followed by gateguard init to add per-project configuration.