dsh-lark-link: A Feishu/Lark Bidirectional Bridge DSH plugin for DeepSeek Harness
amlyczz/dsh-lark-link
DSH plugin bridging agents to Feishu/Lark with QR one-click auth, card-based commands, and media support.
Connect DeepSeek Harness agents to Feishu, go live in 30 seconds with QR scan, supporting card-based commands, zero-loss messaging, and multimedia in/out.
dsh plugin --profile web add github:amlyczz/dsh-lark-link- Category
- Integrations & Connections
- Platform
- DSH-Plugin
- Author
- amlyczz
- Distribution
- Plugin
dsh-lark-link Key Features
dsh-lark-link Repository

dsh-lark-link Repo Summary
dsh-lark-link is a Feishu/Lark bidirectional bridge plugin (DSH plugin) for DeepSeek Harness, maintained by amlyczz under the MIT license, last updated in 2026-08. It solves the problem of integrating DSH agents into Feishu without manually configuring the open platform: scan a QR code and go live in 30 seconds, enabling conversations anytime, anywhere. Core capabilities include one-click authentication, multi-mode agents, card-based commands, zero-loss messaging, inbound request replay, connection self-healing, multimedia in/out, and one-click diagnostics.
What core features does the dsh-lark-link DSH plugin support?
The plugin offers rich interaction and reliability features: /lark setup scans a QR code to create a Feishu app, automatically subscribing to message events and permissions; /mode, /permission, and /model are presented as single-choice cards, switching with a tap; model questions are converted into Feishu intent confirmation cards, forming a complete interaction loop. Zero-loss messaging is achieved through a persistent Outbox (JSONL + at-least-once + idempotency keys), with automatic redelivery after crashes and restarts; the inbound request replay mechanism ensures that if the agent crashes mid-processing, the user message is automatically re-triggered after restart. Connection self-healing is driven by probe-controlled reconnects and quota circuit breakers, and /doctor generates a ZIP diagnostic package (including session logs and sanitized config) in one click.
How do I install and start dsh-lark-link?
Installation uses the official dsh plugin mechanism, non-invasively. It is recommended to use the npm official package with --ignore-scripts to skip protobufjs's postinstall (pnpm 11's security policy would block it). After installation, start the DSH Web GUI, run /lark setup in the input box to scan and create the app, then /lark start to start the bridge, and you can chat with the bot in Feishu.
dsh plugin --profile web add github:amlyczz/dsh-lark-link
What commands and permission levels does dsh-lark-link support?
DSH-side commands include /lark setup, /lark start|stop|restart|status, and /lark uninstall-clean; Feishu-side commands include /mode, /permission, /model, /status, /sessions, /help, /new, /stop, /workspace, and /doctor, all card-based. Permissions are divided into read-only, workspace-write, and Full access, with Full access as the default. Commands are routed in three tiers: bridge-specific commands are handled by the bridge, DSH-registered commands execute natively, and ordinary messages are injected into the agent as-is; skills have no prefix—just describe the task and the model loads them automatically.
How does dsh-lark-link handle multimedia and session management?
Inbound Feishu images are converted to visual model inputs, and files undergo bounded text extraction; outbound, the model can send local files via lark_send_local_file (with whitelist and size validation). Session management supports /new to start a new session and /workspace to switch workspaces, with session IDs persisted across restarts. The bridge agent reuses native DSH sessions, with chat, streaming, tool cards, and settings all presented via the DSH Web GUI, and sessions are automatically assigned to the corresponding workspace.
Which DeepSeek Harness versions and platforms does dsh-lark-link support?
The plugin is distributed in the official bundle format (dsh.bundle in package.json plus cordis.patch.yml), and after installation it automatically merges into the profile's dsh.profile.bundles layer, compatible with web / tui / headless profiles. It depends on official packages like @deepseek-ai/dsh-agent and @deepseek-ai/dsh-commands, ensuring seamless integration with the DeepSeek Harness ecosystem.