Hoshino-Yumetsuki/dsh-onebot

DSH 的 OneBot 适配器

Project Overview项目介绍

dsh-onebot is a native plugin built exclusively for DeepSeek Harness (DSH) that acts as an adapter for the OneBot v11 instant messaging bot protocol. It supports three common transport modes: forward WebSocket, reverse WebSocket, and HTTP. To install the plugin, you can run the command dsh plugin --profile web add dsh-onebot via DSH's built-in command line interface. It handles connection reconnection automatically with a configurable interval. It parses all four standard OneBot post types, but only passes message events to the DSH agent for interaction, ignoring other events without creating new sessions or replies.

The plugin offers a full set of configurable options to tailor how it connects and handles access. You can adjust transport type, connection URLs, listen ports, credential references, and reconnection timing. It also supports granular access control: you can toggle responses for private and group chats, set allow or block lists for users and groups, require mentions in group chats, and add a command prefix to filter inputs. Credentials like access tokens and webhook secrets are stored in DSH's credential system, and the plugin only stores references to them, while array configurations are automatically deduplicated and stripped of empty entries.

The plugin only sends one reply to the message source after the DSH agent enters an idle state in the current round. It does not forward intermediate text from the agent's processing loop, nor does it expose arbitrary OneBot actions. Inbound images are only accepted if they are public HTTP URLs or data URLs with valid media types; local file paths and typeless base64 links are rejected. If you bind a reverse WebSocket or webhook to a non-loopback address, you must provide valid credentials for authentication, otherwise the listener will not start. This project is released under the open source MPL-2.0 license.

这是专门为 DeepSeek Harness (DSH) 开发的原生 OneBot v11 适配器插件,用于让 DSH Agent 对接基于 OneBot 协议的即时通信机器人,支持正向 WebSocket、反向 WebSocket、HTTP 三种传输方式。它解析 OneBot 标准的四种 post_type 事件,仅 message 事件会触发 Agent 交互,其余事件不会创建会话或生成回复。用户可通过 DSH 内置 CLI 命令 dsh plugin --profile web add dsh-onebot 完成安装。

插件提供丰富的可配置项,包括传输方式、连接地址、监听端口、访问令牌引用、webhook 密钥引用等,还支持细粒度的访问控制,可开关私聊群聊响应、配置用户和群聊的黑白名单,要求群聊必须提及机器人,还可添加命令前缀过滤输入。配置中的令牌和密钥需存入 DSH 凭证系统,插件仅保存引用名,数组配置会自动去重去空。

插件仅在 Agent 本轮进入 idle 后向消息来源发送一次回复,不转发 Agent 循环的中间文本,也不暴露任意 OneBot 自定义动作。入站图片仅接受公网 HTTP URL 或带媒体类型的 data URL,拒绝本地路径和无类型 base64 链接,反向 WebSocket 和 webhook 绑定非回环地址时必须验证密钥,否则无法启动。本项目采用 MPL-2.0 开源许可证。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 3 stars - very few users, little community feedback星标只有 3,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-onebot

把 Hoshino-Yumetsuki/dsh-onebot 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-onebot

DeepSeek Harness(DSH)的 OneBot v11 适配器,支持 HTTP、正向和反向 WebSocket

Transport

  • forward-ws(默认):连接 OneBot 正向 WebSocket,事件和 action 共用连接
  • reverse-ws:监听 WebSocket,等待 OneBot 反向连接
  • http:以 url 调用标准 HTTP API,同时在配置的监听地址提供 HTTP POST webhook

四种标准 post_type 是 message、notice、request、meta_event;只有 message 创建 Agent 交互。 传输层接受并解析四种标准 post_type;只有 message 事件进入 Agent,其余事件不创建会话或回复。

安装

dsh plugin --profile web add dsh-onebot

配置

字段 默认值 说明
transport forward-ws forward-ws、reverse-ws 或 http
url ws://127.0.0.1:3001 正向 WS 地址或 HTTP API base URL
listenHost 127.0.0.1 反向 WS / webhook 监听地址
listenPort 3002 监听端口
listenPath /onebot 监听路径
accessTokenRef ONEBOT_ACCESS_TOKEN 访问令牌的 DSH credential ref
webhookSecretRef ONEBOT_WEBHOOK_SECRET webhook secret 的 DSH credential ref
reconnectInterval 5000 重连间隔(毫秒)
requestTimeout 30000 action 请求超时(毫秒)
heartbeatTimeout 120000 心跳超时(毫秒),0 禁用
commandPrefix 空 非空时要求此前缀,并从 prompt 移除
respondToPrivate true 响应私聊
respondToGroup true 响应群聊
groupMentionOnly true 群聊要求提及机器人
userAccessMode disabled disabled、allowlist、blocklist
userIds [] 用户 ID 列表
groupAccessMode disabled disabled、allowlist、blocklist
groupIds [] 群 ID 列表

数组在设置 UI 中每行一个 ID,保存时去空白并且去重。token/secret 存入 DSH credentials,配置只保存引用名称。

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev spritely 下一个 Next dsh-think-any-lang →