File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2121
2222公開状態を直交軸とする。** Public** は CI(層3)を持つ。** Private** は CI 任意、ローカル検証で代替。
2323
24+ 検証手段は** その環境で追加インストールなしに走るもの** を選ぶ。再現性を壊す命令的なグローバル導入(` pip install ` ・` npm install -g ` 等)は禁止。標準にないツールは使い捨て環境で取り込む(本フリートは Nix 管理のため ` nix-shell -p {pkg} --run "..." ` )。Issue の ` 確認 ` 欄も、env に標準で在る手段(` php -l ` 等)か使い捨て環境/目視を書く。
25+
2426PR の ` ## 検証手順 ` には Agent 側で完結しない確認(デプロイ・ブラウザ・本番動作)を書き、user に委ねる。安全に走るものは Agent 側、危険なもの(本番・デプロイ・マージ)は user 側。
2527
2628---
Original file line number Diff line number Diff line change 1+ # Repo Guide
2+
3+ リポジトリの組成・衛生ガイド。新規リポを作るとき、および push / 公開前に点検するときに適用する。
4+ 「repo に何のファイルが存在し、何が存在してはいけないか」だけを扱う。
5+
6+ 他ガイドと責務を分ける(重複させない)。
7+
8+ | 管轄 | ガイド |
9+ | ---| ---|
10+ | ` .claude/ ` 配下(settings.json・CLAUDE.md・context/・skills) | ` harness-guide.md ` |
11+ | README の中身 | ` readme-guide.md ` |
12+ | デプロイ方式・ホスト側 ` .env ` (本番値) | ` cicd-guide.md ` |
13+ | ブランチ・Issue・コミットのプロセス | ` issue-driven-workflow.md ` |
14+ | ** repo ルートの組成・ファイル衛生** (本書) | ` repo-guide.md ` |
15+
16+ 設計意図は1点。** 全リポ一律の衛生ラインを1本持つ** 。軽い repo でも最低ラインは必ず満たす。成熟度で分岐させない。
17+
18+ ---
19+
20+ ## 1. ファイル衛生(存在のルール)
21+
22+ - ** 0 バイト/プレースホルダだけのファイルを残さない。** 中身が無いものは commit しない。枠だけ作って放置しない。
23+ - ** 成果物を tracking しない。** ビルドバイナリ・` dist/ ` ・` *.db ` ・` node_modules/ ` ・` .env ` は ` .gitignore ` で除外する。「ローカルに在ってよいが repo に入ってはいけない」を徹底する。
24+ - ** 生成物と原本を分離する。** 原本(設定の JSON 等)は tracking、そこから生成される DB・ビルド資産は ignore。
25+ - ** LICENSE を必ず置く。** 公開 repo に license が無いと法的に全権留保(誰も使えない)になるため、社会的運用の有無に関わらず法的明示の最低ラインとして置く。` Copyright ` の年・owner が正しいことまで確認する(コピペ放置をしない)。
26+
27+ ---
28+
29+ ## 2. ` .gitignore ` の基準
30+
31+ - ** そのスタックに必要な行だけを書く。** 他スタックの boilerplate(無関係な WordPress / Python / Docker 等)をテンプレ流用のまま残さない。流用したら必ず掃除する。
32+ - 重複行を残さない(同じパスを複数回書かない)。
33+ - 最低限カバーする対象: OS ファイル / 依存(` node_modules ` 等)/ ビルド成果物 / ローカル DB / ` .env ` 。
34+
35+ ---
36+
37+ ## 3. シークレット(repo 面)
38+
39+ - ` .env ` は ignore し、** ` .env.example ` を必ず置く** (実値なし、キーのみ)。
40+ - 人間が読む地の文に固有接続情報を直書きしない。マスク辞書 ` ~/dotfiles/secrets-agents/ ` に従う(global CLAUDE.md の repo 面での適用)。
41+ - ホスト側に置く本番 ` .env ` は repo の管轄外(` cicd-guide.md ` )。
42+
43+ ---
44+
45+ ## 4. 公開前チェックリスト
46+
47+ push / 公開前に走らせる。
48+
49+ ```
50+ [ ] 0 バイト/プレースホルダのみのファイルがない
51+ [ ] tracking 済みに成果物(バイナリ/dist/db/node_modules)が無い (git ls-files で確認)
52+ [ ] .gitignore に無関係スタックの残骸・重複行が無い
53+ [ ] .env が tracking されておらず、.env.example がある
54+ [ ] LICENSE が存在し、年/owner が正しい
55+ [ ] 地の文にシークレット直書きが無い
56+ ```
You can’t perform that action at this time.
0 commit comments