🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

飞书遥控器 ChengqianHuang/dsh-lark

DeepSeek Harness
ChengqianHuang35 天前有提交已提供中文文档扫描:含敏感能力

在飞书发消息即可驱动本机 dsh 会话并回传结果

29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add ChengqianHuang/dsh-lark
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么[目录]—
dsh 原生插件 · platform
暂无时间戳·判据 →
装得上吗[实装验证]!
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
数据截至 2026/10/01·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 35 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

⚠︎ 实装验证未通过(unknown · 2026/10/1) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件
查看扫描证据(共 20 处,展示前 20 条)
  • 读取本地文件
    src/catalog.ts:59
    try { text = await readFile(this.path, 'utf8') }
  • 写入本地文件
    src/catalog.ts:96
    await mkdir(dirname(this.path), { recursive: true, mode: 0o700 })
  • 写入本地文件
    src/catalog.ts:99
    await writeFile(temporary, JSON.stringify(next) + '\n', { flag: 'wx', mode: 0o600 })
  • 写入本地文件
    src/catalog.ts:100
    await rename(temporary, this.path)
  • 删除本地文件
    src/catalog.ts:101
    } finally { await rm(temporary, { force: true }) }
  • 读取本地文件
    src/egress.ts:160
    try { if ((await stat(output)).size > maxBytes) controller.abort(new Error('dsh-lark: attachment exceeds byte limit')) }
  • 读取本地文件
    src/egress.ts:166
    if ((await stat(output)).size > maxBytes) throw new Error('dsh-lark: attachment exceeds byte limit')
  • 写入本地文件
    src/files.ts:66
    await mkdir(directory, { mode: 0o700 })
  • 读取本地文件
    src/files.ts:70
    const info = await lstat(directory)
  • 读取本地文件
    src/files.ts:71
    if (!info.isDirectory() || info.isSymbolicLink() || await realpath(directory) !== directory) {
  • 读取本地文件
    src/files.ts:102
    const root = await realpath(settings.workspacePath)
  • 写入本地文件
    src/files.ts:106
    await writeFile(destination, data, { flag: 'wx', mode: 0o600, signal })
  • 删除本地文件递归
    src/files.ts:108
    } finally { await rm(scratch, { recursive: true, force: true }) }
  • 读取本地文件
    src/files.ts:137
    const root = await realpath(settings.workspacePath)
  • 读取本地文件
    src/files.ts:138
    const source = await realpath(join(root, args.path))
  • 写入本地文件
    src/files.ts:145
    await writeFile(snapshot, data, { flag: 'wx', mode: 0o600, signal: exec.signal })
  • 删除本地文件递归
    src/files.ts:150
    } finally { await rm(scratch, { recursive: true, force: true }) }
  • 写入本地文件
    src/index.ts:142
    await mkdir(effectiveSettings.workspacePath, { recursive: true })
  • 执行外部命令来自配置/变量
    src/ingress.ts:78
    const child = spawn(this.command, [...this.args], { stdio: ['pipe', 'pipe', 'pipe'] })
  • 执行外部命令来自配置/变量
    src/process.ts:44
    const child = spawn(command, [...args], { stdio: ['pipe', 'pipe', 'pipe'], ...(options.cwd === undefined ? {} : { cwd: options.cwd }) })
