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

办公 CLI 三件套 meliwanx/dsh-office-cli

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

统一调用企微钉钉飞书的办公能力

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

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · platform
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 76 天前
档位由哪些信号合成

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

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

可执行外部命令读写/删除本地文件
查看扫描证据(共 8 处,展示前 8 条)
  • 执行外部命令来自配置/变量
    src/runner.js:55
    const child = spawn(command, [...args], {
  • 写入本地文件
    bin/dsh-office.js:69
    mkdirSync(target, { recursive: true })
  • 读取本地文件
    bin/dsh-office.js:71
    if (!existsSync(manifest)) writeFileSync(manifest, `${JSON.stringify({ private: true }, null, 2)}\n`, { flag: 'wx' })
  • 写入本地文件
    bin/dsh-office.js:71
    if (!existsSync(manifest)) writeFileSync(manifest, `${JSON.stringify({ private: true }, null, 2)}\n`, { flag: 'wx' })
  • 执行外部命令来自配置/变量
    bin/dsh-office.js:133
    const child = spawn(executable, [...args], {
  • 读取本地文件
    src/adapters.js:136
    return existsSync(bin) ? bin : undefined
  • 读取本地文件
    src/adapters.js:149
    return existsSync(bin) ? bin : undefined
  • 读取本地文件
    src/skill.js:37
    content: await readFile(SKILL_URL, 'utf8'),
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-skill@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 统一调用企微钉钉飞书
  • 命令行办公能力

为官方企业微信、钉钉和飞书命令行提供安全的 DeepSeek Harness 插件

README

由 DeepSeek 最新模型翻译生成
dsh-office-cli 把企业微信、钉钉、飞书三家的官方办公 CLI 作为一个安全、原生的 DeepSeek Harness(DSH)插件提供给 Agent。 这不是另一个聊天机器人桥。现有 DSH 社区已经有不少“从飞书/钉钉/企微聊天远程控制 DSH”的项目;本项目解决另一层问题:让 DSH 在一次安装后,以统一工具操作三家的消息、通讯录、文档、表格、日程、会议、待办、审批、邮件等办公能力,同时继续使用厂商 CLI 自己的鉴权、命令发现和 API 兼容层。 当前适配 DSH 0.1.0-rc.7。DSH 仍处于 Developer Preview,后续版本可能需要同步适配。 能力 | 平台 | 官方 CLI | 插件平台名 | 能力发现 | 本地鉴权 | | 企业微信 / WeCom | @wecom/cli | wecom | schema list/get、--doc、--schema | wecom-cli auth init | | 钉钉 / DingTalk | dws | dingtalk | dws schema ... --compact | dws auth login |
展开完整文档(README 剩余 1 节)
dsh-office-cli

把企业微信、钉钉、飞书三家的官方办公 CLI 作为一个安全、原生的 DeepSeek Harness(DSH)插件提供给 Agent。

这不是另一个聊天机器人桥。现有 DSH 社区已经有不少“从飞书/钉钉/企微聊天远程控制 DSH”的项目;本项目解决另一层问题:让 DSH 在一次安装后,以统一工具操作三家的消息、通讯录、文档、表格、日程、会议、待办、审批、邮件等办公能力,同时继续使用厂商 CLI 自己的鉴权、命令发现和 API 兼容层。

当前适配 DSH 0.1.0-rc.7。DSH 仍处于 Developer Preview,后续版本可能需要同步适配。

能力

| 平台 | 官方 CLI | 插件平台名 | 能力发现 | 本地鉴权 |
| 企业微信 / WeCom | @wecom/cli | wecom | schema list/get、--doc、--schema | wecom-cli auth init |
| 钉钉 / DingTalk | dws | dingtalk | dws schema ... --compact | dws auth login |
| 飞书 / Lark | lark-cli | feishu | 分层 --help、快捷命令与 API 命令 | lark-cli config init + auth login |

插件提供:

- office_cli:统一的模型工具,输入平台、argv 数组、用途和可选 dry_run。
- office_cli_doctor:只检查三家 CLI 是否能运行及其版本,不读取账号身份或凭据。
- dsh-office:用户在终端执行的诊断和交互式鉴权助手。
- dsh-office-cli 内置 Skill:教 Agent 渐进发现命令、先 dry-run、检查退出码,并正确处理三家差异。
- 安全策略:无 shell 执行、输出/超时上限、凭据参数拦截、工作区路径限制、危险与未知写操作审批。

安装

要求 Node.js >=22.19 和可运行的 DeepSeek Harness。

从 GitHub 安装

dsh plugin --profile web add github:meliwanx/dsh-office-cli
dsh plugin --profile web exec dsh-office install
dsh plugin --profile web exec dsh-office doctor
dsh --profile web --dump-config
dsh --profile web

插件安装本身没有 postinstall,不会触发 pnpm 的依赖脚本拦截。第二条命令是用户明确授权的准备步骤:它通过 npm 把三个精确版本的官方 CLI 安装到 $DSH_HOME/office-cli,供所有 DSH profile 共用,不污染全局 npm。

也可以只装需要的平台
dsh plugin --profile web exec dsh-office install wecom
dsh plugin --profile web exec dsh-office install dingtalk
dsh plugin --profile web exec dsh-office install feishu

如果不想使用受管目录,也可以手工把官方 CLI 安装到 PATH,或把它们作为 profile 的相邻依赖安装。插件按“显式配置 → $DSH_OFFICE_HOME/$DSH_HOME/office-cli → 相邻 npm 包 → PATH”的顺序查找。

本地开发安装

npm install
npm run check
dsh plugin --profile web add .
dsh plugin --profile web exec dsh-office install

首次发布到 npm 后,安装命令可简化为:

dsh plugin --profile web add dsh-office-cli

诊断与鉴权

凭据由三家官方 CLI 写入自己的系统 Keychain/加密存储,本插件不接收、不保存、不代理 App Secret 或 Token。

dsh plugin --profile web exec dsh-office doctor
dsh plugin --profile web exec dsh-office install
dsh plugin --profile web exec dsh-office auth wecom
dsh plugin --profile web exec dsh-office auth dingtalk
dsh plugin --profile web exec dsh-office auth feishu

也可直接使用厂商命令:

wecom-cli auth init
dws auth login
lark-cli config init
lark-cli auth login --recommend

使用

安装并完成对应平台鉴权后,直接对 DSH 说:

查看我今天的飞书日程。

先 dry-run,然后在企业微信里给张三创建一个明天下午 5 点到期的待办。

查钉钉里本周待我审批的流程,只读,不要做任何审批操作。

Agent 会先加载随包提供的 Skill;命令不确定时,先用厂商 schema/help 发现最小命令面,再调用 office_cli。写操作默认进入 DSH 的一次性审批流程。

配置

覆盖 profile 的 cordis.patch.yml 中同一个 id,并重述完整配置:

- id: dsh-office-cli
config:
approval: writes
timeoutMs: 120000
killGraceMs: 2000
maxOutputBytes: 262144
maxArgs: 128
maxArgLength: 65536
allowRawApi: false
workspaceFilesOnly: true
仅在自动发现失败时设置;值是单个可执行文件路径,不是 shell 命令。
wecomCommand: /opt/bin/wecom-cli
dingtalkCommand: /opt/bin/dws
feishuCommand: /opt/bin/lark-cli

| 字段 | 默认值 | 含义 |
| approval | writes | writes 仅审批写/删除/未知操作;all 审批全部调用;off 关闭本插件审批。 |
| timeoutMs | 120000 | 每个前台 CLI 调用的超时。 |
| killGraceMs | 2000 | 超时/取消后从 SIGTERM 升级到强制终止的宽限时间。 |
| maxOutputBytes | 262144 | stdout + stderr 的总捕获上限,超出后截断。 |
| maxArgs | 128 | 单次 argv 数量上限。 |
| maxArgLength | 65536 | 单个 argv 的字符上限,兼容文档正文。 |
| allowRawApi | false | 是否允许三家 CLI 的低层 api 模式。 |
| workspaceFilesOnly | true | 拒绝明显指向会话工作区之外的文件参数。 |
| Command | 未设置 | 指定对应 CLI 的可执行文件路径或 PATH 名。不会进行 shell 拆词。 |

workspaceFilesOnly 是参数级防护,不是操作系统沙箱。高安全部署应把 DSH 和厂商 CLI 放进专用容器/账号,并限制企业应用本身的 API 权限。详见 SECURITY.md。

为什么做成一层统一插件

三家官方 CLI 都已经针对 Agent 提供 JSON 输出、帮助/schema 发现、dry-run 或风险元数据,并负责不断跟进各自开放平台。重新手写数百个 API 包装会迅速漂移;单纯让模型走 bash 又缺少统一审批、参数审计、超时和凭据防泄漏。

本项目因此只拥有四件事:DSH 工具契约、三家进程适配、跨平台安全策略、Agent 使用方法。业务 API 与 OAuth 生命周期仍由官方 CLI 拥有。完整设计见 架构说明,生态调研见 GitHub 调研。

范围与路线

0.1 版本专注 DSH → 办公平台 的出站办公能力。办公平台消息 → DSH 的入站 IM channel 涉及长期连接、会话映射、多租户身份、幂等/重放、远程审批与媒体流,不能和一次性 CLI 调用混成一个不可靠进程。后续会在同一适配器契约上增加独立的 channel- 插件,不改变现有工具接口。

开发

npm install
npm run check
npm run pack:check

本项目不采用 TDD 强制流程;实现完成后使用单元、类型和打包检查验证。贡献前请阅读 CONTRIBUTING.md。

许可证

MIT。由安装助手获取的三个厂商 CLI 是独立软件,分别遵循其自身许可证;见 THIRD_PARTY_NOTICES.md。
预览分享卡片长什么样 ↓meliwanx/dsh-office-cli
分享 · DeepSeek Harness Hub
meliwanx/dsh-office-cli

统一调用企微钉钉飞书的办公能力

这是你的仓库?认领条目

回到顶部