Z.ai maakt ZCode open source na upload van Git-historie
Z.ai heeft zijn AI-codeertool ZCode onder een Apache 2.0-licentie op GitHub gezet, drie dagen nadat ontwikkelaars ontdekten dat het programma hele Git-repositories naar de cloud stuurde zonder dat iemand daar toestemming voor gaf. Het Chinese bedrijf achter de GLM-modellen bood excuses aan en zegt de geüploade data te hebben vernietigd.
Wat een ontwikkelaar in zijn logs vond
De ontdekking komt van ontwikkelaar ferstar, die op 18 september op zijn blog beschreef hoe ZCode op de achtergrond een momentopname van zijn werkmap maakte. Bij één commercieel project ging het om 42.411 bestanden en 313 MB. Ongeveer 87 procent daarvan kwam uit de .git-map: de volledige commitgeschiedenis en de Git LFS-cache, oftewel de complete historie van het project sinds de eerste regel code.
De route liep via een omweg. De client vroeg bij zcode.z.ai een handtekening en een RSA-publieke sleutel op, versleutelde het archief lokaal met AES-256-CTR en zette het daarna rechtstreeks in opslag bij Alibaba Cloud. De bijbehorende privésleutel stond op de servers van Z.ai en kwam nooit op de machine van de gebruiker terecht. Wie zijn eigen upload wilde openen om te zien wat er precies vertrokken was, kon dat dus niet.

Uitzetten lukte niet
In de instellingen stonden twee schakelaars die erop leken te slaan, maar dat niet deden. ‘Optimize Experience’ bepaalde alleen of data voor training gebruikt mocht worden, ‘Repo Snapshot Indexing’ ging over indexering aan de serverkant. Zolang je ingelogd was, bleef het uploaden doorgaan. Tom’s Hardware telde 564 mislukte pogingen om dat ene archief van 313 MB weg te schrijven. Toen ferstar de map handmatig verwijderde, maakte de client binnen een half uur een nieuwe en liep de teller door naar 565.
In het privacybeleid van Z.ai, voor het laatst bijgewerkt op 15 juni 2026, stond niets over dit soort momentopnamen. TNW wees op het ongemakkelijke gevolg: omdat alleen Z.ai de archieven kan ontsleutelen, is het ook alleen Z.ai dat kan bevestigen dat ze weg zijn.
Excuses, een patch en de broncode
Z.ai reageerde dezelfde dag nog. Het bedrijf noemde het gedrag een fout, bracht versie 3.14.0 uit waarin de uploadpijplijn is verwijderd, en zei dat alle geüploade gebruikersdata is vernietigd. Op 21 september volgde de open source-release van de desktopversie, de webversie en de CLI. Dat is de meest controleerbare stap: wie wil weten wat de tool met zijn bestanden doet, kan het nu zelf nalezen.
Voor Z.ai komt het incident op een vervelend moment. Het bedrijf haalde onlangs 5 miljard dollar op voor de volgende generatie GLM-modellen en probeert westerse ontwikkelaars aan zich te binden met scherpe prijzen. Eerder hield het de gewichten van GLM-5.3 twee weken achter, wat toen ook al vragen opriep over openheid.
Wat betekent dit
Codeer-agents krijgen leesrechten op je hele werkmap, en dat is precies waarom ze nuttig zijn. Wat er daarna met die bestanden gebeurt, blijkt lastig te controleren zonder logs mee te lezen. Dezelfde week werd duidelijk dat een kwetsbaarheid in het plug-insysteem Claude Code, Codex, Copilot en Gemini CLI raakte, en de Spaanse toezichthouder behandelde het eerste datalek dat door een AI-agent werd veroorzaakt.
Voor teams die met vertrouwelijke code werken is de les concreet. Controleer bij elke agent welk netwerkverkeer hij genereert, ga er niet van uit dat een uitschakelknop doet wat het label belooft, en beperk de map waarin de tool mag werken. Een Git-historie bevat vaak meer dan de huidige code: oude sleutels, verwijderde configuratiebestanden en de namen van klanten die al jaren uit het project zijn.
