🫡
Gemini CLI 開発ルールリポジトリを公開しました!
Gemini CLI 開発ルールリポジトリ
作成経緯
日々の個人開発で、Gemini CLIを使っているのですが、ブランチを切ってくれないとか、命名規則にばらつきがあるなど、痒いところに手が届かない状況にうんざりしていたところ、自分用にAIエージェントのルールセットのリポジトリを作成している天才(彼?彼女?はClaude Codeでしたけど、、)がいたので自分もパクりました。
👇こちらがGitHubです!
使ってくれる方いたらコメントで、フィードバックしてください🙇
概要
このリポジトリは、Gemini CLI に読み込ませるための全社共通の開発ルールを管理します。
各開発プロジェクトでは、このリポジトリをサブモジュールとして利用することを推奨します。
特徴
- 🚀 新機能開発の自動化:
/new-featureコマンドでブランチとファイル構造を自動作成 - 🔍 多言語リンターチェック:
/lint-checkでJavaScript/TypeScript、Python、Rustに対応 - 🔒 セキュリティ監査:
/security-checkで依存関係の脆弱性をチェック - 📝 コミット規約: Conventional Commits仕様に準拠したtype定義
- 🌿 ブランチ戦略: GitFlowモデルの標準化
- 🎨 コーディングスタイル: 言語別の詳細なスタイルガイド
ファイル構成
| パス | 目的/ベストプラクティス |
|---|---|
README.md |
リポジトリの概要、利用方法、更新履歴 必須。このリポジトリの利用方法(サブモジュールとして追加する方法)を明記します。 |
GEMINI.md |
グローバルな開発ルール Gemini CLIの最重要ファイル。すべてのプロジェクトに共通する基本的なルール(例: コミットメッセージの形式、セキュリティの基本方針、ブランチ戦略、コード品質など)を記述します。 |
styleguide.md |
詳細なコーディングスタイルガイド Code Assistやレビューコマンドなどで参照されることを想定し、言語ごとの詳細な規約(例: 命名規則、インデント、最大行数、import順序、未使用コード削除など)を記述します。 |
commit-types.yaml |
コミットメッセージのtype定義 Conventional Commits仕様に準拠したtypeの一覧と使用例を定義します。 |
CHANGELOG.md |
変更履歴 各バージョンでの変更内容を詳細に記録します。 |
VERSION.md |
バージョン情報 現在のバージョン、バージョン管理方法、リリースプロセスを説明します。 |
config.yaml |
共通の除外設定 Code Assistなどが共通して無視すべきファイル(例: node_modules, dist)をignore_patternsとして設定します。 |
commands/ |
共通のカスタムコマンド 全社的に利用する便利なカスタムコマンドを .tomlファイルとして配置します。 |
commands/new-feature.toml |
新機能ブランチ作成コマンド/new-feature <機能名>でfeatureブランチとファイル構造を自動作成します。 |
commands/lint-check.toml |
リンターチェックコマンド/lint-checkでプロジェクトの言語に応じたリンターチェックと自動修正を実行します。 |
commands/security-check.toml |
セキュリティチェックコマンド/security-checkで依存関係のセキュリティ監査を実行します。 |
セットアップ方法
1. サブモジュールとして追加
各開発プロジェクトのリポジトリルートで、以下のコマンドを実行してこのリポジトリをサブモジュールとして追加します。
git submodule add https://github.com/your-username/gemini-rules.git development-rules
2. サブモジュールの更新
プロジェクトをクローンした後や、このルールリポジトリが更新された際には、以下のコマンドでサブモジュールを最新の状態にしてください。
git submodule update --init --recursive --remote
3. バージョン管理
バージョン管理の詳細については、VERSION.mdを参照してください。
- 現在のバージョン: v1.0.0
-
バージョン確認:
cd development-rules && git describe --tags --always - 変更履歴: CHANGELOG.mdを参照
使い方
開発ルールの確認
-
GEMINI.md: コミット規約、セキュリティポリシー、ブランチ戦略、コード品質ルールを確認 -
styleguide.md: 言語別のコーディングスタイルガイドを確認 -
commit-types.yaml: コミットメッセージのtype一覧を確認
カスタムコマンドの使用
新機能開発
/new-feature user-authentication
-
feature/user-authenticationブランチを作成 -
src/features/user-authentication/ディレクトリとファイル構造を自動作成
リンターチェック
/lint-check
- プロジェクトの言語を自動検出(Node.js/TypeScript、Python、Rust)
- 対応するリンターを実行してエラーチェック
- 自動修正可能なエラーを修正
セキュリティチェック
/security-check
- 依存関係のセキュリティ監査を実行
- NPM、Pipenv、Mavenプロジェクトに対応
開発ワークフロー
-
新機能開発開始時:
git checkout develop git pull origin develop /new-feature <機能名> -
コミット前:
/lint-check # 手動修正が必要なエラーがあれば修正 /lint-check # 再実行してエラー0件を確認 git add . git commit -m "feat: <機能の説明>" -
定期的なセキュリティチェック:
/security-check
設定ファイルの活用
-
config.yaml: Gemini CLIが無視するファイルパターンを設定 -
.eslintrc.js:styleguide.mdの設定例を参考にESLint設定を追加
変更履歴
詳細な変更履歴については、CHANGELOG.mdを参照してください。
主要な機能(v1.0.0)
- コミットメッセージ規約: Conventional Commits仕様に準拠
-
新機能開発コマンド:
/new-featureでブランチとファイル構造を自動作成 -
リンターチェックコマンド:
/lint-checkで多言語対応のチェックと自動修正 -
セキュリティチェックコマンド:
/security-checkで依存関係の監査 - ブランチ戦略: GitFlowモデルの標準化
- コード品質: リンターエラー0件でのコミット強制
- 多言語対応: JavaScript/TypeScript、Python、Rust、CSS/Tailwind CSS
Discussion