夜雨聆风学习资料网

ARTICLE · 1052729

当AI编程工具读取你的代码库:同意操作,不等于同意上传

当AI编程工具读取你的代码库:同意操作,不等于同意上传

日前,智谱旗下AI编程工具ZCode因数据处理方式引发争议。据公开报道,该工具的早期版本在提供代码库辅助生成功能时,可能将用户本地代码库的完整副本,包括git文件等代码库的版本控制历史记录与缓存文件打包并尝试传输至云端。开发者在事后通过网络请求日志发现该行为,智谱方面承认相关功能在初期版本中默认开启,目前已完成修复。

该事件引发了公众对AI工具使用中代码泄露的担忧,尤其是企业级用户的商业秘密保护问题。当用户授权AI工具在本机执行代码库操作时,该授权是否及于平台对完整代码数据的取得与上传?

一、代码库承载的数据具有多重法律属性

企业代码库并非单一性质的数据集合。其中的源代码可能构成著作权法上的计算机软件作品,亦可能因采取相应保密措施而属于商业秘密;密钥、访问令牌等直接关系信息系统安全,属于数据安全与网络安全的保护对象;系统架构与研发文档多属于企业经营信息。

在个人信息层面,进一步区分其数据主体与危害程度。开发者的姓名、邮箱与账号标识等通常留存于版本控制记录之中,其数据主体即为开发者本人,危害相对有限,且开发者往往同时是作出授权意思表示的用户,利益冲突并不突出。而代码库内容本身可能承载第三方的个人信息,例如硬编码于配置文件的客户资料、测试数据集中包含的真实用户记录、运营日志中留存的个人信息等。一旦此类数据随完整代码副本被传输至本地之外、交由外部平台处理,其处理行为须独立满足《个人信息保护法》关于同意、目的限定与最小必要的要求,开发者或者企业用户通常无权以自身授权替代第三方的同意。

因此,须对代码库识别其中的具体数据类别及其数据主体,分别适用个人信息保护、数据安全、商业秘密保护、著作权保护与合同规则,并据此确定每一项处理行为的法律基础。

二、“同意操作”不等同于“同意上传”

ZCode隐私政策载明,平台收集用户在对话中提交或者指定的文本、文件和代码,用于提供内容生成与人工智能辅助操作服务;对于附加功能,政策表述为相关权限将在功能触发时另行请求。该条款所指向的处理对象,是用户主动提交或者明确指定的代码内容。事件所揭示的技术机制则显示,客户端在用户登录状态下对完整工作区进行打包,其中包含git文件等代码库的版本控制历史记录、缓存文件与配置信息,并试图传输至云端。协议所载明的收集范围与实际处理行为之间,存在明显区别。用户协议虽涉及数据上传的授权表述,但其载明的收集对象为“用户提交或者指定的代码”,有别于将客户端自动扫描并打包整个工作区的行为。前者属于用户主动选择的上下文,后者可能覆盖用户并未提交、并未指定甚至已从当前版本删除的历史文件。

《个人信息保护法》第六条要求处理个人信息应当具有明确、合理的目的,并与处理目的直接相关、采取对个人权益影响最小的方式,处理范围须服务于既定目的且不得过度;第十七条则要求处理者就收集、使用规则向个人履行充分告知义务。《民法典》第四百九十六条则对格式条款规定,进一步要求提供方采取合理方式提示对方注意与其有重大利害关系的条款,否则相对方可以主张该条款不成为合同内容。用户让智能代理执行一次具体动作,如检索某份文件或者生成一段代码,通常只表示同意该次动作本身,并不自动延伸为授权平台取得并持有完整工作区的全部数据。本次事件中,客户端在用户登录状态下自动对完整工作区进行扫描并打包,其实际读取的内容范围远超出用户主动提交或者明确指定的代码。当实际处理所得明显超出用户对授权范围的合理预期时,仅以功能设计或者后台机制来主张已履行充分告知、取得用户的有效同意,并不能消除其中的瑕疵。

三、商业秘密与著作权风险

对企业用户而言,源代码、核心算法与系统架构可能构成商业秘密。《反不正当竞争法》第十条将商业秘密界定为不为公众所知悉、具有商业价值并经权利人采取相应保密措施的技术信息、经营信息等商业信息,并列举了以盗窃、贿赂、欺诈、电子侵入等方式获取,以及违反保密义务或者要求披露、使用或者允许他人使用等侵害情形。代码被上传至云端本身并不当然构成侵权,当代码进入云端处理形成副本,则需要考虑是否侵犯复制权,以及是否有许可范围的判断,须审查企业自身是否建立了相应的保密措施、授权基础、取得方式,以及是否实施解密、使用或者披露行为。员工未经审批将核心代码提交至外部工具,在代码属于第三方有关的项目时,还可能触发企业保密义务及对客户的责任。

四、安全措施不替代合法性基础

争议发生后,智谱于2026年9月21日宣布其MaaS开放平台将推出“数据内容不留存”功能:用户开通后,提交给模型的提示词与生成结果仅在当次推理中临时使用,请求完成后不予静态存储、亦不用于训练。该说明保留两类例外:其一,Batch API、Files API等功能型接口需由用户主动上传文件以供平台异步或者批量处理,存储是此类功能得以实现的必要环节,故不纳入“不留存”的承诺范围;其二,为履行法律法规要求的留存义务或者核查涉嫌违规、滥用服务的情形,平台可能依规留存相应数据三十日及以上,此类留存基于独立于约定服务范围的事由。

本次事件中,AI客户端在用户登录状态下将完整工作区打包,并经加密后传输至云端,解密密钥由服务端掌握。公开报道指出,相关网络请求曾指向境外、平台隐私政策出现中英文双主体,使“数据是否出境”成为争议焦点之一。在地点上,应以数据的实际调用路径与控制关系作为出境认定的依据,而非仅凭服务器名称或者注册地判断。加密上传至云端是否构成出境,取决于实际接收并处理该数据的主体是否为境外接收方、能否实际访问与控制数据;一经认定,处理者即须依据《网络安全法》《数据安全法》《个人信息保护法》履行出境安全评估与告知义务,涉及个人信息的须向个人告知并取得单独同意。

安全保护措施并不替代处理的合法性基础。处理行为须有授权或者法定基础,其范围受明确、合理目的与最小必要约束,并应保留可供核验的处理记录。“上传后即时销毁”之类的后续处理虽降低泄露风险,但不补正前端告知与同意的不足。平台侧宣布零数据留存,以严格的姿态缓解争议,但其针对的是“取得之后如何留存”这一后续环节,并不回溯到“是否取得、取得是否经授权”这一前置问题。就个人信息而言,加密上传本身不构成匿名化,因解密密钥由服务端掌握时数据仍可识别特定主体。就代码、商业秘密等非个人数据,则须回归授权合同与保密义务,在约定范围内处理。

结语

AI工具正从对话式辅助演变为可读取并操作本地代码库的智能Agent,权限边界是不可回避话题。此类事件的法律评判终须以系统事实为依据,考察出用户合理预期扩大处理范围,以及能否对每一次数据流动提供真实、可追溯的解释。

“知识产权那点事” 

更多平台账号

本文仅代表作者观点,不代表机构立场。

投稿请联系shipa@shipa.org

相关学习资料