dsh-feishu-pilot
Verifieddsh-feishu-pilot · v1.1.0 · MIT · Web UI
扫码即把飞书变成 DSH 的远程控制台:桌面 GUI 会话的任务、审批和提问可在手机上继续,任务结束主动通知,GUI 与飞书双端同时受理,离开电脑也不停。
Install
dsh plugin add dsh-feishu-pilot Confirm the layer applied with dsh --profile default --dump-config — see the install guide.
Source
Published to npm without a public repository. Inspect the package contents before installing.
Tags
Creators
Readme
飞书远控 · dsh-feishu-pilot
把飞书变成 DSH 的远程控制台:桌面 GUI 会话的任务、审批、提问都能在手机上继续;任务结束主动通知;GUI 与飞书双端同时受理。扫码即可接入,离开电脑也不停。
当前版本 1.0.1 · DSH 插件
功能亮点
- 任意会话可远程:不只飞书创建的会话——桌面 GUI 里的任意会话,任务通知、审批、提问都能推到飞书。
- 审批/提问双端竞速:GUI 与飞书同时受理,任一端先处理即生效,另一端自动失效并更新卡片。
- 扫码一键接入:飞书扫码自动创建应用并绑定机器人,预填权限、写入凭据、直接连接,无需手工配置应用。
- 切换会话,GUI 自动跟随:在飞书
/ws选工作区/会话后,桌面侧栏自动打开对应会话。 - 文件与图片直达模型:飞书发来的文件自动作为附件(≤20MB/个,单条最多 2 个);图片可开启(默认关,单条最多 4 张、单张 ≤10MB)。
- 换机器人免重启:换 bot 后热重连,旧绑定/授权自动清理;同一时间只连一个机器人。
- 进度与结果:绑定会话用进度卡展示过程与终态(耗时、token),非绑定会话推送任务完成通知。
- 任务中插话:任务执行中发
/steer <文本>(或/插话 <文本>)即可把补充要求插入当前任务,不用等它跑完。 - 多选提问也能答:飞书收到多选提问后,点「回复编号作答」再回复编号(如
1,3)即可完成多选。 - 完成通知开关:左侧会话列表每行有铃铛按钮(「归档会话」旁,同款图标样式),点一下即可关闭/开启该会话的完成通知(默认开启;按钮与提示框均与「归档会话」同款);设置页「任务完成通知」下方会列出已关闭通知的会话,可一键恢复;绑定飞书的会话不显示此开关(其完成卡由绑定结果卡负责)。
- 支持 DSH 原生命令:
/goal、/plan、/compact、/permission、/model,以及插件命令/new、/status、/output、/ws、/steer、/approve、/help。
环境要求
- 已安装并运行的 DSH(DeepSeek Harness,Web GUI);
- 一个飞书账号,且在该企业内有权限创建/管理自建应用(通常为企业管理员或被授予开发者权限;扫码自动建应用需要该权限);
- 应用需以 企业自建应用 形式创建并开启 机器人 能力;事件订阅使用长连接——长连接仅企业自建应用支持(应用商店/ISV 应用不支持);
- 若使用已有机器人:需要该应用的开发者/管理员权限,以便填写 App ID/Secret 或扫码绑定;
- 网络:DSH 所在机器可直接访问飞书开放平台(长连接,无需公网 IP)。
安装
通过 DSH 插件管理器安装:
- 打开 DSH → 设置 → 插件管理器;
- 按包名
dsh-feishu-pilot搜索并安装; - 安装完成后重启 DSH。
运行依赖(飞书 SDK、qrcode)会自动安装,不需要单独处理。
快速开始
- 打开 DSH → 设置 → 飞书远控;
- 点「扫码连接」,用飞书扫码创建/选择机器人(或手动填 App ID/Secret);
- 连接成功后,飞书私聊机器人发一条任务 —— 手机端即可远程操作桌面会话;
- 群聊使用时需 @机器人(默认;可在高级设置关闭)。
飞书应用配置
扫码模式会自动预填以下权限;手动配置应用时请自行开通:
| 权限 | 用途 |
|---|---|
im:message:send_as_bot |
发消息 / 卡片 |
im:message.p2p_msg:readonly |
接收私聊消息 |
im:message.group_at_msg:readonly |
接收群聊 @ 消息 |
im:message:readonly |
下载图片(图片入模型) |
im:resource |
上传文件(/output) |
application:application:self_manage |
查询本应用权限(自动检查缺失权限) |
application:app_slash_command:read / write |
斜杠命令面板 |
可选:im:message.group_msg(敏感权限)。关闭「群聊仅 @」后,设置页会自动检查并只提示真正缺失的权限。
- 事件订阅:
im.message.receive_v1(长连接模式); - 卡片回调:
card.action.trigger; - 创建版本并发布应用,把机器人加入可用范围(群聊使用需拉入群)。
常用命令
| 命令 | 说明 |
|---|---|
/ws |
工作区 / 会话选择器(接管或新建) |
/new |
新建会话(飞书专用工作区) |
/status |
连接、绑定、审批、授权状态 |
/output |
上一任务的完整输出 |
/approve <id> yes|no |
文本方式处理审批 |
/steer <文本> |
插话:把内容插入当前正在执行的任务(别名 /插话;空闲时等同普通消息) |
/goal |
设置长期任务目标 |
/plan [off] |
计划模式开关 |
/compact |
压缩对话 |
/permission |
权限预设(按钮选择) |
/model |
模型选择(按钮卡) |
/help |
帮助 |
设置页
DSH 设置 → 飞书远控,一页管理,修改即时生效(持久化在插件状态目录的 im-overrides.json):
- 连接:二维码扫码 / 手动凭据 / 断开(二次确认);
- 远程功能:任务通知、审批、提问开关,含子智能体开关;
- 会话:自动建会话、绑定列表(可解绑)、会话名;
- 授权用户:当前用户 + 待批准列表(一键批准/忽略);首次连接后的首个来信用户会自动成为管理员;
- 高级设置:群聊仅 @、接收图片、审批/提问有效期。
日常配置无需改配置文件。仅少数高级项(一般用不到)需要改 profile 配置:imCore.security.maxSessions(会话上限)、imCore.agent(派活用的 provider/model/工作区)、feishuWs.dir(飞书专用工作区目录)、feishuChannel.syncSlashCommands(斜杠面板同步);默认值见插件 cordis.patch.yml 注释与交接文档。
隐私与安全
- 凭据只在你的机器上:扫码/手填的飞书 App Secret 只写入本机插件状态目录(写入时请求 0600 权限:类 Unix 生效;Windows 下由用户目录 ACL 限制),不经浏览器、不上传任何第三方;
- 运行数据本地化:会话绑定、审批/提问记录、日志全部在
$DSH_HOME/dsh-feishu-pilot/下; - 无遥测:插件不收集、不上报任何使用数据;
- 断开连接会清除本地凭据并停止推送。
故障排查
| 现象 | 处理 |
|---|---|
| 设置页显示未连接 | 检查网络与凭据;重新扫码或手填 App ID/Secret |
| 群聊里机器人不响应 | 默认仅响应 @ 消息;确认已 @机器人且应用开通群消息权限 |
| 收不到审批/提问卡 | 确认设置页对应开关开启;检查会话审批策略是否恒为 never |
| 飞书切换后 GUI 没跟随 | 保持 DSH 页面打开;若页面长时间后台可能超时,飞书会提示手动打开 |
| 设置页空白 / 旧页面报错 | 页面停留在旧版本时刷新一次(插件更新后需刷新) |
| 升级后无绑定 | 状态目录在升级时自动迁移,正常无需重扫码;异常时查 boot-diag.log |
日志位置:$DSH_HOME/dsh-feishu-pilot/(boot-diag.log 引导诊断、mappings.json 绑定、state.json 意图、approvals-*.log 审批审计)。