unfreeze
The facts
Its description
Clear the freeze boundary set by /freeze, allowing edits to all directories again. (gstack) Triggers: unfreeze edits; unlock all directories; remove edit restrictions
The description the agent reads to decide when to use it. Phrases the author says should start it.
When it starts
A short cleanup command: the agent picks it when someone wants the directory-scoped edit restriction from /freeze lifted so edits are allowed everywhere again. It is a one-step teardown, not an investigation or review.
Things a person might say (the model's guesses)
- “unfreeze”
- “unlock all directories”
- “remove the edit restrictions”
A model's summary of when it is used.
Tools it may use, or may not
allowed-tools: Bash, Read
Tools it may use while it runs without asking you first.
Runs scripts
bin/gstack-paths, bin/freeze-state.sh
Scripts the text names. Found by matching words, so treat them as pointers.
What it leads to
- hands off to freeze line 36
- calls gstack-upgrade only if gstack-paths fails line 21
Other skills this one hands off to, calls, requires or offers instead, as a model read them.
What leads to it
- freeze hands off to this freeze, line 64
- gstack hands off to this PROACTIVE all, or user names it gstack, line 223
- guard hands off to this to remove the persistent edit boundary guard, line 79
Other skills that hand off to this one, call it, require it or offer it instead, as a model read them.
What leads to it
- investigate hands off to this investigate, line 278
Other skills that hand off to this one, call it, require it or offer it instead, found by matching their names, so treat them as pointers.
Licence
MIT, from LICENSE
The terms its author shares it under, which let it be shown here.
Other settings
version: 0.1.0
More settings at the top of the file, shown as written.
The text
Most marks come from matching words in the file, so treat them as pointers.
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly --> <!-- Regenerate: bun run gen:skill-docs -->
/unfreeze — Clear Freeze Boundary
Remove the edit restriction set by /freeze, allowing edits to all directories.
GSTACK_STATE_ROOT=$(~/.claude/skills/gstack/bin/gstack-paths --get GSTACK_STATE_ROOT); : "${GSTACK_STATE_ROOT:?gstack-paths failed; reinstall with ./setup or /gstack-upgrade}"
mkdir -p "$GSTACK_STATE_ROOT"/analytics
echo '{"skill":"unfreeze","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> "$GSTACK_STATE_ROOT"/analytics/skill-usage.jsonl 2>/dev/null || trueRaw lines 1 to 25Clear the boundary
bash "$HOME/.claude/skills/gstack/freeze/bin/freeze-state.sh" clearThis is explicit user-requested removal, not investigation cleanup. The shared writer serializes it with acquisition, replacement and owner-checked release. On FREEZE_BUSY or unexpected state, leave everything untouched and report recovery; never delete state or a possibly active mutation lock directly.
Tell the user the result. Note that /freeze hooks are still registered for the session — they will just allow everything since no state file exists. To re-freeze, run /freeze again.
From garrytan/gstack at 3f79d81, 2026-11-01. Skills read by DeepSeek V4.1 Flash on 2026-11-04. Summary and techniques by Claude Opus 5.5 on 2026-11-06.