メインコンテンツへスキップ

インタラクティブフォーム(structured_clarify)

Myrm は会話内に構造化フォームを描画できます。エージェントが structured_clarify ツール(ask_question_tool スキーマ)を呼ぶと 1 つ以上の質問が送られ、WebUI は会話内で選択肢ボタン・チェックボックス・自由記述の入力欄を描画します。ユーザーが送信すると、同じ run が回答によって目を覚まして実行を再開します。

有効 / 無効の切り替え

structured_clarify はデフォルト profile で既定で有効です。調整したい場合:
  1. 会話内で Agent 設定 を開く
  2. 必要に応じて 構造化 clarify(structured_clarify)を切り替え
無効にすると Turn1 は ask_question_tool スキーマを渡さなくなり、使わない機能の token コストはゼロです。

何を作れるか

閉ループの動作

  1. エージェントが structured_clarify を呼び、run は応答を待ってサスペンドします
  2. WebUI は会話内にフォームを描画し、チャットストリームをブロックしません
  3. ユーザーが送信すると回答は保存され、同じ run が回答を伴って自動的に続行します
  4. バックエンドは 900 秒のタイムアウトガードを登録: ユーザーが応答しない場合も no_answer で自動的に続行し、フォームが会話を永久に堵塞させることはありません
Harness の ClarificationGuardMiddleware は 1 ターンにつき ask_question_tool の呼び出しを最大 1 回に制限し、並列ツールを遮断するため、フォームとツールの計画が矛盾しません。

いつ使うか

structured_clarify は質問と明示的確認のために使います — デプロイチェックリスト、破壊的操作の確認、方針の分岐選択。ダッシュボード・チャート・長寿命のパネルには Mermaid アーティファクトや成果物ファイルを使ってください。フォームは「訊く」ためのもので、「データを表示する」ためのものではありません。

大容量ファイルのインライン保護

HTML / SVG / Mermaid のアーティファクトは既定で会話ストリーム内に自動展開・描画されます。アーティファクトが 1 MB(LARGE_FILE_THRESHOLD)を超えると、インライン描画は優雅に縮退します。
  1. コンテンツの fetch も行わず srcDoc 描画も実行しません(OOM / ブラウザのフリーズを回避)
  2. 簡略なフォールバックカードを表示し、ファイルサイズと 「全画面表示」 ボタンを出します
  3. クリックすると ArtifactPortal が隔離 URL モード(iframe src)でコンテンツを読み込みます — ファイル有多大でも性能上のリスクはありません
これにより、ユーザーがインラインプレビューで固まる / 白紙になることで、大きな生成物(データダッシュボード、複雑な SVG インフォグラフィック)を「タスク失敗」と誤解することがなくなります。 参照: Agent 設定 — ツールのロード(英語)。