Vibe Coding ve GDPR: Yapay Zekayla Kurduğunuz Site Neden Yasayı Çiğniyor
Claude Code ve Codex gibi yapay zeka kodlama ajanları çalışan siteleri çok hızlı teslim ediyor, ama sessizce hiç istemediğiniz GDPR ihlalleri de getiriyorlar: onaydan önce yerleşen çerezler, sonsuza dek saklanan kişisel veriler, kullanıcının verisini silmesinin hiçbir yolu yok. İşte bunun neden her kodlama ajanında yaşandığı, size neye mal olabileceği ve projenizi GDPR sorunlarına karşı tarayıp onaran ücretsiz Claude Code skill'i.
Bir kodlama ajanına uygulamanızı anlatırsınız, o kodu yazar, deploy edersiniz ve birkaç saat sonra elinizde gerçek bir ürün vardır. Vibe coding'in vaadi budur ve çoğu zaman bu vaadi tutar. Site açılır, kayıt çalışır, gösterge paneli temiz görünür. Gözünüzle gördüğünüz her şey yolundadır.
Sorun, göremediğiniz her şeyde. Ajan, özelliklerinizi birbirine bağlarken çerezler, izleme, veri saklama ve kullanıcı hakları konusunda onlarca küçük karar da verdi. Kimse ondan yasayı düşünmesini istemediği için düşünmedi. Siz yayına aldığınızda, pırıl pırıl yeni siteniz çoktan bir yığın GDPR ihlalinin üstünde oturuyor olabilir, üstelik haberiniz bile yok.
Bu, Claude'a özgü bir sorun değil, Codex'e özgü de değil. Yapay zeka kodlama ajanlarının çalışma biçiminin yapısal bir özelliği ve hepsi için geçerli. Hadi tam olarak neyin ters gittiğine, bunun size neye mal olabileceğine ve bu sorunları bir düzenleyici bulmadan önce bulup onaran ücretsiz Claude Code skill'ine bakalım.
Bir yapay zeka kodlama ajanı sessizce neyi yanlış yapar
Bir kodlama ajanı tek bir şeyi optimize eder: özelliği çalıştırmak. Ondan analitik isteyin, bir izleme betiği ekler. İletişim formu isteyin, her gönderiyi bir tabloya kaydeder. Giriş isteyin, kullanıcı kayıtlarını süresiz tutar. Her seçim tek başına makuldür. Bir araya geldiğinde, düzenleyicilerin en sık ceza kestiği ihlallerin ders kitabı niteliğinde bir listesini oluştururlar.
İşte tipik bir vibe-coded sitede gözden kaçanlar:
- Çerezler ve izleyiciler onaydan önce devreye girer. Analitik, gömülü haritalar, fontlar, sosyal pikseller ve oturum araçları sayfa açılır açılmaz yüklenir. GDPR ve ePrivacy kurallarına göre, zorunlu olmayan çerezler önceden ve özgürce verilmiş onay gerektirir. İlk yüklemede bu çerezleri bırakan bir site daha o anda uyumsuzdur ve izleyici çoktan devreye girdikten sonra beliren bir çerez bandı bunu düzeltmez.
- Kişisel veriler sonsuza dek saklanır. Ajan bir
userstablosu, birsubmissionstablosu, birlogstablosu oluşturur ve asla bir saklama politikası eklemez. GDPR, kişisel veriyi yalnızca gerçekten ihtiyaç duyduğunuz süre boyunca tutmanızı şart koşar. "Ne olur ne olmaz, sonsuza dek dursun" yaklaşımı, yasanın tam da durdurmak için yazıldığı saklama sınırı ihlalinin ta kendisidir. - Verinizi silmenin hiçbir yolu yok. Kullanıcıların silinme hakkı vardır, yani meşhur unutulma hakkı. Neredeyse hiçbir vibe-coded uygulama, "hesabımı sil" akışıyla ya da bir silme talebini yerine getirecek belgelenmiş bir süreçle gelmez. Veri içeri girer ve "çıkış" yazan bir kapı yoktur.
- Erişim veya taşınabilirlik yolu yok. İnsanlar, sizde tuttuğunuz her şeyin bir kopyasını isteyebilir. Tek yanıtınız hiç denemediğiniz manuel bir veritabanı sorgusuysa, erişim ve taşınabilirlik yükümlülüklerinizi yerine getirmiyorsunuz demektir.
- Üçüncü taraf veriler AB'den sessizce çıkar. İki saniyede eklediğiniz o analitik betiği veya barındırılan font, IP adreslerini ve tanımlayıcıları, yerinde hiçbir yasal aktarım mekanizması olmadan AB dışındaki sunuculara gönderiyor olabilir.
- Neyi topladığınızın kaydı yok. GDPR, işleme faaliyetlerinizi bilmenizi ve belgelemenizi bekler. Veri akışları yalnızca ajanın unutulmuş sohbet geçmişinde yaşayan bir uygulamanın hiçbir kaydı yoktur.
Bunların hiçbiri bir demoda görünmez. Uygulama kusursuz çalışır. Yasal katman basitçe eksiktir ve biri şikayet edene ya da bir düzenleyici kapıyı çalana kadar eksik kalır.
Ajan sol sütunu kusursuz doldurur. Sağ sütun, kimsenin ondan kurmasını istemediği kısımdır, o yüzden boş kalır.
Neden her kodlama ajanı bunu yapar, sadece Claude değil
Tek bir aracı suçlamak cazip gelir, ama nedeni daha derinde. Kodlama ajanları açık kaynak koddan öğrenir ve açık koddaki kodların çoğu hiçbir zaman GDPR düşünülerek yazılmadı. Bir model, betiği doğrudan <head> içine bırakan on bin tane "Google Analytics ekle" örneği görmüşse, ürettiği kalıp da budur. Eğitim verisi kötü alışkanlığı kodlar, dolayısıyla çıktı onu miras alır.
Bu sorunun daha geniş halini gösteren sağlam veriler var. Veracode'un 2025 GenAI Kod Güvenliği Raporu, 100'den fazla büyük dil modelinin çıktısını onlarca kodlama görevinde test etti ve yapay zeka tarafından üretilen kodun %45'inin bir güvenlik açığı getirdiğini buldu. Aynı çalışma, yapay zekayla yazılan kodun insanların yazdığı koddan 2,74 kat daha fazla açık taşıdığını ve dikkat çekici biçimde, daha yeni ve daha büyük modellerin daha iyisini yapmadığını tespit etti. Bu yapısal bir durum, bir sonraki sürümün yamayla geçiştireceği bir hata değil.
Gizlilik uyumu, güvenlikle aynı biçimdeki bir sorundur. İkisi de "çalışsın yeter" hedefinin önünden hiç durmadan geçip gittiği görünmez gereksinimlerdir. Yani ister Claude Code'u ya da Codex'i, ister Antigravity CLI'yi, Cursor'ı ya da başka bir ajanı kullanın, aynı kör noktaya maruz kalırsınız. Araç değişir, açık kalır.
Bir GDPR ihlali gerçekte neye mal olur
İşin soyut olmaktan çıktığı yer burası. GDPR cezaları, 20 milyon avro ile dünya çapındaki yıllık cironun %4'ünden hangisi yüksekse o tutarla sınırlıdır ve düzenleyiciler bu aralığın üst ucunu kullanmaya başladı.
Yalnızca 2025'te, Fransa'nın veri koruma otoritesi CNIL, 486 milyon avro ceza kesti, yani 2024 toplamının neredeyse on katı. Eylülde tek bir günde alınan iki karar bunun büyük kısmını oluşturdu: çerez ve reklam şeffaflığı eksiklikleri nedeniyle Google'a 325 milyon avro ve onaysız bırakılan izleyiciler nedeniyle Shein'e 150 milyon avro. Bir yapay zeka ajanının varsayılan olarak teslim ettiği tam da bu hata kategorileri, dokuz haneli cezalar çeken kategorilerle birebir aynıdır.
Bu rakamları okuyup düzenleyicilerin yalnızca devlerin peşinde olduğunu varsaymak kolay. Değiller. CNIL, doğrudan küçük ve olgusal vakaları hedef alan basitleştirilmiş bir usul işletir: uyumsuz bir çerez bandı, görmezden gelinen bir erişim talebi, zayıf bir parola politikası. Bunlar küçük bir işletmenin günlük rutinindeki tespitlerdir ve tam da bir vibe-coded sitenin yanlış yaptığı şeylerdir. Şirketinizin büyüklüğü cezanın büyüklüğünü değiştirir, ceza alıp alamayacağınızı değil.
Manşetlere çıkan cezalar büyük şirketleri vurur, ama arkalarındaki ihlaller, yani onaysız çerezler ve eksik şeffaflık, bir kodlama ajanının küçük bir sitede varsayılan olarak teslim ettiği ihlallerle aynıdır.
GDPR gerçekte neyi ister (açık ifadeyle)
Açığın çoğunu kapatmak için hukukçu olmanıza gerek yok. Günlük uyumun büyük kısmı, kodunuzun ya yaptığı ya da yapmadığı bir avuç somut davranışa iner:
- Zorunlu olmayan çerezlerden önce onay. İzleyen, profil çıkaran ya da ölçen hiçbir şey, kullanıcı etkin biçimde kabul edene kadar çalışmamalı. Kesinlikle gerekli çerezler tek istisnadır.
- Topladığınız her veri parçası için yasal bir dayanak. Onay, sözleşme ya da meşru menfaat, herhangi bir şey depolamadan önce belirlenir, sonra değil.
- Veri minimizasyonu. Yalnızca özelliğin gerçekten ihtiyaç duyduğunu toplayın. Ajanın her şeyi loglama içgüdüsü bunun tam tersidir.
- Saklama sınırları. Her kişisel veri kategorisinin tanımlı bir yaşam süresine ve süre dolduğunda silinmesini sağlayacak bir yola ihtiyacı vardır.
- Veri sahibinin hakları. Erişim, düzeltme, silme ve taşınabilirlik; hepsinin gerçek ve çalışan bir yola ihtiyacı vardır, gizlilik politikasındaki bir vaade değil.
- Net bir gizlilik bildirimi ve bir işleme kaydı. İnsanlar neyi neden topladığınızı görebilmeli ve siz bunu kanıtlayabilmelisiniz.
Bu listeyi, ajanların neyi yanlış yaptığına dair bölümle karşılaştırarak okuyun, örtüşme neredeyse kusursuz. İyi haber şu: bunlar somut, kod düzeyinde davranışlar olduğu için bir araç onları tarayabilir.
Çözüm: tarayan ve onaran ücretsiz bir Claude Code skill'i
İşte manuel kontrol listesinin size veremeyeceği şey: gerçek kod tabanınız üzerinde otomatik bir geçiş. Jeremy Longshore adında bir geliştirici, tam olarak bunu yapan scanning-for-gdpr-compliance adlı ücretsiz, açık kaynak bir Claude Code skill'i yayınladı (bazı marketlerde GDPR Compliance Scanner olarak listeleniyor). Bu skill claude-code-plugins-plus deposunda yaşar ve tamamen Claude Code'un içinde çalışır, yani kaydolmanız gereken ayrı bir servis yok.
Skill, projenizi bir gizlilik denetçisinin okuyacağı gibi okur. Veri akışlarını, depolama konumlarını, işleme faaliyetlerini, onay mekanizmalarını, saklama politikalarını, erişim kontrollerini ve veri sahibi haklarını nasıl ele aldığınızı inceler. Sonra önemli olan üç şeyi yapar:
- Tespit eder. Kurala dayalı kontroller yukarıdaki kalıpları işaretler: onaydan önce devreye giren izleyiciler, saklama sınırı olmayan kişisel veriler, eksik silme yolları, belgelenmemiş işleme faaliyetleri.
- Şiddete göre sınıflandırır. Bulgular puanlanmış ve önceliklendirilmiş olarak geri döner, böylece tanımlayıcı sızdıran bir izleyici, gizlilik bildiriminizdeki eksik bir satırın önüne geçer. Düz bir listede boğulmak yerine önce tehlikeli olanları onarırsınız.
- Kodunuzda düzeltir. Ajanın içinde çalıştığı için, sonra elinizle hareket geçmeniz gereken bir rapor üretmekle kalmaz. Önerilen değişiklikleri doğrudan uygulayabilir, "burada bir sorununuz var"ı aynı geçişte gerçek bir düzenlemeye dönüştürür.
Kurulumu tek satır. Plugin marketplace ile kaynağı ekler ve skill'i kurarsınız:
/plugin marketplace add jeremylongshore/claude-code-plugins-plus
Sonra taramayı sade bir dille tetiklersiniz. Skill, şu ifadelere yanıt verir:
scan GDPR compliance
check data privacy
validate GDPR
Skill'i, projenizin .claude/skills/ dizinine skill klasörünü bırakarak da kurabilirsiniz, bu Claude Code'un skill'leri keşfettiği standart yoldur. İki durumda da tarama soyut bir kontrol listesine değil, gerçek deponuza karşı çalışır.
Girişte kod tabanı, ortada önceliklendirilmiş bulgular, çıkışta gerçek kod düzenlemeleri. Özellikler için zaten kullandığınız aynı döngü, uyuma çevrilmiş hali.
Dürüstçe bir uyarı, çünkü güven tam da burada kuruluyor: bir tarama yasal bir onay değildir. Skill, günlük riskin çoğunu oluşturan mekanik, kod düzeyindeki ihlalleri yakalar, yani çerezleri, saklamayı, eksik silme akışını ve sizi dakikalar içinde uyuma çarpıcı biçimde yaklaştırır. Hassas bir konu için bir veri koruma avukatının, bir Veri Koruma Etki Değerlendirmesinin ya da sağlık verisi işlemenin yerini tutmaz. Onu, bariz ihlalleri kaldıran teknik ilk geçiş olarak görün, ardından sınır durumlar için insan incelemesini devreye sokun.
Bir ajan filosu çalıştırınca bu neden daha da zorlaşır
Bir ajanı olan bir geliştiricinin dürüst tutması gereken tek bir kod tabanı vardır. Birkaç ajanı paralel çalıştırdığınız, her birinin aynı ürüne özellik teslim ettiği anda, sessiz ihlallerin yüzey alanı katlanır. Bir ajan bir analitik betiği ekler, bir diğeri bir loglama tablosu açar, bir üçüncüsü üçüncü taraf bir widget bağlar ve tek bir insan bile bütünün gizlilik etkilerini hiç incelemez.
Bu, ister kodlama ajanlarını paralel çalıştırmaktan ister boğulmadan vibe coding yapmaktan bahsedelim, sürekli geri döndüğümüz bir temayla, bağlam ve tutarlılığın ölçekte zor olmasıyla aynı nedendir. Çözüm de aynı biçimde: standardı, sonda kontrol etmeyi hatırladığınız bir şey yapmak yerine paylaşılan kurulumun bir parçası haline getirin.
Çok ajanlı kokpit olan AgentsRoom'da, bir kez yapılandırdığınız skill'ler ve kurallar, tek bir yerden yönettiğiniz Claude Code, Codex ve diğer sağlayıcılar genelinde odadaki her ajana uygulanır. Bir uyumluluk geçişini iş akışınıza bir kez bağlayın, her ajan onu miras alsın; her birinin kimsenin ona öğretmediği bir kuralı bağımsızca hatırlamasını ummak yerine. Tek bir oturumu temiz tutan disiplin, koca bir filoyu düzenleyici belalardan uzak tutan şeydir.
Yapay zekayla kurulmuş siteler için pratik bir uyumluluk kontrol listesi
Yapay zekayla kurulmuş bir siteyi bitti saymadan önce, onu bu listeyle sınayın. Çoğunu tarayıcı yakalayacak, ama ne aradığınızı bilmek raporu okunabilir kılar:
- Kullanıcı onay vermeden önce zorunlu olmayan hiçbir çerez ya da izleyici devreye girmiyor.
- Her kişisel veri deposunun tanımlı bir saklama süresi ve bir silme mekanizması var.
- Kullanıcılar verilerinin bir kopyasını isteyip alabiliyor.
- Kullanıcılar hesaplarını silip verilerini sildirebiliyor.
- Bir gizlilik bildirimi, neyi neden ve hangi yasal dayanakla topladığınızı açıklıyor.
- Üçüncü taraf betiklerin ve AB dışına veri aktarımlarının yasal bir mekanizması var.
- İstendiğinde işleme faaliyetlerinizin bir kaydını üretebiliyorsunuz.
Her kutuyu işaretleyemiyorsanız, yapay zekayla kurulmuş siteniz GDPR riski taşıyor demektir ve bunu yüzeye çıkarmak için tek bir şikayet yeter.
Çıkarılacak ders
Vibe coding gerçekten hızlı ve işin tuzağı tam da bu hız. Ajan gördüğünüz her şeyi doldurur, göremediğiniz her şeyi atlar ve GDPR'nin yaşadığı yer tam da orasıdır. Onaydan önce çerezler, sonsuza dek saklanan veriler, silmenin hiçbir yolu olmaması: bunlar egzotik sınır durumlar değil, her kodlama ajanının varsayılan çıktısıdır ve düzenleyicilerin 2025'te yüz milyonlarca avroluk cezalarla cezalandırdığı aynı kusurlardır.
Çözüm, ajanları kullanmayı bırakmak değil. Eksik geçişi eklemek. Ücretsiz scanning-for-gdpr-compliance skill'ini projenizde çalıştırın, bariz ihlalleri sınıflandırıp onarmasına izin verin, sonra kalanı bir insana inceletin. Birkaç dakikalık tarama, açığı bir düzenleyicinin mektubundan öğrenmekten çok daha ucuzdur.
Birden fazla ajanla mı geliştiriyorsunuz? Claude Code, Codex ve daha fazlasını tek bir kokpitten yönetmek için AgentsRoom'u indirin, her birinin neyi desteklediğini sağlayıcı uyumluluk matrisinde görün ve hızı korumayı boğulmadan vibe coding yazısında okuyun.
AgentsRoom'u Indirin
Claude ajanlarinizi tum projelerinizde tek bir pencereden calistirin.
Yardımcı uygulama: hareket halindeyken ajanlarinizi izleyin
Claude, Codex, Antigravity CLI veya başka bir AI sağlayıcı kullan.
Hataları ve istekleri doğrudan genel backlogunuza gönderin.
AgentsRoom'a kısa bir bakış.