扫描于 2026/11/4(0 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-agent-default-model@deepseek-ai/dsh-brand@deepseek-ai/dsh-llm@deepseek-ai/dsh-session@deepseek-ai/dsh-session-title@deepseek-ai/dsh-util-values@deepseek-ai/dsh-workspace@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 聊天消息驱动本地会话
  • 结果回传聊天

飞书/Lark 桥接包,给 DeepSeek Harness 用:在聊天消息里驱动本地 dsh 会话,并在聊天中回复

README

由 DeepSeek 最新模型翻译生成
dsh-lark https://github.com/ChengqianHuang/dsh-lark · 主题:dsh-plugin 个人侧 Lark/飞书桥接 bundle:在飞书里给机器人发消息,消息实时驱动本机 dsh 会话,会话跑完把最终回答回复到聊天里。飞书是遥控器,dsh 是引擎,lark-cli 是两侧的传输层。 安装与使用见 dsh 用户文档 docs/user/develop/basic/publish.md。设计决策见 DESIGN.md。 安装(dsh 源码运行模式下) 本仓库 clone(或 link)到任意位置后,在 dsh 仓库根目录安装进 profile: 从本仓库的本地 clone 安装(link 模式,源码即生效) pnpm dsh plugin --profile web add /path/to/dsh-lark pnpm dsh --profile web --dump-config # 验证出现 "# == dsh-lark" 层 pnpm dsh web # 启动后从飞书对话 卸载:pnpm dsh plugin --profile web remove dsh-lark。
展开完整文档(README 剩余 1 节)
dsh-lark

https://github.com/ChengqianHuang/dsh-lark · 主题:dsh-plugin

个人侧 Lark/飞书桥接 bundle:在飞书里给机器人发消息,消息实时驱动本机 dsh 会话,会话跑完把最终回答回复到聊天里。飞书是遥控器,dsh 是引擎,lark-cli 是两侧的传输层。

安装与使用见 dsh 用户文档 docs/user/develop/basic/publish.md。设计决策见 DESIGN.md。

安装(dsh 源码运行模式下)

本仓库 clone(或 link)到任意位置后,在 dsh 仓库根目录安装进 profile:

从本仓库的本地 clone 安装(link 模式,源码即生效)
pnpm dsh plugin --profile web add /path/to/dsh-lark
pnpm dsh --profile web --dump-config # 验证出现 "# == dsh-lark" 层
pnpm dsh web # 启动后从飞书对话

卸载:pnpm dsh plugin --profile web remove dsh-lark。

前置条件(加载时逐项响亮校验):

- lark-cli 在 PATH 中(或用 larkCliPath 指定绝对路径),且应用已开通「接收消息」事件(im.message.receive_v1);
- 配置里的 workspacePath 会自动创建。

配置(可选,写进 profile 的 cordis.patch.yml 或由默认值兜底):

- id: lark
name: dsh-lark
config:
larkCliPath: lark-cli # 默认走 PATH identity: bot # 收消息用 bot 身份,无需 auth login
allowedSenders: [ou_c4198d18421b0749d2a7c79409a76ef3] # 建议显式配置
allowedChats: [] # 空 = 机器人能听到的所有会话
workspacePath: ~/.dsh/lark/workspace
sessionIdleMinutes: 30 # 聊天闲置多久后,下一条消息开新会话 restartDelayMs: 3000 # 消费进程崩溃后的重启延迟 maxReplyChars: 4000 # 回复长度上限,超出截断 titlePrefix: "[lark] " # web UI 会话标题前缀 agentPreset: coder # 可选:挂进驱动会话的 agent preset permissionPreset: yolo # 可选:驱动会话的权限 preset

触发规则

- 私聊:机器人收到的每条文本消息都是命令。
- 群聊:只有 @机器人 的文本消息是命令(飞书本身也只向机器人推送 @它 的群消息)。
- 消息原文(含 @前缀)原样进入会话;event_id 去重,重连补投不会重复执行。
- allowedSenders / allowedChats 为空表示不限制;个人机建议配白名单。

斜杠命令

以 / 开头的消息(群聊里 @机器人 后跟命令)控制桥接本身,不进入 agent:

- /new — 结束当前会话,下一条消息开始新会话
- /stop — 立即停止正在运行的回合(旁路排队,即时生效)
- /status — 查看当前会话与闲置倒计时
- /help — 显示可用命令

未知命令会回复提示,不会转发给 agent。@前缀按机器人显示名精确剥离(加载时自动从 API 获取,botName 配置可覆盖;拿不到名字时退化为首 token 启发式),所以发给 agent 的文本不再带 @机器人 噪声。被停止的回合回复「已停止本轮」。

会话映射与回复

- 每个 chat 最多挂一个活跃会话;首条消息创建会话(出现在 web UI 的 workspace 列表,标题带 titlePrefix)。
- 会话空闲超过 sessionIdleMinutes 后,该聊天下一条消息开新会话,旧会话正常释放。
- 每条消息是一次独立的 followup 回合;会话运行中再来的消息由 agent 自行排队。
- 回合结束后取最后一段 assistant 文本,优先 +messages-reply 回到触发消息,失败则退回 +messages-send 发到聊天;超过 maxReplyChars 截断。
- 创建会话、回合执行、回复发送失败都会把错误文本发回聊天,不静默。

构建 / 测试

(cd dsh-lark && pnpm install --ignore-workspace --config.auto-install-peers=false)
(cd dsh-lark && pnpm exec tsdown) # 产出 lib/index.mjs
pnpm exec vitest run --config dsh-lark/vitest.config.ts
pnpm exec tsc -p dsh-lark/tsconfig.json --noEmit

修改源码后重新 pnpm exec tsdown 即可(profile 里是 link,指向本目录)。
类型检查读取 DSH 各依赖包的声明文件;首次运行前需先构建上层 DSH 仓库。
预览分享卡片长什么样 ↓ChengqianHuang/dsh-lark
分享 · DeepSeek Harness Hub
ChengqianHuang/dsh-lark

在飞书发消息即可驱动本机 dsh 会话并回传结果

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部