前言¶
DeepSeek Harness(DSH)通常跑在开发机、服务器或 NAS 上,工作区选择器只反映 Harness 所在环境的目录。若希望智能体直接读写家里电脑、办公室台式机上的项目文件,常见做法是 SSH、挂载网盘或把文件同步到 Harness 机器——每种方式都要单独维护连通性和权限边界。
cander0815/dsh-computer-mcp 把「另一台电脑」接到 Harness 的 MCP 工具链里:目标机运行轻量连接器并授权目录,Harness 侧安装 Profile Bundle,通过内网或 Tailscale 调用远程文件与可选命令工具。目标电脑不必安装 Node.js、Python 或完整 Harness。
这是什么¶
维护者 cander0815 在 GitHub 开源本项目(MIT License),社区目录分类为工作流。仓库同时包含:
- 目标电脑上的 连接器程序(Go 构建,Streamable HTTP MCP)。
- 可安装的 DSH Profile Bundle(
dsh-plugin),在运行 Harness 的环境中注册 MCP 客户端配置。
连接器与 bundle 分工明确:电脑端程序跑在要被操作的机器上;dsh plugin add 只装配置型 bundle,不会自动下载或启动连接器。
核心功能¶
以下能力均来自项目 README,文件工具会拒绝越界路径和子路径符号链接。
远程文件
- 浏览目录、按文件名通配符查找、分段读取、片段编辑、整体写入、移动与重命名。
read_file面向 UTF-8 文本,单文件最大 1 MiB,并返回 SHA-256;edit_file要求替换片段在文件中唯一出现。write_file覆盖已有文件需附带最近读取的哈希;delete_file仅将普通文件移入系统废纸篓/回收站,不支持目录或永久删除。
搜索与命令
search_text支持可选正则与文件名过滤;find_files只匹配文件名,不支持含/的模式。run_command默认关闭,需在配置页开启;执行不经过 Shell 解析,默认超时 30 秒,最长 120 秒。
运维与权限
- 本地配置页展示通信状态、授权目录、命令开关与日志位置;每日 JSON 日志便于排查。
- 发布包支持 Windows 10/11(amd64)、Intel Mac(10.15+)、Apple Silicon Mac(11+);另提供 Linux amd64 与源码。Windows ARM、32 位 Windows 暂不支持。
不提供远程桌面、鼠标键盘或浏览器控制;AI 读取的文件内容会发往模型与 Harness 所用服务,部署前需自行评估网络与信任边界。
安装与启用¶
1. 目标电脑:运行连接器¶
- 在 Releases 下载对应系统 ZIP,解压到固定目录。
- Windows 运行
启动.cmd;Mac 运行启动.command,或终端执行./dsh-computer-mcp。 - 在自动打开的配置页(默认管理端口
18791)中选择允许访问的目录并保存;需要命令时再开启「允许 AI 在此电脑执行命令」。 - 按内网或 Tailscale 地址复制连接配置,或下载配对文件。MCP 默认端口为
18790。保持程序运行;当前不提供开机自启或设备自动发现。
Mac 首次启动可能因 ad-hoc 签名出现系统提示;Windows 程序未使用商业代码签名,亦可能有安全提示。
2. Harness 环境:安装插件并注入环境变量¶
项目已验证组合为 Node.js 24 与 DSH 0.2.0-rc.2,使用 DSH 自带的 @deepseek-ai/dsh-mcp-client。在已安装 dsh 的环境中执行:
dsh plugin --profile web add github:cander0815/dsh-computer-mcp
若使用其他 profile,将 web 换成实际名称。该命令从 GitHub 安装 bundle(package.json 版本为 0.0.1),当前无同名 npm 注册表包;bundle 不含安装时构建脚本。
将配对文件中的 url 与 token 写入 Harness 进程启动环境(不要放进项目 .env):
export DSH_COMPUTER_MCP_URL='http://<目标电脑地址>:18790/mcp'
export DSH_COMPUTER_MCP_TOKEN='<连接令牌>'
dsh --profile web
Windows PowerShell:
$env:DSH_COMPUTER_MCP_URL = 'http://<目标电脑地址>:18790/mcp'
$env:DSH_COMPUTER_MCP_TOKEN = '<连接令牌>'
dsh --profile web
两个变量未完整填写时插件保持禁用。若曾手工加载配置页生成的 local-computer patch,请先停用旧 patch 再使用 bundle,避免重复注册同名 MCP 服务器。修改配置或升级后,需让 Harness 重新连接 MCP 并刷新工具列表。
HTTP 仅适用于可信内网;跨网建议用 Tailscale,不要将 MCP 端口直接暴露到公网。令牌勿提交到公共仓库。
典型用法¶
在新会话中可明确约束模型使用远程 MCP,而不是 Harness 本机工作区工具。README 建议的说明如下:
请使用 localcomputer MCP 操作连接的电脑。先调用 list_roots,确认设备、授权目录和当前权限,再使用对应的文件或命令工具。不要用 Harness 自带的服务器工具代替;找不到 MCP 工具时请明确告诉我。
常用工具包括:list_roots、list_directory、find_files、read_file、edit_file、write_file、create_directory、move_file、delete_file、search_text,以及开启权限后的 run_command。Harness 工作区选择器仍只显示 Harness 所在环境目录;目标机文件仅通过上述 MCP 工具访问。
适用场景与注意¶
适合
- 开发机跑 DSH,项目在另一台 Windows/Mac 上,希望通过对话完成读代码、改片段、搜文本、短命令构建等,且希望用目录授权收窄可见范围。
- 内网或 Tailscale 已打通,两端防火墙允许访问 MCP 端口。
务必注意
- 命令以连接器启动用户的系统权限执行;目录授权不是操作系统级沙箱,不能替代对源码与部署方式的审查。安装 bundle 与运行连接器前,应阅读 GitHub 仓库 与许可证。
delete_file成功后需用户自行清空废纸篓/回收站;不应改用永久删除命令替代失败的回收操作。- 连接器关闭或机器休眠后 Harness 无法访问该电脑;日志与命令输出可能含敏感信息,应保留在本机。
DSH 生态强调「一切皆插件」;SkillHub 目录页 为社区收录,与 DeepSeek / 幻方无官方从属关系。需要细节、限制与构建说明时,以 cander0815/dsh-computer-mcp README 为准。