0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Codeをインストールした翌日にファイルを消された——最初にやるべき3つの安全設定

0
Last updated at Posted at 2026-03-30

Claude Codeを始めたばかりの方へ: この記事は「Claude Codeって何?」という段階の方でも読めるように書いています。ターミナルでClaude Codeを使い始めたら、最初にこの安全設定をしておくと安心です。

💡 6月15日に予定された課金分離(施行当日に一時停止・再実施に備える)。 自動の使用 (claude -p、 GitHub Actions、 SDK) は別の月次の枠に分離される予定だった(現在は一時停止)、 公式の値段で消費。 Migration Playbook Edition 2 ($19) で、 Path A / B' / D の判定の手引きと cache の費用の計算の経路を articulate。

Claude Codeは便利だが、危険でもある

📕 5月22日発売の Claim-Verify Handbook。 完了の主張が届くが実態の道具の呼び出しが0件の事例を130件の corpus で整理。 試し読み (約16,000字、 章1の全件) で章の構造と15件の本文の事例の articulate を読める。

Claude Codeはターミナルのフルアクセスを持つ。rm -rfもgit push --forceも実行できる。

実際に起きた事故:

  • C:\Usersディレクトリ全削除(#36339)— NTFSジャンクションをrmが追跡
  • rebase+force-pushでブランチ破壊(#32476)
  • .bashrcを勝手に書き換え(#37478)
  • 本番データベース削除(#27063)

これらはCLAUDE.mdのルールでは防げない。コンテキストが埋まると、ルールは忘れられる。
:::details 初心者向け: コンテキストとは
コンテキストとは、AIが会話中に覚えている情報の総量です。机の広さに例えると分かりやすいです。机の上に書類を積みすぎると、最初に置いた大事なメモが埋もれて見えなくなる——AIも同じで、情報が増えすぎると最初に指示されたルールを「忘れて」しまいます。
:::

この記事の安全設定はすべて無料です。まず下の手順をそのまま入れてください。

そのうえで、「翌日にファイルが消えた」ような取り返しのつかないデータ消失を、設定で先回りして防ぐ手立てと、起きてしまった後の取り戻し方までまとめて押さえたい人は、シリーズで購入の件数が一番多いAnthropic 公式ガイドにない事故防止本(第3章まで無料)に章ごとに整理しています。データ消失は起きてからでは戻せないことが多いので、入口で止めるのが一番安全です。

解決策:Hooks

:::details 初心者向け: hookとは
hookとは「特定のタイミングで自動実行されるスクリプト」のことです。玄関のドアに付けるチェーンロックのようなもので、危険な操作が実行される「前」に自動でチェックし、危なければ止めてくれます。
:::

Claude CodeのHooks機能は、ツール実行の前後にシェルスクリプトを実行する仕組み。

hookには3つのタイミングがある。料理に例えると、「食材を切る前にチェック(PreToolUse)」「料理が出来上がった後にチェック(PostToolUse)」「食事が終わったときにチェック(Stop)」のようなものだ。

  • PreToolUse — ツール実行前(ここでブロック可能)
  • PostToolUse — ツール実行後(結果チェック)
  • Stop — Claude応答完了時

exit code 2で終了すると、その操作はブロックされる。

:::details 初心者向け: exit codeとは
exit code(終了コード)はプログラムが終了するときに返す数字です。0は「成功」、それ以外は「何か問題あり」を意味します。Claude Codeのhookでは特別に、exit code 2が「この操作をブロックせよ」という合図になっています。
:::
モデルはこれをバイパスできない。プロセスレベルで強制される。

ステップ1:安全hookをインストール(30秒)

npx github:yurukusa/cc-safe-setup

8つのhookが自動インストールされる:

Hook 防ぐもの
destructive-guard rm -rf /、git reset --hard、git clean
branch-guard main/masterへのpush、force-push
secret-guard git add .env、鍵ファイルのコミット
syntax-check Python/JS/JSONの構文エラー検出
context-monitor コンテキスト残量警告(40/25/20/15%)
comment-strip bashコメントによるパーミッション破壊防止
cd-git-allow cd && git logの自動承認
api-error-alert APIエラーによるセッション死亡通知

ステップ2:動作確認(30秒)

npx github:yurukusa/cc-safe-setup --verify

各hookにテスト入力を送り、正しくブロックされるか確認する。

✓ destructive-guard: blocks rm -rf /
✓ destructive-guard: allows rm -rf node_modules
✓ branch-guard: blocks git push --force to main
...
14/14 tests passed.

ステップ3:環境の健康診断(30秒)

npx github:yurukusa/cc-safe-setup --quickfix

よくある問題を自動検出・修正する:

  • jqの有無(hookのJSON解析に必要)
  • hookファイルの実行権限
  • settings.jsonの構文エラー
  • 壊れたファイル参照
  • shebang行の欠落

ステップ4:プロジェクトに合ったhookを追加(2分)

637のサンプルhookを確認:

npx github:yurukusa/cc-safe-setup --examples

名前を指定してインストール:

# データベース操作をブロック
npx github:yurukusa/cc-safe-setup --install-example block-database-wipe

# Docker操作を自動承認
npx github:yurukusa/cc-safe-setup --install-example auto-approve-docker

# デプロイ前のコミット確認
npx github:yurukusa/cc-safe-setup --install-example deploy-guard

# プロジェクト外のファイル操作をブロック
npx github:yurukusa/cc-safe-setup --install-example scope-guard

# Pythonツールを自動承認
npx github:yurukusa/cc-safe-setup --install-example auto-approve-python

自然言語でカスタムhookを生成することもできる:

npx github:yurukusa/cc-safe-setup --create "npm publishの前にテストを実行したか確認"

ステップ5:監視(任意)

リアルタイムダッシュボード:

npx github:yurukusa/cc-safe-setup --dashboard

ブロック統計:

npx github:yurukusa/cc-safe-setup --stats

hookの仕組み(最小限の理解)

hookは~/.claude/settings.jsonに登録されたシェルスクリプト。

:::details 初心者向け: settings.jsonとは
~/.claude/settings.jsonはClaude Codeの設定ファイルです。ホームディレクトリの.claudeフォルダの中にあります。hookの登録情報やその他の設定が書かれたJSON形式のファイルで、Claude Codeが起動時に読み込みます。
:::

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "bash ~/.claude/hooks/destructive-guard.sh"
          }
        ]
      }
    ]
  }
}

