AgentSkillsCN

breaking-down-story

将用户故事 Issue 细分为可并行执行的实现任务,并以子 Issue 的形式进行登记。适用于将用户故事拆分为任务,或在执行 `/breaking-down-story` 命令时使用。

SKILL.md
--- frontmatter
name: breaking-down-story
description: ユーザーストーリーIssueを並列実行可能な実装タスクに細分化し、サブIssueとして登録します。ユーザーストーリーをタスクに分割する場合や、`/breaking-down-story` コマンドが実行された場合に使用してください。
layer: feature
argument-hint: "[ユーザーストーリーのIssue番号]"

手順

  1. ユーザーストーリーのIssue番号をユーザーに確認する。
    • 引数で指定されている場合、この手順はスキップする。
  2. managing-github スキルでユーザーストーリーIssueの内容を把握する。
  3. ユーザーストーリーを元に「タスク細分化の原則」に従ってタスクを細分化する。
  4. 細分化した各タスクについて以下を実行する:
    • document-specialist エージェントに依頼してタスクのIssue本文を「タスクIssue作成ルール」に従って生成する。
    • managing-github スキルでIssueを作成する。--label task オプションを付与して task ラベルを自動付与すること。
    • managing-github スキルでユーザーストーリーIssueのサブissueとして登録する。
  5. サブIssue登録の確認と修正:
    • managing-github スキルでユーザーストーリーのサブIssue一覧を取得する。
    • 作成した全タスクがサブIssueとして登録されているか確認する。
    • 未登録のタスクがあれば、managing-github スキルでサブIssueとして追加登録する。
  6. 作成したタスクIssueの一覧(タイトル・URL・依存関係)をユーザーに報告する。サブIssueとして登録できなかったタスクがあれば、その旨も報告すること。

タスクIssue作成ルール

タイトル

具体的な作業内容を動詞で開始する(例: 「APIエンドポイントを実装する」「UIコンポーネントを作成する」)。

本文構成

概要

このタスクで実装する内容を簡潔に説明する。

親ストーリー

#[ユーザーストーリーのIssue番号] へのリンクを記載する。

実装内容

  • 実装する機能の詳細を箇条書きで記載する。
  • 主な変更対象のファイルやディレクトリがわかる場合は記載する。

完了条件

  • 具体的な完了基準をチェックボックス形式で列挙する。

依存関係

依存する他タスクがあれば、Issue番号を記載する(なければ「なし(並列着手可能)」と記載)。

タスク細分化の原則

各タスクは1つのプルリクエスト(PR)に対応する粒度とする。以下の観点で細分化し、並列作業を最大化すること:

  1. PR単位の粒度: 1タスク = 1PR。レビュー可能な意味のあるまとまりで分割する。
  2. 機能領域の分離: フロントエンド/バックエンド/共有ライブラリなど、独立してマージ可能な単位で分離する。
  3. 依存関係の最小化: 共通の型定義やインターフェースを先行タスクとし、具体的な機能実装を後続の並列タスクとする。
  4. 独立してマージ可能: 各タスクのPRが単体でマージしても壊れない状態を保つ。
  5. テストの同梱: 機能実装に対応するテストは同一タスク(同一PR)内に含める。

注意点

  • プロジェクトの規約に従った高品質なIssue本文を作成すること。