obsidian-dsh-acp:通过 ACP 协议将 DeepSeek Harness 桥接到 Obsidian

前言

DeepSeek Harness (DSH) 是一个本地运行的智能体开发与运行框架,而 Obsidian 是一款功能强大的本地知识管理与笔记工具。obsidian-dsh-acp 的核心作用是作为一个 ACP (Agent Client Protocol) 服务器,将 DSH 的能力桥接到 Obsidian 的 Agent Client 插件中。通过这个适配器,用户可以在 Obsidian 的原生界面中直接驱动 DSH,执行任务、管理会话,而无需在浏览器中操作 DSH 的 Web 界面。

核心能力

该插件提供以下主要功能:

  • ACP 服务器与集成:提供 ACP v1 协议支持(通过 stdin/stdout),作为中间层连接 Obsidian Agent Client 和 DSH 的 headless 模式。
  • 会话管理:支持会话列表、恢复、加载、分叉和删除。会话数据持久化存储在本地 JSON 文件中(默认路径),支持跨重启加载。
  • 工具调用帧:支持在 Obsidian 中显示工具调用状态(in_progress -> completed),并展示 token 使用量。
  • 会话模型切换:允许在会话级别切换模型(如 DeepSeek-V4-Flash, Kimi-K2.6 等),该配置仅对当前会话生效,不影响共享配置文件。
  • 会话摘要预览:每轮对话后自动生成摘要并存储,在会话列表中可预览对话内容。
  • 外部会话导入:支持导入其他 ACP 代理(如 claude-agent-acp)导出的会话数据,将其转化为 DSH 格式存储。
  • DSH Web 会话管理面板:提供额外的 Web 界面用于管理会话、查看归档和执行导入操作。

安装与配置

在使用前,请确保环境满足以下依赖:
* Node.js >= 22.13
* DeepSeek Harness (dsh) >= 0.1.5-rc.3

安装方式主要有两种:

  1. 在 Obsidian 中配置:
    将其配置为 Obsidian Agent Client 插件中的“自定义代理”。

  2. 在 DSH 配置文件中安装:
    使用以下命令将插件作为 cordis 插件添加到指定的 DSH 配置文件中:

    dsh plugin --profile <name> add obsidian-dsh-acp
插件包含一个名为 `dsh-acp` 的可执行文件(二进制)。

使用示例

  • 导入外部会话:
    使用命令行工具导入外部 ACP 会话文件:
    node dsh-acp.mjs import <session.json> [--title '..'] [--cwd /path]
或者在 dsh-acp 会话中直接发送命令 `/import /path/to/claude-session.json`。

注意事项

  • 官方桥接限制:虽然代码包含官方桥接支持,但需要设置 DSH_ACP_USE_OFFICIAL_BRIDGE=1。目前该功能在典型的 dsh web 配置文件中无法使用。
  • 许可证:插件遵循 MIT 许可证。
  • 来源:该插件由 SilenZerOrz 开发,可在 GitHub 获取源码。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