Ziyaret Ettiğimiz Web Sitelerini Yapay Zekâ ve Userscript ile Kişiselleştirmek 🌐⚡
Tampermonkey ve yapay zekâ ile web deneyimini güvenli ve izinli sınırlar içinde nasıl kişiselleştirebiliriz?

LinkedIn serimizin 10. makalesinde kısa bir mola vermiş; proformadan banka talimatı hazırlayan o ilk 'sihirli tuş'tan başlayıp karar destek sistemlerine ve otonom araçlara uzanan dokuz değerli dersi özetlemiştik.
O yolculuk boyunca savunduğumuz değişmez bir ilke vardı: 'Yapay zekâ tek başına bir sihir değildir; asıl sihir, süreci bilen insanın doğru araçla kendi rutinlerini ortadan kaldırmasıdır.' Şimdi serinin 12. makalesinde rotamızı her gün saatlerimizi geçirdiğimiz en temel çalışma alanımıza çeviriyoruz: Web tarayıcımıza.
📉 Gerçek Hayat: Web Siteleri Neden Her İhtiyacımıza Uygun Değildir?
Gün içinde ister iş için ister kişisel ihtiyaçlarımız için onlarca farklı web sitesiyle etkileşime giriyoruz: e-ticaret siteleri, bankalar, resmi kurum portalları, iş yazılımları ve eğlence platformları. Ancak çoğumuzun gözünden kaçmayan ortak bir gerçek var: Web siteleri neredeyse hiçbir zaman bize her şeyi kusursuz, 'dört dörtlük' sunmaz.
Çünkü web siteleri çok farklı ihtiyaçları olan geniş bir kullanıcı kitlesi için tasarlanır. Şirketlerin öncelikleri, geliştirme bütçeleri ve teknik tercihleri de bizim günlük ihtiyaçlarımızla her zaman örtüşmez. Bu nedenle bazı filtreler, kısayollar ve görünüm seçenekleri sunulmayabilir.
Sonuç ne olur? Kullanıcı olarak ekran başında hapsoluruz. Sayfalarca aşağı kaydırır, yüzlerce kez aynı butona tıklar, formları elle doldurur ve 'Bunu neden tek tuşla yapamıyorum?' diye söylenir dururuz. Faturayı ise yorulan gözlerimiz ve boşa harcanan dakikalarımızla öderiz.
🔍 Sitelerin Bizi Sınırlandırdığı 5 Somut Senaryo
Gelin, her gün karşılaştığımız ama çaresizce katlandığımız o kısıtlamalara biraz daha yakından bakalım:
🛒 1. E-Ticaret ve Alışveriş Siteleri (Eksik Filtreler ve Birim Fiyat Çıkmazı): Bir e-ticaret sitesinde arama yaptığınızda istediğiniz gibi filtreleme yapamazsınız. Örneğin 'Sadece stokta olan ürünleri göster' filtresi bulunmaz; sayfalarca gezip beğendiğiniz ürünün 'Tükendi' etiketini görünce hayal kırıklığına uğrarsınız. Ya da deterjan, kahve veya bebek bezi alırken gramajlar ve paket adetleri birbirinden farklıdır. Sitede 'Birim Fiyata Göre Sırala' (TL/gram veya TL/adet) seçeneği olmadığı için 30 farklı paketin hangisinin gerçekten daha ekonomik olduğunu elinize hesap makinesi almadan çözemezsiniz.
⚡ 2. Hızlı Tükenen Stoklar ve Flaş İndirimler (Bildirim ve Kontrollü Yenileme): Sınırlı stoklar veya uygun randevu saatleri kısa sürede tükenebilir. Saatlerce F5 tuşuna basmak yerine, makul aralıklarla kontrol yapan ve durum değiştiğinde yalnızca kullanıcıya bildirim veren bir araç zaman kazandırabilir. Otomatik satın alma veya randevu alma yapılmamalı; CAPTCHA, sıra, hız ve kişi başına işlem sınırları aşılmamalıdır.
📝 3. Tekrarlayan Formlar ve Bürokrasi (Kontrollü Otomatik Doldurma): Kurumsal kayıtlar ve benzer formlar aynı bilgileri tekrar tekrar isteyebilir. Yetkili olduğunuz ve hassas olmayan alanlar için hazırlanan bir script taslak doldurma işlemini hızlandırabilir. Ancak kimlik, banka, vergi, sağlık veya müşteri verileri koda kaydedilmemeli; resmî ve mali formlardaki bilgiler gönderilmeden önce kullanıcı tarafından tek tek kontrol edilmelidir.
🎮 4. Oyun Siteleri ve Tarayıcı Oyunları (Kısayollar ve Erişilebilirlik): Bazı web oyunlarında klavye kısayolları veya görünüm seçenekleri yetersiz olabilir. Platformun açıkça izin verdiği durumlarda kısayol, yazı boyutu, renk ve yakınlaştırma gibi erişilebilirlik iyileştirmeleri eklenebilir. Auto-clicker, otomatik kaynak toplama veya oyuncuya haksız avantaj sağlayan botlar kullanılmamalıdır.
📊 5. Günlük İş ve Veri Akışı (Tablo Dışa Aktarma, Okuma Modu ve Video Hızı): Bazı kamu ve finans sitelerinde görüntülenen tabloları dışa aktarma seçeneği bulunmaz. Erişim yetkiniz olan ve kullanım şartlarının izin verdiği veriler için yerel bir CSV çıktısı hazırlanabilir. Kişisel veriler, ücretli içerikler veya erişim kısıtlı kayıtlar izinsiz toplanmamalıdır. Okuma görünümü, koyu tema ve izin verilen oynatma hızları da günlük kullanımı kolaylaştırabilir.
🧩 Çözümün Anahtarı: Userscript ve Tampermonkey Nedir?
Çoğumuz tarayıcıyı yalnızca sunucudan gelen sayfayı gösteren pasif bir ekran gibi görürüz. Oysa modern tarayıcılar, sayfanın HTML, CSS ve JavaScript kodlarını cihazımızda çalıştırır ve kullanıcı arayüzünü oluşturur.
Tampermonkey, Violentmonkey ve Greasemonkey gibi araçlar belirlediğiniz sitelerde küçük JavaScript komut dosyaları çalıştırır. Bu scriptler, verilen izinlere bağlı olarak sayfadaki bilgileri okuyabilir veya görünümü değiştirebilir. Bu nedenle çalışma alanı yalnızca gereken sitelerle sınırlandırılmalı ve kod kullanılmadan önce incelenmelidir.
Bu yöntemle, platformun kuralları ve erişim yetkileri içinde kalarak kendi tarayıcınızda bir buton, filtre veya klavye kısayolu ekleyebilirsiniz. Değişiklik yalnızca sizin tarayıcınızda çalışır; sitenin sunucusundaki yetkileri veya kuralları değiştirmez.
🤖 Yapay Zekâ ile Userscript Taslağı Hazırlamak
Buraya kadar her şey harika; peki ama bir userscript yazmak için yazılımcı olmak gerekmiyor mu?
Userscript hazırlamak; DOM yapısı, CSS seçicileri, dinamik içerik ve tarayıcı izinleri hakkında bilgi gerektirebilir. Bu teknik ayrıntılar, küçük bir ihtiyacı olan kullanıcılar için başlangıçta zorlayıcı olabilir.
Yapay zekâ bu noktada kod taslağı hazırlamayı kolaylaştırır. Ancak yapay zekâ bir güvenlik incelemesinin veya kullanıcı kontrolünün yerini tutmaz. Üretilen kodun ne yaptığını anlamadan hassas ya da kritik bir sayfada çalıştırmamak gerekir.
İhtiyacınızı günlük dille anlatabilir ve hedef sayfadaki teknik öğenin sınıf veya kimlik adını paylaşabilirsiniz. Sayfa içeriği, ekran görüntüsü, oturum bilgisi, kişisel veri veya kurumsal bilgi yapay zekâya gönderilmemelidir. Oluşan kod, doğrudan kullanılacak son ürün değil, kontrol edilmesi gereken bir taslaktır.
Kodu önce hassas veri içermeyen bir test sayfasında deneyin. Beklenmeyen ağ isteği, veri saklama veya otomatik işlem olmadığını doğruladıktan sonra yalnızca izinli kullanım amacıyla çalıştırın.
🛠️ Fikirden Çalışan Eklentiye: 5 Adımda Pratik Yol Haritası
1. İhtiyacı Netleştirin: Sitede sizi ne yavaşlatıyor? 'Stok değişince haber ver', 'Form alanlarını taslak olarak doldur', 'İzinli tabloyu CSV'ye aktar' veya 'Space tuşuyla bu butona tıkla' gibi tek ve açık bir hedef belirleyin.
2. Hedef Öğeyi Basitçe İnceleyin: Müdahale etmek istediğiniz öğeye sağ tıklayıp 'İncele' seçeneğini açın. Yalnızca gerekli sınıf veya kimlik adını alın; kişisel veri, token ve sayfa içeriğini kopyalamayın.
3. Yapay Zekâya Sınırları Açık Bir Tarif Verin: Hedef adresi, tetikleyici kuralı ve istenen görünüm değişikliğini belirtin. Koda ağ isteği, hassas veri saklama, otomatik satın alma, randevu alma veya erişim kontrolü aşma özelliği eklenmemesini açıkça yazın.
4. Kodu İnceleyip Tampermonkey'e Ekleyin: Scriptin çalışacağı siteleri ve istediği izinleri kontrol edin. Anlamadığınız veya gereksiz görünen bir yetki varsa kodu çalıştırmayın.
5. Güvenli Bir Sayfada Deneyin ve Geliştirin: Önce hassas veri içermeyen bir ortamda deneyin. Bir hata oluşursa konsol çıktısını paylaşmadan önce token, URL parametresi, kişisel ve kurumsal verileri temizleyin.
📋 Yapay Zekâya Verilebilecek Örnek Bir Prompt Şablonu
"Tampermonkey için yalnızca ' https://ornek-site.com/urunler/* ' adresinde çalışan bir userscript taslağı yaz. 'out-of-stock' sınıfına sahip tükenmiş ürünleri görsel olarak gizle. Ürün fiyatı ve gramajı sayfada zaten görünüyorsa TL/kg değerini hesaplayıp ürün başlığının altında göster. Dinamik yüklenen ürünleri MutationObserver ile izle. Ağ isteği gönderme, veri saklama, otomatik satın alma yapma ve erişim kontrolünü aşma. Gerekli izinleri en dar kapsamda tut ve kodu anlaşılır yorumlarla açıkla."
⚠️ Kritik Sınırlar: Güvenlik, DOM Kırılganlığı ve Etik
Her güçlü araç gibi userscript geliştirmenin de dikkat edilmesi gereken hassas sınırları vardır:
🔒 Güvenlik ve Gizlilik: Scriptin çalışacağı adresleri ve istediği izinleri sınırlayın. Dış kaynakları, ağ erişimini ve otomatik güncelleme adreslerini kontrol edin. Şifre, kredi kartı, kimlik, IBAN, müşteri verisi veya oturum tokenı koda ya da tarayıcı depolamasına yazılmamalıdır. Banka, ödeme, kamu ve kurumsal sistemlerde onaylanmamış script çalıştırmayın.
🧩 DOM Kırılganlığı: Web siteleri arayüzlerini ve sınıf adlarını değiştirebilir. Bir güncelleme sonrası script durabilir veya yanlış öğeye müdahale edebilir. Her değişiklikten sonra kodu yeniden test edin; kritik işlemleri otomatik onaya bağlamayın.
⚖️ Etik ve İzinli Kullanım: Platformun kullanım şartlarına, kurum politikalarına, hız sınırlarına ve erişim yetkilerine uyun. Scriptleri kişisel ergonomi, okunabilirlik ve izin verilen yerel işlemler için kullanın. Başkalarının verilerini toplamadan ve sunucuya gereksiz yük oluşturmadan çalışın.
⛔ Yapılmaması Gerekenler: CAPTCHA veya giriş kontrolünü aşan, otomatik randevu ya da satın alma yapan, bilet ve stok sıralarında haksız avantaj sağlayan, oyunlarda bot kullanan, ücretli veya kısıtlı içeriğe izinsiz erişen, veri toplayan, sunucuya yüksek sıklıkta istek gönderen ya da kritik işlemleri kullanıcı onayı olmadan tamamlayan scriptler kullanılmamalıdır.
⚖️ Hukuki Sonuç: Bu sınırların aşılması yalnızca hesabın kapatılmasıyla sonuçlanmayabilir. Fiilin niteliğine göre TCK 243 kapsamındaki bilişim sistemine hukuka aykırı girme, TCK 244 kapsamındaki sistemi engelleme, bozma veya verileri değiştirme suçları gündeme gelebilir. Kişisel verilerin hukuka aykırı kaydedilmesi ya da ele geçirilmesi ise TCK 135 ve 136 kapsamında ceza sorumluluğu doğurabilir. Banka, kredi ve kamu sistemlerine yönelik bazı fiillerde sonuçlar ağırlaşabilir. 'Kodu yapay zekâ yazdı' veya 'sadece bir script kullandım' demek kullanıcıyı hukuki sorumluluktan kurtarmaz.
🎯 Sözün Özü
Bir web sitesinin arayüzü her kullanıcının ihtiyacına uygun olmayabilir. Userscriptler, izin verilen sınırlar içinde kendi tarayıcı deneyimimizi uyarlamak için kullanılabilir.
Tarayıcı günlük çalışma alanımızdır. Yapay zekâ ve userscript araçları, tekrar eden küçük işleri azaltabilir ve arayüzü daha okunabilir hâle getirebilir. Güvenlik kontrolü ve son karar her zaman kullanıcıda kalmalıdır.
İhtiyacımızı açıkça tanımlayıp yapay zekâdan bir kod taslağı isteyebiliriz. Taslağı incelemek, güvenli bir ortamda test etmek ve yalnızca platformun izin verdiği amaçlarla kullanmak bu sürecin ayrılmaz parçasıdır.
Siz her gün kullandığınız web sitelerinde hangi izinli ve güvenli iyileştirmeyi görmek isterdiniz: daha iyi filtreler, okunabilir bir görünüm, bildirim veya tekrarlayan alanlar için kontrollü bir taslak mı? Yorumlarda paylaşın.