Ana içeriğe atla

Bir Agent Harness Nedir? Yapay Zeka Ajanları Nasıl Araçlar, Bellek ve Kontrol Elde Eder

Bir agent harness'ın ne olduğunu, yapay zeka ajanlarının neden buna ihtiyaç duyduğunu, çerçeveler ve çalışma zamanlarından nasıl farklılaştığını ve geliştiricilerin harness benzeri sistemler kurmak için hangi araçları kullanabileceğini öğrenin.
Güncel 15 May 2026  · 11 dk. oku

Fikir tamamen yeni değil. Geliştiriciler yıllardır modellere sarmalayıcılar, iskeletler ve yürütme ortamları inşa ediyordu. Etiket, HashiCorp kurucu ortağı Mitchell Hashimoto'nun Şubat 2026'daki yapay zeka iş akışına dair blog yazısında "harness engineering" ifadesini kullanmasından sonra yayıldı. Vurguladığı nokta basitti: bir ajan hata yaptığında, aynı hatanın bir daha gerçekleşemeyeceği şekilde ortamı değiştirin. OpenAI aynı hafta bunu Codex çalışmaları için benimsedi ve LangChain aynı çerçevelemeyi izledi.

Bu yazıda bir agent harness'ın ne olduğunu, yapay zeka ajanlarının neden buna ihtiyaç duyduğunu, çerçevelerden ve çalışma zamanlarından nasıl farklılaştığını ve geliştiricilerin harness benzeri sistemler kurmak için hangi araçları kullandığını açıklayacağım.

Bir Agent Harness Nedir?

Bir tanım LangChain'den geliyor: "Eğer model değilseniz, harness'sınız." Pratikte, bir agent harness bir dil modelinin etrafındaki yazılımdır: araçlar, bellek, durum, yürütme, korkuluklar ve gözlemlenebilirlik.

Ajan = Model + Harness

Model muhakeme eder. Harness ise bu muhakemenin eyleme geçmesi, hatırlaması, sonuçları kontrol etmesi ve kurallara uyması için bir ortam sağlar.

Bir dil modelinin, araçlar, bellek, yürütme ortamı, korkuluklar ve gözlemlenebilirlik bileşenleri etiketlenmiş bir agent harness katmanıyla çevrelendiğini gösteren diyagram.

Model, çalıştığı agent harness içinde. Görsel: Yazar.

Formül faydalıdır, ancak bu bir zihinsel modeldir, sektör standardı değildir. Bazı satıcılar hâlâ "harness", "framework" ve "scaffold" terimlerini kabaca aynı anlama gelecek şekilde kullanıyor.

Yapay Zeka Ajanlarının Neden Bir Harness'a İhtiyacı Var

Ham bir dil modeli, kendisinden çok adımlı işler istendiğinde sınırlıdır. Kendi başına kalıcı bir durum tutmaz, araçları kendi kendine çalıştırmaz, büyüyen bağlam penceresini yönetmez veya başarısız araç çağrılarından yardım olmadan toparlanmaz. 

Bir Python projesinde başarısız bir testi düzeltmesi istenen bir ajanı hayal edin. Bir harness olmadan model, düzeltmeye benzeyen bir şey yazabilir; ancak gerçek test dosyasını okuyamaz, pytest çalıştıramaz, gerçek hatayı göremez, hatalı fonksiyonu düzenleyemez veya düzeltmenin geçtiğini teyit edemez. Bir harness ile bu döngünün tamamı, ajanın kendi başına birkaç dakikalık bir çalışmaya dönüşür ve her adım insanın inceleyebileceği bir yerde kaydedilir.

Yine de Anthropic'in yönlendirmesi geçerlidir: mümkün olan en basit yaklaşımla başlayın ve yalnızca görev gerektirdiğinde hareketli parçalar ekleyin.

Bir Agent Harness Neyden Oluşur

Parçalar değişir, ancak çoğunda birkaç yapı taşı ortaktır. Bunları katı bir ürün şartnamesi değil, bir kontrol listesi olarak düşünün. Küçük bir ajan bunların yalnızca birkaçıyla yetinebilirken, üretim ortamındaki bir ajan daha fazlasına ihtiyaç duyar.

