From 4913ceace7a3698acd5071acc8a2b80551293ef7 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 4 Sep 2026 13:23:58 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20CLAUDE.md=20=E3=82=92=E9=9A=8E=E5=B1=A4?= =?UTF-8?q?=E5=8C=96=E3=81=97=E3=81=9F=E5=85=B1=E9=80=9A=E3=83=AB=E3=83=BC?= =?UTF-8?q?=E3=83=AB=E3=81=AB=E5=90=88=E3=82=8F=E3=81=9B=E3=81=A6=E6=95=B4?= =?UTF-8?q?=E7=90=86=E3=81=97=E3=80=81GEMINI.md=20=E3=81=A8=20.agents/rule?= =?UTF-8?q?s=EF=BC=88Antigravity=20=E7=94=A8=E5=8F=82=E7=85=A7=EF=BC=89?= =?UTF-8?q?=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .agents/rules/claude-md.md | 7 ++++++ CLAUDE.md | 48 +++++++++----------------------------- GEMINI.md | 24 +++++++++++++++++++ 3 files changed, 42 insertions(+), 37 deletions(-) create mode 100644 .agents/rules/claude-md.md create mode 100644 GEMINI.md diff --git a/.agents/rules/claude-md.md b/.agents/rules/claude-md.md new file mode 100644 index 0000000..130ecd1 --- /dev/null +++ b/.agents/rules/claude-md.md @@ -0,0 +1,7 @@ +--- +trigger: always_on +description: Read the CLAUDE.md hierarchy via GEMINI.md before doing anything in this workspace +--- + +最初に、このディレクトリの `GEMINI.md` を読み、そこに列挙された CLAUDE.md を上から順にすべて読んで従うこと。 +Read `GEMINI.md` in this directory first, then read and follow every CLAUDE.md it lists, in order. diff --git a/CLAUDE.md b/CLAUDE.md index 8330e43..c8340d4 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,5 +1,8 @@ # CLAUDE.md — claude-code Helm Chart +> **共通ルール(要約)** — 詳細は `P:\Claude\CLAUDE.md`(全体共通)と `P:\Claude\HelmChart\CLAUDE.md`(Helm チャート共通: リリースフロー・ワークフロー・Gitea Secrets)を参照。 +> 作業前に pull / 機能変更時は README 更新 / 作業単位ごとに commit → push まで / コミットに AI クレジットを付けない / pull で入った変更を revert しない / Helm はローカル実行不可(Python のみ可)。 + ## リポジトリ概要 Alpine Linux ベースの軽量コンテナで **Claude Code をリモート実行** するための Helm チャート。 @@ -11,6 +14,8 @@ Git リポジトリ(GitHub / Gitea など互換 Git 全般)をチェック - **Helm リポジトリ**: `https://git.cafepieters.com/api/packages/helmchart/helm` - **セッションイメージ**: `git.cafepieters.com/helmchart/claude-code/session:`(CI で publish) +> **注意**: セッション Pod は Gitea からリポジトリ単体を clone するため、`P:\Claude` の上位階層 CLAUDE.md は届かない。各リポジトリの CLAUDE.md 先頭に「共通ルール(要約)」を置く理由はこれ。 + ## アーキテクチャ(要点) | コンポーネント | 実体 | 役割 | @@ -28,37 +33,16 @@ Git リポジトリ(GitHub / Gitea など互換 Git 全般)をチェック - ファイル実体は `files/`(`.Files.Get` で ConfigMap 化): `manager.py` / `session-entrypoint.sh` / `gateway.conf.template` / `gateway-entrypoint.sh` / `Dockerfile.session`。 -## 実行環境について +## README 更新時の追加事項 -**Helm はこのマシンにインストールされていない。** ローカルで `helm lint` / `template` は実行できない。 -テンプレートの検証はステージングのクラスタか CI(`helm-release.yaml` の lint ステップ)で行う。 +- values の新設キー、挙動変更、セキュリティ影響は README の該当セクションと values リファレンス表へ反映する。 +- 手動リリース(`-a` 等)時は対応する `CHANGELOG-.md` を追加し、README の「バージョン履歴」にも 1 行追加する(このリポジトリの慣行)。 -## Git 運用ルール(このリポジトリで厳守) - -1. **機能を追加・変更したら、必ず `README.md` を更新してから作業完了とする。** - - values の新設キー、挙動変更、セキュリティ影響は README の該当セクションと - values リファレンス表へ反映する。 -2. **変更は必ず Git Commit / Push する。** - - 作業単位ごとにコミットし、`origin/main` へ push するまでが作業完了。 -3. **コミットメッセージに Claude クレジット(`Co-Authored-By` 等)を付けない。** - - `user.name = Claude` でコミットされるため、ユーザー名で判別可能。 -4. `git pull` で取り込んだ変更は常に尊重する。revert して push することは禁止。 - 不適切と思われる場合はユーザーに改善提案を提示し、承認を得てから対応する。 - -### Git Commit 情報 - -| 項目 | 値 | -|------|-----| -| user.name | `Claude` | -| user.email | `claude@cafepieters.com` | -| SSH キー | `P:/Claude/.ssh/id_claude` | -| core.sshCommand | `ssh -i P:/Claude/.ssh/id_claude -F P:/Claude/.ssh/config -o StrictHostKeyChecking=no` | - -## リリースフロー +## リリースフロー(組織ルールとの差分) - **バージョン番号**: `Chart.yaml` の `version` / `appVersion` は **主アプリ = Claude Code CLI(`@anthropic-ai/claude-code` の npm 最新版)と同一**にする。 -- **ワークフロー(3 本、他 Helm チャートプロジェクトと同じ思想)** +- **ワークフロー(3 本)** - `helm-release.yaml` — `main` への push で発火。`helm lint` の後、`Chart.yaml` の version が 未リリース(Gitea リリース・Package Registry 双方に存在しない)なら タグ + Gitea リリース + チャート publish。リリース済みなら lint のみで終了(再 publish しない)。 @@ -69,17 +53,7 @@ Git リポジトリ(GitHub / Gitea など互換 Git 全般)をチェック - `session-image.yaml` — `files/Dockerfile.session` 等の変更、または上記による `Chart.yaml` 更新で発火。セッションイメージを `linux/amd64,linux/arm64` でビルドして Gitea Container Registry(`helmchart/claude-code/session:` + `latest`)へ push。 -- **手動リリース(臨時)**: 改修作業などで必要な場合はバージョン末尾にアルファベットを付与する - (例 `2.1.259` → `2.1.259-a` → `2.1.259-b`)。対応する `CHANGELOG-.md` を追加し、 - README の「バージョン履歴」にも 1 行追加する。 - -## 必要な Gitea Secrets - -| シークレット名 | 用途 | -|---|---| -| `GITEA_TOKEN` | Gitea API(リリース作成・タグ操作) | -| `REGISTRY_USER` | Gitea Package / Container Registry ユーザー名 | -| `REGISTRY_TOKEN` | Gitea Package / Container Registry トークン(`docker login` にも使用) | +- **手動リリース(臨時)**: 例 `2.1.259` → `2.1.259-a` → `2.1.259-b`。 ## 改修履歴 diff --git a/GEMINI.md b/GEMINI.md new file mode 100644 index 0000000..86eea7b --- /dev/null +++ b/GEMINI.md @@ -0,0 +1,24 @@ +# GEMINI.md — Antigravity (Gemini) 用エントリポイント(HelmChart\claude-code) + +このディレクトリのルールはすべて **`CLAUDE.md`** に記載されている。本ファイルにはルール本文を書かず、読むべき CLAUDE.md への参照だけを置く(正本は常に CLAUDE.md)。 + +## 必ず最初に実行すること + +以下のファイルを**上から順に**読み込み、すべての指示に従うこと。上位ほど広い範囲に適用される共通ルールで、下位は上位を前提とした補足・例外である。 + +1. `P:\Claude\CLAUDE.md` — 全組織共通ルール(Git 運用・コミット書式・実行環境・情報記載の原則) +2. `P:\Claude\HelmChart\CLAUDE.md` — HelmChart 組織共通ルール +3. `P:\Claude\HelmChart\claude-code\CLAUDE.md` — claude-code リポジトリ固有ルール(このディレクトリ) + +> Antigravity はワークスペース(または git ルート)直下のルールしか自動で読まず、親フォルダを遡らない。そのため上位階層のパスをここに明示している。`P:\Claude` はクラウド同期されており、デスクトップ・ノート PC とも同じパスで存在する。 + +## 読み替え + +- CLAUDE.md 中の「Claude」「Claude Code」は、Antigravity で作業する場合は Gemini 自身のことと読み替える。 +- Git のコミット者は Antigravity でも `user.name = Claude` / `user.email = claude@cafepieters.com` のまま使う(変更しない)。コミットメッセージに AI クレジットを付けない。 +- Claude Code 固有の機能(`.claude/` 設定、スキル、メモリ等)に関する記述は無視してよい。 + +## 保守ルール + +- ルールの追加・変更は **CLAUDE.md にのみ**行う。本ファイルと `.agents/rules/claude-md.md` は参照だけを保持し、内容を増やさない。 +- CLAUDE.md を新しいディレクトリに追加したときは、同じ形式の `GEMINI.md` と `.agents/rules/claude-md.md` も併置する。