hookの中身(簡略版):

#!/bin/bash
# 標準入力からJSON(ツール名、引数など)を受け取る
COMMAND=$(cat | jq -r '.tool_input.command // empty')

# 危険なコマンドを検出
if echo "$COMMAND" | grep -qE 'rm\s+.*-rf\s+/'; then
  echo "BLOCKED: ルートディレクトリの削除" >&2
  exit 2  # ← これでブロック
fi

exit 0  # ← これで許可

exit 2 = ブロック。これだけ覚えればいい。

CLAUDE.mdとhookの違い

CLAUDE.md Hooks
仕組み プロンプトに含まれるルール プロセスレベルのスクリプト
強制力 コンテキスト依存(忘れる) 常に実行される
バイパス モデルが無視できる モデルが無視できない
用途 行動指針、コードスタイル 安全制約、承認制御

CLAUDE.mdは「お願い」。Hooksは「強制」。

両方使うのがベスト。CLAUDE.mdで方針を伝え、Hooksで安全を保証する。

インタラクティブに試す

コマンドを入力すると、どのhookが反応するかリアルタイムで表示されるWebツール:

Hook Playground

rm -rf /やgit push origin mainを入力して、hookの動作を確認できる。

まとめ

# これだけで安全になる
npx github:yurukusa/cc-safe-setup --shield

1コマンド、30秒。自律的なClaude Codeセッションが、よくある事故から保護される。


