跳到正文
cccskills
免费在 GitHub 公开

story-quality-gate

/brainstorm のユーザーストーリー品質を INVEST 基準で軽量チェックする。proposal.md 生成前にストーリーの構造的品質を確認し、問題があれば対話で改善を促す

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md4.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Story Quality Gate

Overview

ユーザーストーリーの構造的品質を INVEST 基準で軽量チェックする。

目的: 品質の低いストーリーが /spec に流入するのを防ぐ。 タイミング: /brainstorm の要件確定後、proposal.md 生成前。 原則: ブロッキングゲートではない。Warn を出すが、ユーザー判断で進行可能。

INVEST チェック(6項目)

各ユーザーストーリーに対して Pass / Warn を判定する。

I - Independent(独立性)

他のストーリーへの暗黙の依存がないか。

  • Pass: ストーリー単体で意味が通る
  • Warn: 「〜の後に」「〜が完了したら」等、他ストーリーへの暗黙の前提がある
Warn 例: 「ログイン後にプロフィールを編集したい」
  → ログイン機能が暗黙の前提。依存関係を明示するか、分離を検討
Pass 例: 「ユーザーとして、プロフィールを編集したい」
  → 認証済みであることは前提条件として明記可能

N - Negotiable(交渉可能性)

実装手段の指定がなく、ゴールが記述されているか。

  • Pass: 「何を達成したいか」が記述されている
  • Warn: 「Redis を使って」「React Hook Form で」等の技術指定がある
Warn 例: 「Zustand を使って状態管理したい」
  → 技術指定。/brainstorm では「複数画面で状態を共有したい」が適切
Pass 例: 「商品をカートに入れて、別の画面でも確認したい」

V - Valuable(価値)

「なぜなら」の理由がユーザーまたはビジネスの価値を示しているか。

  • Pass: 具体的なユーザー価値またはビジネス価値がある
  • Warn: 技術的理由のみ、または理由が欠落
Warn 例: 「コードの可読性を上げたい」
  → 技術的理由のみ。ユーザー/ビジネス価値が不明
Pass 例: 「注文履歴を確認したい。なぜなら過去の購入を再注文できるから」

E - Estimatable(見積可能性)

サイズ感が推定できるだけの情報があるか。

  • Pass: 何をどの範囲で変更するか想像できる
  • Warn: 範囲が不明確、または技術調査(スパイク)が必要
Warn 例: 「パフォーマンスを改善したい」
  → どの画面?どの操作?目標値は?範囲が不明
Pass 例: 「商品一覧の初回表示を高速化したい」

S - Small(小ささ)

1つのストーリーに複数の独立した変更が混在していないか。

  • Pass: 1つの焦点を持つストーリー
  • Warn: 「〜と〜と〜を」のように複数の独立した目標が混在
Warn 例: 「ユーザー登録、ログイン、パスワードリセットを実装したい」
  → 3つの独立した機能。分割を検討
Pass 例: 「新規ユーザーとして、メールアドレスで登録したい」

T - Testable(テスト可能性)

測定不能な曖昧表現がないか。

  • Pass: 具体的な状態変化や観測可能な結果がある
  • Warn: 「適切に」「快適に」「正しく」等の測定不能表現がある
Warn 例: 「エラーを適切にハンドリングしたい」
  → 「適切に」は測定不能。具体的なエラー表示内容が必要
Pass 例: 「入力エラー時にフィールド横にエラーメッセージを表示したい」

適用ルール

  1. 全項目 Pass → そのまま proposal.md 生成に進む
  2. Warn が 1-2 個 → Warn 内容をユーザーに提示し、改善するか・このまま進めるか質問する
  3. Warn が 3 個以上 → ストーリーの見直しを推奨する(ただしユーザー判断で進行可能)

提示形式

ストーリー品質チェック結果:

「ユーザーとして、〇〇したい。なぜなら△△だから」
  I: Pass  N: Pass  V: Pass  E: Warn  S: Pass  T: Warn

⚠ E(見積可能性): 対象範囲が不明確です。どの画面/機能が対象ですか?
⚠ T(テスト可能性): 「快適に」は測定が難しいです。具体的な基準はありますか?

→ このまま進めますか? それとも修正しますか?

対話の流れを壊さない

  • チェック結果は対話の最後にまとめて提示する(質問の途中で割り込まない)
  • Warn の提示は質問形式にする(チェックリストの押しつけではなく、対話の延長として)
  • ユーザーが「このまま進める」と言えば、Warn を proposal.md の「未解決の疑問点」に転記して進む

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Use at the START of every task, before writing any code, running tests, debugging, reviewing, or designing. This skill determines which methodology and domain skills must be invoked. MUST be invoked before any implementation, debugging, review, testing, or specification work begins.

中文简介正在准备中。当前显示原文说明。

kousukef/forge152026年4月6日 更新

Pattern for progressively refining context retrieval to solve the subagent context problem

中文简介正在准备中。当前显示原文说明。

kousukef/forge152026年4月6日 更新

proposal.md が /spec の入力として十分な情報を含んでいるかを確認する。「ユーザーにとっての承認」ではなく「/spec にとっての準備完了度」を検証する軽量チェック

中文简介正在准备中。当前显示原文说明。

kousukef/forge152026年4月6日 更新

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, update or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

中文简介正在准备中。当前显示原文说明。

kousukef/forge152026年4月6日 更新

Use when splitting a domain Skill into Phase-Aware File Structure (SKILL.md / design.md / constraints.md). Defines the splitting criteria, procedures, sync procedures, and validation rules. Invoked by /skill-format command or manually when restructuring domain Skills.

中文简介正在准备中。当前显示原文说明。

kousukef/forge152026年4月6日 更新

Suggests manual context compaction at logical intervals to preserve context through task phases rather than arbitrary auto-compaction.

中文简介正在准备中。当前显示原文说明。

kousukef/forge152026年4月6日 更新

查看 kousukef 的全部技能

报告此技能的问题