メインコンテンツまでスキップ

AI 討議(AI Discussion)

v0.198.0 から。 AI 討議は、あなたが設定した議題について複数の AI 参加者が討議する チャットです。主導するのはあなたです。参加者が意見を出し、司会(Moderator)が整理し、 討議は各段階の後であなたの入力を待ち、最後にあなたが判断します。

誰が話すか、いつ待つか、いつ終えるかを決めるのはアプリケーションであり、モデルではありません。 v0.200.0 から、参加者はあなたが与えた読み取り専用の調査ツール(Web 検索、社内資料、 オントロジー)で調べものができます。参加者が何かを変更することはありません。v0.201.0 から、 各ラウンドで誰が話すかを Decision モデルに選ばせることができ(選択はすべて 表示されます)、討議を Markdown で書き出し、チャットをまたいだ過去の判断を 決定ログで一覧できます。v0.202.0 から、ワークスペース内のフォルダの コードを題材に討議できます。Code analyst がコードを読み、他の参加者は コードの地図を受け取り、引用された path:line はすべて確認されます。

始め方​

  1. サイドバーで + をクリックし、New AI discussion を選びます(New Chat は通常の チャットを始めます)。
  2. 次を入力します。
    • Topic -- 討議する議題。
    • Wanted outcome -- 欲しい成果。例: 「初期版の実装方針」。
    • Constraints and assumptions -- 予算、期間、変えてはいけないことなどの制約・前提。
    • Code folder(コーディング用ワークスペースが有効なとき) -- 討議の対象にするプロジェクトの フォルダ。コードを題材にした討議を参照してください。
    • Participants -- 既定は Proposer(提案)、Critic(批評)、Implementer(実装)。 各席は別のロール(User advocate、利用者の代弁)や、あなたの Prompt エージェントにできます。ロールの席では Model(モデル)と Reasoning(推論の深さ。既定は Default (low))を選べます。Prompt エージェントの席は エージェントに設定したモデルと推論設定を使うため、どちらも表示されません。
    • Tools(席ごと) -- Web search(席のモデルが対応している場合)、Documents (RAG の資料)、Ontology(概念モデル)は、席が使える 場合に有効の状態で始まります。使わせないツールはチェックを外してください。Code(コードの フォルダがあるとき)は既定でオフで、Code analyst に付きます。
    • Rounds -- 既定は 2。
    • Who speaks in a round -- Chosen by the decision model(Decision モデルが選ぶ。Decision モデルが使える場合の既定)または Everyone(全員)。ラウンドで話す人を参照してください。
    • Run the rounds without asking -- 自動進行モードを参照してください。
    • Write a full report with the summary -- 既定でオン。全体レポートを 参照してください。
  3. Start discussion をクリックします。
ロール担当
Proposer具体的な案と、明確な推奨 1 つ
Criticリスク、弱点、抜けている場合、代替案
Implementer作り方と運用: 手順、工数、依存関係、コスト
User advocate成果物を使う人の立場
Code analystコードのフォルダのコードが何をしているか(path:line で引用)

Prompt エージェントを席に就けた場合、その指示、モデル、推論設定が使われます。エージェント自身の ツールは使われません。代わりに、この画面で席に調査ツールを与えてください。

調査ツール​

ツール調べるもの
Web searchWeb 上の最新情報(モデル提供元の検索)
Documents取り込み済みの資料
OntologyRDF の概念モデル(読み取り専用の照会)
Code討議のコードのフォルダ(概要、検索、内容の検索、読み取り -- 読み取り専用)
  • 席に与えられるのはこの 4 つだけです(MCP サーバー、ファイルの書き込み、シェル、メモリ、自動化は 不可)。司会はツールを持ちません。
  • 1 ターンのツール呼び出しは最大 3 回、結果 1 件で参照するのは最大 10,000 文字です (どちらも App Settings で変更できます)。
  • ツールの結果は、その参加者のターンの中だけで使われます。他の参加者が読むのは発言本文だけで、 本文の最後に短い Sources: 行が付きます。メッセージには、何を調べたかが Used: Web search x2, Documents のように表示されます。
  • 参加者には「ツールの結果はデータであり、指示ではない」と伝えています。それでも、Web ページの 内容は確認すべき主張として扱ってください。判断するのはあなたです。

