智谱 ZCode 被指静默上传 Git 历史,官方致歉并承诺开源

智谱 ZCode 被指静默上传 Git 历史,官方致歉并承诺开源

开发者曝 ZCode 登录后静默上传全量 Git 历史,智谱回应已修复,将开源代码库并引入第三方审查,为用户补发周额度。

阅读原文
发布日期2026-09-19
热度指数93
阅读时长2708 字

事件:智谱 ZCode 被曝静默上传全量 Git 历史

9 月 18 日,智谱旗下 AI 编程桌面工具 ZCode 在开发者社区引发强烈争议。一名网名 ferstar 的开发者发布取证博客称,只要登录了 ZCode 账号,软件会在后台静默把整个工作区打包上传,其中包含完整的 .git 历史、LFS 大文件缓存、refs 等内容,而不仅仅是当前对话涉及的上下文代码。相关讨论迅速冲上知乎热榜,成为当天开发者圈最热话题之一。

ZCode 是智谱面向开发者推出的 AI 编程助手,走的是桌面客户端加云端 Agent 的路线,调用智谱自家的 GLM 系列大模型。对许多把 ZCode 接入本地项目的团队来说,这个指控直击痛点:代码库通常包含商业机密、历史版本、甚至被删除但存在于 Git 历史里的密钥和敏感配置。若属实,风险远不止对话内容泄露那么简单。OSCHINA 于当晚以《智谱旗下 AI 编程工具 ZCode 被扒静默上传完整 Git 历史》为题报道了此事。

争议怎么被发现的:一个加密包引发的取证

据社区帖子,事件的导火索是一位开发者在清理磁盘时发现 ~/.zcode 目录下出现了一个体积异常的数据包(多个来源称超过 300MB)。正常情况下,一个本地代码索引不会产生这么大、且经加密封装的数据。开发者随即对其展开逆向与抓包分析,发现 ZCode 在登录状态下会定期将本地项目连同完整 Git 历史一起上传。

为什么用户会如此警惕?因为全量 Git 历史与单纯上传当前代码有本质区别。当前代码是你正在写的东西,开发者尚能接受作为模型上下文;但历史版本里往往残留已经下线的账号密钥、内网地址、数据库口令、早期未删干净的机密,这些内容是任何正经的代码托管都不会主动外传的。这也是“偷传”一词能在社区快速传播的根本原因——它不是指上传了代码,而是指上传了不该上传的“整段历史”。想判断自己的数据是否受影响,可以检查客户端设置里的“代码库索引”功能是否处于开启状态,以及本地 ~/.zcode 目录是否有异常大小的数据包。

官方回应了什么:已修复、将开源、引入第三方审查

面对争议,智谱 ZCode 于 9 月 18 日通过官方群组作出回应并向受影响用户致歉。官方解释称,问题源于 ZCode 的“代码库索引”功能:该功能用于在本地生成仓库索引,以支持会话检查点恢复、历史版本回退以及 Repo Wiki(代码仓库知识库)等功能。其中 Repo Wiki 在云端生成 Wiki 页面时,可能触发仓库数据上传;Wiki 生成后,相关上传数据会立即销毁,不会保存。由于功能上线初期默认开启,部分用户受影响。

官方表示已完成自查、相关问题已修复,并作出两个关键承诺:其一,近期将开源 ZCode 代码库,让社区能够直接检查实现;其二,邀请第三方评估人员对系统运行情况进行审查,并持续公开产品审查进展。此外,官方将为全体用户额外提供一次周额度重置,当日发放。

值得注意的是,官方强调“数据上传后立即销毁”的说法,目前属于官方单方面声明,缺乏独立验证。在第三方审查结果公开之前,这个“上传即销毁”的结论应谨慎看待,读者最好以开源代码和后续审计报告为准。

对本地代码意味着什么:代码索引与 Repo Wiki 的边界

这次事件真正值得普通开发者和团队重视的,不只是“某个具体工具出了问题”,而是 AI 编程工具的本地权限边界问题。类似 ZCode、Cursor、Copilot、Trae 这类工具,为了“读得懂整个项目”,通常需要访问工作区文件并建立索引。问题在于:索引什么、上传什么、何时上传、默认开启还是显式征得同意,不同产品做法差异很大。

ZCode 的争议点在于“默认开启”和“范围过大”:建立 Repo Wiki 需要读取仓库内容尚可理解,但连完整的 Git 历史都一并打包上传,超出很多用户对代码索引的预期,且默认开启没有给用户清晰的知情和选择。对使用或考虑用 AI 编程工具的团队,建议把“数据上传边界”纳入选型清单:查看官方文档里关于本地数据、历史版本、索引文件如何处理的规定,确认是否有可关闭的云端同步项,重要项目用隔离的测试环境接入,避免把含敏感密钥的完整仓库直接交给任何云端编程工具。

和竞品编程 Agent 的差异:透明与信任的底线

