guard
Skill3 starsChanged 31 days agoMITView on GitHub
Safety mode for risky operations that freezes edits to one directory, warns on destructive commands, and enforces scope.
52 other projects use a version of this.
Adopted by
Most recently taken up by
- timurgaleev/vibestacktheir own version, first seen Nov 8, 2026
- hiroqt/overdrivetheir own version, first seen Nov 1, 2026
- matthewdigiuseppe/MStacktheir own version, first seen Nov 1, 2026
- trungtm78/ClaudeSkillstheir own version, first seen Oct 25, 2026
- L1veSong/Canon-Mnemonic-Guardtheir own version, first seen Oct 19, 2026
- autonomous-ai/lampOStheir own version, first seen Oct 15, 2026
Used with
Projects with it also use unfreeze, plan-tune and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
ayudaySkillunfreeze
Clear the freeze boundary set by /freeze, allowing edits to all directories again. Use when you want to widen edit scope without ending the session. Use when asked to "unfreeze", "unlock edits", "remove freeze", or "allow all edits".
Also in 24 projects that use this
ShreyRaviSkillplan-tune
Self-tuning question sensitivity + developer psychographic for gstack (v1: observational). Review which AskUserQuestion prompts fire across gstack skills, set per-question preferences (never-ask / always-ask / ask-only-for-one-way), inspect the dual-track profile (what you declared vs what your behavior suggests), and enable/disable question tuning. Conversational interface — no CLI syntax required.
Also in 9 projects that use this
Saqlain-811Skillios-clean
Remove the DebugBridge SPM package and all #if DEBUG wiring from an iOS app. (gstack)
Also in 5 projects that use this
Saqlain-811Skillios-fix
Autonomous iOS bug fixer. (gstack)
Also in 5 projects that use this
seek888Skillopen-gstack-browser
Launch GStack Browser — AI-controlled Chromium with the sidebar extension baked in. Opens a visible browser window where you can watch every action in real time. The sidebar shows a live activity feed and chat. Anti-bot stealth built in. Use when asked to "open gstack browser", "launch browser", "connect chrome", "open chrome", "real browser", "launch chrome", "side panel", or "control my browser". Voice triggers (speech-to-text aliases): "show me the browser".
Also in 9 projects that use this
ayudaySkillsetup-deploy
Configure deployment settings for /land-and-deploy. Detects your deploy platform (Fly.io, Render, Vercel, Netlify, Heroku, GitHub Actions, custom), production URL, health check endpoints, and deploy status commands. Writes the configuration to CLAUDE.md so all future deploys are automatic. Use when: "setup deploy", "configure deployment", "set up land-and-deploy", "how do I deploy with gstack", "add deploy config".
Also in 17 projects that use this
- +1 more from Saqlain-811
Other versions52 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 52
- garrytan/gstack★ 141ksame name
- DenchHQ/DenchClaw★ 1.7ksame name
- DenchHQ/ironclaw★ 1.7ksame name
- autonomous-ai/autonomous-os★ 552same name
- autonomous-ai/lampOS★ 552same name
- autonomous-ai/Physical-AI-Operating-System★ 552same name
- garagon/nanostack★ 206same name
- mr-daedalium/ostack-saas★ 108same name
- no-session/pstack★ 96same name
- tranhieutt/software_development_department★ 71same name
42 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository42 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- asideSkill
- assessmentSkill
- auditSkill
- benchmarkSkill
- brainSkill
- checkpointSkill
- cleanupSkill
- concise-modeSkill
- cross-modelSkill
- deploySkill
- designSkill
- explainSkill
- fix-issueSkill
- ganSkill
- hotfixSkill
- incidentSkill
- infraSkill
- interview-meSkill
- investigateSkill
- migrateSkill
- module-auditSkill
- morningSkill
- onboardSkill
- planSkill
- profileSkill
- pr-summarySkill
- readmeSkill
- refactorSkill
- researchSkill
- resolveSkill
- respondSkill
- retroSkill
- reviewSkill
- session-logSkill
- setupSkill
- shipSkill
- skill-newSkill
- spikeSkill
- tddSkill
- testSkill
- zoom-outSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
24 rules. 0 are common, 11 are distinctive, and 13 are very specific to this project.
0
Common
Most of the 41 edited versions we read keep these.
11
Distinctive
This author's own choices. Worth a look.
13
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 40
Resolve the directory: If a directory argument is given, resolve it to an absolute path.
- Distinctive: line 42
Verify the directory exists: If it does not, abort with an error.
- Very specific: line 44
Write the freeze scope: Create ~/.claude/.freeze-scope with the absolute path.
- Very specific: line 48
Check for plan.md: Search for a spec folder with a plan.md:
- Very specific: line 49
Check <root>/plans/*/plan.md in the project workspace, per rules/project-workspace.md, then the legacy specs/*/plan.md and …
- Distinctive: line 50
If found, read the planned file list for scope comparison.
- Distinctive: line 51
If not found, skip scope protection and note it.
- Very specific: line 60
Remove the freeze scope: Delete ~/.claude/.freeze-scope if it exists.
- Very specific: line 66
Check freeze scope: Read ~/.claude/.freeze-scope if it exists.
- Distinctive: line 67
Check for plan.md: Search for an active plan.
- Distinctive: line 78
When guard mode is active, every file edit and destructive command follows these checks:
- Distinctive: line 81
Verify the file path is inside the frozen directory.
- Very specific: line 82
If scope checking is active, verify the file is listed in plan.md.
- Distinctive: line 86
Ask for explicit confirmation before executing.
- Distinctive: line 87
Never run destructive commands silently while guard is active.
- Very specific: line 91
All three protections are advisory.
- Very specific: line 95
Never auto-deactivate guard mode.
- Distinctive: line 96
All paths must be absolute, never relative.
- Very specific: line 108
Stop and refuse when an edit target resolves outside the path in ~/.claude/.freeze-scope.
- Very specific: line 109
Stop and ask for confirmation when a command matches rm, git reset, DROP, DELETE, or a dangerous-command-blocker pattern.
- Distinctive: line 110
Stop and abort activation when the directory argument does not exist.
- Very specific: line 111
Stop and warn when scope checking is active and the edit target is absent from plan.md.
- Very specific: line 115
After activation, ~/.claude/.freeze-scope holds exactly one line, an absolute path that exists.
- Very specific: line 118
After /guard off, ~/.claude/.freeze-scope is absent.
“Common” is measured: kept by at least 6 in 10 of the 41 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Overview
Activates multiple safety protections at once to reduce the risk of accidental damage during sensitive operations.
When to Use
Activate before a sensitive operation where an edit outside one directory or an unconfirmed destructive command would do damage, such as a migration, a production config change, or a bulk rename.
Arguments
| Invocation | Action |
/guard <directory> | Activate guard mode, freeze edits to the specified directory |
/guard | Activate guard mode for the current project root |
/guard off | Deactivate guard mode, remove all restrictions |
/guard status | Show current guard state |
Protections
Guard mode enables three protections simultaneously:
| Protection | What it does |
| Freeze | Restricts file edits to the specified directory. Writes to ~/.claude/.freeze-scope with the frozen path. Enforcement relies on the agent respecting the freeze file. |
| Careful | Warns before any destructive command: rm, git reset, DROP, DELETE, and patterns covered by the dangerous-command-blocker hook. |
| Scope | If a plan.md exists in the project's spec folder, compares every file edit against the planned file list. Warns when editing files not in the plan. |
Process
Activate
- Resolve the directory. If a directory argument is given, resolve it to an absolute path. If no argument, use the project root from
git rev-parse --show-toplevel. - Verify the directory exists. If it does not, abort with an error.
- Write the freeze scope. Create
~/.claude/.freeze-scopewith the absolute path. - Confirm activation. State the frozen directory path and that edits outside it will be refused. No hook reads the freeze file, so the refusal comes from the agent checking it before every edit.
- Check for plan.md. Search for a spec folder with a
plan.md:- Check
<root>/plans/*/plan.mdin the project workspace, perrules/project-workspace.md, then the legacyspecs/*/plan.mdand.claude/specs/*/plan.md. - If found, read the planned file list for scope comparison.
- If not found, skip scope protection and note it.
- Check
- Confirm activation. State:
- Frozen directory path.
- Whether scope checking is active.
- How to deactivate:
/guard off.
Deactivate
- Remove the freeze scope. Delete
~/.claude/.freeze-scopeif it exists. - Confirm deactivation. State that all guard protections are removed.
Status
- Check freeze scope. Read
~/.claude/.freeze-scopeif it exists. - Check for plan.md. Search for an active plan.
Report:
Protection Status Freeze Active: /path/to/directoryor InactiveCareful Active: always on when guard is active Scope Active: using plan.mdat<plan path>or Inactive: no plan found
Behavior While Active
When guard mode is active, every file edit and destructive command follows these checks:
- Before editing a file:
- Verify the file path is inside the frozen directory. If not, refuse the edit and state why.
- If scope checking is active, verify the file is listed in
plan.md. If not, warn and ask for confirmation before proceeding.
- Before running a destructive command:
- State the command and its potential impact.
- Ask for explicit confirmation before executing.
- Never run destructive commands silently while guard is active.
Rules
- All three protections are advisory. No hook in
hooks/reads.freeze-scope, so freeze holds only because the agent reads the file before every edit and refuses one outside it. - The
.freeze-scopefile contains exactly one line: the absolute directory path. - Activating guard a second time with a different directory overwrites the previous freeze scope.
- The freeze file stays on disk across sessions, and a new session does not read it on its own. Run
/guard statusat the start of a session that should honor it. - Never auto-deactivate guard mode. Only
/guard offremoves the freeze file. - All paths must be absolute, never relative.
Common Rationalizations
- "This file sits just outside the frozen directory, and the fix needs it": refuse the edit, state why, and let the user widen the scope with a new
/guard <directory>. - "
rmon a build directory is harmless": guard mode confirms every destructive command. State the command and its impact, then ask. - "The plan missed this file, but it obviously belongs": an unplanned file gets a warning and a confirmation.
- "Guard was on last session, so it still is": the file may remain, but nothing enforces it until this session reads it. Run
/guard statusfirst. - "A relative path is fine here": the freeze file holds one absolute path. Resolve it before writing.
Red Flags
- Stop and refuse when an edit target resolves outside the path in
~/.claude/.freeze-scope. - Stop and ask for confirmation when a command matches
rm,git reset,DROP,DELETE, or a dangerous-command-blocker pattern. - Stop and abort activation when the directory argument does not exist.
- Stop and warn when scope checking is active and the edit target is absent from
plan.md.
Verification
- After activation,
~/.claude/.freeze-scopeholds exactly one line, an absolute path that exists. - The activation message names the frozen path, the scope checking state, and
/guard off. /guard statusprints the three-row protection table matching the freeze file and plan lookup.- After
/guard off,~/.claude/.freeze-scopeis absent.
Related Skills
/investigate --freeze-- Debugging with freeze protection uses the same mechanism./plan-- Creates theplan.mdthat scope checking uses./ship commit-- Commit after completing guarded work.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

