When to invoke
Use when asked to "guard mode", "full safety", "lock it down", or "maximum safety".
/guard — Full Safety Mode
Activates both destructive command warnings and directory-scoped edit restrictions.
This is /careful + /freeze in a single command.
Dependency note: This skill references hook scripts from the sibling /careful and /freeze skill directories. Both must be installed (they are installed together by the vibestack install script).
Setup
Ask the user which directory to restrict edits to:
"Guard mode: which directory should edits be restricted to? Destructive command warnings are always on. Files outside the chosen path will be blocked from editing."
Once the user provides a path:
FREEZE_DIR=$(cd "<user-provided-path>" 2>/dev/null && pwd)
FREEZE_DIR="${FREEZE_DIR%/}/"
STATE_DIR="${VIBESTACK_HOME:-$HOME/.vibestack}"
mkdir -p "$STATE_DIR"
echo "$FREEZE_DIR" > "$STATE_DIR/freeze-dir.txt"
echo "Freeze boundary set: $FREEZE_DIR"
Tell the user:
- "Guard mode active. Two protections are now running:"
- "1. Destructive command guard — rm -rf, DROP TABLE, force-push, etc. warn before executing (you can override); catastrophic shapes (recursive delete of
/or~, force-push to the default branch) are blocked outright" - "2. Edit boundary — file edits restricted to
<path>/. Edits outside this directory are blocked." - "To remove the edit boundary, run
/unfreeze. To deactivate everything, end the session."
What's protected
See /careful for the two decision tiers, the full pattern list, and the safe exceptions.
See /freeze for how edit boundary enforcement works.
Both hooks fail safe when they cannot read a tool payload — /careful asks,
/freeze denies. Guard mode runs both, so an unreadable Edit or Write payload
is blocked, not waved through.