前言¶
DeepSeek Harness (DSH) 的核心设计理念是「一切皆插件」。在本地 Harness 环境中运行的代理,通常被限制在内部运行,无法被其他外部 harness(如 Claude Code、Cursor 等)直接调用。DSH MCP Server 插件通过 Model Context Protocol (MCP) 从运行 Harness 的主机发布一个服务端点,允许其他 agent harness 通过 Streamable HTTP 或 stdio 协议与 DSH 交互。它将 DSH 的会话、代理和工具暴露给外部调用者,使其能够启动会话、驱动对话轮次、读取日志以及取消任务。
插件定位¶
- 名称:
@local/dsh-mcp-server - 维护者:baitouwuya
- 许可证:MIT
- 类型:Host-only bundle(零依赖,无 DSH 导入,无第三方模块)
核心能力¶
该插件通过 MCP 协议提供了一系列工具,用于控制和管理 DSH 会话。支持的通信方式为 Streamable HTTP 或 stdio。
会话控制¶
- 启动与继续:
dsh_run_prompt用于启动新会话并运行 Prompt;dsh_continue_session用于向现有会话发送 Prompt 并保持上下文。 - 查询与管理:
dsh_list_sessions用于分页列出会话索引;dsh_read_session用于读取会话的对话记录(仅用户和助手消息);dsh_cancel_session用于取消会话的当前活动轮次。 - 归档:
dsh_archive_session和dsh_unarchive_session用于将会话归档或取消归档。
命令与工具¶
- 执行命令:
dsh_run_command用于在会话中运行斜杠命令(如/compact);dsh_list_commands用于列出当前会话代理可用的斜杠命令。 - 工具发现:
dsh_list_tools用于列出 DSH 暴露给自身代理的工具,以便在委托 Prompt 中选择权限。
状态与权限¶
- 状态监控:
dsh_status返回端点、配置、版本、会话计数、活动轮次和默认权限预设信息。 - 身份归属:
dsh_whoami返回调用者的身份标识(基于 Header 或 User-Agent)及其创建的会话列表。注意:这属于归属机制,非严格认证。 - 权限预设:
dsh_list_permission_presets用于列出部署的权限预设。 - 决策等待:
dsh_answer_request用于回答挂起的决策(审批或提问);dsh_list_requests用于列出会话当前等待的用户决策;dsh_wait_session用于阻塞等待会话当前轮次结束。
典型用法¶
-
启动新会话
调用dsh_run_prompt工具,传入 Prompt 文本及参数(如cwd、model、permissionPreset),即可开始一个新的 DSH 对话。 -
继续现有会话
使用dsh_continue_session,传入sessionId和后续 Prompt,在不丢失上下文的情况下继续对话。 -
列出运行中的会话
调用dsh_list_sessions,可以查看所有会话的 ID、标题和运行状态。通过mine: true参数可过滤出当前调用者创建的会话。 -
运行斜杠命令
使用dsh_run_command在会话中执行命令。例如传入"/compact",命令会立即执行,不经过模型轮次。
注意事项与依赖¶
- 零依赖:插件是一个 Host-only bundle,不包含 DSH 导入或第三方模块。只要 Harness 的服务契约保持不变,该插件可以随 Harness 升级而存活。
- 归属机制:调用者通过 Header 或 User-Agent 标识自己,系统记录会话归属者。这属于归属机制,非严格认证;调用者共享端点 Token。
- 功能依赖:
- 归档功能:需要 Host 的
workspaceRegistry服务(@deepseek-ai/dsh-workspace)。否则归档工具会报告服务不可用,列表中也不会显示归档字段。 - 权限预设:需要 Host 的
permissionPresets服务(@deepseek-ai/dsh-permission-presets)。否则权限相关字段会缺失。 - 命令功能:需要 Host 的
commands服务。
- 归档功能:需要 Host 的
- 安装:官方文档未提供具体的安装命令,建议参考 GitHub 仓库 的说明进行部署。
总结¶
DSH MCP Server 充当了 DeepSeek Harness 与外部 Agent Harness 之间的桥梁。它允许外部工具完全控制 DSH 的会话生命周期,同时保持了 Harness 的原生插件架构优势。