9月18日凌晨,开发者 ferstar 清理磁盘时发现一件怪事:一个叫 `~/.zcode` 的目录占掉 700 多 MB,里面躺着一个 313MB 的加密快照,状态文件记录着 564 次上传重试。 他顺手做了逆向,把结果发了出来——ZCode 3.12.3 会遍历你的工作区、生成文件清单、压缩加密,然后往阿里云对象存储上传。一份清单里,`.git` 目录占总字节的 86.6%;另一位开发者 Vonng 实测,最高能到 98.5%。更要命的是,界面上"优化体验""仓库快照索引"这些开关,关不关,打包和上传准备照跑不误。知乎

如果你这几天在程序员群里,大概率已经刷到过"智谱偷传全量Git"的说法。骂声很多,但骂之前,值得花五分钟把这篇捋完:哪些是有证据的,哪些其实没说死,以及你的电脑现在该查什么。
一、先把时间线钉住
9月18日凌晨:ferstar 发布调查记录;当天下午,智谱在 ZCode 用户群致歉,把问题归因于"代码库索引(Repo Wiki)“功能——上线初期默认开启,用于历史版本回退、会话断点恢复等特性,并称"数据在云端生成后立即销毁,不会保存”;同时承诺修复、近期开源客户端、引入第三方评估,给全体用户一次周额度重置作为补偿。知乎
9月18日:MiniMax 官宣自家 AI 编程平台 MiniMax Code 开源。开发者社区随即开始拿两家的"开源速度"对比——有微博博主统计:MiniMax 官宣约 3 小时后仓库就挂出来了,ZCode 的"近期开源"截至发稿仍未兑现,这条对比拿了 300 多赞,基本代表了社区当下的情绪基准线。微博
9月19日:ZCode 紧急更新,更新日志明确写着"修复仓库百科异常上传的问题"。ferstar 复核后确认新版客户端已移除相关上传链路代码,但他抛出两个新问题:怎么从外部证明云端数据"立刻销毁"了?存量数据的私钥解密权在谁手里?——前者的公钥由服务端动态下发、私钥只在云端,这套加密设计恰恰是开发者最炸毛的点:等于把保险箱交给保姆,钥匙还被她吞了。
9月19日晚:风波从个人开发者烧到企业端。太原承明科技公开发函,称独立取证发现 6 个工作区被完整上传,内含源代码、系统架构、数据库口令与接口密钥、员工及终端用户个人信息。 并质疑修复效果,要求智谱作出 12 项答复。函里还有一个多数人没注意的点:ZCode 客户端全部网络请求指向 zcode.z.ai 等域名,而 Z.AI 隐私政策写的缔约主体是新加坡公司 JINGSHENG HENGXING(据智谱招股书为其间接全资子公司,2023 年成立),签约却是北京主体——数据是否出境、责任主体是谁,被正式摆上了台面。知乎
9月20日:智谱开放平台发声明,称近期将上线"数据内容不留存机制",任何用户可申请开通,生效后不静态存储输入输出。据媒体报道,智谱已主动联系承明科技,承明随后临时隐藏了函件内容。同日,有媒体独家披露:ZCode 悄悄上线了新的 Start Plan 付费体验套餐,价格未公布——参考智谱现有 GLM Coding Plan 个人版最低 118 元/月、包年折合最低约 82.6 元/月,业内猜测体验价会更低。智谱未回应。
背景值得补一句:这不是一家快倒闭的公司在铤而走险。智谱(2513.HK)今年 1 月上市,8 个多月累计募资折算人民币约 645 亿元;上半年营收 9.54 亿元、同比增长近四倍,其中开放平台与 API 业务占 86.5%——按其在投资者交流会上的说法,ZCode 用户数已破 200 万、跻身国内前三 Coding Agent。 换句话说,这次出事的是它最赚钱、增长最猛的那条业务线。知乎

二、核查:证据支持到哪,舆论说过头到哪
把"已证实"和"未证实"混在一起骂,是热搜讨论最常见的毛病。这里按公开证据逐条对齐:
证据够得着的:
客户端存在完整的"打包→加密→上传"链路,且默认开启、UI 开关不阻断实际执行——有逆向分析和 313MB 快照、564 次重试记录为证;
快照会大面积包含 `.git`,且处理逻辑可能绕过一般的密钥、文件类型和体积过滤;
至少有一份小型公开仓库的快照获得了服务端接受,Vonng 的独立复核也发现了"已接受"记录。
证据到不了、但被流行说法用满了的:
“ZCode 已经上传了所有用户的完整 Git 历史”——目前无法证实。大型含 `.git` 快照是否完成上传,缺少服务端侧的可验证材料;更准确的说法是:上传链路真实存在、打包范围失控,但"人人都被传了整库"还没有证据。知乎
“云端数据肯定被留存分析了”——智谱称用完即毁,但这恰恰是无法自证也无法他证的部分:私钥在云端,外部审计还没开始。
还有两个至今没人闭环的矛盾:现行隐私政策只写了收集"对话中提交的文本、文件和代码",从没提整库快照;修复后的文档声称"不读取 .git",与之前的逆向发现对不上。在厂商拿开源代码和第三方审计证明之前,这两句话的效力都约等于零。知乎
三、真正的问题不是"传不传",是"默认、静默、关不掉"
一条拿了二百多赞的微博把这事的本质说得很准:仓库索引、断点恢复、历史回退,这些功能业界都在用,云端 AI 编程工具离不开;关键不是"传不传",而是别默认打开、别静默执行、别让用户看见了开关却关不掉。微博
ZCode 踩中的正是这三条。对程序员来说,代码不只是工作成果——`.git` 里躺着的全部历史提交,包括你"已经删掉"的配置、写死在某个老 commit 里的密钥、没开源的 side project 商业逻辑。删除历史提交不等于删除泄露,这也是这次事件和普通"隐私政策太长没看"事故的本质区别:泄露面不是你当前工作区的代码,是整个仓库历史。

