mcpField
E
eliteforge-git-specification

eliteforge-git-specification

github.com/cloudsen開発37 回インストール
リポジトリ

eliteforge-git-specification について

EliteForge Git Governance は、璀璨工坊规范 または eliteforge specification に従うと明示されたプロジェクト向けの Git スキルです。ブランチとマージリクエストのゲートを適用し、スクリプトを優先して、コマンドと確認結果を定型形式で報告します。

主な機能

  1. 01プロジェクトでの明示的な宣言が必要
  2. 02コード変更前のブランチ確認
  3. 03状況に応じた Git タスク処理
  4. 04マージ、整理、ブランチ操作用スクリプト
  5. 05規約とマージリクエストの構造化報告

活用シーン

  1. 01コード編集前のブランチ適合性確認
  2. 02プロジェクトブランチのマージや整理
  3. 03チーム規約に沿ったコミットとマージリクエストの準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/cloudsen/eliteforge-skills --skill eliteforge-git-specification

インストール後、Claude Code で/eliteforge-git-specificationを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
git-governance-reference.md
scripts/
auto_merge
check_merge
delete_local_branches
delete_merged_branches
git_change_summary.sh
rename_git_branch
user_code.sh

詳細

EliteForge Git ガバナンス

発動条件

ユーザーが現在のプロジェクトで 璀璨工坊规范 または eliteforge specification に従うと明示した場合に限り、このスキルを使用します。プロジェクト単位でそのように宣言されていない場合は、このスキルを有効にせず、汎用的な機能で対応します。

目標

Git 操作のタスクでは、標準化された操作を行うため、まず組み込みスクリプトを呼び出します。スクリプトで対応できない場合に限り、ネイティブコマンドを出力します。ブランチ戦略、コミット規約、MR ゲートが常にチームのルールに一致するようにします。 「コードの変更が必要」なタスクでは、ブランチゲートを満たしてからでなければ、ファイルを編集できません。

実行原則

  1. ブランチの事前ゲート(必須)
    まずブランチをチェックします。ブランチ名が誤っている場合、またはローカル品質ゲートに合格していない場合は、コードの変更とコミットを禁止します。

  2. シナリオの特定
    最初に、正常迭代、热修、分支整理、提交/MR 合规、统计分析 のどれに該当するかを判断します。

  3. スクリプトディレクトリの特定(必須)
    現在のリポジトリに scripts/ があると想定しないでください。まずスキル自身のディレクトリ内にあるスクリプトを特定してから呼び出します。

ELITEFORGE_GIT_SCRIPTS=""
for root in "$PWD" "${SKILLS_HOME:-}" "$HOME"; do
  [ -n "$root" ] || continue
  found="$(find "$root" -type d -path '*/eliteforge-git-specification/scripts' 2>/dev/null | head -n 1)"
  if [ -n "$found" ]; then
    ELITEFORGE_GIT_SCRIPTS="$found"
    break
  fi
done
[ -n "$ELITEFORGE_GIT_SCRIPTS" ] || { echo "Cannot locate eliteforge-git-specification/scripts." >&2; exit 1; }
  1. スクリプトを優先
    スクリプトが該当する機能に対応している場合は、スクリプトの呼び出しを優先し、長いコマンド列を手作業で繰り返し記述しません。

  2. 厳格なゲート
    ブランチの前提条件、squash の要否、MR/パイプラインの状態、リリース経路を常にチェックします。

  3. 構造化された出力
    出力内容は、結論、ブランチゲートのチェック、コマンド列、リスクとゲート、コミット/MR の文案 に固定します。

  4. workflow を厳格に実行します。

スクリプトの対応関係(優先して使用)

  1. バージョンブランチを自動で取得してマージ
    bash "$ELITEFORGE_GIT_SCRIPTS/auto_merge" [--ff-only | --merge | --rebase]
    用途:qa/<version> または release/<version> ブランチ上で、対応する feature/<version>/ および bugfix/<version>/ の変更を一括でマージします。

  2. 指定したバージョンブランチのマージ状態を確認
    bash "$ELITEFORGE_GIT_SCRIPTS/check_merge" <version> <branch>
    用途:feature/<version> と bugfix/<version> がターゲットブランチ(release や qa など)にマージ済みかを確認します。

  3. ローカルブランチを整理
    bash "$ELITEFORGE_GIT_SCRIPTS/delete_local_branches"
    用途:master/main 以外のローカルブランチを削除します。

  4. マージ済みのリモートブランチを整理
    bash "$ELITEFORGE_GIT_SCRIPTS/delete_merged_branches" <version>
    用途:release/<version> 上で、マージ済みの feature/<version> ブランチを特定して削除します。
    注意:このスクリプトは対話形式の確認を含みます。

  5. ブランチ名を変更
    bash "$ELITEFORGE_GIT_SCRIPTS/rename_git_branch" <old-branch> <new-branch>
    用途:ローカルブランチの名前を変更し、リモートと同期します。

  6. 変更概要を生成
    bash "$ELITEFORGE_GIT_SCRIPTS/git_change_summary.sh"
    用途:master..HEAD との差分の変更概要を出力します(style/build/test は除外)。

  7. 作成者ごとのコード量を集計
    bash "$ELITEFORGE_GIT_SCRIPTS/user_code.sh" <base_dir> '<author1|author2|...>' <YYYY-MM-DD>
    用途:作成者と開始日を指定し、複数のリポジトリの追加・削除・変更行数を集計します。

強制制約

  • 1 つの要件につき 1 つの feature ブランチを使用します。
  • コードを変更する前に、準拠した開発ブランチにいることを確認してください。master/main/nightly/qa/release 上での直接開発は禁止です。
  • feature の QA 提出にはマージリクエストを使用します。結合テストは nightly に直接マージして行います。
  • feature を release にマージする前に、squash して単一のコミットにします。
  • release を master にマージする際は、git merge --ff-only を使用します。
  • hotfix は、現場で作業を妨げる問題に限り使用します。
  • コミット形式:<type>(<scope>): <subject>。
  • 最終 MR の前に必ず squash します。MR タイトルは squash 後のコミットと一致させます。
  • .gitlab/merge_request_templates/default.md を使用し、セルフチェックを完了します。

参考資料

  • 完全な規範、例、workflow が必要な場合は、references/git-governance-reference.md を読み込みます。

コメント