Newer
Older
programming-template / .claude / rules / template-customization.md

paths: [".claude/agents/", ".claude/skills/", ".claude/rules/", ".claude/hooks/", "docs/01_GUIDE/**"]

テンプレート由来ファイルの改変記録ルール (Template Customization Rules)

テンプレート(programming-template)由来のファイルをこのプロジェクトの都合で変更するときは本ルールに従い,.claude/template-overrides.md(テンプレート改変台帳)に記録すること.記録が無いと次回の /sync-template で改変が検出・確認の対象になり,判断を誤るとテンプレート版で上書きされて改変が失われる.

適用条件 (Scope)

  • テンプレートから派生したプロジェクト(.claude/template-sync-sha が存在する)でのみ適用する.テンプレートリポジトリ自身の編集では不要
  • 対象(テンプレートが管理するファイル): .claude/agents/.claude/skills/(テンプレート提供の skill),.claude/rules/git-conventionsmarkdown-styledocs-namingprogress-log・本ルール等,テンプレート由来のもの),.claude/hooks/docs/01_GUIDE/GUIDE_01GUIDE_03
  • 対象外:
    • プロジェクトが新規に作ったファイル(立ち上げ時に作成するコーディング規約 rule,プロジェクト独自の skill / agent 等).テンプレートに存在しないので同期で上書きされない
    • CLAUDE.md.gitignoredocs/PROGRESS.md.gitattributes.claude/settings.json.これらは /sync-template の「マージ必須ファイル」として別途保護されており,台帳登録は不要
  • テンプレート由来かどうか判断に迷う場合は記録する側に倒す.余計な記録は /sync-template が「テンプレート側に存在しないパス」として警告してくれるが,記録漏れは改変の消失につながる

手順 (Procedure)

  1. 変更する前に,その変更が「プロジェクト固有の都合」か「テンプレート自体の改善」かを判断する
    • テンプレート自体の改善(誤記修正,全プロジェクトに有益な手順改善等)であれば,テンプレートリポジトリ側で直すべきことをユーザーに伝える.プロジェクト側で先に直す場合も,テンプレート側の修正に後から追従できるよう台帳には merge で登録する
  2. 変更後.claude/template-overrides.md の「台帳」表に 1 行追加する(既に行があるファイルは理由を最新化する).書式・方針(keep / merge / ask)の定義は同ファイルの「記録ルール」節に従う
    • 方針は,テンプレート側の改善も今後取り込みたいなら merge(既定.改変箇所とテンプレートの差分が別の箇所なら自動で両立する),完全に別物にしたなら keep,都度判断したいなら ask
    • 理由は「なぜテンプレートと変えたか」を 1 文で書く.次回同期時の判断材料になる
  3. 改変をやめてテンプレートに追従するときは,台帳から行を削除する(次回 /sync-template で上書き/マージされる)

禁止事項 (Prohibitions)

  • 台帳に記録せずにテンプレート由来ファイルを改変したままにしない
  • 台帳の書式を崩さない(/sync-template が機械的に読む)
  • 台帳ファイル自体の「記録ルール」節の説明文を削除しない(他メンバー・将来の自分が読む)