DSH Plugin Store
Back to home

BeAChanger

dsh-openclaw-acp

DeepSeek Harness bundle for OpenClaw and WeChat over ACP

Stars
1
Language
JavaScript
Created
Aug 13, 2026
Updated
Aug 14, 2026
Other
GitHub repo

Introduction

dsh-openclaw-acp

简体中文

A native DeepSeek Harness bundle that exposes a Harness profile to OpenClaw through the official Agent Client Protocol (ACP) transport.

The integration deliberately has three owners:

  1. DeepSeek Harness owns the agent, model, tools, workspace sandbox, and session log.
  2. OpenClaw ACPX owns ACP process lifecycle, dispatch, and conversation routing.
  3. The OpenClaw channel plugin owns WeChat or any other messaging transport.

This package does not embed a WeChat SDK and does not duplicate Harness. It installs as a dsh.bundle and mounts the official @deepseek-ai/dsh-acp plugin.

Prerequisites

  • pnpm 10 and a Node.js release supported by OpenClaw; stable OpenClaw 2026.7.1-2 requires Node.js 22.22.3+, 24.15.0+, or 25.9.0+
  • DeepSeek Harness 0.1.0-rc.6
  • OpenClaw 2026.7.1-2 or newer with the official @openclaw/acpx plugin
  • DEEPSEEK_API_KEY available to the OpenClaw Gateway process
  • A configured OpenClaw channel, such as Tencent's @tencent-weixin/openclaw-weixin

1. Install the Harness bundle

npm install -g @deepseek-ai/dsh@0.1.0-rc.6
dsh plugin --profile openclaw add https://github.com/BeAChanger/dsh-openclaw-acp/releases/download/v0.1.3/dsh-openclaw-acp-0.1.3.tgz
dsh --profile openclaw --dump-config

The command uses the prebuilt release artifact, so installation does not execute a repository build. The release page publishes a SHA-256 checksum asset.

The default route is deepseek-official/deepseek-v4-flash, with thinking enabled, max reasoning effort, a 1,000,000-token context window, and a 384,000-token output cap. Override the model in the Gateway environment when needed:

export DSH_OPENCLAW_PROVIDER=deepseek-official
export DSH_OPENCLAW_MODEL=deepseek-v4-pro

2. Register Harness in OpenClaw

Install and enable OpenClaw's official ACP runtime:

openclaw plugins install @openclaw/acpx@2026.7.1
openclaw config set plugins.entries.acpx.enabled true

For WeChat, install the Tencent channel version verified with this stack. The final login command displays a QR code and must be completed by the operator:

openclaw plugins install @tencent-weixin/openclaw-weixin@2.4.6
openclaw config set plugins.entries.openclaw-weixin.enabled true
openclaw channels login --channel openclaw-weixin

Add this configuration to the OpenClaw config:

{
  acp: {
    enabled: true,
    backend: "acpx",
    defaultAgent: "deepseek-harness",
    allowedAgents: ["deepseek-harness"]
  },
  plugins: {
    entries: {
      acpx: {
        enabled: true,
        config: {
          agents: {
            "deepseek-harness": {
              command: "dsh",
              args: ["--profile", "openclaw"]
            }
          }
        }
      },
      "openclaw-weixin": {
        enabled: true
      }
    }
  }
}

Restart the Gateway, then verify the boundary before testing a channel:

/acp doctor
/acp spawn deepseek-harness --cwd /absolute/path/to/workspace

On channels that support conversation binding, add --bind here. If a channel does not advertise ACP binding, use the unbound one-shot flow and let OpenClaw relay completion to the parent conversation.

3. Call it from WeChat

Once a WeChat channel is connected to the same Gateway, the message path is:

WeChat -> OpenClaw channel -> ACPX -> dsh --profile openclaw -> DeepSeek Harness

For multiple logged-in WeChat accounts, isolate direct-message sessions by account, channel, and sender:

openclaw config set session.dmScope per-account-channel-peer

No WeChat token or user identifier crosses the ACP boundary. OpenClaw resolves the channel sender and session; Harness receives only the selected workspace and prompt content.

Security defaults

  • OpenClaw's sandbox does not wrap external ACP processes. Harness enforces its own boundary through DSH_PERMISSION_MODE.
  • Keep the Harness default workspace-write mode unless the deployment explicitly requires more access.
  • Do not enable OpenClaw's ACPX MCP tool bridges for this target yet. Harness ACP 0.1.0-rc.6 rejects non-empty mcpServers.
  • Run the Gateway and Harness under a dedicated OS account and restrict the allowed workspace roots.
  • Treat danger-full-access as a break-glass mode, not a production default.

Known limitations

  • Harness ACP currently supports new sessions only; it does not advertise load, resume, fork, or session listing.
  • It returns committed assistant text, not live reasoning or tool events.
  • Channel-level persistent binding depends on the OpenClaw channel adapter. Use one-shot parent relay where binding is unavailable.
  • OpenClaw plugin tools are not injected into Harness because the current Harness ACP transport rejects non-empty mcpServers.

Verification

npm install
npm test
npm run test:acp
npm run pack:check

test:acp installs the bundle into an isolated profile and runs two protocol checks: a direct real-dsh ACP negotiation with JSON-RPC-only stdout, then a custom-agent launch through the published acpx@0.11.2 runtime used by OpenClaw's official ACPX plugin. Both checks complete initialize and session/new. They do not call a model and do not require a real API key.

License

MIT