Sistem istemleri ve davranış kuralları

Harness genellikle modelin temel talimatlarını kontrol eder. Buna sistem istemi dahildir, ancak proje kuralları, kodlama standartları, rol kısıtlamaları ve güvenlik politikalarını da içerebilir. Örneğin LangChain'in Deep Agents'ında bir AGENTS.md dosyası, bir görev başlamadan önce temel kuralları belirleyebilir.

2026'daki bazı harness'lar talimatlar için aşamalı açıklama kullanıyor. Başlangıçta her araç açıklamasını bağlama yüklemek yerine, harness yalnızca mevcut olanların bir özetini ekler. Bir aracın tam talimatları, model o araca ihtiyaç duyduğunda yüklenir.

Araçlar: ajanların dünyayla etkileşimi

Araçlar, ajanın metin üretiminin ötesinde şeyler yapmasını sağlar. Yaygın örnekler arasında web araması, dosya okuma ve yazma, veritabanı sorguları, API çağrıları, tarayıcı eylemleri, kod yürütme ve terminal komutları bulunur. Harness, hangi araçların mevcut olduğunu, modelin onları ne zaman çağırmasına izin verildiğini ve sonuçların ajanın bağlamına nasıl biçimlendirilip geri döndürüldüğünü kontrol eder.

Model Context Protocol (MCP) 2026'da bunun için standart bir arayüz haline geldi. Anthropic Agent SDK, LangChain Deep Agents ve OpenAI Agents SDK dâhil birçok harness, her biri için özel entegrasyon kodu yazmadan harici araç sunucularına bağlanmak için MCP kullanıyor.

Bellek ve durum

Ajanların bir görevde daha önce ne olduğunu bilmeleri gerekir. Bir harness, kısa vadeli durumu etkin konuşmada ve uzun vadeli durumu dosyalarda, günlüklerde, özetlerde veya kaydedilmiş tercihlerde tutabilir. Bazı harness'lar ayrıca uzun geçmişleri daha kısa özetlere sıkıştırarak modelin bağlamda her ayrıntıyı taşımamasını sağlar.

Yürütme ortamı: ajanın çalıştığı ve eyleme geçtiği yer

Birçok kullanışlı ajan, gerçekten çalışabileceği bir yere ihtiyaç duyar. Bu bir dosya sistemi, bir konteyner, korumalı bir terminal, bir tarayıcı örneği veya bir bulut çalışma zamanı olabilir. Harness tarafından yönetilen bir yürütme ortamı olmadan araç çağrılarının ulaşacağı bir yer yoktur.

Günümüzde birçok harness, yalıtılmış korumalı konteynerlar kullanıyor: tek bir oturumla sınırlı, görev bittiğinde temizlenen, böylece bir ajan görevinin dosya yazmaları, kurulan paketleri ve ağ çağrılarının başka birine sızmamasını sağlayan kısa ömürlü ortamlar.

Yönlendirme ve planlama

Bazı görevler tek bir düz adım dizisine uymaz. Harness, bir hedefi alt görevlere bölen ve durumlarını izleyen bir planlama aracı sağlayabilir. Ayrıca işi bir parça halinde ele alan ve ana ajana yalnızca bir özet döndüren alt ajanlar başlatabilir.

Örneğin LangChain Deep Agents, görev çalışırken her adımı beklemeden tamamlandıya güncelleyerek plan adımlarını dosya sistemindeki bir dosyada izler.

Korkuluklar ve izinler

Kuralları koyduğunuz yer harness'tır: insan onayı, engellenmiş araç çağrıları, role dayalı izinler ve çıktı kontrolleri. OpenAI Agents SDK, LangChain Deep Agents ve Microsoft Agent Framework bu tür kontrolleri destekler. Daha güvenli desen, girdi, çıktı ve araç izinlerini ayrı ayrı kontrol etmektir.

Gözlemlenebilirlik ve izleme

