cershuang/dsh-fschannel

Plugin插件 Native原生 ⭐ 2 MIT Notifications & Remote通知与远程

DSH-Feishu 频道插件

Project Overview项目介绍

dsh-fschannel is a DSH plugin that bridges DeepSeek Harness web sessions with a Feishu bot. After choosing “connect Feishu” for a new session, Feishu messages are handled by that session’s Agent, with replies sent back as streaming cards or plain messages. It supports persistent bindings, queuing, emoji feedback, image recognition, image/file sending, and model controls from Feishu. Use it when driving a DSH session from Feishu. Requires Node 22.19+ and Feishu app setup; messages arriving while stopped are not replayed.

dsh-fschannel 是把 DeepSeek Harness Web 会话桥接到飞书机器人的插件。新建会话选择「连接飞书」后,飞书消息进入对应会话由 Agent 处理,回复以流式卡片或普通消息发回;支持双向绑定、排队、表情反馈、图片暂存识别、发送图片/文件及飞书侧模型控制。适合想在飞书里驱动同一 DSH 会话时使用。注意需 Node 22.19+、配置飞书自建应用权限,停机期间消息不重放。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
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 github:cershuang/dsh-fschannel

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

READMEREADME

dsh-fschannel

English | 中文

让 DeepSeek Harness Web 会话连接到飞书机器人:新建会话时选择「连接飞书」,之后在飞书里给机器人发消息,消息进入该 DSH 会话由 Agent 处理,回复自动发回飞书聊天。Web 与飞书可同时驱动同一个会话。

传输层使用飞书官方 @larksuite/channel SDK —— WebSocket 长连接,无需公网回调地址。


功能

会话 ↔ 飞书聊天桥接

  • 一对一绑定(一个会话对应一个聊天,双向替换),绑定持久化在 $DSH_HOME/feishu-bindings.json
  • 待绑定机制:会话进入待绑定状态后,你在飞书里给机器人发的下一条消息所在聊天即完成绑定(FIFO)
  • 会话 Agent 不在线时自动 resume 恢复;重启后绑定关系保留

消息收发

  • 流式卡片(默认 output: 'stream'):回合开始即开卡(先显示「正在处理…」),回复以打字机卡片逐字呈现;工具调用显示「正在调用工具:{name}」引用行;回合结束时卡片保留最终结果,并自动排版为结构化卡片(段落/表格/代码块按 markdown 渲染,无输出或失败也留在卡片内);无卡片权限时自动回退普通消息
  • 卡片图片内嵌:最终卡片中的 markdown 图片引用(![说明](https://github.com/cershuang/dsh-fschannel/blob/HEAD/路径))若指向会话工作区内的本地图片文件,会自动上传并以卡片 img 元素内嵌(不显示远程链接/死链);远程 URL 或无法读取的路径不会出现在卡片中(保留说明文字)
  • output: 'plain' 可切换为「每步一条 markdown 消息」
  • 队列处理:SDK 级去重(30s)+ 按聊天串行投递;Agent 忙碌时回复「前面还有 N 条消息在排队」
  • 表情反馈:收到消息时在消息上自动加 👍,该回合完成变 ✅、失败变 ☹️(可配置 emoji 与开关;仅在你自己的消息上生效,Web 触发的回合不会误换)
  • 图片暂存识别:飞书图片先暂存不处理,等你的下一条文字消息到达后,把图片路径连同识别指令一起发给 agent —— agent 加载 vision-tools 技能并调用视觉识别工具(vision_glance/vision_ocr 等)逐张识别,结合文字回答(需已安装 @anionex/dsh-vision-toolkit 且 runtime 就绪;图片保存在会话工作区的 .dsh-fschannel-images/)
  • 会话图片画廊:会话头部「飞书图片」按钮打开该会话的图片网格(点击查看原图)。图片元数据由插件自管(feishu-bindings.json),不再写入会话日志 —— 旧版本写入的 feishu/image 事件类型不为 harness 所知,会导致整个会话历史无法加载;v0.1.5.3 起插件在启动时自动修复历史日志(给这类事件补上 harness 认可的 ignorable 标记),并自动补录历史图片索引
  • 机器人发送图片:agent 在回合中生成图片(图表、裁剪、代码渲染的 PNG 等)后,可调用 send_feishu_image 工具把图片发送到绑定的飞书聊天(可附带说明文字);发送的图片同时进入该会话的 Web 画廊。图片路径必须位于会话工作区内(防穿越),支持 PNG/JPEG/WebP/GIF;sendImageTool: false 可关闭此工具
  • 机器人发送文件:agent 可调用 send_feishu_file 工具把生成的任意文件(报告、导出、日志等,≤ 30 MiB)发送到绑定的飞书聊天,可指定显示文件名(默认取原文件名)并附带说明文字;sendFileTool: false 可关闭此工具
  • 群聊默认仅响应 @ 机器人(requireMention);未绑定聊天收到引导提示(可关)

飞书侧模型控制

  • 提到「调整/切换/查看 模型/effort」时自动弹出按钮卡片,展示当前模型与推理等级,可一键切换
  • /model — 弹出同一张卡片(查询当前模型与 effort)
  • /model list — 模型目录(含各模型支持的 effort 级别)
  • /model use <provider>/<model> — 切换模型(下一条消息起生效)
  • /model effort <off|high|max> — 切换思考强度
  • /status — 会话与机器人状态;/stop — 停止当前回合;/help — 命令清单
  • 切换走宿主 apiProxy(与 Web UI 同一通道),会话级持久:重启后自动重放

连接飞书(创建新会话时)

  • 会话头 chip:未连接 →「连接飞书」;待绑定 → 提示「给机器人发一条消息完成绑定」;已连接 → 显示聊天名(点击断开)
  • 设置 → 飞书机器人 标签页(独立页):状态、输出方式、「新会话默认连接飞书」开关、「新建会话并连接飞书」按钮、绑定/待绑定管理、命令说明

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

← 上一个 Prev promptwall 下一个 Next dsh-codex →