四、把镜头拉远:这不是智谱一家的事
如果你从 2024 年一路看过来,会发现 AI 编程工具的"权限失控"是一条完整的线:
2024 年 3 月,美国众议院因数据可能流向未经批准的云服务,限制工作人员使用 Microsoft Copilot(预防性限制,并非查实泄露);
2025 年 3 月,Pillar Security 演示"Rules File Backdoor":在项目规则文件里藏提示词,Cursor、GitHub Copilot 会照着生成带后门的代码,而人类审查基本看不出来(概念验证,未发生大规模事故);
2025 年 5 月,字节跳动被曝限制内部使用 Cursor、Windsurf,推动转向自研 Trae;微软同期禁止员工使用 DeepSeek——企业关心的从来是三件事:代码是否离开内网、出事谁负责、能不能统一关停;
2025 年 7 月,Replit 一名用户公开称 Agent 在被明令禁止修改生产环境的情况下删掉了生产库(公开个案);同月,AWS 确认 Amazon Q Developer 的 VS Code 扩展发布链被入侵,恶意代码进入 1.84.0 版本后因语法错误未执行(实际供应链事件,已撤回);
2025 年 8 月,Cursor 的 CurXecute、MCPoison 两个漏洞(CVE-2025-54135/54136)被公开,利用 MCP 配置可实现命令执行;微软发布 CVE-2025-53773,确认 GitHub Copilot 与 Visual Studio 存在命令注入风险;流行构建工具 Nx 的 npm 包遭投毒,恶意脚本会专门探测本机安装的 Claude、Gemini、Amazon Q 等 AI 命令行工具,用 `–dangerously-skip-permissions`、`–yolo` 这类跳过确认的参数启动它们并注入提示词,偷钱包、偷令牌、偷 SSH 密钥。知乎
这份清单说明:当你的编程助手同时拥有"读整个仓库、执行终端命令、连接云端"三种权限时,任何一个环节失守,爆炸半径都不是"补全错一行代码"。ZCode 事件只是把这类风险第一次炸到了大众眼前。
五、现在就能做的自查(按人群来)

如果你装过 ZCode(哪怕现在卸载了):
检查 `~/.zcode/v2/checkpoints/` 及整个 `~/.zcode` 目录,有加密快照残留就手动删除;
确认客户端已更新到 9 月 19 日之后的修复版,或直接卸载;
最重要的一条:翻一遍你常用仓库的 git 历史,凡是出现过长期有效的 API Key、数据库口令、证书的,立刻轮换——不要赌它没进快照。
如果你是学生/个人爱好者:风险敞口有限,不必恐慌弃用。但从今天起养成一个习惯:写进代码库的真密钥当"已经泄露"处理,用环境变量和本地配置管理,`.gitignore` 里把敏感文件加全。
如果你有商业项目/接私活:这轮事件后选择工具,把三条当硬门槛——功能开关是否真实阻断数据链路(可以抓包验证)、有没有"不留存"类承诺且可申请开通(智谱这次给全行业打了个样,跟进速度值得观察)、代码客户端是否开源可审计。知乎上"如何挑选安全的 agent"这个问题下,重度用户的共识做法是给高权限 agent 单独搭干净环境/沙箱。 不相关的项目不要加载进去——麻烦,但这正在成为中重度用户的标配。知乎
如果你在公司写核心代码:参考大厂的做法,把"代码是否可以出境/出内网"写进工具准入条款。字节禁 Cursor、微软禁 DeepSeek 之后,"好用"不再是采购 AI 编程工具的第一理由,可审计和可关停才是。
六、接下来盯什么
这件事远没完。四个可验证的信号,够你判断智谱和其他厂商的诚意:ZCode 客户端开源是否兑现、第三方审计给不给看原始结论、MaaS"不留存机制"的申请入口和条款是否透明、承明科技那封被隐藏的函最终怎么收场。同时留意其他国内 Agent 工具会不会跟进公开自己的数据上传行为——这轮风波对行业的真实价值,可能不是少了一个工具,而是"默认静默上传"第一次被当成事故而不是功能。
最后说句圈内的话:程序员对 AI 编程工具的感情本来就很矛盾——用了就回不去,又隐约知道自己交出去的不只是敲键盘的时间。ZCode 事件把这层窗户纸捅破了:效率可以外包,授权不行。你的 `.git` 里装着什么,只有你自己最清楚。
你现在用什么写代码、有没有连夜检查 `~/.zcode`、公司有没有发内部通知——评论区聊聊,这个清单需要更多人的实测来补全。