← 返回列表
未验证
把企业微信、钉钉、飞书三家的官方办公 CLI 作为一个安全、原生的 DeepSeek HarnessDSH插件提供给…
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/19 · 已提供中文文档
# 面向官方企业微信、钉钉和飞书/Lark CLI 的安全 DeepSeek Harness 插件
综合分
27.9
GitHub 分
27.9
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add meliwanx/dsh-office-cli该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-skill@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/schemastery用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
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。
扫码进群