最近,AI Coding 圈子里有个挺有意思的动向:有人把 DeepSeek Harness(以下简称 DSH)这个本地运行的 Coding Agent,塞进了手机里——不是通过浏览器套壳,而是用腾讯 Kuikly 做了一款原生移动客户端。

我们仔细读了这篇技术分享,也扒了背后的实现思路。说实话,这个方向比我们预想的更有嚼头。


先说结论:它不是"手机写代码",而是"手机当遥控器"

先澄清一个常见的误解。

看到"手机+AI编程",很多人第一反应是:在手机上敲代码?那体验不是折磨人吗?

但作者的切入点完全不同。DSH 这类 Coding Agent 的工作模式是:它自己跑,中间停下来问你。比如:

  • "我要执行这条命令,你同意吗?"
  • "这里我需要你补充一下上下文"
  • "这个方向对不对,要不要继续?"

问题来了——Agent 跑在电脑上,人一离开电脑,任务就卡住了。

所以这篇文章做的事很明确:手机不替代 IDE,只做一个"决策终端"。通勤路上、开会间隙、排队等咖啡的时候,掏出手机看一眼 Agent 的输出,点一下"允许"或"拒绝",补一句指令,电脑那头继续跑。

这个定位,和 Cursor 推出 iOS 客户端、Claude Code 做 Remote Control 的逻辑是一脉相承的。大家都在解决同一个问题:Agent 需要人类在关键节点介入,但人类不可能永远坐在电脑前。


技术实现:直接对接官方协议,不自己造轮子

很多移动端方案的做法是"在手机和 Agent 之间再架一层后端",但这篇文章选了一条更干净的路:直接吃 DSH 的 Host 协议。

DSH 在本地监听 127.0.0.1:3080,对外暴露了完整的 HTTP RPC 和两条 WebSocket 通道:

  • 一条负责会话内的实时事件流(模型输出、工具调用、审批请求)
  • 一条负责 Host 级别的状态变化(会话增删、工作区切换)

手机 App 做的事情,本质上就是把浏览器前端背后的那套通信协议,原样接出来,再做移动端的 UI 重排。

第三方视角来看,这个架构选择的聪明之处在于:​ 它不和 DSH 内部的插件系统、工具链耦合,只依赖最外层的 Host API。这意味着 DSH 内部怎么迭代,只要 Host 协议不变,移动端就不需要大改。


为什么选 Kuikly?这几点确实说到点子上了

作者选择腾讯 Kuikly 作为跨端框架,我们觉得有几个决策是经得起推敲的:

第一,Kotlin Multiplatform 的"一码三端"确实省事。​ Android、iOS、HarmonyOS 共享 commonMain 业务逻辑,平台差异只在必要的地方下沉。对于个人开发者或小团队来说,维护成本直接砍掉三分之二。

第二,组件市场的现成轮子很关键。​ 流式 Markdown 渲染、代码块高亮、App 内 WebView——这些在跨端开发里都是"说起来简单做起来烦"的东西。Kuikly 的组件市场提供了 KuiklyMarkdownKuiklyWebview 等模块,作者直接拿来用,省了大量重复劳动。

第三,AI 辅助开发的反向加成。​ 作者提到用 KuiklyUI-AI 把框架的 DSL 规则、Module 写法、协程模式喂给 Cursor / Claude Code / CodeBuddy,让 AI 生成的代码更容易落地。这个"用 AI 开发 AI 工具"的闭环,本身就是个值得关注的趋势。


真正见功力的地方:移动网络下的断线恢复

这篇文章里最让我们觉得"作者真的在做产品"的部分,是断线重连的设计。

手机网络环境有多恶劣,用过的人都懂:锁屏断连、Wi-Fi 切蜂窝、进电梯隧道、地铁过站……随便哪个场景都能把 WebSocket 干掉。

作者的处理方案是:

  1. 重连后先按上次的序列号补拉事件,确保不丢消息
  2. 拉取会话历史对齐聊天记录
  3. 用最新快照覆盖本地状态
  4. 旧连接迟到的响应带"世代号",新连接直接丢弃

这不是"重连一下就好了"的敷衍处理,而是一套完整的状态同步机制。​ 对于 Agent 控制面板这种场景来说,消息顺序和状态一致性是底线——你总不希望点了一个"拒绝",结果因为网络抖动变成了"允许"吧?


安全方面:克制且务实

DSH 在本地拥有较高的系统权限(读文件、跑命令、装插件),所以把 3080 端口直接暴露公网显然是不明智的。

文章给出的方案是:

  • SSH 本地端口转发:认证在 SSH 层完成,最稳妥
  • 扫码 Relay 模式:电脑和手机都主动连 Relay 服务器,走密封隧道,主密钥放在 URL fragment 里不发给服务端

更进一步,还可以把 DSH 跑在腾讯云轻量服务器上,Agent 持续运行不中断,手机纯粹作为远端控制台。

这个安全边界划得很清楚:凭据和执行能力留在 Host 端,移动端只拿"看得见的事件"和"轻量级操作权"。


横向对比:它和同类方案有什么不同?

维度

Cursor iOS

Claude Code Remote

本文方案

定位

移动端完整编辑

终端 Agent 远程控制

Agent 移动控制台

协议

自有后端

CLI + 云端同步

直接对接 DSH Host 协议

跨端

仅 iOS

网页端为主

Android / iOS / 鸿蒙

开源程度

闭源

部分开源

技术细节公开分享

部署

官方托管

官方托管

自托管,数据自主


最后说两句

这篇文章代表的趋势其实很清晰:Agent 是主机,手机是人类随身决策终端。

当 Coding Agent 的能力越来越强、自主程度越来越高,人类角色正在从"写代码的人"变成"在关键节点做判断的人"。而手机,恰好是人类随身带着的、最低延迟的决策入口。

Kuikly 在这个场景里的表现也值得关注——它证明了 KMP 路线在 AI 工具类应用里是可行的,而且组件生态和 AI 辅助开发能力已经到了"能正经干活"的程度。

阅读原文:我用腾讯 Kuikly,把 DeepSeek Harness装进了口袋

Logo

一站式 AI 云服务平台

更多推荐