远程可控协同 — 本地 Agent + 云端 Agent 一起干活
为什么要远程协同
很多开发任务需要本地和云端同时出力:
- 本地代码需要云端 GPU 做模型训练
- 本地代码库需要云端大模型做大规模重构
- 本地需要访问云端 API 做批量数据处理
如果只有本地 Agent——能读写文件但算力不够、模型不够大。如果只有云端 Agent——有算力但摸不到你本地的代码和数据。
远程协同就是为了解决这个问题——本地 Agent + 云端 Agent 协同,各自干自己擅长的事。
协同架构
SophCode Desktop 的远程协同采用分层架构:
| 角色 | 位置 | 负责什么 |
|---|---|---|
| 本地 Agent | 你的电脑 | 文件读写、终端命令执行、本地工具调用、diff 审阅交互 |
| 云端 Agent | Sophclaw 服务器 | 大模型推理、云端 API 调用、需要大算力的任务、分布式执行 |
| 安全通道 | 加密 WebSocket | 本地和云端的通信,所有数据走 TLS 加密 |
怎么触发远程协同
SophCode Desktop 在你下发指令时会自动判断——如果指令需要云端能力,会自动调度云端 Agent 协同:
"帮我用本地的 train.py 脚本训练模型,需要用到 GPU 算力"
Sophclaw 会:
- 在 diff 里生成修改
train.py的改动(如果需要调整参数适配云端环境) - 确认后写入本地
- 把训练脚本推送到云端 Agent
- 云端 Agent 用 GPU 跑训练
- 训练结果和日志实时回传到本地 Agent
- 本地 Agent 把结果整理后告诉你
整个过程你只需要看进度、审阅 diff,不需要手动管理本地和云端的文件传输。
什么时候需要远程协同
自动触发的场景:
- 指令里明确提到需要 GPU 或特定云端资源
- 本地 Agent 判断任务耗内存或耗算力,建议上云端
- 需要访问只有云端 Agent 才有权限的 API
不需要远程协同的场景:
- 纯本地文件操作、编辑、搜索
- 跑轻量脚本(不需要 GPU)
- 纯文本处理、格式化
本地 Agent 会优先在本地执行——只有确实需要云端时才调度。
安全设计
远程协同虽然方便,但也引入了安全风险。SophCode Desktop 的处理:
1. 加密通道:本地和云端之间的所有通信走 TLS 1.3 加密的 WebSocket 2. 最小数据传输:只传必要的代码文件和结果,不传整个项目目录3. 本地优先:能在本地做的事绝不走云端4. 用户可见:任何涉及远程协同的操作,SophCode Desktop 都会在界面上明确告诉你"这个任务正在调用云端 Agent" 5. 随时中断:远程协同过程中可以随时中断,本地 Agent 会保留当前进度
协同 vs 纯云端跑
很多人可能会想:为什么不直接把代码推到云端让它全在云端跑?原因:
- 云端看不到你的本地文件系统,很多项目依赖本地环境配置
- 大代码库推到云端费时间
- diff 审阅在本地做更流畅
- 安全边界更清晰(本地文件不外发)
远程协同的设计就是能本地做的都本地做,只有必须上云端的部分才上云端。
团队场景的协同
远程协同不只是个人用——团队场景下可以:
- 一个主 Agent 在本地调度,多个云端 Agent 并行处理不同模块
- 云端 Agent 共享团队的云端资源(GPU 集群、共享 API Key、云端代码仓库)
- 每个开发者的本地 Agent 通过云端通道同步团队进度
这部分能力还在持续完善中,目前官方文档中主要覆盖了个人场景。
个人用户要不要用
如果你是个人开发者、没有 GPU 但需要偶尔跑一下模型训练或大规模数据处理——远程协同是很划算的选择。不用买 GPU 服务器,用完即停。
如果你完全不涉及需要云端算力的任务——那远程协同这个功能对你来说暂时用不上,先把 diff 审阅和本地沙箱用好就行。