Agent skill
balance-milestones
マイルストーン未割り当ての Issue にマイルストーンを紐づけ、1マイルストーンあたりの Issue 数を平準化する。マイルストーンの整理・調整・割り当てが必要なときに使う。「マイルストーン整理して」「Issue にマイルストーンを割り当てて」のようなリクエストで使う。
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/balance-milestones
SKILL.md
Balance Milestones Skill
マイルストーン未割り当ての Issue にマイルストーンを紐づけ、偏りがあれば調整・新規作成する。
前提条件
ghCLI が認証済みであること- Issue にラベルが付与済みであること(ラベルに基づいてマイルストーンを判断するため)
手順
1. 現状の把握
マイルストーンの一覧と各マイルストーンの Issue 数を確認する。
gh api repos/{owner}/{repo}/milestones --jq '.[] | select(.state=="open") | {title, open_issues, closed_issues, due_on}'
2. マイルストーン未割り当て Issue の特定
マイルストーンが未割り当ての Issue(Dependency Dashboard を除く)を特定する。
3. セマンティックバージョニングに基づくマイルストーン分類
マイルストーンを作成・割り当てる際は、Issue の種別に応じて パッチ / マイナー のどちらに該当するかを判断する。
パッチバージョン(vX.Y.Z の Z を上げる):
後方互換性を保つバグ修正やドキュメントの誤り修正など、既存の動作を壊さない修正が対象。
| ラベル | パッチに該当するケース |
|---|---|
Type: Bug |
常にパッチ対象。バグ修正は最も直近のパッチマイルストーンに配置する |
Type: Document |
誤り・不整合の修正(例: バージョン記載の乖離、サンプルコードのバグ)はパッチ対象 |
マイナーバージョン(vX.Y.0 の Y を上げる):
後方互換性を保つ新機能追加、機能強化、リファクタリングなどが対象。
| ラベル | マイナーに該当するケース |
|---|---|
Type: Feature |
機能の規模に応じて適切なマイナーマイルストーンに配置 |
Type: Enhancement |
機能の規模に応じて適切なマイナーマイルストーンに配置 |
Type: Refactoring |
大きなリリースの前に配置 |
Type: Document |
新機能に伴うドキュメント追加はマイナーマイルストーンに配置 |
Type: Test |
関連する機能と同じマイナーマイルストーン |
Type: Publishing |
リリース作業用のマイルストーン |
4. ラベルに基づくマイルストーン割り当てルール
Type: Bug→ 最も直近のパッチマイルストーンに配置。該当するパッチマイルストーンが存在しない場合は新規作成する(例: 現在の最新リリースがv1.1.0ならv1.1.1を作成)Type: Document(誤り修正)→ パッチマイルストーンに配置Type: Feature/Type: Enhancement→ 機能の規模に応じてマイナーマイルストーンに配置Type: Refactoring→ 大きなリリースの前(v1.0.0 など)のマイナーマイルストーンに配置Type: Document(新規追加)→ 関連する機能と同じマイナーマイルストーンType: Test→ 関連する機能と同じマイルストーンType: Publishing→ リリース作業用のマイルストーン
5. マイルストーンの作成
必要に応じて新しいマイルストーンを作成する。
- マイルストーン名はセマンティックバージョニング形式:
vX.Y.Z - パッチマイルストーン(
vX.Y.Zの Z を上げる):Type: Bugや誤り修正のType: Documentが存在し、対応するパッチマイルストーンがない場合は新規作成する- 例: 最新リリースが
v1.1.0でバグ Issue がある場合 →v1.1.1を作成 - クローズ済みの同名マイルストーンが存在する場合は、次のパッチ番号を使用する(例:
v1.1.1がクローズ済みならv1.1.2)
- 例: 最新リリースが
- マイナーマイルストーン(
vX.Y.0の Y を上げる): 機能追加や改善の Issue が既存マイナーマイルストーンに収まらない場合に新規作成する - 既存のマイルストーン一覧(クローズ済みを含む)を確認し、次のバージョン番号を決定する
- 1つのマイルストーンに Issue が偏りすぎないようにする(目安: 1マイルストーンあたり 5〜8 Issue)
- マイルストーンの作成:
bash
gh api repos/{owner}/{repo}/milestones --method POST --field title="vX.Y.Z"
6. Issue のマイルストーン割り当て
gh issue edit <issue-number> --milestone "vX.Y.Z"
7. 平準化
- 1つのマイルストーンに 8 Issue 以上ある場合は、一部を別のマイルストーンに移動する
- ラベルの種類と依存関係を考慮して、論理的にまとまりのあるグループにする
Type: Publishing(リリース作業)は、そのバージョンのマイルストーンに残す
8. 結果の報告
マイルストーンの変更内容を以下の形式で報告する:
割り当て・移動した Issue:
| # | タイトル | 変更前 | 変更後 |
|---|---|---|---|
| #XX | <タイトル> | <旧マイルストーン or なし> | <新マイルストーン> |
新規作成したマイルストーン: <あれば記載>
棚卸後のマイルストーン状況:
| マイルストーン | Open | Closed | 合計 |
|---|---|---|---|
| vX.Y.Z | N | N | N |
注意事項
- Renovate が管理する Issue(Dependency Dashboard)は操作しない
- マイルストーンの割り当ては、Issue の内容とラベルを総合的に判断して行う
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?