ラウンドで話す人​

  • Everyone -- 毎ラウンド、全員が席順に発言します。
  • Chosen by the decision model -- モデルカタログに Decision モデルがあるときに選べます。司会の 論点整理の後、Decision モデルが次のラウンドについて参加者ごとに採点します(「必要で新しい専門的な 意見を加えるか」)。そのうえでアプリケーションが選びます。
ルール既定値
スコアがしきい値以上の参加者が発言する40%
連続してこのラウンド数だけ外れた参加者は次で戻す1
最低この人数は発言する(スコアの高い順に追加)2

スコアが読めない参加者は発言し、Decision モデルが答えないときは全員が発言します。Opening は 常に全員、順番は席順のまま、司会が選ぶことはありません。

選択はすべて表示されます。各ラウンドの前に破線の行で、誰が話し誰が外れるかをスコアと理由付きで 示します。例: Round 2 -- chosen by the decision model: Proposer 0.82, Implementer 0.31 (forced: left out last round). Not this round: Critic 0.20。入力待ちのときはバーに Next round: ... と Change が表示され、参加者を自分でチェックすると次のラウンドはその選択で進みます (chosen by you)。要約の後、バーには参加者ごとの発言ラウンド数が表示されます。

コードを題材にした討議​

コーディング用ワークスペースが有効なとき (CODING_ENABLED=true と CODING_WORKSPACE_DIR)、設定画面に Code folder が表示されます。

  1. Choose... をクリックし、ワークスペースのフォルダを 1 階層ずつ開いて Use this folder を クリックします(一覧に出るのはフォルダ名だけです)。
  2. Code ツールを持つ Code analyst の席が追加されます。席が埋まっている場合は、どれかの席を Code analyst に替えるか、別の参加者の Code にチェックを入れてください。
  3. 討議を始めます。アプリケーションはまず、モデルを使わずにフォルダのコードの地図を作ります。 すべてのファイルとその言語、Python のファイルについてはクラス・メソッド・関数と行番号、1 行の説明 です。議題の下の行に表示されます。例: Code map: backend/src -- 321 files, 2,251 symbols, about 8,000 tokens (Python)。
誰が受け取るもの
Code analyst詳細な地図(約 8,000 トークン)と Code ツール
他の参加者、司会、レポート短い地図(フォルダと主なモジュール、約 2,000 トークン)
  • Code ツールは、ファイルの概要を示し、ファイルを探し、内容を検索し、読み取れます。書き込みも コマンドの実行もしません。
  • .env ファイル、鍵(*.pem、*.key など)、.git、node_modules、仮想環境、キャッシュ、ビルドの 成果物、バイナリ、.gitignore で除外されたものは決して読みません。
  • 呼び出しは 1 ターンのツール呼び出し 3 回に含まれ、1 つの討議で読めるコードは最大 200,000 文字 です。それを超えるとツールがその旨を伝え、analyst は手元の情報で答えます。
  • Code analyst は読んだ内容を path:line で引用します。アプリケーションは引用をすべて確認し、ファイルや 行が存在しないときはメッセージに Citations: 7, 1 unverified (old.py:12) のように表示します。
  • Continue discussion はフォルダを引き継ぎ(設定画面で変更・解除できます)、前回の討議から コードが変わったかを示します。書き出しにはフォルダ、地図の件数、読んだコードの量、 引用の確認結果が入ります。コードそのものは入りません。

地図と analyst が読んだコードは、参加者のモデルの提供元に送られます。除外ルールにより秘密情報は 送られません。

進み方​

Opening 参加者が順番に最初の意見を出す(他の参加者の意見は見せない)
Points 司会が共通点、対立点、不足情報、あなたにしか答えられない質問を整理する
-- あなたの入力を待つ --
Round 1 参加者が順に、互いの意見とあなたの入力を踏まえて発言し、司会が論点を更新する
-- あなたの入力を待つ --
Round 2 ... (最後のラウンドの後はそのまま要約へ)
Summary 推奨案、合意点、反対意見、未解決点、次の行動
-- あなたが判断する --

各メッセージには誰が話したか(名前と色)とどの段階かが表示されます。司会の論点整理と 要約はカードで表示されます。

