.claude/skills/pr-review/SKILL.md
M3E開発でPR(Pull Request)のレビュー・マージ・事後処理を行うスキル。 pr-beta(PR作成)の対になるスキルで、マネージャー側のワークフローを担う。 以下の場面でトリガーする: - 「/pr-review」「PRレビューして」「PR見て」「マージして」と言われたとき - PR URLやPR番号が提示されたとき - devM3E の Integrate フェーズでマージ判断が必要なとき - 「PRどうなってる」「PR状況」と聞かれたとき dev-beta ブランチ(統合ロール)で使うことを想定。部下ブランチから呼ばれた場合でも動作するが、マージ権限は統合ロールのみ。
npx skillsauth add akaghef/M3E pr-reviewInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
PR作成後のマネージャー側フロー全体を扱う。
PR受領 → 差分レビュー → 検証 → 判定 → マージ → 事後処理
PR番号 or URLが指定された場合:
gh pr view <number> --json title,body,headRefName,baseRefName,files,commits,state
gh pr diff <number>
PR番号が不明な場合:
# open なPR一覧(base=dev-beta)
gh pr list --base dev-beta --state open
読み取る情報:
3つの観点で差分を評価する。devM3E の reviewer agent と同じ基準だが、PR文脈に特化。
変更が関連specに準拠しているか確認する。
references/spec_index.md 参照)specを読む必要がある場合は dev-docs/03_Spec/ から該当文書を読む。
any、型アサーション)dev-docs/daily/YYMMDD.md)が更新されているか差分の性質に応じて検証を実行する。
| 変更の性質 | 実行する検証 |
|-----------|------------|
| TypeScript コード | npx tsc --noEmit |
| テスト関連 | npx vitest run |
| ビルド影響あり | npm run build |
| UI変更 | Playwright(該当テストがあれば) |
| ドキュメントのみ | スキップ |
検証を実行する場合は、PR のブランチをチェックアウトして行う:
gh pr checkout <number>
cd beta
npx tsc --noEmit && npx vitest run && npm run build
レビュー結果を以下の形式でユーザーに報告する。
## PR #{number}: {title}
### 判定: ✅ approve / ⚠️ comment / ❌ request-changes
### 変更サマリー
{ファイル数}ファイル, +{追加行} -{削除行}
影響範囲: {beta/ | dev-docs/ | scripts/ 等}
### レビュー結果
- [pass|fail] Spec整合: {detail}
- [pass|fail] コード品質: {detail}
- [pass|fail] 運用ルール: {detail}
### 検証結果
- tsc: pass/fail
- test: pass/fail ({n}/{total})
- build: pass/fail
### issue(あれば)
- [{severity}] {description}
### 推奨アクション
{マージしてよい / 修正が必要 / 要議論}
| 判定 | 条件 | |------|------| | approve | issue なし or nit のみ。検証パス | | comment | minor issue あるがマージをブロックしない | | request-changes | major/critical issue あり。修正が必要 |
ユーザーが承認した場合、マージを実行する。
# dev-beta に切り替え
git checkout dev-beta
# マージ(fast-forward 優先、不可なら merge commit)
gh pr merge <number> --merge
# または squash(コミットが多い場合)
gh pr merge <number> --squash
| 条件 | マージ方法 |
|------|----------|
| コミット1-3件、各コミットが意味ある単位 | --merge(通常マージ) |
| コミット多数 or WIPコミット含む | --squash(1コミットに集約) |
| ユーザーが指定 | 指定に従う |
マージ完了後に以下を実行する。
統合ロールとして dev-docs/00_Home/Current_Status.md を更新:
dev-docs/06_Operations/Todo_Pool.md の該当項目を done に変更。
マージ元のブランチ担当者(部下エージェント or ユーザー)に rebase を通知:
## 統合完了: PR #{number}
{title} を dev-beta にマージしました。
次の作業前に rebase してください:
git fetch origin dev-beta
git rebase origin/dev-beta
feature branch(dev-beta-* 以外の一時ブランチ)の場合:
gh pr close <number> --delete-branch
dev-beta-visual / dev-beta-data は永続ブランチなので削除しない。
Coworkサンドボックスから gh コマンドや git push がブロックされる場合:
## ローカルで実行してください
gh pr merge {number} --merge
git checkout dev-beta && git pull origin dev-beta
pr-beta(作成側) pr-review(レビュー側)
───────────────── ──────────────────────
状態チェック PR読み込み
差分分析 レビュー(spec/品質/運用)
タイトル・ボディ生成 →→→ 検証(tsc/test/build)
push & PR作成 判定 → ユーザーに報告
結果報告 マージ
事後処理(status/todo/rebase指示)
devM3E Core Loop における位置づけ:
tools
会話中のアイデア・判断・思いつきをbacklog/にmdファイルとして即座に書き出す。 フォーマットチェック不要、速度優先。エージェント間の非同期コミュニケーションプールとして機能する。 以下の場面でトリガーする: - 「tomd」「backlogに書いて」「mdに残して」「書き下して」と言われたとき - 会話中に設計判断やアイデアが出て「残しておいて」「プールして」と言われたとき - 「backlogに突っ込んで」「メモっといて(backlog)」と言われたとき
development
M3Eプロジェクトでエージェントが作業開始時にロールを確定するスキル。 ワークツリーで起動した各エージェントは、最初にこのスキルを実行して 担当ロール・ブランチ・作業範囲・割り当てタスクを確認する。 以下の場面でトリガーする: - 「/setrole」「setrole」「ロール設定」と言われたとき - エージェントがワークツリーで起動された直後 - 「自分の担当は?」「何をすればいい?」と聞かれたとき - ブランチや作業範囲の確認が必要なとき devM3E の Execute フェーズでサブエージェントを起動する際に自動実行される。
development
M3E開発で作業ブランチから dev-beta へのPR(Pull Request)を作成するスキル。 subworker(codex1/codex2/feature branch)が作業完了後に統合マネージャーへ マージ依頼を出すワークフローを自動化する。 以下の場面でトリガーする: - 「/pr-beta」「PRを作って」「dev-betaにマージ」「統合して」と言われたとき - 作業ブランチでの実装が完了し、統合フローに進むとき - devM3E の Integrate フェーズでPR作成が必要なとき dev-beta 以外のブランチにいるときに使う。dev-beta 上で呼ばれた場合はエラーにする。
data-ai
M3E マップの strategy board のタスクステータスや Agent Status を一括更新するスキル。以下の場面でトリガーする:「マップ更新」「ステータス更新」「Agent Status 更新」「進捗反映」「マップに反映」「strategy 更新」と言われたとき、またはタスク完了後にマップへの反映が必要なとき。