claude/skills/ideation-slc-ideation/SKILL.md
SLC(Simple, Lovable, Complete)フレームワークに基づいてプロダクトアイデアの壁打ちを行います。対話的な質問を通じてアイデアを洗練し、SLCの3要素を満たすまで繰り返し検証します。最終的にプロダクト仕様書を生成します。「プロダクトアイデアを壁打ちしたい」「新規プロダクトの企画」「アイデアをSLCで検証」などのリクエストで起動します。
npx skillsauth add skanehira/dotfiles ideation-slc-ideationInstall 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.
SLC(Simple, Lovable, Complete)フレームワークに基づき、プロダクトアイデアを対話的に洗練する。MVPではなく「顧客が実際に使いたいと思える製品」を目指し、3要素すべてを満たすまで質問を繰り返す。
前のステップの出力ファイルを読み込む。
docs/PROBLEM_DEFINITION.mddocs/COMPETITOR_ANALYSIS.mdRead({ file_path: "docs/PROBLEM_DEFINITION.md" })
Read({ file_path: "docs/COMPETITOR_ANALYSIS.md" })
読み込んだ内容から以下を抽出し、フェーズ1で活用:
遷移条件: フェーズ1へ(アイデア把握の質問を具体化)
フェーズ1でAskUserQuestionを使ってアイデアを確認。
遷移条件: フェーズ1へ
ユーザーのプロダクトアイデアを理解する。
注: フェーズ0で前提ドキュメントを読み込み済みの場合、それらの情報を元にアイデアを確認・補完する。
AskUserQuestion({
questions: [
{
question: "どんなプロダクトを作りたいですか?簡単に教えてください。",
header: "アイデア",
options: [
{ label: "アイデアを入力", description: "プロダクトの概要を自由に記述" }
],
multiSelect: false
}
]
})
3要素すべてが満たされるまで、以下のサイクルを繰り返す。
AskUserQuestion({
questions: [
{
question: "このプロダクトのコア価値は何ですか?1つだけ挙げてください。",
header: "コア価値",
options: [
{ label: "コア価値を入力", description: "ユーザーに提供する最も重要な価値" }
],
multiSelect: false
},
{
question: "30秒で説明するとしたら、どう説明しますか?",
header: "ピッチ",
options: [
{ label: "説明を入力", description: "簡潔な説明文" }
],
multiSelect: false
}
]
})
検証ポイント:
不十分な場合の深堀り:
AskUserQuestion({
questions: [
{
question: "もっとシンプルにするために、削れる機能はありますか?",
header: "機能削減",
options: [
{ label: "削れる機能がある", description: "具体的に入力" },
{ label: "これ以上削れない", description: "最小限の機能のみ" }
],
multiSelect: false
}
]
})
AskUserQuestion({
questions: [
{
question: "ターゲットユーザーは誰ですか?具体的に教えてください。",
header: "ターゲット",
options: [
{ label: "ユーザー像を入力", description: "具体的なペルソナや属性" }
],
multiSelect: false
},
{
question: "ユーザーはなぜ既存の解決策ではなく、これを使いたいと思うのですか?",
header: "差別化",
options: [
{ label: "理由を入力", description: "競合との違い、感情的な訴求点" }
],
multiSelect: false
}
]
})
検証ポイント:
不十分な場合の深堀り:
AskUserQuestion({
questions: [
{
question: "ユーザーがこのプロダクトを友達に勧めるとしたら、何と言いますか?",
header: "推薦理由",
options: [
{ label: "推薦文を入力", description: "ユーザー視点での価値" }
],
multiSelect: false
}
]
})
AskUserQuestion({
questions: [
{
question: "v1.0として必要な機能は何ですか?(最大3つ)",
header: "必須機能",
options: [
{ label: "機能を入力", description: "v1.0に必須の機能リスト" }
],
multiSelect: false
},
{
question: "これらの機能だけで、ユーザーは満足しますか?",
header: "完成度",
options: [
{ label: "はい", description: "この機能で十分な価値を提供できる" },
{ label: "追加が必要", description: "足りない機能がある" },
{ label: "削減が必要", description: "機能が多すぎる" }
],
multiSelect: false
}
]
})
検証ポイント:
3要素すべてを満たしたことを確認する。
## SLCチェックリスト
### Simple
- [x] 30秒以内で説明できる
- [x] コア価値が1つに絞られている
- [x] スコープが限定されている
### Lovable
- [x] ターゲットユーザーが明確
- [x] 感情的な繋がりを生む要素がある
- [x] 差別化ポイントが明確
### Complete
- [x] 限定スコープ内で完成している
- [x] 追加開発なしでも価値がある
- [x] 未完成という印象を与えない
未達成の項目があれば、該当フェーズに戻って深堀りを続ける。
SLCを満たしたアイデアをドキュメントにまとめる。
テンプレートは references/product-spec-template.md を参照。
Write({
file_path: "docs/PRODUCT_SPEC.md",
content: productSpecContent
})
生成したドキュメントのレビューをサブエージェントに委譲する。
Task({
description: "プロダクト仕様書レビュー",
subagent_type: "general-purpose",
prompt: `
以下のプロダクト仕様書をレビューし、問題があれば修正してください。
## レビュー対象ファイル
- docs/PRODUCT_SPEC.md
## レビュー観点
1. **Simpleの達成**: 30秒で説明できるか、コア価値が1つに絞られているか
2. **Lovableの達成**: ターゲットが明確か、差別化ポイントが魅力的か
3. **Completeの達成**: 限定スコープ内で完成しているか、未完成感がないか
4. **一貫性**: 各セクション間で矛盾がないか
5. **具体性**: 曖昧な表現がなく、実装に移れる具体性があるか
## 出力形式
1. 発見した問題のリスト(問題がない場合は「問題なし」)
2. 各問題の修正内容
3. 修正後のファイル更新(Editツールで修正)
問題がなくなるまでレビューと修正を繰り返すこと。
`
})
tools
ローカルのコミット履歴と差分からDraft PRを作成する。ブランチ未作成・コミット未作成の状態でも、必要に応じてブランチ作成とコミットを行ってからPRを作成する。`.github/` にPRテンプレートがあれば内容を埋めて、なければ作業内容から本文を生成し、`AskUserQuestion`で作成可否を確認してから `gh pr create --draft` を実行する。「PRを出したい」「draft PRを作成」「プルリクを作って」「PR本文を生成」などのリクエストで起動。
tools
複数サブエージェントに異なる立場を与えて議論を反復し、相違が収束するまで議題を検証して結論を提示する。設計妥当性検証・実装方針比較・原因分析のセカンドオピニオン・アイデアの壁打ちに使用。「議論したい」「壁打ちしたい」「セカンドオピニオン」「複数視点で検証したい」などで起動。
tools
変更内容を分析し、Conventional Commit形式でコミットする (pushはユーザが手動)
development
React 19 + Vite+ (`vp`) + TypeScript + Tailwind CSS v4 + React Router v7 (HashRouter) でモバイル向け静的SPAデモサイトをTDDで構築し、Cloudflare Workers (Static Assets) へ自動デプロイするまでの標準ワークフローを提供する。テンプレートリポジトリ `skanehira/demo-site-template` を `gh repo create --template` で clone することで scaffold を省略する。`localStorage` でフロントエンドのみ完結する"フロントのみ完結デモ"に特化。デザインコンセプトの確立には `frontend-design` スキルを呼び出して連携する。起動トリガー:「デモサイトを作りたい」「モバイル向け静的デモ」「SPAを作ってCloudflareにデプロイ」「静的プロトタイプを公開」「localStorage でフロントだけ完結」。ユースケース:(1)クライアント提案用のUI/UXたたき台、(2)新機能のプロトタイプ、(3)モバイル向けランディング。ツールチェーンは Vite+ (`vp`) で統合(内部 PM は pnpm)。