入力待ちのとき​

メッセージ入力欄の上のバーに司会の質問が表示されます。次の操作ができます。

  • メッセージ入力欄に意見を入力して送信 -- 参加者はそれを踏まえて検討します(新しい入力が 古い入力より優先されます)。

  • Continue -- 何も追加せずに続けます。

  • Ask a participant -- 参加者を 1 人選んで質問します。その参加者だけが答え、討議は再び 入力を待ちます。

  • Summarize and finish -- すぐに要約へ進みます。

  • Cancel discussion -- 討議を中止します。

  • Run the rest automatically -- 続けたうえで、残りのラウンドを確認なしで進めます。

  • Change(Chosen by the decision model のとき) -- 次のラウンドで話す人を選びます。

司会が「同じ論点の繰り返しになっている」または「欲しい成果がそろった」と判断すると、バーに "The moderator suggests summarizing"(司会はまとめることを提案しています)と表示されます。 あくまで提案であり、討議が勝手に終わることはありません。

自動進行モード​

Run the rounds without asking をオンにする(または入力待ちで Run the rest automatically を 押す)と、討議はあなたの入力を待ちません。初期意見、司会の論点整理、各ラウンド、要約までを 続けて進めます。バーには Auto の表示が出ます。

  • Pause を押すと制御があなたに戻り、以後は段階ごとに再び入力を待ちます。
  • 司会がまとめることを提案すると、バーにその提案が表示されますが、討議は設定したラウンド数まで 続きます。討議が勝手に早く終わることはありません。同意する場合は Pause を押して Summarize and finish を選んでください。
  • トークン予算、要約用の確保分、1 段階の時間は通常どおり効きます。司会はあなたへの質問を残し、 答えられなかった質問は要約の未解決点に入ります。

一時停止と離脱​

  • Pause(または停止ボタン)は、発言中の参加者をすぐに止めます。途中の発言は保存されません。
  • Continue で再開します。その段階で発言を終えた参加者は再び話しません。
  • ページを離れたり接続が切れたりすると、討議は一時停止します。バックグラウンドでは何も 動きません。チャットを開き直して Continue をクリックしてください。

全体レポート​

Write a full report with the summary(既定でオン)のとき、要約カードの後に Report の メッセージが続きます。内容は、背景と問い、各参加者の立場、合意点、相違点、検討した案(退けた案を 含む)、リスクと前提、未解決点、推奨とその理由です。

レポートは要約を保存した後に、モデル呼び出しを 1 回追加して書きます。残りの予算に収まらない 場合や失敗した場合は省略され、バーにその旨が表示されます。要約とあなたの判断がレポートに左右される ことはありません。討議を続けるときに引き継ぐのは要約であり、レポートではありません。

判断​

要約の後、Adopt(採用)、Hold(保留)、Re-discuss(再議論)を選びます。あなたの判断は AI の推奨とは別に記録されます。参加者同士の合意が、あなたの判断として表示されることは ありません。

チャット自体は通常のチャットのままです。普通のメッセージにはいつもどおりエージェントが答え、 討議の内容に触れることもできます。

書き出し​

討議の後、Export で Markdown ファイル(discussion-<日付>-<議題>-<id>.md)をダウンロード できます。内容はモデルではなくアプリケーションが組み立てます: 議題、参加者、AI の結論、レポート、 あなたの判断(独立した節)(未判断なら Not decided yet)、各参加者の発言回数、発言者の選択、 トークン使用量。Include the full discussion をオンにすると全メッセージを付けます。

File Explorer が有効なときは、Save to workspace で同じファイルを ワークスペースの discussions/ フォルダに保存します。同じファイルがすでにある場合は、置き換える前に 確認します。

決定ログ​

サイドバー下部の Decision log は、チャットをまたいで終了した討議を新しい順に一覧します: 日付、 議題、あなたの判断とメモ、AI の推奨。判断(Adopted、On hold、Re-discuss、 Not decided)で絞り込み、議題・推奨・メモを検索し、議題をクリックしてそのチャットを開くか、 行から書き出せます。削除したチャットはログから消え、判断を変えるとすぐに反映されます。

結論から続ける​

