Regional platforms

Yuanbao

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

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


クイックスタート

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

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

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

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

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

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

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

    bash
    openclaw channels login --channel yuanbao

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


    アクセス制御

    ダイレクトメッセージ

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

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

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

    bash
    openclaw pairing list yuanbaoopenclaw pairing approve yuanbao <CODE>

    グループチャット

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

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

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


    設定例

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

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

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

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

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

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

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

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

    merge-text 戦略を調整する

    json5
    {  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

    高度な設定

    複数アカウント

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

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

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

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

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

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

    返信先モード

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

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

    Markdown ヒントの注入

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

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

    デバッグモード

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

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

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

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

    json5
    {  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 で設定可能)
    • ❌ スレッド返信(プラットフォームでサポートされていません)

    関連項目

    Was this useful?