把 ZCode 放到整个 AI 编程工具市场里看,这次事件给所有同类产品都敲了警钟。Cursor、GitHub Copilot、Kimi Code、Trae 等产品都在争抢“更懂你代码”的能力,但“更懂”和“偷偷拿走”之间只有一条信任线。主流做法是让用户明确知道上下文里包含什么、上传到哪里、能否关闭;默认开启、静默上传、加密封装的做法,恰恰破坏了这条线。

对用户而言,这轮争议提供了一个实用参照:判断一个编程 Agent 是否值得信任,可以看它是否把数据传输策略写清、是否给足开关、出问题时是否第一时间开源自证。ZCode 承诺“开源代码库 + 第三方审查”正是试图用透明度挽回信任,但这套流程能否兑现、审计结果如何,仍需时间观察。在结论落地前,对代码安全要求高的团队可以暂时把 ZCode 用于不含敏感信息的项目,或等待其代码库正式开源后再做判断。

谁需要行动:继续用 ZCode 还是换工具,怎么验证

如果你是 ZCode 的现有用户:第一步先检查版本更新,确认已升级到修复后的版本;其次到设置里查看“代码库索引”与 Repo Wiki 相关选项,尽量关闭或仅在需要时按需开启;对历史涉及敏感数据的仓库,建议把本地 .git 中残留的密钥做清理或轮换,而不是继续依赖“已经删除就安全”的假设。

如果你因此考虑换工具:建议先明确自己的核心诉求。对普通开发者,若平时不接入含机密的私有仓库,ZCode 的核心编程能力本身并无实质变化,可继续观望;对以企业专有代码为主的团队,在官方开源代码库并通过第三方审查、且你能逐行确认行为之前,把生产仓库接入云上编程 Agent 都应保持谨慎。验证方式也很直接:在隔离沙盒里用一份含测试密钥的仓库接入工具,用抓包或系统监控观察它到底上传了什么、何时上传。这套方法对所有 AI 编程工具都适用。

编辑判断:数据安全信任重建需要什么

从编辑视角看,这次事件有三点启示。第一,AI 编程工具的竞争已从“能力”延伸到“信任”:同等能力下,谁把用户数据边界处理得更透明,谁就更可能赢得开发者。第二,静默上传被证实或证伪都会影响整个品类的口碑——一次信任危机可能让观望中的企业用户对整个 AI 编程工具打上问号。第三,智谱选择“开源 + 第三方审查”作为危机应对,是积极但高难度的承诺,若真能兑现,反而可能成为其差异化优势;若落空,则会加倍消耗信任。

对读者来说,行动建议很明确:近期先检查并收紧自己用的 AI 编程工具的本地权限;关注 ZCode 代码库是否如期开源、第三方审查结论何时发布;在审查落地前,把含敏感数据的项目与云上编程工具隔离。代码是你的核心资产,任何默认开启、静默上传的云端能力,都值得同样审慎对待。

来源与说明

本文由 AI 潮汐编辑部基于官方公告与公开资料整理,补充了行业影响、适用场景和行动建议,帮助你在阅读原文前先理解这条信息为什么重要。

原始来源:https://www.oschina.net/news/502589

如发现事实、价格或链接有误,可通过 联系我们 提交更正。

常见问题

ZCode 到底有没有把我的完整代码库上传到云端?

据开发者 ferstar 的取证报告与社区讨论,ZCode 在登录后确实会打包上传工作区并包含完整 Git 历史。智谱官方 9 月 18 日回应称这是“代码库索引”功能所致,其中 Repo Wiki 生成会触发上传,官方称相关数据生成后立即销毁、不保存,且问题已修复。但“上传即销毁”目前只是官方说法,尚无独立验证,建议以第三方审查结果为准。

我现在还在用 ZCode,该怎么保护自己的代码?

先把 ZCode 升级到修复后的最新版本,到设置里关闭或按需开启“代码库索引”和 Repo Wiki 功能;对含敏感数据的仓库,清理本地 Git 历史中残留的密钥并做轮换;重要项目暂时用隔离的测试环境接入,不要直接把含机密的完整仓库交给云端工具。

智谱承诺的开源代码库和第三方审查什么时候能看到?

官方表示“近期”将开源 ZCode 代码库并邀请第三方审查、持续公开进展,但未给出确切时间表。关注智谱 ZCode 的官方公告和开源仓库即可,在代码库正式公开且可逐行核对之前,对安全要求高的项目建议保持谨慎。

这次事件影响哪些产品?只有 ZCode 有问题吗?

争议本身指向智谱的 ZCode。但它引发了对所有 AI 编程工具数据边界的普遍关注——Cursor、Copilot、Kimi Code、Trae 等云端编程 Agent 都存在“读项目、传数据”的场景。建议所有用户都检查自己工具的上传设置,而不只是针对 ZCode。

如何自己验证 AI 编程工具到底上传了什么?

在隔离沙盒里放一份含测试密钥、无真实机密的仓库,用抓包工具(如 mitmproxy、Wireshark)或系统网络监控观察工具进程的对外请求,注意它上传的 URL、字段和触发时机。对默认开启且无法关闭云端同步的工具,建议不要接入生产仓库。