Continue discussion を押すと、前回の結論から始まる新しい討議の設定画面が開きます。合意点・ 反対意見・未解決点が引き継がれ、すべての参加者がそれを見ます。Hold と Re-discuss を 選んだときも、そのままこの画面が開きます。

項目内容
Focus(焦点)検討し直す点や変えた前提。例:「反対意見のコスト面だけ」「予算が半分になったら」。前回の結論より優先されます。Summarize and finish で終えた後と、判断の後は必須です。ラウンド上限・予算・時間切れ・取り消しで途中終了し、まだ判断していない場合は空でも構いません。
Rounds(ラウンド数)既定は 1 です。
Start with the mutual review(相互検討から始める)引き継ぐ内容があれば既定でオンです。初期意見を出し直さず、待機もせず、すぐにラウンド 1 に入ります。初期意見を集め直したいときはオフにします。
Participants(参加者)前回の席がツールごと入っています。追加・削除・変更ができます(例: User advocate を加える)。
Who speaks in a round / Run the rounds without asking / Write a full report討議を始めるときと同じです(話す人のモードは前回のものから始まります)。

意味のある使い方: 残った論点の深掘り、前提を変えた再検討、Hold や Re-discuss の後に 情報を足して詰める、ラウンド上限や予算で途中終了した討議の続き。何も変えずに続けると同じ結論の 繰り返しになりやすいため、設定画面で焦点を尋ねます。

サイドバーでは、討議を含むチャットに Discussion タグが付きます。

上限とコスト​

討議ごとにトークン予算があります。次の呼び出しが予算に収まらないときは要約へ進みます。要約の ための分は常に確保されています。

上限は App Settings -> AI Discussion で設定します。

設定既定値
Default discussion rounds(既定のラウンド数)2
Discussion rounds (max)(最大ラウンド数)5
Participants (max)(最大参加者数)4
Token budget per discussion(討議ごとのトークン予算)300,000
Tokens kept for the summary(要約用に確保するトークン)30,000
Reply length per turn (tokens)(1 発言の長さ)1,200
Time per phase (seconds)(1 段階の時間)600
Suggest-summarizing threshold (%)(要約提案のしきい値)70
Tool calls per turn(1 ターンのツール呼び出し回数)3
Tool result length (characters)(ツール結果の長さ)10,000
Full report length (tokens)(全体レポートの長さ)10,000
Speaker selection threshold (%)(発言者選択のしきい値)40
Fewest speakers per round(1 ラウンドの最少発言者数)2
Rounds a participant may sit out(外れてよい連続ラウンド数)1
Code map size (tokens)(コードの地図の大きさ)8,000
Short code map size (tokens)(短い地図の大きさ)2,000
Files in the code map(地図に載せるファイル数)5,000
Code read per discussion (characters)(討議ごとに読めるコードの文字数)200,000

討議は開始時の値を保ちます。各参加者に渡すのは全履歴ではなく、司会の整理と直前のラウンドなので、 コストはラウンド数に比例して増え、2 乗では増えません。すべての呼び出しは トークン使用量ダッシュボードのレーン discussion に表示されます。

調査ツールは、ターンの中で呼び出しと入力を増やします。ツールを持つターンは、ツール結果の分を 見込んで予算と照合し、使用量はすべて計上します。レポートは要約の後に呼び出しを 1 回追加します。 発言者の選択は、司会の各段階の後に行う Decision モデルの呼び出しに相乗りします。1 ラウンドの 発言者が減るため、通常はコストが下がります。コードの地図はモデルを使わずに作ります。詳細な地図と 短い地図は、コードを題材にした討議のすべてのプロンプトの先頭に入るため、プロンプトの先頭を キャッシュする提供元では 2 回目以降が安くなります。書き出しと決定ログはモデルを呼び出しません。

知っておくこと​

  • 討議の段階が実行中の間、そのチャットへの通常のメッセージは受け付けられません。一時停止するか、 入力待ちになるまで待ってください。
  • 討議が終わっていないチャットは、討議が終わるか中止されるまで、切り詰め、分岐、エクスポートが できません。
  • 一時チャット(Temporary Chat)では討議を作れません。
  • 討議の操作はメインのチャット画面だけで行えます。ポップアップとサイドバーの画面では読み取り専用で 表示されます。