Elli adımlık bir ajan görevi otuz yedinci adımda başarısız olduğunda, bir izleme kaydı ne olduğunu gösterir. İzleme, bir tam çalışma boyunca model çağrılarını, araç çağrılarını, devirleri, hataları, gecikmeyi ve maliyeti kaydeder. OpenAI Agents SDK, varsayılan olarak izlemeyi açar. LangSmith bunun üzerine hata ayıklama ve değerlendirme panoları ekler. OpenTelemetry, izleri satıcıdan bağımsız bir biçimde dışa aktarmanın standardı haline geldi; böylece tek bir gözlemlenebilirlik aracına kilitlenmezsiniz.

Agent Harness vs. Framework vs. Runtime: Fark Nedir?

Bu soru sıkça gündeme gelir ve yanıtı, çoğu açıklayıcının ima ettiğinden daha dağınıktır. Sınıflandırma faydalıdır, ancak sabit değildir.

Tabanında agent runtime, ortasında agent framework ve en üstte agent harness bulunan katmanlı yığın diyagramı; her katmanda örnek ürünler listelenmiş.

Üç katman; alttan üste soyutlama artar. Görsel: Yazar.

Birçok geliştirici zaten birini kullandığı için çerçeveyle başlayacağım.

Ajan çerçevesi (framework) nedir?

Bir ajan çerçevesi geliştiricilere ajan oluşturmaları için yapı taşları sunar. Model çağrılarını, araç tanımlarını, bellek desenlerini ve ajan döngü yapısını kapsar. Örnekler arasında erken dönem LangChain, CrewAI ve Google ADK yer alır. Bir çerçeve, bir ajanı nasıl yapılandıracağınızı söyler, ancak onu üretimde her zaman nasıl güvenilir şekilde çalıştıracağınızı söylemeyebilir.

Ajan çalışma zamanı (runtime) nedir?

Bir ajan çalışma zamanı, bir ajanın zaman içinde güvenilir şekilde çalışmasına yardımcı olan katmandır. Kalıcı yürütme, durum sürekliliği, yeniden denemeler, insan-döngüde adımlar ve akış (streaming) işlemlerini yönetir. LangGraph, Temporal ve Inngest örneklerdir. Harrison Chase şu benzetmeyi sundu: Node.js runtime ise ve Express framework ise, bir harness Next.js gibidir.

Bir harness'ı farklı kılan nedir?

Bir harness, bir çerçeveden daha üst düzeydedir. Çerçeve size bileşenler sunarken, harness genellikle daha fazla kararı önceden verilmiş halde gelir: araçlar, planlama, dosya sistemi erişimi ve bağlam yönetimi.

Agent Harness Kullanım Alanları: Kodlama, Araştırma, Veri ve Kurumsal

Aynı yapı taşları çok farklı işlerde karşımıza çıkar, ancak değişen karışımdır. Bir kodlama ajanı ile kurumsal iş akışı ajanının her ikisi de bir harness'a ihtiyaç duyar, fakat farklı bölümlerini zorlar. Bu kategoriler resmi standartlar değildir. Aynı fikrin önünüzdeki işe nasıl uyumlandığını görmenin pratik yollarıdır.

Kodlama ajanı harness'ları

Harness'ın görünür olduğu iyi bir güncel örnek kodlama ajanlarıdır. Faydalı kodlama işi yapabilmek için bir ajanın dosya erişimine, git bağlamına, terminal yürütmesine, test çalıştırmasına, bağımlılık kuruluma ve proje kurallarına ihtiyacı vardır. Claude Code ve Codex bu desene örnektir: her ikisi de yalın bir model API'si değil, bolca harness kodu üzerinde çalışır.

İyi bir kodlama harness'ı ile vasat birinin farkı genellikle küçük ayrıntılarda ortaya çıkar: başarısız bir testten nasıl toparlandığı, kötü bir düzenlemeyi geri alıp alamadığı, git geçmişini modele ne kadar temiz bir şekilde sunduğu. Mühendislik çabasının çoğu aslında bu ayrıntılara gider.

Araştırma ajanı harness'ları

Araştırma ajanları farklı bir araç setine ihtiyaç duyar: web araması, kaynak takibi, not alma, atıf yönetimi ve özetleme. Harness, arama sonuçlarının nasıl saklanacağını, kaynakların nasıl atfedileceğini ve uzun belgelerin tek seferde tüm bağlam penceresini tüketmemek için nasıl parçalara ayrılıp dışarı yükleneceğini yönetir.

