voyager
Nagi-ovo
Enhancement suite for Gemini, AI Studio, Claude & ChatGPT — plus a prompt manager for any web UI, DeepSeek Harness included. / 面向 Gemini、AI Studio、Claude 与 ChatGPT 的增强套件;提示词管理器可用于任意 Web UI,含 DeepSeek Harness。
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:zhbdream/dsh-feishu-bridge
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
在飞书里发一句话,本机 DeepSeek Harness 开始干活并回帖。
企业自建应用即可,不需要飞书企业认证或付费版(本组织内使用)。长连接收事件,本机也不需要公网 IP / 反向隧道。
English · 安全模型 · 兼容版本 · 配置详解 · 飞书权限
免责声明:本项目为独立社区插件,与 DeepSeek、飞书官方无隶属或授权关系;名称仅用于描述兼容目标。远程消息会驱动本机 Agent(可读文件等),变更与安全后果由操作者自行承担。
| 官方 Web UI | 桌面套壳 | 本插件 | |
|---|---|---|---|
| 入口 | 本机浏览器 | 本机窗口 | 飞书手机 / 桌面 |
| 驱动本机 Agent | 是 | 是(壳) | 是 |
| 额外 UI | 官方维护 | 高 | 无 |
| 典型场景 | 坐在电脑前 | 坐在电脑前 | 路上发一句,本机开干 |
飞书单聊文本
→ 长连接事件 im.message.receive_v1
→ 白名单校验 + message_id 去重
→ 本机 dsh Agent(followup)
→ 回帖「处理中」→ 回合结束再回全文
appId / appSecret / allowOpenIds / workspace …bash / write / edit 等高危工具默认 deny/status、/cancel| 项 | 要求 |
|---|---|
| Node.js | ≥ 22 |
| dsh | npx @deepseek-ai/dsh@0.1.0-rc.6(钉版本见 COMPAT.md) |
| 模型 | 已配置 ~/.dsh/settings.yaml 的 agent-default-model,以及对应 API Key(~/.dsh/.credentials.yaml) |
| 飞书 | 能登录开发者后台 的企业/团队 |
可先确认:
node -v
npx --yes @deepseek-ai/dsh@0.1.0-rc.6 --version
im:messageim:message.p2p_msg:readonlyim:message:send_as_botim.message.receive_v1从源码(当前推荐):
码云:gitee.com/zhbdream/dsh-feishu-bridge · GitHub:github.com/zhbdream/dsh-feishu-bridge
# 任选其一
git clone https://gitee.com/zhbdream/dsh-feishu-bridge.git
# 或
git clone https://github.com/zhbdream/dsh-feishu-bridge.git
cd dsh-feishu-bridge
npm install
npm run build
创建(或复用)profile,再把插件加进去:
# 若还没有 feishu-dev profile,可先复制 web 或按 dsh 文档创建
npx --yes @deepseek-ai/dsh@0.1.0-rc.6 plugin --profile feishu-dev add .
期望:dsh --profile feishu-dev --dump-config 能看到 # == dsh-feishu-bridge 一层。
以后 npm 发布后可用:
dsh plugin --profile feishu-dev add dsh-feishu-bridge
推荐(长期):编辑用户目录下
%USERPROFILE%\.dsh\profiles\feishu-dev\cordis.patch.yml~/.dsh/profiles/feishu-dev/cordis.patch.yml覆盖本插件 config(字段表见 docs/local-config.md)。
本地最快(环境变量),模板见 .env.example:
PowerShell:
$env:FEISHU_APP_ID="cli_xxx"
$env:FEISHU_APP_SECRET="你的Secret"
$env:FEISHU_ALLOW_OPEN_IDS="ou_xxx" # 第一次可先空,让机器人回帖 open_id
# 可选:$env:DSH_WORKSPACE="D:\path\to\workspace"
bash:
export FEISHU_APP_ID="cli_xxx"
export FEISHU_APP_SECRET="your_secret"
export FEISHU_ALLOW_OPEN_IDS="ou_xxx"
# export DSH_WORKSPACE="$HOME/projects/my-workspace"
npx --yes @deepseek-ai/dsh@0.1.0-rc.6 --profile feishu-dev
终端期望出现 JSON 日志:plugin_loaded、ws_ready(或 SDK 的 ws client ready)。
在飞书搜索你的机器人,单聊发送:
| 你发 | 期望 |
|---|---|
你好 |
先「处理中…」,再模型回复 |
用 bash 执行 echo hi |
「安全闸已拒绝…」,终端有 tool_denied |
/status |
空闲 / 忙碌 |
/cancel |
取消当前任务 |
若提示未授权:把回帖里的 open_id 写入 allowOpenIds / FEISHU_ALLOW_OPEN_IDS 后重启进程。
本插件会请求 / 依赖的能力:
workspace;高危工具默认拒绝(见 SECURITY.md)关闭 / 卸载:
# 先停掉正在跑的 dsh 进程(Ctrl+C)
# 从 profile 移除本插件
npx @deepseek-ai/dsh@0.1.0-rc.6 plugin --profile feishu-dev remove dsh-feishu-bridge
同时建议:在飞书开发者后台停用或删除对应自建应用;清空环境变量 / profile 里的 appSecret。移除后本插件不再加载,也不会再收飞书事件。
| 现象 | 排查 |
|---|---|
没有 ws_ready / 收不到消息 |
事件是否选长连接;是否已发布版本;是否只有一个客户端在连(多开会抢消息) |
| 「未授权」+ open_id | 把 open_id 加入白名单后重启 |
| 「has no provider/model」 | 配置 agent-default-model,或设 DSH_PROVIDER + DSH_MODEL |
| 模型 / 401 / Key | 检查 ~/.dsh/.credentials.yaml 与 provider 环境变量 |
| 一直「处理中」 | 看终端是否有 agent_turn_error;试 /status、/cancel |
| 想临时放开 shell/写文件 | FEISHU_ALLOW_DANGEROUS_TOOLS=1(极不安全,仅本机实验) |
更多配置项:docs/local-config.md。
npm install
npm run build
npm test
npm run typecheck
插件入口:src/index.ts(Cordis bundle + cordis.patch.yml)。
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: feishu、lark。