988hj7tczd-oss/dsh-im-qq0

dsh-im-qq

QQ 官方机器人接入插件:让用户通过 QQ(私聊 / 群聊 / 频道 @)直接与 harness 完整 agent 对话(工具 / 记忆 / 子代理 / 文件系统 / 安全护栏,与 Web UI 同源)

包名
dsh-im-qq
版本
0.1.1
许可证
MIT
最近更新
2026年8月16日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:988hj7tczd-oss/dsh-im-qq

0. 环境变量(推荐)或直接在 patch 配置里写 secret 明文

export DSH_QQ_SECRET='你的AppSecret'

配置方式

方式A(推荐):桌面端「设置 → 插件 → QQ 机器人」

安装后重启 harness-desktop,打开 设置 → 插件 → 插件配置,找到 QQ 机器人 卡片:

  1. 填入 AppID 与 AppSecret
  2. 保存并启动 —— 凭据写入 dsh 凭据域($DSH_HOME/.credentials.yaml,不落 patch 文件), 插件监听 credentials/updated 事件自动启动机器人,无需重启应用

凭据 ref:QQ_BOT_APP_ID / QQ_BOT_APP_SECRET(与凭据域既有命名对齐,已有值会直接复用并显示"已配置")。

方式B(手动):编辑 $DSH_HOME/cordis.patch.yml

- insert:
    - id: dsh-im-qq
      name: dsh-im-qq
      config:
        id: '你的AppID'            # 必须加引号(防 YAML 数字解析)
        secret: '你的AppSecret'    # 明文;或 secretEnv: 'DSH_QQ_SECRET'(环境变量)
        sandbox: true
        transport: 'websocket'     # websocket(当前)| webhook(P5)
        provider: 'deepseek-official'
        model: 'deepseek-v4-flash'
        agentPreset: 'standard'    # standard / code / minimal / cordis / 自定义
        cwd: '~/qq-workspace'      # 独立工作区(自动创建)
        workspaceIsolation: true   # 每会话 // 子目录
        allowFrom: ['*']           # 私聊白名单:空=全拒(fail-closed)
        groupAllowFrom: ['*']      # 群/频道白名单
        deliverWindowMs: 900       # 回复合并窗口
        deliverMaxWaitMs: 6000
        textChunkLimit: 4000       # 超长分段
        replyPassiveLimit: 4       # 被动回复上限(超限转主动)
        approval: true             # 审批桥(QQ 内联按钮)
        approvalTimeoutMs: 300000
        slashCommands: true
        debug: false

凭据优先级:row 配置 id/secret → 环境变量 secretEnv → 凭据域(方式A写入)。 修改后需重启 harness-desktop(或热加载)生效。

⚠️ 安全:本插件背后是带 bash/文件/子代理的全量 agent。白名单空 = 全部拒绝(fail-closed),'*' 是显式放行。联调用 '*',上线务必收紧。

使用

  • 私聊:直接给机器人发消息(沙箱内需为测试人员)
  • 群聊 / 频道:@机器人 后跟消息
  • 斜杠命令:/help /ping /me /new /approve /always /revoke
  • 审批:agent 需要高权限操作时,会在 QQ 里弹出内联按钮——✅ 允许一次 / ⭐ 始终允许 / ❌ 拒绝;⭐ 可随时用 /revoke 撤销