
Freeze
Scope or freeze which files Claude can edit during debugging, a refactor, or review.
Install
npx skills add oliver-kriska/claude-elixir-phoenix --skill freeze -g -a claude-code -y- Repository
- oliver-kriska/claude-elixir-phoenix572
- Category
- Testing
- Updated
- 5d ago
- License
- MIT
- Context cost
- Lightabout 635 tokens
- Runs scripts
- No, instructions only
What it does
Scope or freeze which files Claude can edit during debugging, a refactor, or review. Use when edits should stay in specific dirs, or for a read-only investigate lock. Backed by a sentinel + PreToolUse hook.
Freeze, scoped edit lock
Toggle a project-local edit lock so Claude can only modify the files you intend
during a focused task (debugging, a tight refactor, a review pass). Enforced by
the freeze-gate.sh PreToolUse hook, which denies Edit/Write/NotebookEdit
outside the allow-list. No sentinel = no lock; the hook stays dormant.
The lock lives in .claude/.freeze, one allowed path prefix per line,
project-relative. Empty file = freeze everything.
Usage
/phx:freeze [args], resolve $ARGUMENTS and run the matching Bash branch.
| Invocation | Effect |
|---|---|
/phx:freeze | Freeze ALL edits, read-only investigation mode |
/phx:freeze lib/app_web priv/repo | Allow edits only under these dirs |
/phx:freeze status | Show current lock state |
/phx:freeze off | Lift the lock (delete the sentinel) |
Freeze all edits (investigation mode)
mkdir -p .claude && : > .claude/.freeze
echo "Freeze ON, all edits blocked. Lift with /phx:freeze off"
Scope edits to specific directories
mkdir -p .claude
printf '%s\n' lib/app_web priv/repo > .claude/.freeze
echo "Freeze ON, edits limited to: lib/app_web priv/repo"
Map $ARGUMENTS to the dirs the user named. Include any directory you still need
to write to, e.g. add .claude if progress/scratchpad logging must continue.
Show status
if [ -f .claude/.freeze ]; then
if [ -s .claude/.freeze ]; then echo "Freeze ON, limited to:"; cat .claude/.freeze
else echo "Freeze ON, ALL edits blocked"; fi
else echo "Freeze OFF, no edit lock"; fi
Lift the lock
rm -f .claude/.freeze && echo "Freeze OFF, edits unlocked"


