OpenClaw benzeri yapay zeka ajanı nasıl geliştirilir?
Kendi sunucunuzda çalışan OpenClaw tarzı bir yapay zeka ajanını adım adım nasıl inşa edeceğinizi öğrenin. CVE-2026-32922 açığı ışığında güvenlik öncelikli yapılandırmayı inceleyin.
OpenClaw nedir?
OpenClaw, kendi sunucunuzda barındırabileceğiniz kişisel bir yapay zeka ajanıdır. Kendi sunucunuzda çalıştırıp halihazırda kullandığınız sohbet uygulamalarına bağlayabilir; bu sayede ajanın kabuk komutları çalıştırmasını, tarayıcıyı kontrol etmesini, dosyalarınızı okuyup yazmasını ve gönderdiğiniz mesajlara göre aksiyon almasını sağlayabilirsiniz. MIT lisanslı, yerel öncelikli bir proje olan OpenClaw, 2026 yılı ortası itibarıyla GitHub üzerinde 380.000'den fazla yıldız alarak platformun en popüler projelerinden biri haline gelmiştir. Karmaşık yapısının altında, mantıklı bir şekilde birbirine bağlanmış küçük parçalardan oluşan bir sistem yatar. Bu yazı, böyle bir aracın nasıl inşa edildiğini ve dikkat edilmesi gereken kritik noktaları anlamanız için bu parçaları incelemektedir.
Tasarım tercihlerini doğrudan etkileyen önemli bir uyarı: Mart 2026'da OpenClaw geliştiricileri çok sayıda güvenlik uyarısı yayımladı; sadece 13 Mart'ta 22, 16 Mart'ta ise 5 uyarı paylaşıldı. Ulusal Güvenlik Açığı Veritabanı (NVD), o ay içinde 199 adet OpenClaw CVE kaydı oluşturdu. 13 Mart'taki grupta, 10 üzerinden 9.9 puan alan iki kritik açık bulunuyordu; bunlardan biri, sadece eşleştirme haklarına sahip bir cihazın tam yönetici yetkisi veren token'lar oluşturmasına izin veren bir yetki yükseltme açığıydı (CVE-2026-32922). Proje, operatör olarak sizin tarafınızdan sıkılaştırılmak üzere tasarlanmıştır. Herhangi bir komutu çalıştırabilen bir ajan, ancak üzerinde çalıştığı sunucunun güvenliği ve ona koyduğunuz sınırlar kadar güvenlidir. Okurken bunu aklınızda bulundurun.
Gateway daemon: tek ve gizli bir süreç
Sistemin merkezinde, genellikle gateway olarak adlandırılan, uzun süre çalışan tek bir süreç bulunur. Bu, kontrol düzlemidir. Mesajları alır, ne yapılacağına karar verir, araçları çalıştırır ve yanıtları geri gönderir. Diğer her şey bu sürece bağlanır.
Gateway ile ilgili en önemli gerçek, hangi adreste dinleme yaptığıdır. Standart bir sunucu kurulumunda OpenClaw, onu 127.0.0.1 loopback adresine bağlar; böylece siz özellikle dışarıya açmadığınız sürece internetten erişilemez. Container imajları ise istisnadır: OpenClaw'un kendi güvenlik belgelerine göre bu imajlar varsayılan olarak dışa açık bir bind ile gelir. Bu nedenle, eğer container çalıştırıyorsanız kimlik doğrulamasını açık tutun ve portunu internete açmayın. Her iki durumda da onu gizli tutun. Bu, komut çalıştırma işini yapan tek süreçtir; bu yüzden açık bir gateway, onu bulan herkese sunucunuza uzaktan erişim imkanı sağlar. Dizüstü bilgisayarınızdan erişmeniz gerektiğinde, bir port açmak yerine VPN veya SSH tüneli kullanın. Kimse erişemediği bir porta saldıramaz.
Kanal bağlayıcıları: mesaj alma ve yanıt gönderme
Kişisel bir temsilci, yalnızca halihazırda kullandığınız uygulamalar üzerinden onunla iletişim kurabildiğinizde faydalıdır. Kanal bağlayıcılarının işlevi budur. Her bir bağlayıcı; Telegram, WhatsApp, Slack veya Discord gibi platformlarla, ilgili platformun bot API'sini veya webhook'larını kullanarak konuşur.
Tüm bağlayıcıların çalışma yapısı aynıdır. Bağlayıcı, platform üzerinde bir bot kaydeder, gelen mesajınızı alır (platformu düzenli olarak sorgulayarak veya platformun kendisine ilettiği bir webhook aracılığıyla), bu mesajı ağ geçidine (gateway) iletir ve ağ geçidinden gelen yanıtı aynı API üzerinden geri gönderir. Bağlayıcı, ince bir çeviri katmanıdır. "Bir Telegram mesajı geldi" ifadesini "temsilci için metin burada" ifadesine dönüştürür ve aynı işlemi tersine gerçekleştirir. Kendi bağlayıcınızı oluşturmak, büyük ölçüde ilgili platformun bot dokümantasyonunu okumaktan ve mesaj formatını ağ geçidinin formatıyla eşleştirmekten ibarettir.
Beyin ve araç döngüsü
Gateway içinde yer alan kısım, onu bir sohbet botundan ziyade bir aracı (agent) yapan özelliktir. Bu bir döngüdür.
Bir mesaj ulaşır. Gateway, bu mesajı, modelin kullanmasına izin verilen araçların listesiyle birlikte bir dil modeline gönderir. Model mesajı okur ve karar verir: doğrudan yanıtla veya bir araç çağır. Eğer bir araç çağırırsa, gateway o aracı çalıştırır, sonucu yakalar ve sonucu modele geri gönderir. Model sonuca bakar ve tekrar karar verir. Bu işlem, modelin yapacak bir şeyi kalmayana ve nihai yanıtı üretene kadar tekrarlanır.
Bu döngü, bir aracının temel mantığıdır ve aracın bir sohbet uygulamasında veya terminalde çalışmasından bağımsız olarak aynıdır. Araçların bu döngüye standart bir yolla nasıl bağlandığı hakkında bilgi almak için araçları Model Context Protocol üzerinden bağlama konusu iyi bir sonraki okumadır; model tarafı için ise modeli kendi donanımınızda çalıştırma konusu diğer yarısını tamamlar.
Araç seti hem amaç hem de tehlikedir
OpenClaw'u güçlü kılan şey araçlardır. Bir kabuk komutu çalıştıran, tarayıcıyı yöneten veya dosya okuyup yazan bir araç. Yukarıdaki döngüye bu araçlara erişim yetkisi verdiğinizde, klavye başında yapabileceğiniz hemen her şeyi yapabilir. Bu erişim alanı ürünün tamamını oluşturduğu gibi, aynı zamanda tüm riskin de kaynağıdır.
Bir sohbet uygulamasından gelen talimatlarla herhangi bir komutu çalıştırabilen bir aracı, geniş bir saldırı yüzeyi oluşturur. Kötü niyetli bir talimat, tarayıcı aracının ziyaret ettiği bir web sayfasında gizlenmiş bir prompt-injection saldırısı veya Mart 2026 açıklarına benzer bir hata, "takvimimi oku" komutunu "dosyalarımı sil" komutuna dönüştürebilir. Bu nedenle sınırlamalar isteğe bağlı ekstralar değildir. Aracı, sudo yetkisi olmayan, özel ve düşük ayrıcalıklı bir kullanıcı olarak çalıştırın; böylece bir güvenlik ihlali durumunda yetki yükseltme yapılamaz. Tehlikeli araçları bir onay mekanizması arkasına alın, böylece araç yıkıcı bir işlem yapmadan önce sizden onay ister. Araç yürütme süreçlerini sandbox içine alın, böylece kontrolden çıkan bir komut sınırlandırılmış olur. Modelin API anahtarını izole edin; böylece bir sızıntı, saldırgana hesabınızın kontrolünü vermez. Aynı sunucuda bulunan diğer gizli verileri de göz önünde bulundurun; çünkü Vaultwarden'ın gerçek zayıf noktaları şifrelemesinden ziyade yönetici belirteci ve yedekleme dosyasıdır ve kabuk erişimine sahip bir aracı her ikisine de ulaşabilir.
Kabuk komutları çalıştıran herhangi bir yapıyı dış dünyaya açmadan önce, temel güvenlik adımlarını dikkatle uygulayın. Kendi sunucunuz için bir kontrol listesi oluşturun ve bunu baştan sona takip edin:
Düşük ayrıcalıklı kullanıcı konusu servisleri düşük ayrıcalıklı kullanıcı olarak çalıştırma bölümünde ayrıntılı olarak ele alınmıştır; gerçek projeye yönelik tam güvenli kurulum kılavuzu ise OpenClaw'u bir VPS üzerinde güvenli bir şekilde çalıştırma başlığında yer almaktadır.
Dosya tabanlı bellek
Çoğu kişi bir ajanın belleğinin bir veritabanında tutulmasını bekler. OpenClaw bunu yapmaz. Belleği disk üzerinde düz Markdown dosyaları olarak saklar ve bu tercih kopyalamaya değerdir. Dosyalar temel doğruluk kaynağıdır; varsayılan bellek motoru, dosyaların yanında bir SQLite arama dizini tutar ve bu dizin dosyalar üzerinden yeniden oluşturulabilir.
Dosyalar basittir. Taşınması gereken bir şema, çalışır durumda tutulması gereken bir servis veya öğrenilmesi gereken bir sorgu dili yoktur. İncelenebilirler: klasörü açıp ajanın sizin hakkınızda tam olarak ne bildiğini okuyabilir, yanlış bir notu dosyayı düzenleyerek düzeltebilir veya bir dosyayı silerek belleği temizleyebilirsiniz. Ayrıca taşınabilirdirler; ajanı yeni bir sunucuya taşımak, sadece bir dizini kopyalamaktan ibarettir. Tek kullanıcılı kişisel bir ajan için bir metin dosyası klasörü yeterlidir ve tüm sistemin anlaşılmasını kolaylaştırır.
Yetenekler: yetenek eklemenin taşınabilir bir yolu
OpenClaw, yerleşik araçların ötesinde, topluluğun çekirdek yapıyı değiştirmeden sistemin neler yapabileceğini genişletebilmesi için taşınabilir bir yetenek formatı kullanır. Bir yetenek; talimatlar ve bazen de ajana yeni bir görev öğreten kodlar içeren, kendi kendine yeten bir pakettir. Ajan, görev gerektirdiğinde bu yeteneği yükler. Web araması, insanların genellikle eklediği ilk yetenektir ve bu yeteneği kendi SearXNG örneğinize yönlendirmek, sorgularınızı ticari bir arama API'sinden uzak tutarken, yeteneğin güven sınırının nerede olduğunu çok net hale getirir; çünkü döndürdüğü her şey yabancı biri tarafından yazılmış metinlerden ibarettir.
Böyle bir formatın değeri, yeteneklerin paylaşılabilir hale gelmesidir. Birisi belirli bir iş için bir yetenek yazar, yayınlar ve diğerleri bunu sistemlerine dahil eder. Bu kolaylık iki ucu keskin bir bıçaktır; çünkü bir yetenek, ajanınızın tereddüt etmeden çalıştıracağı yabancı bir koddur. Bu nedenle, siz yazmadığınız her şeyi yüklemeden önce kendi barındırdığınız bir güvenlik tarayıcısından geçirmeniz faydalı olacaktır. Kendi ajanı geliştiriyorsanız, erken aşamada küçük ve net bir genişletme formatı tanımlamak, ileride her yeteneği çekirdek yapıya kodlamaktan (hard-coding) sizi kurtarır.
Kendi modelinizi getirin
OpenClaw modelden bağımsızdır. Kendi dil modelini beraberinde getirmez. Bunun yerine, barındırılan bir API veya kendi çalıştırdığınız bir model olabilen, seçtiğiniz bir modele bağlanır.
Bu ayrım maliyet, gizlilik ve kontrol açısından önemlidir. Barındırılan bir API, yönetmeniz gereken bir donanım olmadan, token başına ücretlendirme ile ve istemlerinizin sunucunuzdan çıkması karşılığında size en güçlü modelleri sunar. Ollama gibi bir araçla sunulan kendi kendine barındırılan (self-hosted) bir model ise, her mesajı kendi kutunuzda tutar ve yalnızca donanım ve güç maliyetiyle, daha küçük veya daha yavaş bir model çalıştırma bedeliyle çalışır. Birçok kişi bu ikisini bir arada kullanır. Bir ajanı tamamen gizli tutmak istiyorsanız, modeli VPS üzerinde barındırmak bu son boşluğu kapatan parçadır ve Hermes Agent karşılaştırmaya değer bir diğer kendi kendine barındırılan ajandır.
Kendi sisteminizi oluşturmalı mısınız?
Tüm bu yapıyı kendiniz oluşturabilirsiniz. Bileşenler egzotik değildir: bir daemon, birkaç sohbet bağlayıcısı, bir model ve araç döngüsü, Markdown dosyalarından oluşan bir klasör ve bir eklenti formatı. Bunları anlamak gerçekten faydalıdır; çünkü kullanacağınız her ajanın çalışma mantığını şeffaflaştırır ve tehlikenin tam olarak nerede olduğunu gösterir.
Ancak çoğu kişi için dürüst yanıt, sistemi yeniden geliştirmek yerine gerçek sistemi çalıştırıp güvenliğini güçlendirmektir. OpenClaw connector bileşenlerini, çalışma döngüsünü ve skill biçimini zaten çözmüş durumdadır. Ayrıca gerçek güvenlik incelemelerinden geçmiştir. Çabanın, doğru yapılandırılması ve kendi sunucunuzda güvenliğinin güçlendirilmesi gereken kısma ayrılması daha yararlıdır. Öğrenme yolunu önce tercih ediyorsanız, kavramları aşamalı olarak uygulayarak ilerlemek, agent kaynak kodunu hazırlıksız incelemekten daha etkilidir. Çünkü her aşamanın sonunda gerçekten oluşturduğunuz bir bileşen bulunur. Öğrenmek için küçük bir tane oluşturun. Kullanmak için gerçek sistemi çalıştırın ve güvenliğini güçlendirin.
Genel temeller kendi yapay zeka ajanınızı bir VPS üzerinde oluşturma rehberinde yer almaktadır; Claude ile bir ajan oluşturma ise aynı fikirleri beyin olarak belirli bir modelle nasıl uygulayacağınızı gösterir.
FAQ
OpenClaw gibi bir ajan inşa etmek zor mudur?
Bireysel parçalar zor değildir. Bir gateway süreci, bir sohbet bağlayıcısı, model ve araç döngüsü ve bir dosya klasörü kendi başlarına oldukça basittir. Zor olan kısım, bunu güvenli bir şekilde yapmaktır. Sohbet mesajlarından kabuk komutları çalıştıran bir ajan ciddi bir güvenlik yüzeyidir; sandbox, izinler ve yetkisiz kullanıcı kurulumunu doğru yapmak, özellikleri birbirine bağlamaktan daha fazla çaba gerektirir.
OpenClaw belleği neden veritabanı yerine Markdown dosyaları olarak saklar?
Çünkü tek kullanıcılı kişisel bir ajan için dosyalar yeterli ve çok daha basittir. Çalıştırılması gereken bir veritabanı servisi yoktur, bellek elle okunup düzeltilebilir ve ajanı başka bir sunucuya taşımak sadece bir dizini kopyalamaktır. Veritabanı, daha büyük ölçeklerde değer kazanır, burada değil.
Kişisel bir yapay zeka ajanının en tehlikeli parçası nedir?
Ajanın aksiyon almasını sağlayan araçlar: kabuk komutları çalıştırmak, tarayıcıyı kontrol etmek ve dosya yazmak. Bunlar, ajanı inşa etme sebebiniz olduğu kadar size zarar verebilecek kısımlardır. OpenClaw'un Mart 2026'daki güvenlik uyarısı dalgası (13-16 Mart arasında yayımlanan 27 uyarı ve iki adet 9.9 puanlı kritik açık), araç katmanına dikkatle yaklaşılması gerektiğinin en net kanıtıdır: yetkisiz bir kullanıcı olarak çalıştırın, yıkıcı eylemleri kısıtlayın ve yürütme işlemini sandbox içine alın.
Bir tane inşa etmek için kendi dil modelime ihtiyacım var mı?
Hayır. OpenClaw gibi ajanlar modelden bağımsızdır, bu yüzden seçtiğiniz bir modeli bağlayabilirsiniz. Bu, en güçlü modeller için barındırılan bir API veya tam gizlilik için kendi çalıştırdığınız bir model olabilir. Ollama ile kendi sunucunuzda barındırmak, daha küçük bir model çalıştırma maliyetiyle her mesajın kendi sunucunuzda kalmasını sağlar.