日本語フォルダ名を守るはずのフックが、一度も止めてくれませんでした — Python の stdin が cp932 で読んでいた話
「経理」「議事録」などの日本語フォルダを守る PreToolUse フックが、Python の stdin 既定が cp932 の環境では素通りします。再現の手順と 3 行の直し方、確認用の 1 コマンドを書き残します。
onFailure を block にしても、jq が無い環境では公式例の rm -rf ブロックは素通りしました
PreToolUse の門番フックは、落ちたときに通すのか止めるのか。公式例を jq の無い環境で走らせると exit 0 で素通りしました。終了コード10通りの実測、直し方、settings.json を走査して素通りを洗い出すスクリプトをまとめます。
「コミットは私がします」と書いたのに git log に一行増えていた朝、指示を強めるのをやめました
Claude Code に「コミットしないで」と頼んだのにコミットされたとき、まず git reset --soft で戻し、permissions.deny と PreToolUse hook の二層で物理的に止める手順です。deny ルールが素通しする git -c の形と、hook の試し方を書き残します。
戻ってしまう指示を、会話・スタイル・設定ファイル・フックのどこに置くか
コメントを付けないで、この語は訳さないで。伝えたはずの指示が数往復で戻ってくるとき、直すのは言い方ではなく置き場所です。会話・スタイル・プロジェクト設定ファイル・フックの四つの層を同じ一文で比べ、どの指示をどこへ移すかの判断基準をお伝えします。
モデル切り替えの記録と歯止めを、フック2本で作る
PreModelSwitch と PostModelSwitch を使い、無人実行中のモデル切り替えを記録するフックと、約束していない切り替えだけを止めるフックをゼロから作ります。実測値つきの手順です。
検証スクリプトの出力を、そのまま hook から返してはいけません
hook に足した検査は正しく動いていたのに、会話のほうが先に容量を使い果たしていました。833ファイルで58バイトの検査と42KBの検査を実測で並べ、出力が会話に届く経路と、予算を機械的に守らせるラッパーの書き方をまとめます。
Todo ツールが既定オフになった Claude Code で、多段作業の進捗をどう追うか
Claude Code v2.1.233 以降、新しいモデルでは TodoWrite と Task 系ツールが既定で読み込まれません。環境変数で戻す前に確かめるべき3つの分岐と、チェックリストの代わりに置いた作業台帳の実装、並列実行で台帳が壊れた境界の実測結果をまとめます。
作業ルートを途中で足したとき、無視規則と deny はどこまで届くのか — DirectoryAdded で境界を測り直す
セッション途中で作業ルートを追加すると、無視規則も deny パターンもそのままでは新しいルートに届きません。git check-ignore と照合器の比較で境界を実測し、DirectoryAdded から呼ぶ差分監査スクリプトの実行結果まで記録しました。
Claude Code Hooks — 中核8フックの設計判断と、33イベントに増えた今の歩き方
Claude Code のフックは強力ですが、どのイベントで何ができるかが曖昧で、結局使いこなせないまま終わる人が多いです。私が半年運用して辿り着いた、フック種別ごとの設計判断と典型的な落とし穴を整理します。
Claude Code で壊れないAIコーディングを回す — Plan Mode・Hooks・Rewind・Subagent を統合した失敗前提の本番運用設計
Claude Code で本番リポジトリを触ると壊れる・戻せないという不安を解消する実装ガイド。Plan Mode・Hooks・Rewind・Subagent を1つのワークフローに統合し、失敗を前提に設計された本番運用パターンを実例で解説します。
Claude Code Hooks の本番デバッグ術 — ログが足りない時、どこから切り分けるか
ローカルでは動くのに本番で沈黙するClaude Code Hooksの切り分け方を体系化しました。まず疑うべきは出力先という視点、ログ不足を補う3層の可観測性、最小再現環境を60秒で作るテクニック、JSON入出力とexit codeのプロトコル把握、マルチユーザー環境の権限診断まで扱います。
PreCompact と SessionEnd で長時間セッションの決定事項を引き継ぐ
自動コンパクションで消えるのは会話ではなく「なぜそう決めたか」です。PreCompact / SessionEnd / SessionStart の3フックで決定ログを外部ファイルへ退避し、次のセッションへ確実に手渡す実装を、動くコードと実測値つきで解説します。