freeze
An agent skill by garrytan, from garrytan/gstack. Tags: configuration, validation, workflow.
What it does
Restrict file edits to a specific directory for the session. (gstack)
Install
With the skills CLI, which installs into Claude Code, Codex, Cursor and other agents:
npx skills add garrytan/gstack --skill freeze
Or copy the skill folder into Claude Code's skills directory by hand (~/.claude/skills for every project, or .claude/skills inside one):
git clone --depth 1 https://github.com/garrytan/gstack
cp -r gstack/freeze ~/.claude/skills/freeze
Safety box score
Grade B, low risk: 14 of 100 risk points, rated 2026-10-16. The grade rates what the skill and its scripts can reach on the machine of whoever installs it, across eight categories from shell execution to secrets access. How the score works.
This skill installs a pre-edit hook that runs a shell script on every Edit/Write/NotebookEdit and persists a freeze boundary in the user’s gstack state under the home directory. The main risks are local shell execution, persistent state outside the project workspace, and the ability to block future edits until the boundary is cleared.
| Category | Level | Why |
|---|---|---|
| Code & shell execution | 2 (moderate) | It wires PreToolUse hooks to `bash -c "exec bash .../bin/check-freeze.sh"` for Edit, Write, and NotebookEdit, so every matching tool call executes shell code. |
| Network access | 0 (none) | No downloads, uploads, API calls, or remote endpoints appear in `SKILL.md`, `bin/check-freeze.sh`, or `bin/freeze-state.sh`. |
| Filesystem reach | 2 (moderate) | `bin/freeze-state.sh` creates, updates, and deletes persistent state files such as `freeze-dir.txt` and `.freeze-mutation.lock` under the gstack state root in the user’s home area. |
| Secrets & credentials | 0 (none) | The files do not read browser sessions, keychains, `.env` files, tokens, or passwords; they only manage freeze-boundary state. |
| Privilege & persistence | 0 (none) | There is no `sudo`, global install, service registration, shell startup modification, or OS-level configuration change. |
| Instruction hijack surface | 0 (none) | I found no instructions to ignore policies, fetch and trust remote content, hide behavior, or otherwise override the agent’s controls. |
| Irreversible actions | 0 (none) | The skill gates editing permissions, but it does not send messages, deploy, publish, pay, book, or take external irreversible actions. |
| Transparency | 0 (none) | The shipped files are plain-text markdown and bash scripts; there are no binaries, minified blobs, or unreviewable installers. |
Before installing
- Read `bin/freeze-state.sh` and confirm you are okay with persistent state under the gstack home state directory.
- Verify the hook path in `SKILL.md` points to the intended local install and that you trust the shared helper it sources.
- Test `/unfreeze` and boundary recovery once in a scratch session so you know how to clear a stuck freeze.
Rated 2026-10-16 by an automated review of 3 files from the skill's repository.
Source
- Repository
- garrytan/gstack (all skills from this repository)
- Path
- freeze/SKILL.md
- Branch
- main
- Updated
- 2026-10-05
Related skills
- check-agent-compatibility
- cli-for-agents — Designs or reviews CLIs so coding agents can run them reliably: non-interactive flags, layered --help with examples, stdin/pipelines, fast actionable errors.
- create-verification-skill — Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform.
- maintain-verification-skill — Periodic pass that keeps a project's verification skill and feature map honest: parallel source readers per feature, one live session driving every feature.
- principle-encode-lessons-in-structure — Apply when you catch yourself writing the same instruction a second time, or notice a recurring correction.
- principle-make-operations-idempotent — Apply when designing commands, lifecycle steps, or processing loops that run amid crashes, restarts, and retries.