代码交给 AI Agent 之后,真正离开电脑的是什么?最近 ZCode 的云端上传争议,把这个问题从“隐私设置”推到了开发者面前:Agent 不只是一个聊天窗口,它还可能读取目录、打包项目、连接云端,并在后台持续执行一段普通用户看不见的流程。
这也是开源 Agent 重新被重视的原因。模型能力当然重要,但开发者更需要知道:它读取了什么、上传了什么、谁能解密、什么时候删除,以及出现问题后能不能复现和修正。

*配图为 AI Agent 数据流与审计边界示意图,不代表 ZCode 的真实界面。*
一、ZCode 事件到底发生了什么?
据近期公开的反编译分析、网络行为观察和媒体报道,开发者在本地目录中发现了异常大的加密压缩文件。相关分析称,文件包含项目快照、Git 历史等内容,其中一个约 313MB 的压缩包曾多次尝试上传,另有较小文件完成过上传。Z.ai 随后道歉并表示已经修复问题,同时公开 ZCode 代码供社区检查。
这里需要把事实和结论分开:目前能确认的是,客户端存在项目快照打包与上传行为;“数据是否被长期保存、谁在何时访问过、是否用于训练”,不能仅凭一个加密文件直接下结论。加密也不等于用户拥有解密权,如果密钥由服务端掌握,用户仍然需要相信服务商的处理和删除承诺。
争议的核心并不是 Agent 能不能连接云端,而是这几件事是否被清楚告知:上传是否发生在用户主动发送代码之后,范围是否只包括必要文件,界面上的开关能否真正停止上传,网络目的地和数据留存时间是否可验证。
二、为什么“关闭训练”不等于“代码不会离开电脑”?
很多产品把“是否用于改进模型”和“是否上传项目文件”放在同一个隐私设置里,容易让人误以为关闭前者就能阻止后者。实际上,代码索引、会话恢复、远程执行、错误诊断和模型请求,都可能对应不同的数据路径。
| 需要确认的事项 | 最好能看到的控制 | 不能只看什么 |
|---|---|---|
| 传输了哪些文件 | 文件清单、大小、时间、目的地 | “已加密”四个字 |
| 为什么要传输 | 每次任务前明确提示 | 默认开启的体验优化 |
| 能不能阻止 | 可用的关闭开关或本地模式 | 设置页面里的模糊描述 |
| 传输后保存多久 | 可查询、可删除、可审计 | “我们承诺立即删除” |
| 出问题如何复现 | 日志、版本号、公开修复记录 | 只发布一段道歉说明 |
对个人项目来说,最稳妥的做法是先用空目录测试。把 `.env`、SSH 密钥、云服务配置、客户资料和完整 `.git` 历史移出工作区,再观察 Agent 第一次提问前后是否出现新的压缩包、快照目录或异常网络请求。涉及商业项目时,最好把 Agent 权限限制在临时副本中,不要直接打开生产仓库。
三、开源 Agent 的价值,不只是“代码能下载”
开源并不自动等于安全,但它至少把一部分判断权交还给开发者。

*配图为开源 Agent 的审计路径示意图。*
第一,开发者可以检查代码。重点不是读完所有文件,而是先搜索文件遍历、压缩、上传凭证、远程配置和网络请求相关模块,确认它的默认行为和触发条件。
第二,开发者可以观察边界。一个可审计的 Agent,应该让人知道它能读哪些文件、能执行哪些命令、会访问哪些服务。权限越大,日志就越不能缺席。
第三,开发者可以复现和修复。即使问题来自依赖库或某个默认配置,公开代码也能让社区提交补丁、做版本对比,检查发行包是否和源码一致。
但也要看清开源的边界:客户端开源,不代表服务端逻辑、云端留存、模型提供商和远程配置全部开源;源码可见,也不代表你使用的二进制一定与源码完全一致。真正可靠的判断,仍然要结合源码、发行包、网络日志和隐私政策。
四、普通开发者可以做的五个检查
- 先用空项目验证。 不要第一次就把公司主仓库交给 Agent,先放入几份无敏感内容的测试文件。
- 检查工作区边界。 把密钥、配置文件、缓存、备份目录和完整 Git 历史单独存放;不要把“曾经提交过但后来删除”的密钥留在可读目录里。
- 记录网络行为。 观察任务开始前、执行中和任务结束后是否有新增请求,重点记录域名、文件大小和发生时间。
- 关闭不必要的能力。 能不用远程执行就不用,能只读就不要授予写入权限,能限制目录就不要开放整个磁盘。
- 保留版本与证据。 记录客户端版本、配置项、测试文件和网络现象。出现问题后,别人才能复现,而不是停留在“我感觉它上传了”。
五、四个智能体放在一个入口,解决的是什么问题?
在实际使用中,开发者往往不是只用一个 Agent:OpenClaw 适合自动化协作,Hermes 适合长上下文任务,Codex 更偏向代码理解和修改,Claude 则常被用来做分析、整理与复核。分别安装、分别配置、分别记住权限,体验很快会变成“工具管理工作”。

*MotoAgent 界面截图:四个智能体集中在同一工作台中,具体可用能力以当前版本和账号配置为准。*
MotoAgent 的优点在于把这四类入口放到同一个工作台里,一次安装后即可切换使用,减少重复下载、环境配置和账号入口切换。它集成的是原厂入口、开源项目或原生适配能力,并不意味着其中所有模型权重都属于开源模型;这三件事不能混为一谈。
对用户来说,价值也不只是“多了四个按钮”,而是能够针对不同任务选择不同 Agent,再集中管理会话、权限和工作区。想体验不同智能体时,可以直接从 MotoAgent 进入,而不必先花几天时间逐个安装。
六、开源不是口号,而是一条可检查的安全线
ZCode 事件提醒开发者:AI Agent 的风险不只来自模型回答错误,也来自它在回答之前和之后做了什么。一个 Agent 如果能读代码、改文件、执行命令、连接云端,就应该把这些行为变成可见、可控、可追溯的流程。
开源的意义,正在这里。它不能替用户完成全部安全审计,却能让更多人检查默认行为、发现问题、复现现象并推动修复。至于 MotoAgent 这类聚合工作台,最重要的不是把“开源”当成宣传词,而是让用户更低成本地接触多个智能体,同时保留对权限、数据路径和模型来源的基本判断。
AI Agent 可以更快地完成工作,但代码边界不能只靠信任维持。能看见,才能验证;能验证,才谈得上长期使用。











