dsh-onebot-hub: DeepSeek Harness 的 OneBot v11 協議中樞

前言

DeepSeek Harness (DSH) 的核心理念是「一切皆插件」。當需要將 DSH 接入 QQ 平臺時,需要一個能夠處理 OneBot v11 協議的組件。dsh-onebot-hub 正是爲此設計的插件:它作爲協議層的中樞,向上連接 NapCat、LLOneBot 或 Lagrange 等上游實現,向下爲下游的 NoneBot 或其他 OneBot 實現提供服務,同時爲 DSH 代理提供全量的消息流、操作記錄以及 28 個專用工具。

插件概覽

  • 名稱:dsh-onebot-hub
  • 作者:Funny1Potato
  • 分類:工作流
  • 功能定位:DeepSeek Harness 的 OneBot v11 協議樞紐,既充當下游 bot 的協議上游,也是羣聊中的智能體。

核心功能

該插件提供以下核心能力:

  1. 事件原樣轉發:將 QQ 事件 verbatim(逐字逐句)轉發給下游機器人,不進行合成或改寫,確保下游插件兼容性。
  2. 全量觀測與工具:爲代理提供完整的時間線、操作檯賬,並暴露 28 個 onebot_* 工具,使代理能夠查看歷史、管理會話、控制下游並檢索記憶。
  3. 多模式支持:支持 Upstream(上游監聽/撥號)、Downstream(下游服務/撥號)和 Observer(觀察者)三種運行模式。
  4. 記憶隔離:提供 strict(嚴格)、scoped(作用域)和 balanced(平衡)三種記憶隔離等級,控制跨會話的數據可見性。
  5. 管理與輔助:內置 13 條管理命令(如 help、status、memes 等),支持表情包庫和圖片生成功能。

安裝與啓用

插件已發佈到 npm,安裝過程通過 DSH 的插件管理器完成。

1. 安裝插件
執行以下命令將插件安裝到指定的 profile 中(<你的 profile> 替換爲實際名稱,如 desktop):

dsh plugin --profile <你的 profile> add dsh-onebot-hub

2. 重啓 DSH
安裝完成後需要重啓 DSH 以加載插件。插件包內聲明瞭 dsh.bundle,通常會被自動併入插件的插件層,無需手動修改 cordis.patch.yml。若個別版本未自動合併,可手動追加配置後再重啓。

配置與使用

插件安裝後,需配置網絡連接和運行模式。

1. 基礎連接配置
最少需要配置兩項:

  • upstreamListen 或 upstreamUrl:指定上游 OneBot 實現的連接方式。推薦使用 upstreamListen 讓上游反連 hub,或直接填寫 upstreamUrl。
  • downstreamTargets:下游目標列表,JSON 數組。支持 ws-dial、ws-listen、http-api、http-post 四種連接方式。若只需自己使用不接下游,此項留空即可。

2. 會話與權限控制
* 白名單:通過 agent.groups 和 agent.privates 設置允許調用的羣聊和私聊列表,未列出的會話連 @ 都不會響應。
* 額度管理:使用 /quota 查看和重置用量限制,支持按羣設置配額。
* 命令權限:管理命令(help、status 等)的權限由 chatCommands.superUsers 控制,留空則整條命令鏈沉默。

3. 常用命令
安裝並配置完成後,可通過以下命令進行管理:
* /status:檢查 hub 狀態、時間線和運行時長。
* /quota:查看並重置本羣或私聊的額度。
* /help:列出所有可用命令。

行爲說明

理解插件的行爲對於正確使用至關重要:

  1. 默認靜默:默認行爲非常安靜,只有在被 @、被引用或在私聊中時纔會被喚醒。
  2. 草稿機制:代理的普通回覆文本僅作爲內部草稿,只有調用 onebot_reply 時纔會真正發送消息。
  3. 下游互斥:當下遊 bot 已經回覆過消息時,agent 不會再次插話,防止復讀。
  4. 探針測試:測試下游連接時,使用 probe.isolation 設置爲 link(默認)或 time,消息會通過另一個探針賬號發送,不會干擾真人會話。
  5. 權限時效:通過命令修改的權限(如 perm)僅對本次喚醒的會話有效,下次喚醒會自動恢復默認。

工具接口

插件爲代理提供了 28 個 onebot_* 工具,這些工具掛載在代理會話的作用域內,用於操作鏈路、查詢上下文、管理記憶和控制下游。

主要工具分類包括:
* 發言:onebot_reply
* 鏈路與消息:onebot_hub_status、onebot_timeline、onebot_turns、onebot_raw
* 人與羣:onebot_profile、onebot_group、onebot_members
* 記憶:onebot_memory、onebot_person、onebot_topic
* 控制下游:onebot_invoke、onebot_relay_probe、onebot_capabilities

目錄與源碼

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