Veri analizi ajanı harness'ları

Veri ajanlarının veri kümelerine, SQL veritabanlarına, Python yürütme ortamlarına ve sorgu yazmaya başlamadan önce hangi tabloların ve sütunların mevcut olduğunu bilmelerini sağlayan şema bağlamına erişimi gerekir. Harness ayrıca, ajan üretim verisine dokunabildiğinde önemli hale gelen izin sınırlarını uygular.

Kurumsal iş akışı harness'ları

Kurumsal dağıtımlarda gereksinimlere bir katman daha eklenir: kimlik doğrulama, denetim günlükleri, onay iş akışları, role dayalı erişim kontrolü ve dahili sistemlerle bağlantılar. AWS AgentCore bu kategoride yönetilen bir örnektir; kimlik, VPC ağ iletişimi ve gözlemlenebilirlik içerir. Microsoft Agent Framework, Azure veya .NET ortamlarındaki ekipler için benzer alanları kapsar.

2026'da Agent Harness Sistemleri Kurmak İçin Araçlar

2026'nın ortalarında en sık gündeme gelen bir avuç ürün var. Çerçeve-çalışma zamanı-harness yelpazesinin farklı noktalarında yer alırlar ve sınırlar hâlâ hareketlidir.

LangChain Deep Agents

LangChain Deep Agents, LangGraph'ı çalışma zamanı olarak kullanan LangChain'in açık kaynak harness'ıdır. Planlama aracı, sanal dosya sistemi, alt ajan oluşturma, otomatik bağlam sıkıştırma ve insan-döngüde onay ile KKE (PII) tespiti için ara katman yazılımıyla birlikte gelir. Modele agnostiktir, OpenAI uyumlu uç noktaları destekler ve kod yürütme için Modal, Runloop ve Daytona gibi korumalı alan sağlayıcılarına bağlanır.

Anthropic Agent SDK

Anthropic Agent SDK (paket adı: claude-agent-sdk) Claude Code'dan ayrıştırılıp bağımsız bir seçenek olarak yayımlandı. Yerleşik bir ajan döngüsü, bash yürütme, dosya okuma ve yazma, web araması, MCP entegrasyonu ve bağlam sıkıştırma için araçlar içerir. Yalnızca Claude modelleriyle, Anthropic'in API'si, Amazon Bedrock, Vertex AI ve Azure genelinde çalışır.

OpenAI Agents SDK

Daha önce belirttiğim gibi, OpenAI Agents SDK özellik seti büyüdükçe çerçeve alanından harness alanına geçti. Nisan 2026 sürümü, yerel korumalı alan yürütmesi, bellek sıkıştırma ve dosya sistemi araçlarını ekledi. Python ve TypeScript'te sunulan SDK, araç kullanımı, ajan devretme (handoff) ve korkulukları destekler.

Google Agent Development Kit

Google ADK, sıralı, paralel ve döngü tabanlı ajan yapıları için yerleşik sınıflarla çoklu-ajan orkestrasyonunu destekler. Değerlendirme araçları içerir, yönetilen dağıtım için Vertex AI ile çalışır ve araç bağlantısı için MCP'yi destekler. Python, Java, TypeScript ve Go dillerinde mevcuttur; Gemini modelleri için ayarlanmıştır ancak modelden bağımsız olarak tanımlanır.

Microsoft Agent Framework

Microsoft Agent Framework, AutoGen projeleri için Microsoft'un mevcut geçiş yoludur. Python ve .NET'i destekler, Azure AI hizmetleriyle çalışır ve araç bağlantısı için MCP desteğini içerir.

CrewAI

CrewAI çoklu ajan sistemlerine rol tabanlı bir yaklaşım getirir. Belirli rollerle ajanlar tanımlar, görevler atar, ekipler kurar ve belleği ile korkulukları deklaratif olarak yapılandırırsınız. Doğal olarak bir uzman ekibine haritalanan problemlere uygundur.

Temporal ve Inngest

