DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

g524843184-maker /

g524843184-maker/dsh-phone-remote

Verified

把手机变成 Mac 的外接终端:语音输入 · 1:1 屏幕镜像 · 触控板手势 · 语音回读 · agent 一键切换(DeepSeek Harness 插件)

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: master@e5f371d4

dsh-phone-remote · 手机遥控器(DeepSeek Harness 插件)

把手机变成 Mac 的外接终端:语音输入 · 1:1 屏幕镜像 · MacBook 触控板手势 · 语音回读 · 三个 agent 一键切换。

想要改代码?看 DEVELOPMENT.md(架构、四个核心机制、踩坑清单、调试方法)。 只想用?往下看。

这个插件会在启动时拉起一个本地服务(server/server.cjs,绑定 0.0.0.0:8787), 因为它必须能被局域网里的手机访问;而 DSH 自己的 web 服务只监听 127.0.0.1。 子进程的"负责任进程"是 DeepSeek Harness,所以它继承 DSH 的系统权限,不用再单独授权一个应用。


一、需要哪些系统权限(必须)

权限 用途 不授权的后果
辅助功能 把键盘、鼠标事件打进当前前台窗口 发送、⌘C/V、触控板全部无效
屏幕录制 截屏做 1:1 镜像 镜像区全黑(只剩桌面壁纸)

授权方式(macOS):

系统设置 → 隐私与安全性 → 辅助功能  → 勾选 / 添加  DeepSeek Harness.app
系统设置 → 隐私与安全性 → 屏幕录制 → 勾选 / 添加  DeepSeek Harness.app

勾完要重启一次 DSH,TCC 对已在运行的进程不即时生效。 插件跑起来后可访问 GET /selfcheck 自检,返回 {accessibility, screenRecording, voice, ok, hint}。

二、语音回读(可选)

语音不是必需的。它调用本机的语音代理 127.0.0.1:9899(GENIE),

  • 有 → 回复会被念出来,手机/桌面按"这条是谁发起的"自动决定从哪出声
  • 没有 → 其它功能完全正常,只是不念

本插件不包含任何语音模型:模型(约 3.9GB)在 ~/.hermes/tools/genie-tts,属于本机共享服务,三个 agent(大聪明/小聪明/九妹)共用同一把排队锁。插件只发 HTTP 请求,不会打包、覆盖或独占模型。

三、安装

  1. 把本目录放到 ~/.dsh/profiles/<profile>/node_modules/dsh-phone-remote(或 link: 到该位置)

  2. profile 的 cordis.patch.yml 末尾加:

    - insert:
        - id: phone-remote
          name: dsh-phone-remote
    
  3. 重启 DSH

  4. 终端里看启动日志:[phone-remote] phone-remote 已启动 / 手机访问: http://<IP>:8787/?t=<token>

  5. 手机(同一局域网)打开那个地址,Safari → 分享 → 添加到主屏幕

四、手机上怎么用

区域 作用
输入框 + 发送↵ 语音/打字输入,⌘V 注入到前台窗口
镜像区 1:1 看 Mac 屏幕;触摸下方触控区即可操作
触控区 单指移/轻点/双击/长按拖 · 双指滚动/右键/捏合 · 三指四指切桌面
红点 复读 / 结束
三个 agent 键 大聪明 / 小聪明 / 大管家,激活并全屏

五、三个 agent 键:默认是我自己电脑的配置,你要自己改

⚠️ 重要:输入框下面那三个键(大聪明 / 小聪明 / 大管家)是为开发者本人的电脑定制的, 它们默认指向这三个我自己装的东西:

按钮 默认指向 说明
大聪明 DeepSeek Harness.app 就是跑这个插件的宿主
小聪明 Hermes.app 我自己的另一个 agent 应用,你机器上大概率没有
大管家 DeepSeek Harness.app + 点击侧边栏「DS Bot」 这是 DSH 的 ds-bot 面板,坐标是按我的窗口尺寸量的

不需要改代码,写一个配置文件覆盖即可:

~/.dsh/phone-remote.json
{
  "switch": {
    "dsh":   { "label": "我的助手", "open": ["-a", "YourAgentApp"] },
    "hermes":{ "label": "另一个", "open": ["-a", "SomeOtherApp"] },
    "dsbot": { "label": "第三个", "open": ["-a", "AnotherApp"] }
  },
  "apps": {
    "cc": { "label": "Claude Code", "cmd": "claude" }
  }
}
  • 只写想覆盖的项,其余保持默认
  • open 数组直接传给 open 命令:["-a", "应用名"] 或 ["/path/to/App.app"]
  • enter 是「坐标点击」用的,只有需要点某个面板时才要,且坐标随窗口尺寸变化,别人的机器基本对不上,建议删掉
  • 改完重启插件(重启 DSH)生效

如果你不需要这三个键中的某几个,把它们从配置里删掉即可——前端仍然会显示,点了会提示未知目标。

六、常见问题

现象 原因 处理
镜像全黑 / 只有壁纸 没给「屏幕录制」 授权后重启 DSH
点了没反应、⌘C 无效 没给「辅助功能」 授权后重启 DSH
打开不了页面 8787 被占用(旧版独立服务还在跑) 停掉旧服务:launchctl bootout gui/$(id -u)/com.example.phone-remote
不念语音 9899 没在跑 起语音代理;或忽略(其它功能正常)
切大管家点错 DSH 窗口不是全屏,坐标漂了 插件会先强制全屏再点;仍失败就手动切一次
—/ 5

No ratings yet

Verified DSH bundle

Commit e5f371d44421

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout