Claude ile VPS uzerinde AI ajani nasil kurulur?
Messages API, tool use ve MCP protokollerini kullanarak kendi sunucunuzda calisan otonom bir AI ajani olusturun. Claude modelini beyin, VPS sunucunuzu govde olarak kullanin.
Claude ile bir ajan oluşturmanın anlamı
Claude ile bir ajan oluşturmak, Claude'u muhakeme çekirdeği olarak kullanırken döngünün, araçların ve verilerin kendi sunucunuzda barındırılması anlamına gelir. Claude ne yapılacağına karar verir; VPS'niz ise bu kararı uygular. Claude'a görevi ve mevcut durumu gönderirsiniz; Claude bir yanıtla veya araçlarınızdan birini kullanma talebiyle karşılık verir, kodunuz aracı çalıştırır ve sonucu geri gönderir; döngü, iş tamamlanana kadar bu şekilde devam eder. Zeka, internet üzerinden çağırdığınız bir servistir. Bunun dışındaki her şey size aittir.
Bu ayrım, yöntemin tercih edilme sebebidir. Bir model çalıştırmak zorunda kalmadan en üst düzey muhakeme yeteneğine sahip olursunuz ve ajanınızın nelere erişebileceği üzerinde tam kontrole sahip olursunuz; çünkü araçlar kendi donanımınız üzerinde çalışır. Eğer daha önce bir Claude programı oluşturduysanız, VPS üzerinde ilk Claude uygulaması rehberi, bu rehberin üzerine inşa edildiği temel bilgileri kapsamaktadır.
Claude'un beyni: Messages API
Claude'a yapılan her çağrı, tek bir uç nokta olan Messages API üzerinden gerçekleşir. Bu uç noktaya, o ana kadarki konuşmayı ve ajanın kullanabileceği araçların listesini gönderirsiniz; Claude ise size bir sonraki mesajını iletir. Bu mesaj ya nihai bir yanıt ya da bir araç çağırma isteğidir. Kendi çözümünüzü oluşturduğunuz senaryoda ayrı bir "ajan API'si" bulunmaz: araç kullanımı bu tek uç noktanın bir özelliğidir ve etrafındaki döngüyü yönetmek sizin sorumluluğunuzdadır.
Claude çağrılar arasında durum bilgisini tutmaz (stateless), yani kendi başına hiçbir şeyi hatırlamaz. Her istek, konuşmanın tamamını taşır. Geçmişi kodunuz tutar ve her adımda yeniden gönderir; uzun bir oturumdaki her adımın bir öncekinden daha fazla token tüketmesinin nedeni budur. Bu bir kısıtlamadan ziyade bir tasarım tercihidir: durum bilgisi sizin sunucunuzda yaşadığı için Claude'un neyi gördüğüne tam olarak siz karar verirsiniz ve görevle ilgili hiçbir veri sizin kontrolünüz dışında bir yerde saklanmaz. Bu durum, istemin (prompt) sürekli büyümesi anlamına gelir. Claude'un bağlam penceresi (context window) bunu rahatlıkla karşılasa da, aynı döngüdeki yerel bir model bunu yapamaz; Ollama'nın uzun istemleri kesmeyi bırakması için num_ctx değerinin artırılması gerekliliğinin nedeni budur.
Araç kullanımı bir aracı döngüsüdür
Claude ile aracı döngüsünü tanımlamak oldukça basittir. Araçlarınızı içeren bir istek gönderirsiniz. Claude görevi okur ve işlem yapması gerekirse, bir aracın adını belirten ve girdilerini dolduran bir araç kullanım isteğiyle yanıt verir. Kodunuz bu aracı çalıştırır ve ardından sonucu bir sonraki istekte Claude'a geri gönderir. Claude sonucu okur ve ya başka bir araç ister ya da nihai yanıtını yazar. Araç istemeyi bıraktığında görev tamamlanmış olur.
Bu döngüyü birkaç satırda elle yazabilirsiniz; birçok kişi bunu yapar çünkü kontrol etmesi ve görmesi kolaydır. Resmi SDK'lar da döngüyü sizin yerinize yöneten bir araç çalıştırıcı (tool runner) sağlar: araç fonksiyonlarını sağlarsınız, SDK ise Claude'u çağırma, araçlarınızı çalıştırma ve Claude işlemi bitirene kadar sonuçları geri besleme sürecini yönetir. Her iki durumda da yapı aynıdır. Çalıştırıcı, döngüyü kendiniz yazma zahmetinden sizi kurtarır. Eğer döngü hala soyut geliyorsa, bir çalıştırıcıya başvurmadan önce minimal bir tane yazmak en iyi çözümdür; diğer her şeyin üzerine inşa edildiği adım yapay zeka aracılarını sıfırdan öğrenmeye yönelik bu aşamalı yol içerisinde yer almaktadır.
Derleme yöntemleri ve VPS için uygun seçenekler
Claude agent oluşturmanın üç yolu vardır. Bu yollar, çalıştırmanız gereken bileşenlerin kapsamına göre birbirinden ayrılır.
İlk yöntemde, kendi araçlarınızı kullanarak Claude API'yi çağıran kodu kendiniz yazarsınız. Döngüyü kendiniz oluşturabilir veya SDK'nin tool runner bileşenini kullanabilirsiniz. Sistemin tamamını VPS üzerinde barındırırsınız. Araçlar, veriler ve güvenlik üzerinde tam denetim sağladığı ve sunucunuzda sıradan bir program olarak çalıştığı için bu yöntem yaygın olarak tercih edilir. Bu kılavuzun büyük bölümü bu yöntemi temel alır.
İkinci yöntem Claude Agent SDK'dir. Bu, üzerine geliştirme yapabileceğiniz bir kütüphane olarak paketlenmiş Claude Code, yani coding agent'tır. Dosyaları okuma ve yazma, shell komutlarını çalıştırma ve arama işlemleri için tam bir agent döngüsü ile yerleşik araçlar sunar. Böylece bu bileşenleri sıfırdan oluşturmanız gerekmez. Ayrıca kendi sunucunuzda çalışır. Bu nedenle, harness'i kendiniz oluşturmadan dosya ve shell işlemlerini gerçekleştirebilen bir agent istediğinizde VPS için güçlü bir seçenektir. Dosyaları okuyan ve shell komutları çalıştıran bir agent, unattended çalışmadan önce containment gerektirir. Claude Code'u bir sunucuda güvenli biçimde çalıştırma bölümünde izin sistemi, sandbox ve isolation seçenekleri ele alınır.
Üçüncü yöntem Managed Agents'tır. Bu yöntemde döngü Anthropic tarafından çalıştırılır. Varsayılan olarak agent araçları Anthropic'in barındırdığı bir sandbox içinde çalışır. Bu nedenle agent'ın çalışma alanı VPS'niz yerine Anthropic altyapısında bulunur. 11 Ekim 2026 itibarıyla hâlâ beta aşamasında olan self-hosted sandbox seçeneği, kendi sunucunuzdaki bir worker process'in tool çağrılarını çalıştırmasına izin verirken döngünün Anthropic'te kalmasını sağlar. En az operasyonel çalışma yükünü istediğinizde ve döngünün kendi makinenizde çalışması gerekmediğinde Managed Agents tercih edilmelidir. Diğer iki yöntemde agent'ın tamamı sunucunuzda bulunur. Kılavuzun geri kalanı bu yapıyı ele alır.
Araçları MCP ile bağlama
Hangi yolu seçerseniz seçin, ajanı gerçek sistemlere bağlamak isteyeceksiniz; Model Context Protocol (MCP) bunu yapmanın düzenli yoludur. MCP, araçları ve verileri bir ajana sunmak için kullanılan açık bir standarttır. Her servis için manuel olarak entegrasyon kodlamak yerine, Claude'u bu yetenekleri halihazırda araç olarak sunan bir MCP sunucusuna yönlendirirsiniz. MCP sunucularını aynı VPS üzerinde, her biri yalnızca ihtiyaç duyduğu erişim yetkisine sahip küçük servisler olarak çalıştırabilirsiniz; bu konuyu VPS üzerinde MCP sunucuları çalıştırma bölümünde ele alıyorum.
Model seçimi
Claude çeşitli modeller sunar. Model seçimi yetenek, hız ve maliyet arasında bir dengedir. 11 Ekim 2026 itibarıyla güncel seçenekler şunlardır: Anthropic'in çoğu iş yükü için başlangıç noktası olarak önerdiği ve uzun süre çalışan agentic coding ile knowledge work için tasarladığı Claude Opus 5.5 (claude-opus-5-5); daha ucuz ve hızlı, dengeli bir seçenek olan Claude Sonnet 5.5 (claude-sonnet-5-5); basit ve yüksek hacimli adımlar için en hızlı ve en ucuz seçenek olan Claude Haiku 5.5 (claude-haiku-5-5). Bunların üzerinde, tüm müşterilerin kullanımına açık en yetenekli model olan Claude Fable 5.1 (claude-fable-5-1) yer alır. Bu model, zorlu akıl yürütme ve uzun ufuklu agentic çalışmalar için kullanılır. Claude Opus 4.8 ve Claude Fable 5 gibi eski modeller hâlâ kullanılabilir, ancak artık legacy olarak listelenmektedir. Kodda tam model tanımlayıcısı kullanılmalıdır; tanımlayıcıya tarih eklenmemelidir.
Pratik bir yaklaşım, bu modelleri birlikte kullanmaktır. Rutin araç çağrılarını daha ucuz bir modele, zor kararları ise daha güçlü bir modele bırakın. Model, isteğinizde yalnızca bir string olduğundan model değiştirmek tek satırlık bir değişikliktir. Bu nedenle yetenekli bir varsayılan modelle başlayın. Hızın veya maliyetin en yüksek kalite düzeyinden daha önemli olduğu durumlarda daha düşük bir modele geçin.
VPS üzerinde güvenliği güçlendirilmiş bir servis olarak çalıştırma
Bir agent sürekli çalışmadığı sürece kullanışlı değildir. Yalıtılmadığı sürece de güvenli değildir. VPS üzerinde bu iki koşul, agent'ı terminalde elle başlattığınız bir program yerine güvenliği güçlendirilmiş bir systemd servisi olarak çalıştırarak sağlanır. Servis olarak çalıştığında boot sırasında başlar, çökerse yeniden başlatılır ve günlük kayıtlarını journal'a yazar. Güvenliği güçlendirildiğinde, yalnızca ihtiyaç duyduğu erişimlere sahip ayrıcalıksız bir kullanıcıyla çalışır. Böylece bir hata veya kötü amaçlı bir talimatın etkisi sınırlandırılır. Bir servis birimi, sürecin hangi kaynaklara erişebileceğini, ne kadar bellek ve CPU kullanabileceğini ve kaç görev çalıştırabileceğini sınırlayabilir. Ancak agent'ın bu erişimle ne yapmaya karar vereceğini değerlendiremez. Bu nedenle geri kalan kontroller agent harness içinde uygulanmalıdır. Farklı bir stack üzerinde çalışan kurulmaya değer DeepSeek Harness eklentileri bu işi yapar: harcama sınırları, araç bazında izin kuralları ve prompt injection taraması.
En önemli kural, Claude API key bilgisini sunucu tarafında tutmaktır. Bu key her çağrının ücretini karşılar ve çağrıyı yetkilendirir. Bu nedenle yalnızca agent kullanıcısının okuyabildiği bir dosyada tutulmalı, servise environment variable olarak yüklenmeli ve hiçbir zaman kod içine, bir repository'ye veya bir browser'ın erişebileceği herhangi bir konuma yerleştirilmemelidir. Agent'ınız için eksiksiz ve güvenliği güçlendirilmiş bir servis birimini burada oluşturun:
Ardından sunucunun kendisini güvenli hale getirin. SSH erişimini yalnızca key tabanlı olacak şekilde yapılandırın ve yönetim yaptığınız hesabı VPS üzerinde SSH güvenliğini güçlendirme bölümünde anlatıldığı gibi sınırlandırın. Agent'ı oluştururken interaktif bir oturumdan yönetmek isterseniz VPS üzerinde tmux ile Claude Code çalıştırma iyi bir yardımcıdır. Aynı sunucuda ikinci bir oturum açtıktan sonra iki oturum işi birbirine aktarabilir. Böylece her talimatı bir pane'den diğerine sizin taşımanız gerekmez. Tüm bu kavramların belirli bir modele bağlı olmadan nasıl çalıştığını öğrenmek isterseniz VPS üzerinde kendi AI agent'ınızı oluşturma başlıklı kardeş kılavuz temel bilgileri açıklar.
İstediğiniz şey terminal tabanlı bir kodlama yardımcısıysa VPS üzerinde bir kodlama AI agent'ı çalıştırma bölümü Aider ve Goose'u ele alır.
FAQ
Bir agent oluşturmak için hangi Claude modelini kullanmalıyım?
Anthropic’in çoğu iş yükü için önerdiği Claude Opus 5.5 (claude-opus-5-5) ile başlanmalı ve sonuçlara göre ayarlama yapılmalıdır. Claude Sonnet 5.5 (claude-sonnet-5-5) çoğu iş için daha ucuz ve hızlıdır. Claude Haiku 5.5 (claude-haiku-5-5) basit ve yüksek hacimli adımlar için en uygunudur. Claude Fable 5.1 (claude-fable-5-1) ise en zor görevlerde en yüksek yeteneği sunar. Yaygın yaklaşım, rutin adımlarda daha ucuz bir model, zor kararlarda ise daha güçlü bir model kullanmaktır. Model değiştirmek tek satırlık bir değişikliktir.
Agent’ın tamamını VPS üzerinde mi çalıştırmalıyım, yoksa Anthropic mi çalıştırır?
Bu, kullanılan yaklaşıma bağlıdır. Claude API’ye karşı kendi döngünüzü yazarsanız veya Claude Agent SDK kullanırsanız agent tamamen VPS üzerinde çalışır ve yalnızca model çağrıları Anthropic’e gönderilir. Managed Agents kullanılırsa döngüyü Anthropic çalıştırır ve varsayılan olarak araçların çalıştığı sandbox’ı barındırır. Bu durumda agent’ın daha küçük bir bölümü sunucunuzda bulunur. 11 Ekim 2026 itibarıyla beta aşamasında olan self-hosted sandbox seçeneği, döngü Anthropic’te kalırken araçların çalıştırılmasını kendi makinenize taşır. Agent’ın tamamen kendi makinenizde çalışmasını istiyorsanız ilk iki yaklaşımdan birini kullanın.
Claude API ile Claude Agent SDK arasındaki fark nedir?
Claude API, ham Messages endpoint’idir. Bir konuşmayı ve araçları gönderir, ardından agent döngüsünü kendiniz yazarsınız veya döngüyü çalıştırmak için SDK’nın tool runner bileşenini kullanırsınız. Claude Agent SDK ise daha üst düzey bir kütüphanedir. Claude Code’un üzerine geliştirme yapılabilecek şekilde paketlenmiş halidir ve eksiksiz bir döngünün yanı sıra yerleşik dosya, shell ve arama araçları sunar. Her şeyi kendiniz tanımlamak istiyorsanız API’yi kullanın. Gerekli altyapıyı kendiniz kurmadan yetenekli bir agent istiyorsanız Agent SDK’yı kullanın.
Claude API anahtarını sunucuda nasıl güvende tutabilirim?
Anahtarı sunucu tarafında ve kodunuzdan ayrı tutun. Anahtarı yalnızca agent’ın çalıştığı hesabın okuyabildiği bir dosyada saklayın ve servise environment variable olarak yükleyin. Anahtarı hiçbir zaman bir repository’ye commit etmeyin veya tarayıcıya açmayın. Claude’a gönderilen her istek sunucunuzdan çıktığı için anahtarın kullanıcının cihazına ulaşması gerekmez. Bu nedenle sunucuda çalışan bir agent’ın güvenliği, istemci uygulamasına gömülü bir agent’a göre daha kolay sağlanır.
Claude ile bir agent oluşturmak için modeli self-host etmem gerekir mi?
Hayır. Claude’da model, API üzerinden çağrılan hosted bir servistir. Bu nedenle GPU üzerinde çalıştırılacak bir bileşen yoktur. VPS’niz agent döngüsünü, araçları ve verileri çalıştırır; reasoning işlemi Anthropic tarafında gerçekleşir. Bu yapı, mütevazı bir sunucunun yetenekli bir agent çalıştırabilmesini sağlar. Bunun yerine tamamen yerel bir model istiyorsanız, companion guide içinde ele alınan kendi AI agent’ınızı oluşturma konusundaki self-hosted yaklaşımı kullanabilirsiniz.