Bunlar tek başına agent harness değildir. Bir ajan görevinin durumu kaybetmeden saatlerce veya günlerce çalışması gerektiğinde ne olacağını yöneten kalıcı yürütme platformlarıdır. Başarısızlıkta, motor en son başarılı kontrol noktasından itibaren tekrar oynatır, baştan başlamaz.

Agent Harness Zorlukları ve Tavizler

Bir harness eklemek sistemin daha fazlasını yapmasını sağlar, ancak eklenen her araç, izin ve ajan, işlerin bozulması için başka bir yol ekler. Görevler uzadıkça, korkuluklar, izleme ve kalıcı durum isteğe bağlı olmaktan çıkar ve uzun bir çalışmanın kurtarılabilir kalmasını sağlayan şeylerin çoğu haline gelir.

Takımların hazırlıksız yakalandığı bir eşleşme riski de vardır. LangChain, model özelinde harness profilleri ekledikten sonra tau2-bench alt kümesinde 10 ila 20 puanlık bir sıçrama bildirdi. Artificial Analysis da Coding Agent Index çalışmasında benzer bir noktayı vurguladı: kodlama ajanı sonuçları, maliyet, token kullanımı ve görev başına süre kombinasyonlar arasında çok değişerek, model ve harness birlikte bağlıdır. Model değişmedi. Çevresindeki istemler, araçlar ve ara yazılım değişti. Bu profilin kendisi de harness çalışmasıdır.

Gerçekten Bir Agent Harness'a İhtiyacınız Var mı?

Buna ihtiyacınız olup olmadığını düşünmenin doğrudan bir yolu şöyle.

Sisteminiz aşağıdaki koşullardan bir veya daha fazlasını sağlıyorsa muhtemelen bir harness'a ihtiyaç vardır:

  • Harici araçlar kullanması gerekiyor
  • Oturumlar arasında ilerlemeyi hatırlaması gerekiyor
  • Gerçek bir ortamda kod çalıştırması gerekiyor
  • Birden fazla ajanı koordine ediyor
  • Kısmi hatalardan işi kaybetmeden toparlanması gerekiyor
  • İnsan onayı gerektiriyor

Görev, her adımı önceden belirlenmiş öngörülebilir bir iş akışıysa muhtemelen bir harness'a gerek yoktur.

Faydalı bir test: görev tek bir model çağrısıyla veya birkaç koşullu ifadeye sahip küçük bir deterministik betikle halledilebiliyorsa, bir harness muhtemelen gereğinden fazladır. Görev, ajanın zaman içinde kararlar vermesini, araçlar kullanmasını ve sonuçlara tepki vermesini gerektirdiği anda, harness gerçek iş yapmaya başlar.

Sık gördüğüm bir desen, ekiplerin çok erken bir aşamada harness'a yönelmesi; aslında tek atımlık bir metin üretim görevi için izleme ve korumalı alan kuruyorlar. Tersi hata ise acı vericidir: modeli doğrudan göndermek ve ikinci başarısız testte, üçüncü araç çağrısında veya beşinci yeniden başlatmada geriye yaslanacak bir altyapı olmadığını fark etmek.

Son Düşünceler

Daha önce belirttiğim gibi, satıcılar aynı şeyler için aynı kelimeleri kullanmıyor ve çerçeve, çalışma zamanı ve agent harness arasındaki sınır hâlâ hareket ediyor.

Tek atımlık üretim için sarmalayıcı gereğinden fazladır. Uzun oturumlar boyunca eyleme geçmesi, hatırlaması ve toparlanması gereken ajanlar için agent harness, sistemin büyük bir parçası haline gelir. Doğru olanı seçmek, giderek doğru modeli seçmekten ayrı bir karar haline geliyor. OpenAI ve Anthropic'ten gelen bazı hamleler sınırın değişmeye devam edeceğini gösterdiği için, bir sonraki model neslinin bu katmanın ne kadarını kendi başına soğuracağını merak ediyorum. Temel fikir hâlâ geçerli: bir ajan, bir model artı bir agent harness'tır.

Ajan sistemleri geliştirme hakkında daha fazla bilgi edinmek istiyorsanız, Building Scalable Agentic Systems kursumuz, araç kullanımı, orkestrasyon ve uzun süreli ajan iş akışlarının arkasındaki kalıpları ele alır.


