Introduction

DeepSeek Harness extends the entry points for using local agents as a plugin. dsh-feishu-bot addresses another common need: extending local agent interaction to Feishu private chats. It allows users to send commands, view sessions, process approvals from Feishu private chats, and share sessions with the Web GUI.

Below is an introduction to its positioning, verified capabilities, installation methods, and deployment notes.

What is it

dsh-feishu-bot is a DeepSeek Harness plugin, package name @tingrudeng/dsh-feishu-bot, current version 0.1.0-rc.11, license MIT, maintained by TingRuDeng.

It is positioned as a Feishu (Lark) private-chat frontend: driving, monitoring, and approving DeepSeek Harness’s local agent from Feishu private chats, and sharing sessions with the Web GUI.

Version Status

The current 0.1.0-rc.11 is declared compatible with DSH 0.1.2-alpha.2.

Verified information indicates that rc.11 includes:

  • rc.9 S4 Markdown escaping unification
  • M7.0-M7.3 model/effort selection
  • session-persistence ownership fence

Before passing real Feishu acceptance, it is still a local candidate.

Core Features

Private Chat Commands

The plugin provides Feishu private chat commands for creating, binding, querying, and controlling sessions:

  • /new [cwd]: Create a session and bind it within an allowed workspace
  • /ls: View unarchived sessions; two-level cards allow selecting a workspace first, then clicking the real session title to bind
  • /use <sessionId|n>: Bind an existing session, serves as the text fallback for /ls
  • /stop: Cancel the currently running turn, preserving already queued follow-ups
  • /status: View status
  • /effort <id>: Select effort
  • /model: View or process model-related status
  • /release: Stop task card and task-level persistent result synchronization
  • /help: View help

Text & Approval

Normal non-command Feishu messages enter a bound session as a single user text block; the bridge does not rewrite its content.

The plugin supports approval cards paired with the approval/asked event. Decisions from Feishu or Web can be parsed as normal approval requests.

Model Behavior Boundaries

The plugin does not inject system prompts, model instructions, or tool schemas. Model and tool behaviors are still owned by DeepSeek Harness.

Verified Configuration Items

Verified gateway and bridge configuration items include:

appIdRef
appSecretRef
sendRetryBaseMs
sendMaxAttempts
sendCircuitCooldownMs
disposeDrainTimeoutMs
allowedOpenIds
allowedWorkspaces
defaultWorkspace

These configuration items relate to credential references, send retries, cooling, drain timeout, allowed users, allowed workspaces, and default workspace. Verified sources do not provide a complete configuration reference, so this is not expanded into a full configuration table here.

Installation & Enablement

Registry Installation

Install scoped RC in an existing web profile:

dsh plugin --profile web add @tingrudeng/dsh-feishu-bot@latest

After installation, you can use the following command to view the config panel, expecting to see gateway, bridge, registry, and invariant related lines:

dsh --profile web --dump-config

Old No-Scope Source Package

If the current profile still contains an old no-scope source package, it needs to be removed first, then the scoped RC installed:

dsh plugin --profile web remove dsh-feishu-bot
dsh plugin --profile web add @tingrudeng/dsh-feishu-bot@latest

Feishu Side Preparation

Credentials

You need to set Feishu application credentials:

FEISHU_APP_ID
FEISHU_APP_SECRET

The repository does not contain secrets.

Feishu Console

You need to subscribe to events and enable permissions:

  • Subscribe to the im.message.receive_v1 event
  • Enable im:message.p2p_msg:readonly
  • If using approval cards, enable the card.action.trigger callback
  • Publish an application version after each modification

Typical Usage

Below are verified common operations:

/new [cwd]
/ls
/use <sessionId|n>
/stop
/status
/effort <id>
/model
/release
/help

When you send normal text, the message enters the bound session. When the session is bound, task cards and task-level persistent results are synced in Feishu; using /release can stop this synchronization.

If you wish to confirm whether the local configuration exposes plugin-related lines, you can execute:

dsh --profile web --dump-config

Applicable Scenarios & Notes

dsh-feishu-bot is suitable for users who wish to operate DeepSeek Harness local agents in Feishu private chats, especially scenarios requiring sharing the same batch of sessions with the Web GUI and handling commands, status, and approvals in Feishu.

Points to note before use:

  • The plugin runs with the current dsh process permissions; check the source code and license before installing.
  • rc.11 is still a local candidate before passing real Feishu acceptance.
  • The bundle patch remains fail-closed before deployment configuration provides allowedOpenIds and allowedWorkspaces.
  • If defaultWorkspace is configured, it must resolve within allowed roots.
  • The complete configuration reference was not expanded in the verified materials this time; deployment should follow the repository documentation and the actual dsh --dump-config output.

Links