Introduction

DeepSeek Harness (DSH) is an intelligent agent development and runtime framework that runs locally, while Obsidian is a powerful local knowledge management and note-taking tool. The core role of obsidian-dsh-acp is to act as an ACP (Agent Client Protocol) server, bridging DSH capabilities to the Agent Client plugin in Obsidian. With this adapter, users can directly drive DSH from Obsidian’s native interface, execute tasks, and manage sessions without operating DSH’s Web interface in a browser.

Core Capabilities

The plugin provides the following main features:

  • ACP server and integration: Provides ACP v1 protocol support (via stdin/stdout), acting as an intermediate layer connecting the Obsidian Agent Client and DSH’s headless mode.
  • Session management: Supports session listing, resuming, loading, forking, and deletion. Session data is persistently stored in a local JSON file (default path), and can be loaded across restarts.
  • Tool call frames: Supports displaying tool call status (in_progress -> completed) in Obsidian and showing token usage.
  • Session model switching: Allows switching models at the session level (e.g., DeepSeek-V4-Flash, Kimi-K2.6, etc.). This configuration only applies to the current session and does not affect the shared configuration file.
  • Session summary preview: Automatically generates and stores a summary after each round of dialogue, allowing conversation content to be previewed in the session list.
  • External session import: Supports importing session data exported by other ACP agents (such as claude-agent-acp) and converting it into DSH format for storage.
  • DSH Web session management panel: Provides an additional Web interface for managing sessions, viewing archives, and performing import operations.

Installation and Configuration

Before use, please ensure the environment meets the following dependencies:
* Node.js >= 22.13
* DeepSeek Harness (dsh) >= 0.1.5-rc.3

There are mainly two installation methods:

  1. Configure in Obsidian:
    Configure it as a “custom agent” in the Obsidian Agent Client plugin.

  2. Install in a DSH configuration file:
    Use the following command to add the plugin as a cordis plugin to the specified DSH configuration file:

    dsh plugin --profile <name> add obsidian-dsh-acp
The plugin includes an executable file (binary) named `dsh-acp`.

Usage Examples

  • Import external sessions:
    Use the command-line tool to import an external ACP session file:
    node dsh-acp.mjs import <session.json> [--title '..'] [--cwd /path]
Or directly send the command `/import /path/to/claude-session.json` in a dsh-acp session.

Notes

  • Official bridge limitation: Although the code includes official bridge support, DSH_ACP_USE_OFFICIAL_BRIDGE=1 must be set. This feature is currently unavailable in a typical dsh web configuration file.
  • License: The plugin follows the MIT License.
  • Source: The plugin was developed by SilenZerOrz and its source code is available on GitHub.