DeepSeek Harness(DSH)采用「一切皆插件」的架构。当智能体需要操作 Android 设备或验证 UI 变更时,单纯的文字描述无法确认结果。dsh-android-pane 插件为 DSH 提供了一块 Android 实时画面面板,支持 USB 真机和模拟器,允许智能体与用户直接进行屏幕操作与验证。
插件简介¶
该插件由 hoyyang 维护,采用 MIT 许可证。它将 scrcpy 的 H.264 流推送到 DSH 网页端,并提供控件树访问能力,让智能体不仅能「看」,还能「点」和「滑」。
核心功能¶
- 实时画面:利用 scrcpy-server 进行 H.264 直推,网页端使用 WebCodecs 硬解,帧率在 30–60fps 之间。若 scrcpy 无法启动(老设备或安全系统拦截),会自动降级为截图轮播模式。
- agent 自验证:内置 10 个上下文工具(点按、滑动、文本、按键、滚动、旋转等),每次操作都会自动回传截图,结合 uiautomator 控件树验证实际改动。
- FLAG_SECURE 黑屏自愈:针对银行、密码管理等应用的黑屏问题,插件会自动识别并给出缓解链(如
adb root),若系统仍拦截,则降级为可点按的控件树文本视图,每步结果明示。 - 人机共屏:面板支持点按和拖动操作。当 agent 正在操作时,面板会显示红色徽标,此时用户的手势会被拒绝,操作权归属清晰。
- 会话隔离:一台设备同一时间只归一个会话。闲置 10 分钟(模拟器关机或真机断开)自动释放设备。
- 仅本机:所有视频流仅允许 127.0.0.1 访问,其他 IP 请求一律返回 403,防止外部访问。
安装与启用¶
安装过程零配置,不需要 API Key,也不需要修改 DSH 配置文件。但需要系统中有 adb 命令行工具(Android SDK)。
执行以下命令安装:
dsh plugin add github:hoyyang/dsh-android-pane
安装完成后,确保设备已开启 USB 调试并连接电脑,或启动任意模拟器。
典型用法¶
- 在 DSH 对话中向 agent 发送指令:「连接我的安卓设备」。
- DSH 网页端会出现设备的实时画面。
- 让 agent 执行操作,例如:「点一下设置图标」。它会自动进行点按并回传截图验证。
- 你也可以直接在画面上点按或拖动,实现人机共屏。
适用场景与注意¶
- 厂商限制:部分深度定制的厂商系统(如小米、OPPO 等)需要手动打开「USB 调试(安全设置)」,否则点击功能可能失效,面板会自动降级为只看模式。
- 安全与隐私:所有流仅本机访问(127.0.0.1)。依赖的
scrcpy-server(Apache-2.0)和ADBKeyboard(Apache-2.0)均为开源库。注意,agent 对设备的截屏会发送给所配置的模型,请在受控设备上登录测试账号,避免隐私泄露。 - 资源占用:若同时连接多台设备,帧率可能会受带宽影响。
该插件通过 scrcpy 技术解决了智能体操作 Android 设备时的视觉验证难题,同时保障了安全性和隔离性。更多细节可参考 GitHub。