Issue 起票(create-issue)
このスキルがやること
バグ報告・機能提案・タスクを、後から着手する人(未来の自分・別メンバー・Claude)が迷わず動ける形の Issue として起票する。
手順
- 種別を判定する: bug(既存機能が壊れている)/ feature(新しい振る舞い)/ task(リファクタ・chore・調査)/ docs。迷ったら「ユーザーから見て挙動が変わるか」で feature / task を分ける。
- 重複を検索する:
gh issue list --search "<キーワード>" --state allで類似 Issue を確認する。既存があれば新規作成せず、その Issue の URL を示して追記(コメント)を提案する。 - タイトルを付ける: Conventional Commits と同じ type を接頭辞に付ける(
feat:fix:docs:refactor:chore:等)。 - 本文を下記テンプレで書く。受け入れ条件は検証可能な形で書く。
- ラベルを付ける:
gh label listで存在するラベルを確認し、合うものだけ付ける(新しいラベルを勝手に作らない。合うものが無ければ無しでよい)。 gh issue createで作成し、URL を報告する。続けて着手する場合はブランチを切り、PR 本文にCloses #<N>を入れる(create-pr へ)。
本文テンプレート
## 背景 / 課題
<なぜこの Issue が必要か。bug なら再現手順(環境・操作・期待した挙動・実際の挙動)>
## 提案 / やること
<どう解決するか。分かっている範囲で。方針が未定なら「調査から始める」と書く>
## 受け入れ条件
- [ ] <検証可能な条件 1>
- [ ] <検証可能な条件 2>
## 補足
<参考リンク・関連 Issue/PR・制約。無ければ節ごと削除>
タイトルの良い例 / 悪い例
| ✅ 良い | ❌ 悪い | 理由 |
|---|---|---|
fix: CSV 出力で日本語ヘッダが文字化けする |
文字化けする |
type 無し・どこで起きるか特定できない |
feat: 検索結果を CSV でエクスポートできるようにする |
feat: エクスポート対応 |
何をどこへエクスポートするか不明 |
chore: CI の Node.js を 20 に上げる |
CI 修正 |
変更内容が特定できない |
ルール・コツ
- 受け入れ条件に「適切に」「ちゃんと」「十分に」等の曖昧語を使わない。「〜すると〜になる」「〜のテストが通る」の形で書く。
- bug は再現手順が最重要。再現手順が書けない場合は、その旨と分かっている発生条件を Issue に明記する(分かったふりをしない)。
- 1 Issue = 1 関心事。独立した課題が複数混ざっていたら分割して起票することを提案する。
- 社内固有情報(認証情報・内部 URL 等)を本文に書かない。
完了条件
以下を全て満たしたら完了。満たせない項目があれば、黙って省略せず理由を報告する。
- 重複検索を実行し、結果(重複なし / 類似 Issue あり)を報告した
- タイトルが type 接頭辞付きで、変更内容が特定できる粒度になっている
- 本文にテンプレの見出し(背景 / 提案 / 受け入れ条件)が揃っている
- 受け入れ条件がすべて検証可能な形で書かれている
- 既存ラベルのみ使用した(新規ラベルを作っていない)
- 作成した Issue の URL を報告した
補足
- 社名・内部 URL・認証情報などの固有情報は扱わない。
ghの認証が無い場合はgh auth statusを確認し、ユーザーに案内する。