ノーコードでAITuberを作成できるビジュアルワークフローエディタ
AITuberFlowは、AIを活用したバーチャル配信者(AITuber)のパイプラインを視覚的に構築できるツールです。ノードをドラッグ&ドロップで配置し、接続するだけで、コードを書かずにAIキャラクターを作成できます。
- デスクトップアプリ - macOS / Windows 対応のネイティブアプリ(Tauri v2)
- ビジュアルエディタ - 直感的なドラッグ&ドロップ操作
- プラグインシステム - 機能を自由に拡張可能
- リアルタイム実行 - ネイティブWebSocketによるライブログ表示
- 複数LLM対応 - OpenAI, Anthropic Claude, Google Gemini, Ollama
- 複数TTS対応 - VOICEVOX, COEIROINK, Style-Bert-VITS2
- 制御フロー - Start, End, Loop, ForEach, Switchノードで複雑なフローを構築
- アバター対応 - VRMモデル表示、リップシンク、表情制御
- OBS連携 - シーン切り替え、ソース制御
- 配信オーバーレイ - OBS Browser Source対応のオーバーレイ
- デモモード - APIキー不要でワークフロー動作確認が可能
- ワークフロー共有 - インポート/エクスポート機能(APIキー自動除外)
- GitHub Codespaces対応 - ブラウザからワンクリックで開発環境構築
⚡ 急ピッチで開発中!
「みんなに早く使ってほしい!」という想いで爆速開発しています。 粗削りな部分もありますが、日々改善中です。
- 🐛 バグを見つけたら → Issueへ
- 💡 こんな機能ほしい!→ Discussionsへ
- 💬 お問い合わせ → X DM (@oboroge9)へ
- ⭐ 応援してくれる方 → Starお願いします!
ブラウザ上でワンクリックで開発環境を構築できます。ローカル環境のセットアップ不要!
GitHub Releases からインストーラーをダウンロードして実行するだけ!
- macOS: DMG ファイル(Apple Silicon / Intel 対応)
- Windows: NSIS インストーラー
起動すると自動的にサーバーが立ち上がり、エディタが表示されます。
- Node.js 22以上
- Bun 1.0以上
- VOICEVOX (音声合成を使用する場合)
# リポジトリをクローン
git clone https://github.com/oboroge0/AITuberFlow.git
cd AITuberFlow
# 依存関係をインストール
npm install && npm run setup
# 開発サーバーを起動(フロントエンド + バックエンド同時起動)
npm run devこれで http://localhost:3000 でエディタが開きます。
# フロントエンドのみ
npm run dev:web
# バックエンドのみ
npm run dev:api# Docker Compose で一発起動
docker compose up --build
# バックグラウンドで起動
docker compose up -d
# 停止
docker compose downDocker環境では:
- フロントエンド:
http://localhost:3000 - バックエンド:
http://localhost:8001
| ノード | 説明 |
|---|---|
| Start | ワークフローの開始点 |
| End | ワークフローの終了点 |
| Loop | 指定回数の繰り返し処理 |
| ForEach | リスト内の各アイテムに対して処理 |
| Switch | 条件分岐 |
| Delay | 遅延処理 |
| ノード | 説明 |
|---|---|
| Manual Input | テキストを手動入力 |
| YouTube Chat | YouTubeライブのチャットを取得 |
| Twitch Chat | Twitchチャットを取得 |
| Discord Chat | Discordチャンネルのメッセージを取得 |
| Timer | 定期的にトリガーを発火 |
| ノード | 説明 |
|---|---|
| ChatGPT | OpenAI GPTモデル (GPT-4o, GPT-5等) |
| Claude | Anthropic Claudeモデル |
| Gemini | Google Geminiモデル |
| Ollama | ローカルLLM (Ollama経由) |
| ノード | 説明 |
|---|---|
| VOICEVOX | 無料の日本語音声合成 |
| COEIROINK | 高品質な日本語音声合成 |
| Style-Bert-VITS2 | 感情豊かな音声合成 |
| ノード | 説明 |
|---|---|
| Avatar Configuration | VRMモデルと設定を構成 |
| Motion Trigger | アバターのアニメーションをトリガー |
| Lip Sync | 音声に合わせた口の動き |
| Emotion Analyzer | テキストから感情を分析して表情を設定 |
| ノード | 説明 |
|---|---|
| HTTP Request | 外部APIを呼び出し |
| Text Transform | テキストを加工(大文字/小文字/トリム等) |
| Random | ランダムな数値や選択を生成 |
| Variable | 変数の保存と取得 |
| Data Formatter | データの整形と変換 |
| ノード | 説明 |
|---|---|
| Console Output | ログに出力 |
| Audio Player | 合成した音声を再生 |
| Subtitle Display | オーバーレイに字幕を表示 |
| ノード | 説明 |
|---|---|
| OBS Scene Switch | OBSのシーンを切り替え |
| OBS Source Toggle | OBSのソースを表示/非表示 |
注意: OBS連携にはOBSのWebSocketサーバーを有効にする必要があります。
- ブラウザで
http://localhost:3000を開く - 「New Workflow」をクリックして新しいワークフローを作成
- サイドバーからノードをキャンバスにドラッグ
- ノード間を接続(出力ポートから入力ポートへドラッグ)
- ノードをクリックして設定を変更
- 「Run Workflow」で実行
| 操作 | 説明 |
|---|---|
| ドラッグ&ドロップ | サイドバーからノードを追加 |
| 接続線のドラッグ | 接続線の端をドラッグして別のノードに繋ぎ替え |
| 右クリック | コンテキストメニューを表示 |
| Ctrl+Z | 元に戻す(Undo) |
| Ctrl+Y | やり直し(Redo) |
| Ctrl+C/V | コピー&ペースト |
| Ctrl+S | ワークフローを保存 |
| Delete | 選択したノードを削除 |
外部サービス(LLM API、TTS)なしでワークフローの動作を確認できます。
- LLMノード: APIキー未設定時、自動的に定型文応答を返します
- TTSノード: 設定パネルで「Demo Mode」を有効にすると、TTS未接続時にスキップして継続
サイドバーのボタンからワークフローをJSONファイルとして保存・共有できます。
- エクスポート: APIキーは自動的に除外されます(セキュリティ対策)
- インポート: 新規ワークフローとして作成され、自動的に開きます
- Startノードを配置すると、そこから接続されたノードのみが実行されます
- Startノードに接続されていないノードは点線で表示され、実行されません
- Startノードがない場合は、すべてのノードが実行されます(後方互換性)
[Manual Input] → [LLM] → [TTS] → [Audio Player]
- Manual Input: テキストを入力
- LLM: OpenAI APIキーとシステムプロンプトを設定
- TTS: VOICEVOXのスピーカーを選択
- Audio Player: 合成した音声を再生
実行すると、入力テキストに対してAIが応答し、音声で読み上げます。
OBS対応のオーバーレイは以下のURLでアクセスできます:
http://localhost:3000/overlay/{workflow-id}
OBSのブラウザソースとして透過背景で設定できます。
AITuberFlow/
├── apps/
│ ├── web/ # Next.js フロントエンド
│ ├── server-ts/ # Bun + Hono バックエンド
│ └── desktop/ # Tauri v2 デスクトップアプリ
├── packages/
│ └── sdk-ts/ # TypeScript プラグインSDK
├── plugins/ # 公式プラグイン(32+)
├── templates/ # ワークフローテンプレート
└── docs/ # ドキュメント
cd apps/server-ts
# 依存関係をインストール
bun install
# サーバーを起動
bun run devバックエンドは http://localhost:8001 で起動します。
cd apps/web
# 依存関係をインストール
npm install
# 開発サーバーを起動
npm run devフロントエンドは http://localhost:3000 で起動します。
音声合成を使用する場合は、VOICEVOXをインストールして起動してください。
デフォルトでは http://localhost:50021 に接続します。
独自のノードを作成できます。
import { BaseNode, NodeContext } from "@aituber-flow/sdk";
class MyCustomNode extends BaseNode {
async setup(config: Record<string, unknown>, context: NodeContext): Promise<void> {
// 初期化処理
}
async execute(inputs: Record<string, unknown>, context: NodeContext): Promise<Record<string, unknown>> {
const inputText = (inputs.text as string) || "";
// ログを出力
await context.log(`処理中: ${inputText}`);
// 結果を返す
return { output: `処理結果: ${inputText}` };
}
async teardown(): Promise<void> {
// 終了処理
}
}詳細は CLAUDE.md の「Node Development」セクションを参照してください。
詳細なAPIリファレンスは docs/api-reference.ja.md を参照してください。
| メソッド | パス | 説明 |
|---|---|---|
| GET | /api/workflows |
ワークフロー一覧 |
| POST | /api/workflows |
ワークフロー作成 |
| GET | /api/workflows/{id} |
ワークフロー取得 |
| PUT | /api/workflows/{id} |
ワークフロー更新 |
| DELETE | /api/workflows/{id} |
ワークフロー削除 |
| POST | /api/workflows/{id}/start |
ワークフロー実行 |
| POST | /api/workflows/{id}/stop |
ワークフロー停止 |
- サーバーが起動しているか確認
- ローカル開発時:
http://localhost:8001/health - Docker使用時:
http://localhost:8001/health
- ローカル開発時:
- ファイアウォールの設定を確認
- VOICEVOXが起動しているか確認
- TTSノードのホスト設定を確認(デフォルト:
http://localhost:50021)
- ブラウザの自動再生ポリシーにより、最初の再生がブロックされる場合があります
- ページをクリックしてからワークフローを実行してください
- OBSでWebSocketサーバーを有効にする(ツール → WebSocketサーバー設定)
- ホスト、ポート、パスワードの設定を確認
プルリクエストを歓迎します!詳細は CONTRIBUTING.md を参照してください。
- このリポジトリをフォーク
- 機能ブランチを作成 (
git checkout -b feature/amazing-feature) - 変更をコミット (
git commit -m 'Add amazing feature') - ブランチをプッシュ (
git push origin feature/amazing-feature) - プルリクエストを作成
MIT License - 詳細は LICENSE を参照してください。
- React Flow - ノードエディタライブラリ
- Hono - 軽量Webフレームワーク
- Bun - 高速JavaScriptランタイム
- Tauri - デスクトップアプリフレームワーク
- VOICEVOX - 無料の音声合成エンジン
- Next.js - React フレームワーク
- @pixiv/three-vrm - VRMモデルレンダリング

