⚠️ Opus 4.7緊急情報(2026年4月17日)
Opus 4.7のauto mode安全分類器がOpus 4.6にハードコードされている問題が発覚。3日間で23件以上のデータ損失。さらにv2.1.100以降、APIコールごとに約20,000トークンが見えない場所で追加課金されている問題も判明(#46917、GitHub上196件のリアクション)(50GB永久消失含む)。4倍のトークン消費も報告されている。対策: npx cc-safe-setup --opus47(Survival Guide / Safety Scanner)
Claude Codeを始めたばかりの方へ: この記事は「Claude Codeが勝手にファイルを削除してしまう事故」とその防ぎ方を解説しています。難しい設定は不要で、1コマンドで対策できます。
何が起きたか
GitHubのClaude CodeリポジトリにIssue #36339が投稿された。
:::details 初心者向け: 自律モードとは
自律モードとは、Claude Codeが人間の承認なしに次々とコマンドを実行するモードです。通常は「このコマンドを実行していいですか?」と確認がありますが、自律モードではその確認をスキップして連続的に作業を進めます。効率的ですが、安全対策なしだと危険な操作も止められません。
:::
自律モードのClaude Codeがrm -rfをプロジェクトディレクトリに実行した。Windows 11 + WSL2の環境。ディレクトリにはNTFS junction(シンボリックリンクの一種)が含まれていた。
:::details 初心者向け: NTFSジャンクションとは
NTFSジャンクションは、Windowsのファイルシステムにある「別の場所への近道」です。フォルダAを開いたら、実は中身はフォルダBのファイルだった——という仕組みです。rm -rfがこの近道を辿ると、本来削除するつもりのなかった場所まで削除してしまいます。
:::
rm -rfはjunctionを辿り、プロジェクトディレクトリだけでなくC:\Users配下を全削除した。
ドキュメント、ダウンロード、デスクトップ。全部消えた。
なぜ起きたか
Claude Codeはデフォルトで安全フックが0個。rm -rf /を実行しても止める仕組みがない。車にたとえると、ABSもエアバッグも付いていない状態で高速道路を走るようなものだ。
ドキュメントにはフックの存在は書いてある。でも自動設定はされない。自分でbashスクリプトを書いて、settings.jsonに登録する必要がある。ほとんどの人はやらない。
作ったもの
npx cc-safe-setup
10秒で637種の安全フックを自動インストールする。
| フック | 何を防ぐか |
|---|---|
| Destructive Guard |
rm -rf /、rm -rf ~、rm -rf ..。git reset --hard、git clean -fdもブロック |
| Branch Guard | main/masterへの直接push |
| Syntax Check | Python/Shell/JSON/YAML/JSの構文エラーを編集直後に検出 |
| Context Monitor | コンテキストウィンドウが80%を超えたら警告 |
各フックは実際の事故から作られた。Destructive Guardは#36339のrm -rf事故。Branch Guardは深夜3時にmainにpushされた事故。Syntax Checkは構文エラーが30ファイルに連鎖した事故。
仕組み
-
~/.claude/hooks/に4つのシェルスクリプトを書き出す -
~/.claude/settings.json(Claude Codeの設定ファイル)にフック登録を追加 - Claude Codeを再起動すれば有効
フックはPreToolUse(コマンド実行前)とPostToolUse(ファイル編集後)の2種類。PreToolUseフックがexit 2を返すとコマンドがブロックされる。
:::details 初心者向け: PreToolUseとexit 2とは
PreToolUseは「ツールを使う前」というタイミングを意味します。Claude Codeがコマンドを実行しようとした瞬間に、hookスクリプトが割り込んでチェックします。そしてexit 2(終了コード2)を返すと、「この操作は危険なので実行させません」という合図になり、コマンドが強制的にブロックされます。
:::
Destructive Guardの核心部分:
# rm on sensitive paths → ブロック
if echo "$COMMAND" | grep -qE 'rm\s+(-[rf]+\s+)*(/$|/\s|/home|~)'; then
echo "BLOCKED: rm on sensitive path" >&2
exit 2
fi
# ただしnode_modules/dist/buildは許可
インストール後
セットアップの確認:
npx cc-health-check
cc-safe-setupで637種の安全フックをインストールすると、Safety Guardsスコアが50% → 90%に上がる。
全体像
npx cc-health-check → 診断(無料)
npx cc-safe-setup → 8フック修正(無料)
cc-safe-setup → 637フック全部(無料OSS)
Claude Codeの破壊的操作を物理的にブロックしたい方へ
Anthropic公式ガイドにない事故防止——Claude Code 800+時間で19点→85点にした全記録では、rm -rf防止、ブランチ保護、secret漏洩防止など658個のhookパターンを解説しています。
「AIに任せて大丈夫なのか」という不安を持ったまま800時間使い続けた記録は非エンジニアがClaude Codeを800時間走らせた——失敗と学びの全記録(¥1,500・第2章まで無料)に書いた。
関連記事
- Anthropic公式「Skills完全ガイド」 — SKILL.mdの設計パターン
- PreToolUseフックで危険な操作を自動ブロックする — hookの具体的な実装
- 108時間無人で走らせて起きた全事故と安全装置 — 長時間運用の実事故
📖 トークン消費に困っているなら → Claude Codeのトークン消費を半分にする——800時間の運用データから見つけた実践テクニック(¥2,500・はじめに+第1章 無料)