Khalid Abdelaty's photo
Author
Khalid Abdelaty
LinkedIn

Veri hatları, bulut ve YZ araçları üzerinde çalışan; aynı zamanda DataCamp ve gelişmekte olan geliştiriciler için pratik, yüksek etkili eğiticiler yazan bir veri mühendisi ve topluluk inşacısıyım.

Agent Harness SSS

Bir agent harness ile sistem istemi arasındaki fark nedir?

Bir sistem istemi, ajanın başlangıçta okuduğu tek bir girdi olur. Agent harness ise araçları, durumu, izinleri ve hata işlemeyi yöneten daha geniş katmandır. Bulduğum en basit çerçeveleme: sistem istemi modele ne yapacağını söyler, agent harness ise ne yapabileceğini kontrol eder. Parlak bir sistem isteminiz ve hiç agent harness'ınız olmayabilir ve yine de elde stateless bir API çağrısı kalır. Agent harness, bir istemi bir sisteme dönüştüren şeydir.

Kendi agent harness'ımı sıfırdan inşa edebilir miyim?

İlke olarak evet. En basit hâliyle bir harness bir döngüdür: modeli çağırın, yanıtı ayrıştırın, ürettiği araç çağrılarını yürütün, sonuçları döndürün, tekrarlayın. Bu döngü bir öğleden sonra birkaç düzine satır Python ile yazılabilir. Zor kısım döngüden sonra gelir: bağlam taşması, başarısız araç çağrıları, yeniden başlatmalarda durum kaybı, izin zorlaması ve izleme. Pratikte, bu döngü-sonrası iş ekiplerin ayırdığından hep daha uzun sürer; bu yüzden açık kaynak harness'lar küçülmek yerine büyümeye devam ediyor.

Model, bir harness içinde olduğunun farkında mı?

Açıkça değil. Bazı harness'lar modelin hangi araçların mevcut olduğunu sistem istemi aracılığıyla bilmesini sağlar, ancak modelin etrafında bir sistem olarak harness kavramı yoktur. Sadece verilen bağlamı görür, bir yanıt üretir ve bazen bir araç çağrısı üretir. Bir yan etki: bir şeyler bozulduğunda, model çoğu zaman nedenini size söyleyemez; çünkü harness'ın varlığını bilmez. Bir ajanın hata ayıklaması, çoğunlukla modelin değil, harness'ın hata ayıklaması olur.

Model seçimi, hangi harness'ı kullanmam gerektiğini nasıl etkiler?

İnsanların beklediğinden daha fazla. Öncü kodlama modelleri bazen kendi agent harness'ları döngüdeyken sonradan eğitilir; bu nedenle farklı bir harness takmak, performansın bir kısmını masada bırakabilir. Pratik sezgi: ekibiniz bir model ailesine bağlanırsa, agent harness kısa listeniz çoğunlukla kendiliğinden oluşur. Daha zoru, sonradan model değiştirmektir; bu genellikle yalnızca bir yapılandırma değerini değiştirmek değil, harness mantığını yeniden yazmak anlamına gelir.

Bu, insanların eskiden "LLM scaffolding" dediğinden farklı mı?

Pek değil. Aynı fikrin daha yeni bir ad altındaki hâli. "LLM scaffolding", "agent wrapper" ve "execution environment" ifadelerinin hepsi aynı yöne işaret eder. 2026'daki ince değişim şu: "scaffolding", model yeterince iyi olduğunda kaldırılan geçici bir yapıyı çağrıştırırken, "agent harness" modelin etrafında tuttuğu bir şeyi çağrıştırır. Bu, ekiplerin işe bütçe ayırma şeklini değiştirir: iskele kaldırılır, agent harness'lar sistemin parçası olur.

Konular

DataCamp ile Öğrenin

Kurs

LangChain ile LLM Uygulamaları Geliştirme

3 sa
43.6K
LangChain'de LLM'leri, istemleri, zincirleri ve aracıları kullanarak yapay zeka destekli uygulamaları nasıl oluşturacağınızı keşfedin.
Ayrıntıları GörRight Arrow
Kursa Başla
Devamını GörRight Arrow