社内アプリの必須機能を、ルール文書ではなくデプロイ直前の hook で強制する(Claude Code)
「全アプリに○○を入れる」が文書だけで守られない問題を、本番反映コマンド直前の PreToolUse hook で未搭載・台帳未登録を deny して潰す型。除外ファイル・fail-open・全PC配布・テスト一覧つき
約9.5万トークンの節約 (API料金換算で約140円分)。 要件定義・技術調査・試行錯誤ぶんのトークンがまるごと不要になります。※ 出品者申告とレビューに基づく推定値。モデル・タスク内容により変動します。
この巻物について
「社内アプリの必須機能を、ルール文書ではなくデプロイ直前の hook で強制する(Claude Code)」は、開発プロセスカテゴリのAI指示書(MDファイル)です。「全アプリに○○を入れる」が文書だけで守られない問題を、本番反映コマンド直前の PreToolUse hook で未搭載・台帳未登録を deny して潰す型。除外ファイル・fail-open・全PC配布・テスト一覧つきこの巻物をAIに読み込ませると、ゼロから設計・調査する場合に比べて 約9.5万トークン(API料金換算で約140円)・79%のトークンを節約できます。
- カテゴリ
- 開発プロセス
- 対応AI
- claude-code、cursor、codex-cli
- ライセンス
- 商用利用可 (再販不可)
- 価格
- 無料
- ゼロから開発時
- 約12万トークン
- この巻物使用時
- 約2.5万トークン
- 節約量
- 約9.5万トークン (約140円)
- 更新日
- 2026-10-10
使い方 (AIに渡す3つの方法)
いちばん簡単なのはワンライナー。Claude Code のターミナルに貼るだけです。
claude "https://makimono-md.vercel.app/api/v1/files/hook-claude-code-2/raw を読み込んで、この指示書どおりに実装して"
中身
社内アプリの「必須機能」をルール文書ではなく、デプロイ直前の hook で強制する(Claude Code)
何が起きるか(よくある失敗)
「社内アプリには必ず〇〇を入れる」(例: 不具合・要望フォーム、利用規約リンク、エラー通知)を、CLAUDE.md などのルール文書に書くだけで運用している。
- ルール文書が長くなると、該当節が毎回は読まれない(自動ロードされない別ファイルにあることも多い)。
- その結果、新しいアプリが作られ、何度も改修・本番デプロイされても、必須機能が一度も入らないまま運用される。
- 必須機能に「後段の処理」(例: 投稿 → Issue 化 → 対応完了時に投稿者へ通知)がある場合、後段の対象アプリ一覧がコードにハードコードされていると、新アプリは機能を入れても後段に乗らない。
対策の型
「本番反映コマンドの直前」に機械的に点検し、満たさなければ止める。
1. PreToolUse hook(matcher: Bash|PowerShell)を1本作る
- 発火条件: コマンドが本番反映系に一致したとき。
- 例:
vercel deploy/vercel --prod/vercel/dist/vc.js deploy/clasp push/clasp deploy/netlify deploy/wrangler deploy/firebase deploy/npm run deploy
- 例:
- 対象ディレクトリの解決:
- hook 入力の
cwdを基本にする。 - コマンド先頭の
cd <dir> &&、Set-Location <dir>、--cwd <dir>、-C <dir>を優先する。 - Windows の Git Bash 形式
/d/fooはD:/fooに読み替える(読み替えないと別ドライブを見て素通りする)。 - そこから親へ辿り、
package.json/appsscript.json/.clasp.jsonがある最初のディレクトリをプロジェクトルートにする。
- hook 入力の
- 種別判定:
package.jsonの依存にnextがあれば Next.js、appsscript.jsonか.clasp.jsonがあれば GAS。- それ以外は対象外として通す。
- 搭載判定: 必須機能の目印(コンポーネント名・関数名などの固有文字列)を、ソースディレクトリから grep する。
node_modules、.next、.git、dist、build、outは除外する。- 走査は最大2000ファイルまでとし、上限に達したら通す(遅延防止)。
- 未搭載なら
permissionDecision: "deny"を返す。理由文には次を入れる。- 導入コマンド
- 導入後の検証方法
- 除外の方法
- 例外・JSON パース失敗は必ず通す(fail-open)。hook のバグで全デプロイを止めないため。
2. 除外の逃げ道を「理由つきファイル」にする
- リポジトリ直下に
.feature-exemptのようなファイルを置き、中身が空でなければ通す。空なら除外扱いにしない。 - 理由が残るので、後から監査できる。人の確認を取ってから置く運用にする。
3. 後段の対象一覧をハードコードから台帳ファイルへ
apps.json(アプリ名 → リポジトリ)を新設し、後段処理の対応表にマージする。- 同じ hook で「機能はあるが台帳に未登録」も deny する。
- 例: Next.js なら API ルートに焼き込まれた
APP_NAMEを読み、台帳を引く。
- 例: Next.js なら API ルートに焼き込まれた
- これで「入れたのに後段(通知・完了報告)が動かない」状態を本番に出さない。
- 台帳の配布反映を待てないときのために、環境変数でも登録扱いにできる口を用意しておく。
4. 全PCへの配布
- hook 登録スクリプトと、セットアップ時の点検項目(
settings.jsonに hook 名が含まれるか)の両方に追加する。 - 片方だけだと、配布漏れが検知されない。
テスト(node:test)
最低限、次を一時ディレクトリのフィクスチャで確かめる。
- 未搭載 → deny
- 搭載済み → 通す
- GAS の未搭載 → deny
- 理由ありの除外ファイル → 通す
- 空の除外ファイル → deny
- 非デプロイコマンド → 通す
cd "<dir>" && ... deployの対象解決- 非アプリディレクトリ → 通す
- 台帳に未登録 → deny
- 台帳に登録済み → 通す
- 子プロセス起動で壊れた JSON を渡すと exit 0・出力なし
落とし穴
- リポジトリに「相対 import がディレクトリ外へ出ない」などの静的検査があると、フィクスチャ文字列の
import X from '../x'が本物の import と誤認されて CI が落ちる。フィクスチャには import 文を書かない(例:<FeatureWidget />の JSX だけにする)。 - 後段の定期処理が「認証情報が未設定ならスキップして exit 0」になっていると、ログ上は毎晩成功に見えて実は何もしていない。
- スキップは成功と区別して記録する。
- 必須機能の導入完了は「実際に着信を確認したこと」で判定する。
- JS 構成の Next.js 14 に .ts/.tsx を足すと、自動生成された tsconfig は target 未指定になり、
Mapの for-of 反復で型エラーになる。"target": "es2017"を足す。typescript/@types/react/@types/nodeは明示的にインストールする(自動インストールが失敗することがある)。
よくある質問
+「社内アプリの必須機能を、ルール文書ではなくデプロイ直前の hook で強制する(Claude Code)」とは何ですか?
「全アプリに○○を入れる」が文書だけで守られない問題を、本番反映コマンド直前の PreToolUse hook で未搭載・台帳未登録を deny して潰す型。除外ファイル・fail-open・全PC配布・テスト一覧つき
+どれくらいトークン(費用)を節約できますか?
ゼロから開発すると約12万トークンかかりますが、この巻物を使えば約2.5万トークンで済みます。差し引き約9.5万トークン(API料金換算で約140円)・79%の節約です。
+どうやって使いますか?
無料です。MDファイルを Claude Code などのAIに読み込ませるだけ。ワンライナーをターミナルに貼れば実装が始まります。要件定義や技術調査を省いて実装だけにトークンを使えます。
+どのAIツールに対応していますか?
claude-code、cursor、codex-cli に対応しています。
+商用利用できますか?
ライセンスは「商用利用可 (再販不可)」です。
🤝 自分でAIを動かすのは、まだ不安…という方へ
この巻物の内容を、AIを使うプロに丸ごと任せることもできます。姉妹サービスAI代行堂なら「LINEで頼むだけで、仕事が完成」。
関連する巻物
スマホ(Remote Control)から即相談できる Claude Code タブを VS Code に毎朝自動で用意する
自作VS Code拡張で公式Claude Codeのコマンド(editor.openLast/newConversation/renameSessionTab)を叩き、名前付きタブをN本自動補充。夜間はWM_CLOSE→再起動で毎朝揃える。--bg/ターミナル経路・タブ0でのnewConversation・SendKeys再読み込みが失敗する実測付き
夜間ジョブ異常を通知で終わらせず自動修復→AI修理PR→人へ引き渡す閉ループ
監視の『検知して通知』の後段に、決定的Playbook→AIコーダーの隔離worktree修理PR→持ち越し→人への3要素引き渡し、を足す実装指示書。argvで指示を渡すな等の実測の落とし穴つき
ドキュメント駆動開発プロセス CLAUDE.md — 作るものを固めてから書かせる
「AIが暴走して意図と違うものを作る」を根絶する開発プロセス指示書。UI仕様→機能設計→実装の順をAIに強制し、1ファイルごとに承認ゲートを挟む。受託開発・チーム開発向け。
この巻物、誰かのトークンも救えます
𝕏 で節約レシートをシェア