diff --git a/skills/firebase-hol-guard/SKILL.md b/skills/firebase-hol-guard/SKILL.md new file mode 100644 index 00000000..fa5a5d18 --- /dev/null +++ b/skills/firebase-hol-guard/SKILL.md @@ -0,0 +1,89 @@ +--- +name: firebase-hol-guard +description: >- + Protect local AI coding-agent sessions before Firebase CLI, MCP, and Agent + Skills workflows with HOL Guard. Use when an agent can run commands or mutate + a Firebase project and you want Guard-owned harness protection and evidence. +--- + +# Protect Firebase agent workflows with HOL Guard + +Use HOL Guard at the local coding-agent boundary before starting Firebase work. +It protects supported local agent harnesses before their tools run. It does not +run inside Firebase services and does not replace Firebase Authentication, +Security Rules, App Check, IAM, emulator validation, or normal change review. + +## Set up protection + +Install HOL Guard in an isolated Python application environment: + +```bash +pipx install hol-guard +``` + +Check the machine and discover supported local harnesses: + +```bash +hol-guard status +hol-guard detect --json +``` + +Initialize Guard-managed local state, then install Guard for the exact harness +reported by `hol-guard detect` and verify a protected launch before making +project changes: + +```bash +hol-guard bootstrap +hol-guard install +hol-guard run --dry-run +hol-guard run +hol-guard status +``` + +`hol-guard bootstrap` is part of HOL Guard's maintained setup flow. Use the +exact harness identifier reported by `hol-guard detect`; do not infer or +substitute a product name. Do not claim a workspace is protected until Guard +reports the harness setup successfully. + +## Use with Firebase Agent Skills + +Start the coding agent through `hol-guard run ` first. From that +protected session, use the Firebase skills and their documented Firebase CLI or +MCP workflows normally. Keep Firebase's own safety instructions in force, +including project-selection checks, user confirmation where a skill requires +it, Security Rules review, and emulator or preview steps. + +HOL Guard owns the local harness protection boundary. This skill does not claim +that every Firebase CLI subcommand has a dedicated Guard classifier or that +Guard intercepts hosted Firebase services directly. + +## Handle Guard decisions + +If Guard blocks or queues work, inspect the request before proceeding: + +```bash +hol-guard approvals +hol-guard approvals open +hol-guard receipts +hol-guard diff +``` + +Pass the pending approval request ID to `hol-guard approvals open` so the CLI +opens the specific queued request. Only approve after reviewing the risk reason +and requested scope. Never bypass Guard by launching an unprotected copy of the +agent or editing around Guard-owned hooks. + +## Diagnose protection + +If the harness does not appear protected, stop mutating Firebase resources and +inspect the setup: + +```bash +hol-guard doctor +hol-guard doctor --json +hol-guard detect --json +hol-guard settings show +``` + +Resume Firebase mutations only after Guard output proves the local harness is +protected, or continue without claiming HOL Guard protection.