Plugin directory / Network / dsh-office-cli
dsh-office-cli
Verified · install-tested on dsh meliwanx
What it does
Secure DeepSeek Harness plugin for official WeCom, DingTalk, and Feishu/Lark CLIs
Works — verified, early-stage project
Secure DeepSeek Harness plugin for official WeCom, DingTalk, and Feishu/Lark CLIs It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
dsh-office-cli
中文 | English
A secure DeepSeek Harness plugin that exposes the official WeCom, DingTalk, and Feishu/Lark office CLIs through one native DSH tool.
This is an outbound office-capability plugin, not another chat-to-agent bridge. It lets a DSH agent work with messages, contacts, docs, sheets, calendars, meetings, tasks, approvals, mail, and other vendor-supported services while the official CLIs continue to own authentication, API discovery, and compatibility.
Currently targets DeepSeek Harness
0.1.0-rc.7, which is still a Developer Preview.
Included
office_cli: shell-free argv execution acrosswecom,dingtalk, andfeishu.office_cli_doctor: version-only availability checks with no credential reads.dsh-office: terminal-side doctor and interactive auth helper.- A bundled DSH Skill for progressive schema discovery and dry-run-first mutations.
- Default blocking for auth/config/upgrade/listener commands, credential arguments, raw API mode, and workspace-escaping paths.
- DSH one-time approval for writes, destructive operations, and unknown commands.
| Platform | Official CLI | Auth |
|---|---|---|
| WeCom | @wecom/cli |
wecom-cli auth init |
| DingTalk | dws |
dws auth login |
| Feishu/Lark | lark-cli |
lark-cli config init && lark-cli auth login --recommend |
Install
Requires Node.js >=22.19 and DeepSeek Harness.
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
The plugin package has no install script. The explicit second command installs pinned official CLI versions under $DSH_HOME/office-cli, shared by all DSH profiles and isolated from global npm.
# Install only one platform when preferred
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
Alternatively, install the official CLIs on PATH or as adjacent profile dependencies. Resolution order is explicit plugin config, $DSH_OFFICE_HOME/$DSH_HOME/office-cli, an adjacent npm package, then PATH.
For local development:
npm install
npm run check
dsh plugin --profile web add .
dsh plugin --profile web exec dsh-office install
Authenticate and diagnose
Credentials stay in each vendor CLI's own keychain or encrypted store. The model-facing tool never accepts auth commands or secret-bearing flags.
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
Configuration
Override the bundle row in the profile's cordis.patch.yml and restate its complete config:
- id: dsh-office-cli
config:
approval: writes # writes | all | off
timeoutMs: 120000
killGraceMs: 2000
maxOutputBytes: 262144
maxArgs: 128
maxArgLength: 65536
allowRawApi: false
workspaceFilesOnly: true
# wecomCommand: /opt/bin/wecom-cli
# dingtalkCommand: /opt/bin/dws
# feishuCommand: /opt/bin/lark-cli
workspaceFilesOnly is argument-level defense, not an OS sandbox. Use a dedicated container/account and least-privilege vendor apps for high-security deployments. See SECURITY.md.
Scope
Version 0.1 focuses on DSH → office platform operations. Inbound chat channels require long-lived connections, durable chat/session mapping, replay protection, remote approvals, and media streaming. They belong in separate future channel-* plugins sharing the adapter model rather than in the foreground CLI tool.
See the architecture and GitHub ecosystem research for the design rationale.
Development
npm install
npm run check
npm run pack:check
Licensed under MIT. CLIs fetched by the setup helper remain independent software under their own licenses; see THIRD_PARTY_NOTICES.md.
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-office-cli for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:meliwanx/dsh-office-cli Headless (CLI) profile:
dsh plugin --profile headless add github:meliwanx/dsh-office-cli Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.