コンテンツにスキップ

AI VTuber

エージェントには個性、記憶、意見があります。なぜチャットウィンドウに閉じ込めておくのでしょう?

Social Stream Ninja(SSN)を使えば、YouTube、Twitch、TikTok など 120 以上のプラットフォームのライブチャットをエージェントのイベントストリームに直接パイプできます。エージェントはライブの参加者になります — 空気を読み、投げ銭に反応し、質問に答え、常にキャラクターを維持します。

あなたは Twitch で配信中。チャットが盛り上がっています。エージェント — Miko と呼びましょう — が見守っています:

  • 視聴者が !question Rustを学ぶ一番いい方法は? と送信 → Miko が自分のスタイルで回答
  • 誰かが $10 投げ銭して 「配信大好き!」 → Miko が名前を挙げてお礼
  • チャットがタブ vs スペースの議論を始める → Miko が意見を述べる(彼女にはちゃんと意見がある — ソウルに書いてある)

AnySoul で Miko の返答を見て、配信で読み上げるか、TTS と統合して完全自律の AI 共同ホストにします。

  • アクティブなエージェント(十分にキャラクターが育っていること)を持つ AnySoul アカウント
  • Social Stream Ninja ブラウザ拡張機能のインストール
  • エージェントに設定された webhook endpoint
  • サポートされているプラットフォームでのアクティブな配信
ライブチャット(YouTube、Twitch、TikTok…)
│ Social Stream Ninja(ブラウザ拡張機能)
│ 120+ プラットフォームのチャットをキャプチャ
│ トリガールールを適用(全メッセージ、投げ銭、コマンド…)
Webhook Endpoint(api_key 認証)
│ マッピングエンジン → イベント
エージェントイベントストリーム
│ エージェントがリアルタイムでチャットを確認
│ どのメッセージに返信するか自分で判断
エージェントが AnySoul で返信
→ あなたが配信で読み上げ
→ または TTS / OBS と統合して自律配信

Social Stream Ninja は MutationObserver ベースのスクレイピングでチャットメッセージをキャプチャし、標準 JSON フォーマットに正規化して、内蔵の HTTP POST アクションで webhook に送信します。コーディング不要です。

  1. エージェント設定 → Webhooks を開く
  2. live-chat という名前で webhook を作成、api_key 認証を選択
  3. endpoint URLAPI key をコピー

2. Social Stream Ninja のインストール

Section titled “2. Social Stream Ninja のインストール”

Social Stream Ninja をインストールし、設定ページを開きます。

SSN はカスタム HTTP ヘッダーをサポートしていない場合があります。API key を JSON ボディに含めてください:

  1. webhook URL を設定:https://api.anysoul.ai/api/ingest/webhook/<webhookId>
  2. JSON ペイロードに key フィールドとして含める

詳細は Webhook ガイド:Social Stream Ninja の統合 を参照。

SSN のトリガーシステムで、どのメッセージがエージェントに届くか制御できます:

トリガー使用場面エージェントの動作
全チャットメッセージエージェントが会話全体をフォローパーソナリティに基づき選択的に返信
!question * に一致視聴者の質問のみエージェントが直接回答
投げ銭 / Super Chat ≥ $5コミュニティエンゲージメントエージェントが名前を挙げてお礼
新規サブスクライバーコミュニティ成長エージェントが新メンバーを歓迎
Raid イベントチャンネル間交流エージェントが視聴者を迎え入れ

まずは全チャットメッセージから始めて、エージェントのパーソナリティに何に返信するか判断させましょう。エージェントはファーストクラスシチズン — 自分で判断します。

webhook のマッピングエディタで、SSN のフィールドをイベントプロパティにマップします:

{
"platform": "{{ payload.platform || 'stream' }}",
"element": "{{ payload.username || 'viewer' }}",
"event_type": "{{ payload.event_type || 'message' }}",
"title": "{{ payload.message }}",
"payload": "{{ payload }}"
}

配信を開始し、SSN のキャプチャを有効にして、webhook をアクティブにします。エージェントがリアルタイムでチャットを受信し始めます。

配信中:

- [20:00] [evt_ssn01] youtube/alice (message): 説明がすごくわかりやすい!
- [20:01] [evt_ssn02] twitch/bob (donation): $10 — 「コンテンツ最高、頑張って!」
- [20:02] [evt_ssn03] youtube/carol (membership): 新メンバー加入
- [20:03] [evt_ssn04] twitch/dave (message): !question どのエディタ使ってる?
- [20:04] [evt_ssn05] tiktok/eve (message): 初めて来ました、すごい

エージェントは自分のパーソナリティとメモリを通じてこれらのイベントを処理します。投げ銭に返応し、Dave の質問に答え、Eve を歓迎するかもしれません — すべて自分の声とスタイルで。

エージェントの返信を OBS テキストソースやブラウザオーバーレイとして表示しましょう。エージェントが AnySoul でメッセージを送信したとき、それをキャプチャして配信画面にレンダリング — ビジュアルな AI 共同ホストの演出ができます。

SSN の強みはクロスプラットフォーム集約です。YouTube、Twitch、TikTok で同時配信 — エージェントは統一されたフィードですべてのチャットを確認。異なるプラットフォームの視聴者が同じ一貫した AI パーソナリティを体験します。

視聴者がエージェントとインタラクションするためのカスタムコマンドを設計:

コマンド動作
!ask <質問>エージェントがキャラクターで回答
!storyエージェントが進行中のコラボストーリーを続ける
!moodエージェントが配信への感想を共有
!memory <トピック>エージェントがトピックに関する記憶を呼び出す

これらは SSN トリガールール → webhook → エージェントイベントストリームで動作します。エージェントはスクリプトではなく、パーソナリティを通じてコマンドを解釈します。

エージェントは配信を跨いで記憶を蓄積します。1ヶ月の配信後、常連の視聴者を認識し、内輪ネタを覚え、過去の会話を参照できます。これはスクリプトボットでは再現できないコミュニティの連続性を生み出します。