blooming-fang/dsh-feishu-notifier 预览 preview

blooming-fang/dsh-feishu-notifier

DeepSeek Harness 飞书通知插件:在需要用户操作或对话结束时发送飞书机器人提醒,并支持持久化配置。

Project Overview项目介绍

dsh-feishu-notifier is a DeepSeek Harness bundle that forwards agent interaction events to a Feishu bot via a custom webhook. Core capability: it listens for approval requests, ask_user_question prompts, exit_plan_mode plan confirmations, and turn/end events, converting completion, error, cancel, and abort reasons into readable text. When to use: when you need real-time Feishu visibility into DSH agent activity for remote review and approval. Caveat: requires DSH 0.1.0-rc.5 and Node.js 22.19+, each user must configure their own webhook, and the URL is sensitive and must never be committed or published.

dsh-feishu-notifier 是 DeepSeek Harness 飞书通知插件。核心能力:监听智能体审批请求、ask_user_question 提问、exit_plan_mode 计划确认及 turn/end 回合结束事件,转换为可读文本后通过飞书机器人 Webhook 推送。适用场景:需在飞书端实时感知 DSH 智能体交互状态、远程审阅与确认流程。需配合 DSH 0.1.0-rc.5 及 Node.js 22.19+ 使用,每个用户须自行配置 Webhook,且地址属敏感信息,不应提交至 GitHub 或随 npm 发布。

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 dsh-feishu-notifier

把 blooming-fang/dsh-feishu-notifier 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-feishu-notifier

一个 DeepSeek Harness Bundle:当智能体请求用户批准、等待用户回答问题或确认计划,以及一轮对话结束时,向飞书机器人发送文本通知。

配置界面

使用要求

  • DeepSeek Harness 0.2.0-rc.1 或兼容版本。
  • Node.js 22.19+。
  • 在 Web 设置中配置飞书自定义机器人 Webhook。

本地开发

pnpm install
pnpm run typecheck
pnpm run smoke
pnpm run build
pnpm pack:check

pnpm run smoke 会用桩上下文加载 lib/index.js 与 lib/client.js,校验通知分发、设置契约(volatile 字段与 secret 脱敏)、settings.section 注册,并复刻 dsh-app-boot 的插件版本校验、断言每个 dsh peer 范围都能接纳目标运行时版本 —— 升级 DSH 后应优先运行它,版本范围失配会在这里而非启动时报错。

构建会生成:

  • lib/index.js:Node/Cordis Loader 入口;
  • lib/client.js:Web 浏览器插件入口。

从 npm 安装

将插件发布到 npm 后,用户可以直接使用以下命令安装到 web Profile:

dsh plugin --profile web add dsh-feishu-notifier
dsh --profile web

如果使用源码方式运行 DeepSeek Harness,则将 dsh 替换为 pnpm dsh:

pnpm dsh plugin --profile web add dsh-feishu-notifier
pnpm dsh --profile web

启动后打开:

设置 → 飞书通知

填写飞书机器人 Webhook,点击“保存 Webhook”,然后点击“发送测试消息”验证连接。

配置通过 DSH 的 settings 服务写入当前 Profile 的补丁文件,通常是 ~/.dsh/profiles/<profile>/cordis.patch.yml。真实 Webhook 不会包含在 npm 包中,每位用户都需要配置自己的地址。

飞书通知

从 GitHub 安装

建议使用 release tag 或 commit SHA,确保安装内容可复现:

pnpm dsh plugin --profile demo add github:blooming-fang/dsh-feishu-notifier

从 GitHub 安装时会执行 prepare 构建插件。只应安装可信仓库中的代码;pnpm 可能要求在 Profile 的 workspace 配置中加入 allowBuilds 授权。

通知事件

插件会发送以下通知:

  • 用户审批请求(approval/request 瀑布事件);
  • ask_user_question 用户问题请求;
  • exit_plan_mode 计划确认请求;
  • turn/end 对话轮次结束事件,并将完成、错误、取消、分叉和中断原因转换为可读文本。子代理(session.header.origin === 'subagent')的轮次结束不会触发通知。

Webhook 属于敏感设置(Config 中声明为 role('secret')),保存后不会返回给浏览器。不要把真实 Webhook 地址提交到 GitHub 或发布到 npm。

从旧版本升级

从 0.2.x 升级到 0.3.0(DSH 0.2.0-rc.1)

DSH 0.2.0-rc.1 新增了插件版本校验:启动导入插件前,dsh-app-boot 会读取插件 package.json 的 peerDependencies,把所有 @deepseek-ai/dsh 与 @deepseek-ai/dsh-* 声明与当前运行时版本逐一比对(含预发布版本)。任一范围不匹配即拒绝加载该插件并提示 Plugin ... is incompatible with dsh ...。

因此本次升级是必需的,而不是可选的:插件 0.2.2 声明的 @deepseek-ai/dsh-settings: ^0.1.7-alpha.1 无法满足 0.2.0-rc.1,会在启动时被直接拒绝。0.3.0 的改动:

  • 所有 @deepseek-ai/dsh-* 依赖与 peer 范围提升到 ^0.2.0-rc.1,@deepseek-ai/cordis 提升到 ^4.0.4,@deepseek-ai/schemastery 提升到 ^3.18.4;
  • 新增 scripts/smoke.mjs 版本校验回归:用 semver 复刻 dsh-app-boot 的判定逻辑,断言每个 dsh peer 范围都能接纳目标运行时版本,避免下次再出现同类静默失败;
  • 面向 DSH 0.2.0-rc.1 重新构建 lib/index.js 与 lib/client.js。

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

← 上一个 Prev Timeseries-Workbench-DSH 下一个 Next dsh-eteams →