ワークフロースタジオ
ワークフロースタジオとは、キャンバスそのものです。ワークフローは有向グラフで、素材ノードの出力が変換ノードへ流れ、変換の結果がさらに別の変換や組み合わせへ流れ、最終的に欲しい出力が葉ノードに集まります。
ワークフローの組み立て
- 素材を追加します。 Create モードで Smart Island の Add ツールバーを開き、必要なモダリティ(テキスト、画像、動画、音声、ドキュメント、URL、3D モデル)を選びます。クリックするたびに、ビューポート中央にノードが 1 つ置かれます。
- 選択して変換します。 素材ノードをクリックすると、Smart Island の表示が Add ツールバーからコンテキスト操作に切り替わります。たとえばテキストノードを選択中なら、画像生成、動画生成、音楽生成 などが並びます。どれかをクリックすると、選択中のノードに配線済みの変換ノードが追加されます。
- 手動で接続することもできます。 出力ハンドル(ノードの右端)から別ノードの入力ハンドル(左端)へドラッグします。接続が成立するのは、モダリティと形状が一致する場合だけです。この判定は ABI に基づきます。
- 入力を設定します。 ノードをクリックして、プロンプトテキスト、モデルのドロップダウン、スライダー、ファイルピッカーなどのパラメータを編集します。表示されるフィールドは、そのノードの ABI スキーマで決まります。
接続のルール
- 出力ハンドルの名前は
out:<field>です(例:out:image、out:text)。 - 入力ハンドルの名前は
in:<field>です。 out:<field>のモダリティと形状が、接続先のin:<field>と一致するときだけ接続は有効です。無効なエッジはキャンバスが弾きます。- 1 つの出力は複数の入力へファンアウトできます。1 つの入力が受け取れる上流エッジは最大 1 本です。
- N 入力のノード(画像を N 枚受け取る
image-fusionなど)には、ラベル付きの入力ハンドルが N 個あります。
保存
ワークフロータイトルは上部中央にあります。クリックするとタイトルメニューが開きます。
- Save — 現在のキャンバスとノードの状態を SQLite に書き込みます。新規ワークフローとして保存するか、既存のものを上書きします。
- Save as… — キャンバスを別名の新しいワークフローとしてフォークします。
- Rename — ワークフローのタイトルを変更します。
- Delete — ワークフローをデータベースから削除します(参照していた素材は Portfolio に残ります)。
キャンバスの位置とズームはブラウザが自動保存し、ノードのパラメータ編集はフォーカスが外れた時点で自動保存されます。明示的な Save は、グラフ全体を DB のバージョン付きの行としてコミットします。
読み込み
左サイドバーの Workflow ボタン(最初のアイコン)を開きます。ダイアログに保存済みワークフローが一覧表示されるので、クリックして読み込みます。
実行
Execute モード に切り替えます(ヘッダーの Sparkles → Play トグル)。
- Smart Island の Play をクリックします。
- 未保存の編集がある場合は、先に保存するかを確認するダイアログが出ます。
- ワークフローエクスポーターがグラフをトポロジカル順に走査し、キャッシュ結果のないノードごとにタスクを 1 つ発行します。
- 各タスクは、変換ノードなら Modal へ、
gen-text系なら設定した LLM プロバイダへディスパッチされます。 - 出力は手元のマシンに戻り、対応するノードが結果で更新されて緑に点灯します。エラーのノードは赤く点灯し、メッセージは Tasks パネルで確認できます。
画面上部のトーストが全体の進捗を追跡し、そこから実行を停止できます。
キャッシュ
2 回目以降の実行では、変更のない上流ノードはキャッシュされた出力を返します。特定のノードだけ再実行を強制するには、次のいずれかを行います。
- そのノードの入力値(プロンプト、パラメータ、添付素材)をどれか編集する。
- 右クリック → キャッシュをクリア(実装され次第。現状の代替手段は、ノードを削除して追加し直すことです)。
インポート / エクスポート
ワークフローエクスポーター(tongflow リポジトリの src/lib/workflow/exporter.ts)は、キャンバスとノードのスペックを JSON にシリアライズします。この JSON は別のマシンで再インポートできるので、Discord でのワークフロー共有や GitHub Issue への添付に便利です。
パン、ズーム、複数選択
- パン — 中ボタンドラッグ、Space + ドラッグ、または 2 本指スクロール。
- ズーム — ピンチまたはスクロールホイール。右下のコントロールで 100% 表示 / 画面フィットができます。
- 複数選択 — 囲むようにドラッグ、または Shift + クリック。
- 削除 — ノードを選択して Backspace または Delete。ノード間のエッジも自動的に取り除かれます。
- コピー / 貼り付け — Cmd/Ctrl+C、Cmd/Ctrl+V。貼り付けたノードは元の位置から少しずらして配置されます。
関連ページ
- ワークフローモード — Create と Execute の違い
- Smart Island — ノードの追加とコンテキスト変換
- ノードタイプ — 何と何をつなげられるか
