CLAUDE.mdに書いたルールは「守られる保証のない助言」で、必ず動かしたいことはフックに回すのが公式の使い分けだと知り、自分の設定を数え直した。45個のスキル、27個のフック、約37KBの指示文書が、3つの役割のどこに入っているかを仕分けてみた。
公式ドキュメントの3役割は「助言・必要な時だけ読む手順・必ず動く」
CLAUDE.mdは文脈として読まれるだけ、スキルは関連する時だけ読み込まれ、フックだけが毎回動く。
2026年11月9日にClaude Code公式ドキュメントの3ページ(メモリ、スキル、フックのガイド)を読み直した。確認できた記述は次の3点。
- CLAUDE.mdは「文脈として扱われ、強制される設定ではない」
- スキルは「呼び出した時、または関連すると判断された時だけ」読み込まれる
- フックは「LLMの判断に頼らず、特定の動作が必ず起きる」確定的な制御
公式は、実行を確実に止めたいなら「PreToolUseフック(道具を使う直前に動く番人)」を使うよう案内している。CLAUDE.mdに「やるな」と書いても、守られるかはClaudeの判断次第になる。
CLAUDE.mdの長さも公式に目安がある。1ファイル200行未満を目標にし、長いと指示の守られ方が下がる、という説明だった。
自分の設定を数えたら、行数は目安内でも重さは約37KBだった
行数は2ファイルとも200行未満、ただし文字の重さは合計37,083バイトで、毎回の会話に積まれている。
2026年11月9日時点で、実際にファイルを数えた結果は次のとおり。
- 全プロジェクト共通のCLAUDE.md:136行・21,968バイト
- 作業フォルダのCLAUDE.md:70行・15,115バイト
- 自動メモリの目次(MEMORY.md):156行・29,391バイト
- スキル:45個、フック:27個
公式の表には、自動メモリの目次は「先頭200行または25KB」まで読み込むと書いてある。自分の目次は29,391バイトで、25KBを約4.4KB超えている。25,000バイトに達するのは133行目で、その先の23行が対象になりうる。ただしこのセッションでは目次の末尾まで見えていたので、実際に切られるかは未確認。
目次が切られるかどうかは未確認のまま、先に「長くなりすぎている」ことだけは数字で確認できた。
仕分けの基準は「機械で確かめられるか」と「いつ必要か」の2つ
確かめられるルールはフックへ、場面が限られる手順はスキルへ、判断や好みだけがCLAUDE.mdに残る。
自分のフック27個のうち、実行を止める役目を持つのは、以前の記事で数えたとおり2つだけ(コマンドの安全確認と、返答のリンク切れ確認)。リンクの書き方はもともと指示文書にも書いてあり、確認はフックが引き受けている。この形が理想の仕分けだと分かった。
同じ基準で、指示文書の中身を3つに分けてみた。
- フック向き:ファイル名が命名規則に合っているか、など機械で判定できるもの
- スキル向き:特定の作業の時だけ要る手順(すでに45個に分けてある)
- CLAUDE.mdに残す:呼び方、文体、判断の基準など、機械で判定できないもの
今回は仕分け案を出しただけで、自分の設定ファイルは書き換えていない。
今日からできること:自分の指示文書をAIに3分類させる
所要は数分。見直す対象のファイルを渡して、3分類の表を出してもらう。
この指示文書を1行ずつ読んで、次の3つに分類してください。①機械で確認できるのでフックに回せる行、②特定の作業の時だけ必要でスキルに分けられる行、③判断や好みなのでこのまま残す行。行ごとに分類と理由を一言で出し、最後に各分類の行数を集計してください。
まず行数と重さを確認する。ターミナルで「wc -lc」に指示文書のファイル名を付けて実行すると、行数とバイト数が出る。200行・25KBのどちらかに近ければ、仕分けを始める目安になる。
