dsh-lark: A Feishu/Lark IM Bot Plugin for DeepSeek Harness
omdsh-dev/dsh-lark
DSH plugin integrates DeepSeek Harness with Lark/Feishu, enabling task dispatch, progress tracking, and tool approval in chat.
Let DeepSeek Harness agents handle tasks, show execution progress, switch workspaces and models directly in Feishu chat, and manage questions, plan confirmations, and tool approvals right there.
dsh plugin --profile web add github:omdsh-dev/dsh-lark- Category
- Integrations & Connections
- Platform
- DSH-Plugin
- Author
- omdsh-dev
- Distribution
- Plugin
dsh-lark Key Features
dsh-lark Repository

dsh-lark Repo Summary
dsh-lark is a Lark/Feishu IM bot channel plugin for DeepSeek Harness (DSH), maintained by omdsh-dev, licensed under BSD-3-Clause, and written in TypeScript. It solves the core problem of letting users interact with their DSH agents directly from Feishu chat, without staying glued to the terminal. You can assign tasks, watch execution progress, switch workspaces and models, and handle questions, plan confirmations, and tool approvals right in the chat. The plugin supports persistent sessions, multiple workspaces, model switching, native execution streaming, human-in-the-loop cards, session isolation, and multi-agent collaboration in group chats, along with a rich set of slash commands.
What core features does the dsh-lark DSH plugin support?
dsh-lark offers persistent sessions (resumable after restart, /new to start fresh), multiple workspaces (/ws to list, /cd to switch), model switching (/model opens a picker card), native execution streaming (view reasoning, tool calls, and results in Feishu), human-in-the-loop cards (single/multi-select or text answers, approve plans or tool calls), real-time status (/status shows workspace, model, and session, including context usage and token counts), session isolation (per chat, thread, or sender), and multi-agent collaboration (multiple bots with independent settings can hand off turns via @ in group chats, default max 6 rounds).
How do I install and start dsh-lark?
Install via the DSH plugin system:
dsh plugin --profile web add github:omdsh-dev/dsh-lark
Alternatively, install the CLI globally and start:
npm i -g dsh-lark-channel
dsh-lark-channel start
The terminal will show a QR code; scan it with Feishu to create the app, then message the bot or @ it in a group. No public server or callback URL configuration is needed.
What are the common commands for dsh-lark?
Common commands include: /status to view and refresh status, /ws to list workspaces, /cd <name or path> to switch workspace, /model to open the model picker, /model use <provider/model> to switch model directly, /model reset to restore default, /new to start a new session, /stop to stop the current task, and /help to see all commands. Host-provided commands like /plan, /compact, /permission also flow into the DSH command runtime.
How does dsh-lark run as a background service?
On macOS and systemd-based Linux, it uses user-level background services that keep running after closing the terminal. Manage with dsh-lark-channel status, logs -f, restart, stop. Upgrade with dsh-lark-channel upgrade. On connection errors, the plugin automatically rebuilds the WebSocket with rate limiting and backoff.
What DeepSeek Harness versions and platforms are compatible with dsh-lark?
Requirements: Node.js ^22.19.0 || >=24, DeepSeek Harness 0.1.0-rc.6 or newer, and a Feishu or Lark tenant. Native thinking process requires Feishu PC 7.70, mobile 7.74, or newer; older clients can use output: 'stream'.