Skip to content

Zenith リポジトリ運用ガイドライン

想定用途

  • 新規/既存リポジトリの運用ルール整備
  • エージェントの作業規範として共有

プロンプト本文

md
## リポジトリ要件定義プロンプト

### 基本方針

- **言語ポリシー**  
  - コード中の変数名・関数名・クラス名・ファイル名などのコード要素:英語  
  - コメント、README、ドキュメント、コミットメッセージ:日本語

- **README作成・整備**  
  - `README.md`を必ず作成し、日本語で記述すること。  
  - `README.md`には、`assets`ディレクトリに格納したSVGヘッダー画像を使用し、中央揃えで配置する。  
    - SVGは角を丸めた形状、グラデーション、図形・テキスト・グラデーションに対するアニメーションを付与し、英語の洗練された表現を入れること。  
  - `README.md`は変更が生じるたびに更新すること。  
  - 重複コンテンツは避け、情報源を一元化する。
 - READMEの章には絵文字を付与して可読性を高めて

### コーディング原則

1. **DRY(Don't Repeat Yourself)**  
   - 同一・類似処理は関数・モジュール化することで再利用性を高める。

2. **責務の分離(Separation of Concerns)**  
   - 各モジュール・クラス・関数は単一責務を明確にし、表現・ロジック・データ処理を分離する。

3. **KISS(Keep It Simple, Stupid)**  
   - コードは可能な限りシンプルに保ち、過度な複雑化を避ける。

4. **分割統治(Divide and Conquer)**  
   - 大きな問題は小さな単位に分割し、テスト・保守性を向上させる。

5. **防御的プログラミング(Defensive Programming)**  
   - 入力値検証、例外処理、エラー対策を行い、堅牢性とセキュリティを確保する。

6. **YAGNI(You Aren't Gonna Need It)**  
   - 現在の要件に集中し、不要な将来予測による過剰実装を避ける。

7. **可読性とドキュメンテーション**  
   - 変数・関数・クラス名は英語で、役割が一目でわかるような命名を行う。  
   - コメントやREADMEでコードの意図・ロジックを日本語で明確に説明する。

8. **テスト駆動開発(TDD)とユニットテスト**  
   - 基本機能にはユニットテストを用意する。  
   - TDDを推奨し、要件定義→テスト→実装→リファクタリングのサイクルを確立する。

9. **バージョン管理とコードレビュー**  
   - Gitで変更履歴を管理し、プルリクエストを通じてコードレビューを行う。  
   - ファイルを変更したら、変更があったファイルごとにコミットを行い、履歴管理を明確化すること。

10. **SOLID原則の適用**  
    - SRP, OCP, LSP, ISP, DIPを考慮し、拡張性・保守性の高い設計を行う。

### コミットメッセージ形式

- コミットメッセージは以下の形式に従うこと:

  ```
  <絵文字> <タイプ>: <タイトル>

  <本文>

  <フッター>
  ```

- タイトル(コミットメッセージの1行目)の先頭には必ず絵文字を付与し、日本語で記述すること。  
- タイプは以下のいずれかとする:

  - **feat**: 新機能  
  - **fix**: バグ修正  
  - **docs**: ドキュメントの変更  
  - **style**: コードスタイルの変更(動作に影響しない)  
  - **refactor**: リファクタリング  
  - **perf**: パフォーマンス改善  
  - **test**: テストの追加・修正  
  - **chore**: ビルドプロセスやツールの変更

### 追加要件(必要に応じて)

- **CI/CD導入**: 自動テスト、ビルド、デプロイを行うパイプラインを整備し、品質と迅速なリリースを実現する。  
- **パフォーマンス最適化**: 必要に応じて計測・改善を行い、効率的なスケールを実現する。  
- **アクセシビリティ・国際化対応**: ターゲットユーザに応じてi18nやアクセシビリティ対応を検討する。

使い方

  1. チーム規約のベースとして読み合わせる
  2. 不要/過剰なルールを削って適用範囲を絞る
  3. 自動検査可能な項目は CI ルール化する

入力例

text
対象: TypeScript Webアプリのリポジトリ
運用: PRベース開発 / Conventional Commits

出力例

text
README/コード/コミットに関する統一運用ルールのたたき台

注意点

  • ルールを増やしすぎると運用負荷が上がる
  • 見た目要件はプロダクト特性に合わせて調整する