リソース:


hookの仕組みをもっと詳しく知りたい場合はClaude Code公式ドキュメントのHooksセクションを参照。

hookの設計パターンや自律セッション運用での失敗談を体系的にまとめたClaude Codeを本番品質にする — hook設計・運用ガイド(第3章まで無料)もあります。非エンジニアが800時間AIを走らせた全記録はAIに仕事を任せてみた(¥800・第3章まで無料)。

設定が正しいか不安な方へ
無料で診断: npx cc-health-check で安全スコアを即座に確認できます。プロによる詳細レビュー($50〜)も受付中。

「どのhookを入れればいいかわからない」なら → Hook Selector(5つの質問で最適なhookセットを推薦)
「CLAUDE.mdのトークンコストが気になる」なら → Token Checkup(トークン消費パターンを診断)


📖 トークン消費に困っているなら → Claude Codeのトークン消費を半分にする——800時間の運用データから見つけた実践テクニック(¥2,500・はじめに+第1章 無料)

📖 非エンジニアがClaude Codeで事業を回した全記録(¥800) — $800のAIコストで¥6,000を稼ぐまでの失敗と改善。第2章まで無料


⚠️ CVE-2026-21852(2026年4月公開): プロジェクト内.claude/settings.json経由でAPIキー窃盗。対策: npx github:yurukusa/cc-safe-setup(ユーザーレベル設定で免疫)→ 詳細

⚠️ 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 github:yurukusa/cc-safe-setup --opus47(Survival Guide / Safety Scanner)

📚 関連商品 (2026 年 5 月 22 日発売): 本記事の「ファイルを消された」 系の取り返し不能の操作の事例の継続を 27 件の事例として整理した Claim-Verify Handbook (Gumroad、 19 米ドル) と、 不可逆な操作への対応の Path A / Path B / Path D の判定の樹を含む Migration Playbook 第 2 版 (Gumroad、 19 米ドル、 第 1 版の購入者は無償の更新)。


📡 月次の事故の集積を継続で受け取る (Claude Code 安全運用便、 ¥500/月)
本記事の「最初にやるべき3つの安全設定」 の段の延長として、 毎月の新しい事故の集積と新しい安全の設定の追加を月次の手引きで継続で受け取れる note の月額の購読を運用中。 9件の事例 + 2-3件の動作確認済の hook + 1件の深掘り章で整理した月次の手引きを配信。 価格は¥500/月で (後の値上げの段でも¥500/月を継続)。
会員制の試し読み章 (約3,500字、 cache_control 空テキストブロックの3層の原因) → Claude Code 事故まとめ(無料・月次)
Max plan の事故1件で1年分の費用を回収の前提で設計 (5/22発売の事例集の段とは独立、 月次の継続の更新の段の補完)。

本記事の主題の延長で、 直接の運用の道具と継続の整理の経路:
毎月の予防の素材 (月額 ¥500): Claude Code 事故まとめ(無料・月次)。 月次の事故の roundup と新規の hook の design の articulation。 2026年6月号は6月15日の Anthropic の課金分離 (claude -p と Agent SDK の credit pool 分離) の準備の章を含む。
過去の事故の corpus (¥4,350): Postmortems の集まり。 130件以上の Claude Code の事故の forensic の記録。 試し読み (cache TTL の incident、 全文約2,200語) は無料で読める。
6月15日に予定された課金分離(当日に一時停止・再実施に備える)への備え ($19): Migration Playbook。 47頁の判定の枠組み、 留まる・切り替える・混合の経路の articulate。 試し読み (Trigger 15 = 6/15 の章の全文、 日本語版) は無料で読める。


ほかにも、800時間の運用データから、トークン消費の削減・複数ベンダー(Claude / Codex / Gemini / Copilot)の並行運用・サブエージェントの沈黙の失敗対策など、テーマ別の手引きを公開しています。気になる人は著者の本の一覧から、価格と評価を見て選べます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?