Skill

brainstorm

チームエージェントを使ったブレインストーミングセッション。アイデア出し、議論、brainstorm、ブレスト時に使用。

From core
Install
1
Run in your terminal
$
npx claudepluginhub kentanakae/claude-code-plugins --plugin core
Tool Access

This skill uses the workspace's default tool permissions.

Skill Content

ブレインストーミングスキル

チームエージェントを使って、複数の視点からアイデアを出し合うブレインストーミングセッションを実行する。 自分(メインエージェント)がファシリテーターとして進行し、スポーンした参加者エージェントがアイデアを出し合う。

Step 0: Planモード解除

Planモードが有効な場合は、ExitPlanMode を呼び出してPlanモードを抜けてから Step 1 に進むこと。ブレストセッションはチーム作成・ファイル編集など書き込み操作を伴うため、Planモードのままでは実行できない。

Step 1: セットアップ

$ARGUMENTS でテーマが指定されている場合はそれを使用する。未指定の場合は AskUserQuestion で確認する。

AskUserQuestion で以下を確認する(1回のAskUserQuestionで可能な限りまとめて聞く):

  1. テーマ($ARGUMENTS が未指定の場合): ブレストのテーマ・議題
  2. 参加人数: エージェントの参加人数
    • 毎ラウンド参加の場合: 1〜4人(ユーザー自身も参加者として数えるため、エージェント1人でも議論が成立する)
    • 見守りメインの場合: 2〜4人(エージェント同士で議論するため最低2人必要)
  3. 各参加者の役割: 参加者ごとの視点・役割を指定してもらう
    • 例: 「技術観点」「ユーザー目線」「デビルズアドボケート」「ビジネス観点」「クリエイティブ担当」など
    • ユーザーが特に指定しない場合は、テーマに合った役割を提案する
  4. ユーザーの介入度合い:
    • 毎ラウンド参加: 各ラウンドでユーザーにも意見を求める
    • 見守りメイン: エージェント同士が議論し、最後にユーザーがフィードバック
  5. 終了条件: 何をもってブレストを終了するか
    • 例: 「3ラウンド」「アイデアが5つ出たら」「合意が取れたら」など
    • ユーザーが特に指定しない場合は「3ラウンド」をデフォルトにする
  6. 結論の出し方:
    • 多数決: 最終ラウンド後に投票で1つに絞る(何かを決定したいテーマ向け)
    • 整理のみ: アイデアを分類・構造化してまとめる。1つに絞らない(アイデア発散・探索テーマ向け)

Step 2: チーム作成

  1. TeamCreate でブレストチームを作成する(チーム名: brainstorm-session
  2. 各参加者を Task ツールgeneral-purpose エージェントとしてスポーンする
    • team_name: brainstorm-session を指定
    • name: 役割がわかる名前をつける(例: tech-perspective, user-advocate
  3. 各エージェントのプロンプトに以下を必ず含める:
    • ブレストのテーマ
    • そのエージェントに割り当てられた役割・視点の説明
    • 以下の行動指示:
      • 「他のメンバーのアイデアを受け取ったら、必ずそれに対する意見(賛成・反対・発展案)を述べてから、自分のアイデアを出すこと」
      • 「ファシリテーター(リード)に SendMessage で報告すること」
      • 「自分の役割・視点を意識して発言すること」

Step 3: ブレインストーミング実行

自分(メインエージェント)がファシリテーターとして進行する。

ファシリテーターの責務

  • 各ラウンドの開始時に議論のポイントを整理して参加者に提示する
  • 議論が偏った場合は別の視点を促す
  • 対立する意見がある場合は両方の立場を明確にする
  • ラウンド間でアイデアの整理・分類を行う

ラウンド進行

ラウンド1: アイデア出し

  1. 全参加者に SendMessage でテーマを伝え、初期アイデアを2〜3個求める
  2. 各参加者からのアイデアを収集する
  3. ユーザー介入が「毎ラウンド参加」の場合、AskUserQuestion でユーザーにもエージェントと同じ形式で2〜3個の候補を出してもらう(選択肢ではなく自由記述で)
  4. 出たアイデアを整理して次のラウンドに備える

重要: ユーザーの意見もエージェントと同等に扱う。特別扱いしない。

ラウンド2以降: 議論・発展

  1. 前ラウンドの全アイデアと議論のまとめを全参加者に SendMessage で共有する
  2. 各参加者に以下を求める:
    • 他のアイデアへの意見(賛成・反対・発展案)
    • 新しいアイデアの追加
    • 前ラウンドの議論を踏まえた深掘り
  3. ユーザー介入が「毎ラウンド参加」の場合、AskUserQuestion でユーザーの意見も聞く
  4. 終了条件を満たしたか確認する

終了判定

  • 終了条件を満たしたら、結論の出し方に応じて次のステップへ:
    • 「多数決」→ 投票ステップへ
    • 「整理のみ」→ Step 4(まとめ)へ直接進む
  • まだの場合はラウンドを続ける
  • 各ラウンド終了時に現在の状況をユーザーに簡潔に報告し、続行するか確認する

投票・多数決(結論の出し方が「多数決」の場合のみ)

最終ラウンド終了後、以下の手順で結論を決定する:

  1. 候補の整理: ブレストで出た主要な候補をリストアップする
  2. 投票の実施:
    • 全参加者に SendMessage で候補リストを送り、1つだけ推しを選んで投票してもらう
    • AskUserQuestion でユーザーにも同じ候補リストから1つだけ投票してもらう
    • ファシリテーター(自分)も議論を踏まえて1票投票する
  3. 集計・発表:
    • 全員(参加者エージェント + ユーザー + ファシリテーター)の票を集計して表形式で表示する
    • 最多得票の候補を結論として採用する
    • 同数の場合は、同点の候補に絞って追加1ラウンドの議論を行い、再度投票する

重要: ファシリテーターが独断で結論を決めてはいけない。必ず多数決の結果に従うこと。全員の票を平等に1票として扱う(ユーザーもエージェントもファシリテーターも同じ1票)。

Step 4: まとめ

会話への出力

ブレスト結果を以下の構成でまとめて出力する:

  1. テーマ
  2. 参加者と役割
  3. 出たアイデア一覧(各アイデアへの賛否・議論ポイントも含む)
  4. 主な議論ポイント(対立した点、合意した点)
  5. 結論・ネクストアクション

ファイル保存

ブレスト結果をマークダウンファイルとして保存する:

  1. AskUserQuestion でファイル名と保存先を確認する
    • デフォルト提案: brainstorm-{テーマの要約}-{日付}.md
  2. 上記の「会話への出力」と同じ構成でファイルに書き出す

Step 5: チーム解散

  1. 全参加者に SendMessage(type: shutdown_request)を送る
  2. TeamDelete でチームを削除する
  3. ブレスト完了を報告する
Similar Skills
cache-components

Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.

138.5k
Stats
Parent Repo Stars0
Parent Repo Forks0
Last CommitFeb 16, 2026