| name | safety-guard |
| description | 프로덕션 시스템에서 작업하거나 에이전트를 자율 실행할 때 파괴적 작업을 막기 위해 사용하는 스킬입니다. |
| origin | ECC |
Safety Guard — 파괴적 작업 방지
사용 시점
- 프로덕션 시스템에서 작업할 때
- 에이전트가 자율적으로 실행 중일 때
- 수정 범위를 특정 디렉터리로 제한하고 싶을 때
- 마이그레이션, 배포, 데이터 변경 같은 민감한 작업 중일 때
동작 방식
세 가지 보호 모드를 제공합니다.
모드 1: Careful Mode
실행 전에 파괴적 명령을 가로채고 경고합니다.
감시 패턴:
- rm -rf (특히 /, ~, 프로젝트 루트)
- git push --force
- git reset --hard
- git checkout . (모든 변경 폐기)
- DROP TABLE / DROP DATABASE
- docker system prune
- kubectl delete
- chmod 777
- sudo rm
- npm publish (실수 배포)
- --no-verify가 포함된 모든 명령
감지되면:
- 명령이 무엇을 하는지 보여준다
- 확인을 요구한다
- 더 안전한 대안을 제안한다
모드 2: Freeze Mode
파일 수정을 특정 디렉터리 트리로 잠급니다.
/safety-guard freeze src/components/
src/components/ 밖의 Write/Edit는 설명과 함께 차단됩니다. 에이전트가 관련 없는 코드를 건드리지 않고 한 영역에만 집중하게 만들 때 유용합니다.
모드 3: Guard Mode (Careful + Freeze)
두 보호를 동시에 활성화합니다. 자율 에이전트에 가장 안전한 모드입니다.
/safety-guard guard --dir src/api/ --allow-read-all
에이전트는 어디든 읽을 수 있지만 src/api/에만 쓸 수 있습니다. 파괴적 명령은 모든 위치에서 차단됩니다.
잠금 해제
/safety-guard off
구현
PreToolUse 훅으로 Bash, Write, Edit, MultiEdit 호출을 가로챕니다. 실행 허용 전에 현재 활성 규칙과 명령/경로를 대조합니다.
연동
codex -a never 세션에서는 기본 활성화를 고려합니다.
- ECC 2.0의 observability risk scoring과 함께 사용합니다.
- 차단된 모든 작업은
~/.claude/safety-guard.log에 기록합니다.