Regional platforms

Yuanbao

Tencent Yuanbao は Tencent の AI アシスタントプラットフォームです。OpenClaw チャンネル Plugin は Yuanbao ボットを WebSocket 経由で OpenClaw に接続し、ダイレクトメッセージやグループチャットで ユーザーとやり取りできるようにします。

ステータス: ボット DM + グループチャットで本番利用可能。WebSocket が唯一サポートされる接続モードです。


クイックスタート

OpenClaw 2026.4.10 以降が必要です。 確認するには openclaw --version を実行します。openclaw update でアップグレードします。

  • 認証情報を使って Yuanbao チャンネルを追加する

    openclaw channels add --channel yuanbao --token "appKey:appSecret"
    

    --token の値は、コロン区切りの appKey:appSecret 形式を使用します。Yuanbao アプリで、アプリケーション設定にロボットを作成すると取得できます。

  • セットアップ完了後、変更を適用するために gateway を再起動する

    openclaw gateway restart
    
  • 対話型セットアップ(代替)

    対話型ウィザードも使用できます。

    openclaw channels login --channel yuanbao
    

    プロンプトに従って App ID と App Secret を入力します。


    アクセス制御

    ダイレクトメッセージ

    dmPolicy を設定して、誰がボットに DM できるかを制御します。

    • "pairing" - 不明なユーザーにはペアリングコードが送信されます。CLI で承認します
    • "allowlist" - allowFrom に記載されたユーザーのみチャットできます
    • "open" - すべてのユーザーを許可します(デフォルト)
    • "disabled" - すべての DM を無効にします

    ペアリングリクエストを承認する:

    openclaw pairing list yuanbao
    openclaw pairing approve yuanbao <CODE>
    

    グループチャット

    メンション要件channels.yuanbao.requireMention):

    • true - @mention を必須にします(デフォルト)
    • false - @mention なしで応答します

    グループチャットでボットのメッセージに返信すると、暗黙的なメンションとして扱われます。


    設定例

    オープンな DM ポリシーによる基本セットアップ

    {
      channels: {
        yuanbao: {
          appKey: "your_app_key",
          appSecret: "your_app_secret",
          dm: {
            policy: "open",
          },
        },
      },
    }
    

    DM を特定のユーザーに制限する

    {
      channels: {
        yuanbao: {
          appKey: "your_app_key",
          appSecret: "your_app_secret",
          dm: {
            policy: "allowlist",
            allowFrom: ["user_id_1", "user_id_2"],
          },
        },
      },
    }
    

    グループで @mention 要件を無効にする

    {
      channels: {
        yuanbao: {
          requireMention: false,
        },
      },
    }
    

    アウトバウンドメッセージ配信を最適化する

    {
      channels: {
        yuanbao: {
          // Send each chunk immediately without buffering
          outboundQueueStrategy: "immediate",
        },
      },
    }
    

    merge-text 戦略を調整する

    {
      channels: {
        yuanbao: {
          outboundQueueStrategy: "merge-text",
          minChars: 2800, // buffer until this many chars
          maxChars: 3000, // force split above this limit
          idleMs: 5000, // auto-flush after idle timeout (ms)
        },
      },
    }
    

    よく使うコマンド

    コマンド 説明
    /help 利用可能なコマンドを表示する
    /status ボットのステータスを表示する
    /new 新しいセッションを開始する
    /stop 現在の実行を停止する
    /restart OpenClaw を再起動する
    /compact セッションコンテキストを圧縮する

    Yuanbao はネイティブのスラッシュコマンドメニューをサポートしています。コマンドは gateway 起動時にプラットフォームへ自動的に同期されます。


    トラブルシューティング

    ボットがグループチャットで応答しない

    1. ボットがグループに追加されていることを確認します
    2. ボットを @mention していることを確認します(デフォルトで必須)
    3. ログを確認します: openclaw logs --follow

    ボットがメッセージを受信しない

    1. ボットが Yuanbao アプリで作成および承認されていることを確認します
    2. appKeyappSecret が正しく設定されていることを確認します
    3. gateway が実行中であることを確認します: openclaw gateway status
    4. ログを確認します: openclaw logs --follow

    ボットが空の返信またはフォールバック返信を送信する

    1. AI モデルが有効なコンテンツを返しているか確認します
    2. デフォルトのフォールバック返信は次のとおりです: "暂时无法解答,你可以换个问题问问我哦"
    3. channels.yuanbao.fallbackReply でカスタマイズします

    App Secret が漏えいした

    1. YuanBao APP で App Secret をリセットします
    2. 設定の値を更新します
    3. gateway を再起動します: openclaw gateway restart

    高度な設定

    複数アカウント

    {
      channels: {
        yuanbao: {
          defaultAccount: "main",
          accounts: {
            main: {
              appKey: "key_xxx",
              appSecret: "secret_xxx",
              name: "Primary bot",
            },
            backup: {
              appKey: "key_yyy",
              appSecret: "secret_yyy",
              name: "Backup bot",
              enabled: false,
            },
          },
        },
      },
    }
    

    defaultAccount は、アウトバウンド API が accountId を指定しない場合に使用されるアカウントを制御します。

    メッセージ制限

    • maxChars - 単一メッセージの最大文字数(デフォルト: 3000 文字)
    • mediaMaxMb - メディアのアップロード/ダウンロード制限(デフォルト: 20 MB)
    • overflowPolicy - メッセージが制限を超えた場合の動作: "split"(デフォルト)または "stop"

    ストリーミング

    Yuanbao はブロックレベルのストリーミング出力をサポートしています。有効にすると、ボットは生成しながらテキストをチャンク単位で送信します。

    {
      channels: {
        yuanbao: {
          disableBlockStreaming: false, // block streaming enabled (default)
        },
      },
    }
    

    完全な返信を 1 つのメッセージで送信するには、disableBlockStreaming: true を設定します。

    グループチャット履歴コンテキスト

    グループチャットで AI コンテキストに含める過去メッセージ数を制御します。

    {
      channels: {
        yuanbao: {
          historyLimit: 100, // default: 100, set 0 to disable
        },
      },
    }
    

    返信先モード

    グループチャットで返信する際に、ボットがメッセージを引用する方法を制御します。

    {
      channels: {
        yuanbao: {
          replyToMode: "first", // "off" | "first" | "all" (default: "first")
        },
      },
    }
    
    動作
    "off" 引用返信しません
    "first" 受信メッセージごとに最初の返信のみ引用します(デフォルト)
    "all" すべての返信を引用します

    Markdown ヒントの注入

    デフォルトでは、ボットは AI モデルが返信全体を markdown コードブロックで囲まないように、システムプロンプトへ指示を注入します。

    {
      channels: {
        yuanbao: {
          markdownHintEnabled: true, // default: true
        },
      },
    }
    

    デバッグモード

    特定のボット ID に対して、サニタイズされていないログ出力を有効にします。

    {
      channels: {
        yuanbao: {
          debugBotIds: ["bot_user_id_1", "bot_user_id_2"],
        },
      },
    }
    

    マルチエージェントルーティング

    bindings を使用して、Yuanbao の DM またはグループを異なるエージェントにルーティングします。

    {
      agents: {
        list: [
          { id: "main" },
          { id: "agent-a", workspace: "/home/user/agent-a" },
          { id: "agent-b", workspace: "/home/user/agent-b" },
        ],
      },
      bindings: [
        {
          agentId: "agent-a",
          match: {
            channel: "yuanbao",
            peer: { kind: "direct", id: "user_xxx" },
          },
        },
        {
          agentId: "agent-b",
          match: {
            channel: "yuanbao",
            peer: { kind: "group", id: "group_zzz" },
          },
        },
      ],
    }
    

    ルーティングフィールド:

    • match.channel: "yuanbao"
    • match.peer.kind: "direct"(DM)または "group"(グループチャット)
    • match.peer.id: ユーザー ID またはグループコード

    設定リファレンス

    完全な設定: Gateway 設定

    設定 説明 デフォルト
    channels.yuanbao.enabled チャンネルを有効化/無効化します true
    channels.yuanbao.defaultAccount アウトバウンドルーティングのデフォルトアカウント default
    channels.yuanbao.accounts.<id>.appKey App Key(署名とチケット生成に使用) -
    channels.yuanbao.accounts.<id>.appSecret App Secret(署名に使用) -
    channels.yuanbao.accounts.<id>.token 事前署名済みトークン(自動チケット署名をスキップ) -
    channels.yuanbao.accounts.<id>.name アカウントの表示名 -
    channels.yuanbao.accounts.<id>.enabled 特定のアカウントを有効化/無効化します true
    channels.yuanbao.dm.policy DM ポリシー open
    channels.yuanbao.dm.allowFrom DM 許可リスト(ユーザー ID リスト) -
    channels.yuanbao.requireMention グループで @mention を必須にします true
    channels.yuanbao.overflowPolicy 長いメッセージの処理(split または stop split
    channels.yuanbao.replyToMode グループの返信先戦略(offfirstall first
    channels.yuanbao.outboundQueueStrategy アウトバウンド戦略(merge-text または immediate merge-text
    channels.yuanbao.minChars Merge-text: 送信をトリガーする最小文字数 2800
    channels.yuanbao.maxChars Merge-text: メッセージあたりの最大文字数 3000
    channels.yuanbao.idleMs Merge-text: 自動フラッシュ前のアイドルタイムアウト(ms) 5000
    channels.yuanbao.mediaMaxMb メディアサイズ制限(MB) 20
    channels.yuanbao.historyLimit グループチャット履歴コンテキストのエントリ数 100
    channels.yuanbao.disableBlockStreaming ブロックレベルのストリーミング出力を無効化します false
    channels.yuanbao.fallbackReply AI がコンテンツを返さない場合のフォールバック返信 暂时无法解答,你可以换个问题问问我哦
    channels.yuanbao.markdownHintEnabled markdown の全体囲みを防ぐ指示を注入します true
    channels.yuanbao.debugBotIds デバッグ許可リストのボット ID(サニタイズされていないログ) []

    サポートされるメッセージタイプ

    受信

    • ✅ テキスト
    • ✅ 画像
    • ✅ ファイル
    • ✅ 音声 / ボイス
    • ✅ 動画
    • ✅ ステッカー / カスタム絵文字
    • ✅ カスタム要素(リンクカードなど)

    送信

    • ✅ テキスト(markdown サポート付き)
    • ✅ 画像
    • ✅ ファイル
    • ✅ 音声
    • ✅ 動画
    • ✅ ステッカー

    スレッドと返信

    • ✅ 引用返信(replyToMode で設定可能)
    • ❌ スレッド返信(プラットフォームでサポートされていません)

    関連項目