Claude Opus 4.8, Claude Code için Dinamik İş Akışları özelliğini getiriyor. Bu modda tek bir oturum, büyük ve dallanan bir işi yürütmek için yüzlerce paralel alt ajan başlatabilir: çok dosyalı refactor, geniş test matrisi, paralel çözüm denemeleri veya büyük kod tabanı analizi. Terminalde “sihir” gibi görünse de temelinde iki API yeteneği vardır: xhigh eforu ve konuşma ortası sistem mesajları.
Bu yazıda Dinamik İş Akışlarının nasıl çalıştığını, ne zaman kullanılması gerektiğini ve aynı orkestrasyon deseninin ham API ile nasıl kurulacağını adım adım ele alacağız. Modelin kendisi için Claude Opus 4.8 nedir yazısına bakabilirsiniz. Ajan mimarisi tarafı için Claude Code ajan donanımı analizi tamamlayıcı bir kaynaktır.
Dinamik İş Akışları Gerçekte Nedir?
Claude Code içinde Dinamik İş Akışları, efor menüsündeki ultracode modu olarak görünür.
Ancak önemli nokta şu: ultracode yeni bir API efor seviyesi değildir. Opus 4.8’de zaten bulunan iki özelliğin birlikte kullanılmasından oluşur:
-
xhighefor seviyesi - Konuşma ortası sistem mesajları
Bu kombinasyon, orkestratör ajana iki şey sağlar:
- Büyük bir işi planlamak için yeterli muhakeme bütçesi
- İş ilerlerken yeni alt ajanlar başlatmak için kalıcı izin
Claude Code tarafındaki “Dinamik İş Akışı” deneyimi, bu iki yeteneğin üzerine kurulan bir orkestrasyon katmanıdır.
Bileşen 1: xhigh Eforu
effort parametresi, Opus 4.8’in bir yanıt boyunca ne kadar işlem bütçesi kullanacağını belirler. Bu bütçeye araç çağrıları da dahildir.
xhigh, Anthropic’in uzun süreli kodlama ve ajantik işler için önerdiği seviyedir. Özellikle şu tür işlerde anlamlıdır:
- 30 dakikayı aşabilecek çalışmalar
- Çok adımlı refactor süreçleri
- Büyük test ve analiz işleri
- Çok ajanlı orkestrasyonlar
Dinamik İş Akışlarında xhigh önemlidir çünkü orkestratörün gerçek bir planlama yapması gerekir:
- Görevi bağımsız parçalara ayırmak
- Kaç işçi ajanın çalışacağını belirlemek
- Her işçiye dar bir kapsam vermek
- Sonuçları toplayıp birleştirmek
Daha düşük efor seviyeleri daha az araç çağrısı ve daha sınırlı planlama üretir. Bu, orkestratörün ihtiyaç duyduğu davranışın tersidir.
Başlangıç için pratik bir ayar:
max_tokens = 64000
effort = "xhigh"
Bu değerler, orkestratöre hem planlama hem de koordinasyon için yeterli alan verir.
Bileşen 2: Konuşma Ortası Sistem Mesajları
Konuşma ortası sistem mesajları, Opus 4.8 ile gelen önemli bir Mesajlar API özelliğidir.
Daha önce sistem istemi konuşmanın başında yer alır ve oturum boyunca sabit kalırdı. Artık messages dizisinin ortasına bir sistem mesajı ekleyerek görev sırasında yeni talimatlar veya izinler enjekte edebilirsiniz.
Örnek kullanım amacı:
{
"role": "system",
"content": "Bu noktadan sonra orkestratör, alt görevleri bağımsız işçilere dağıtabilir."
}
Bu mekanizma, orkestratörün konuşma başladıktan sonra çok ajanlı iş akışını başlatmasını sağlar. Yani ajan, çalışma sırasında keşfettiği duruma göre yeni yetenekler kazanabilir.
Anthropic bu özelliği konuşma ortası sistem mesajları dokümanında açıklıyor.
Claude Code’da Dinamik İş Akışlarını Açma
Claude Code’da Dinamik İş Akışları, efor menüsündeki ultracode seçeneği ile etkinleştirilir.
Bu seçim pratikte şunları yapar:
-
xhigheforunu kullanır - Oturuma paralel alt ajanlar başlatma izni verir
- Konuşma ortası sistem mesajlarını kullanarak orkestrasyonu mümkün hale getirir
Kullanım akışı genelde şöyledir:
- Claude Code’da
ultracodemodunu seçin. - Büyük ve paralelleştirilebilir görevi açıkça tanımlayın.
- Orkestratörün görevi parçalara ayırmasına izin verin.
- Alt ajanların sonuçlarını ana oturumda birleştirin.
- Son değişiklikleri gözden geçirip test edin.
Örnek görev tanımı:
Auth modülündeki token doğrulama mantığını 14 servis genelinde yeniden düzenle.
Her servis için bağımsız değişiklik planı çıkar, uyumsuzlukları tespit et ve test kapsamını güncelle.
Claude Code bu noktada:
- Görevi planlar
- Alt görevlere böler
- İşçileri paralel başlatır
- Sonuçları ana oturumda toplar
Claude Code’u bir planla yapılandırıyorsanız, Claude plan kurulum kılavuzuna sahip Claude Ajan SDK’mız ortam ayarlarını kapsar.
Dinamik İş Akışları Ne Zaman Kullanılır?
Dinamik İş Akışları, geniş ve paralelleştirilebilir işler için uygundur.
İyi kullanım örnekleri:
- Aynı refactor desenini çok sayıda dosyada uygulamak
- Büyük bir test matrisi oluşturmak ve çalıştırmak
- Birden fazla uygulama yaklaşımını paralel denemek
- Büyük kod tabanında modül bazlı analiz yapmak
- Her işçinin ayrı servis, paket veya klasör üzerinde çalışması
Örnek:
Monorepo içindeki tüm servislerde eski logging arayüzünü yeni structured logging API'sine taşı.
Her servis için değişiklikleri ayrı analiz et, riskleri listele ve test önerisi üret.
Bu tip görevlerde paralel ajanlar verim sağlar çünkü her işçi bağımsız bir parçayı ele alabilir.
Ne Zaman Kullanılmamalı?
Dinamik İş Akışları dar veya sıralı görevlerde iyi bir seçim değildir.
Kaçınılması gereken durumlar:
- Tek dosyalık küçük değişiklikler
- Her adımı bir önceki adıma sıkı bağlı işler
- Basit hata düzeltmeleri
- Sadece kısa bir açıklama veya küçük bir kod bloğu gerektiren görevler
Kötü örnek:
Bu fonksiyondaki null kontrolünü düzelt.
Bu iş için yüzlerce alt ajan başlatmak gereksiz maliyet üretir. Paralellik, yalnızca iş gerçekten bölünebiliyorsa anlamlıdır.
API Aracılığıyla Aynı Orkestrasyon Nasıl Kurulur?
Dinamik İş Akışı benzeri bir sistemi oluşturmak için Claude Code kullanmak zorunda değilsiniz. Aynı yapı ham Mesajlar API’si ile kurulabilir.
Anthropic, bir orkestrasyon modu oluşturma dokümanında uygulamalı bir örnek sunar.
Temel akış:
- Orkestratör çağrısını
xhigheforunda çalıştırın. - Görevi alt parçalara ayırmasını isteyin.
- Konuşma ortası sistem mesajı ile işçi başlatma izni verin.
- Her alt görev için ayrı işçi çağrısı oluşturun.
- İşçi sonuçlarını toplayın.
- Sonuçları birleştirmesi için orkestratöre geri verin.
Basit orkestratör çağrısı:
import anthropic
client = anthropic.Anthropic()
orchestrator = client.messages.create(
model="claude-opus-4-8",
max_tokens=64000,
output_config={"effort": "xhigh"},
thinking={"type": "adaptive"},
messages=[
{
"role": "user",
"content": "Plan a refactor of the auth module across all 14 services."
},
],
)
print(orchestrator.content)
Orkestratörden beklenen çıktı, doğrudan kod değişikliği değil; uygulanabilir bir görev dökümü olmalıdır.
Örnek beklenen yapı:
{
"tasks": [
{
"id": "service-auth-api",
"scope": "services/auth-api",
"goal": "Update token validation flow",
"risk": "High"
},
{
"id": "service-billing",
"scope": "services/billing",
"goal": "Replace legacy auth middleware usage",
"risk": "Medium"
}
]
}
Daha sonra her görev için ayrı işçi çağrısı çalıştırabilirsiniz.
worker = client.messages.create(
model="claude-opus-4-8",
max_tokens=12000,
output_config={"effort": "medium"},
messages=[
{
"role": "user",
"content": """
You are assigned one refactor task.
Task:
- Scope: services/auth-api
- Goal: Update token validation flow
- Output: changed files, risks, tests to run
"""
}
],
)
print(worker.content)
İşçi görevleri dar kapsamlı olduğu için genellikle medium veya low efor yeterlidir. Orkestratör xhigh kullanırken her işçiyi xhigh çalıştırmak çoğu durumda gereksiz maliyet doğurur.
Anthropic’in barındırılan ajan altyapısını değerlendiriyorsanız, yönetilen ajanlar ve Ajan SDK’sı kılavuzu ilgili takasları açıklar.
Basit Paralel İşçi Deseni
Python tarafında işçi çağrılarını paralel çalıştırmak için asyncio kullanabilirsiniz.
import asyncio
import anthropic
client = anthropic.AsyncAnthropic()
tasks = [
{
"id": "auth-api",
"scope": "services/auth-api",
"goal": "Update token validation"
},
{
"id": "billing",
"scope": "services/billing",
"goal": "Replace legacy auth middleware"
},
]
async def run_worker(task):
response = await client.messages.create(
model="claude-opus-4-8",
max_tokens=12000,
output_config={"effort": "medium"},
messages=[
{
"role": "user",
"content": f"""
Analyze and implement the assigned task.
Task ID: {task["id"]}
Scope: {task["scope"]}
Goal: {task["goal"]}
Return:
1. Summary
2. Files changed
3. Risks
4. Tests to run
"""
}
],
)
return {
"task_id": task["id"],
"result": response.content,
}
async def main():
results = await asyncio.gather(
*(run_worker(task) for task in tasks)
)
print(results)
asyncio.run(main())
Ardından sonuçları orkestratöre geri verip birleştirme adımı çalıştırabilirsiniz:
merge = client.messages.create(
model="claude-opus-4-8",
max_tokens=32000,
output_config={"effort": "high"},
messages=[
{
"role": "user",
"content": f"""
Merge these worker results into a single implementation plan.
Worker results:
{results}
Return:
- Final summary
- Conflicts
- Required manual review
- Test plan
"""
}
],
)
Bu desen, Claude Code’daki Dinamik İş Akışlarının API tarafındaki sadeleştirilmiş karşılığıdır.
Maliyet ve Kontrol
Paralel alt ajanlar token tüketimini hızlı artırır. xhigh seviyesinde yüzlerce işçi başlatmak milyonlarca token anlamına gelebilir.
Kontrol için üç pratik kural kullanın:
- İşçi kapsamını dar tutun. Her işçi yalnızca bir servis, modül veya dosya grubu üzerinde çalışsın.
-
İşçi eforunu düşürün. Orkestratör
xhigholabilir, ancak işçiler çoğu zamanmediumveyalowile çalışabilir. -
Her işçi için
max_tokenssınırı koyun. Kontrolden çıkan bir ajan bütçeyi tüketmesin. - Paylaşılan bağlamı önbelleğe alın. Aynı sistem istemini veya repo özetini her çağrıda tam maliyetle tekrar göndermeyin.
Örnek maliyet kontrol ayarı:
WORKER_MAX_TOKENS = 8000
WORKER_EFFORT = "medium"
MAX_PARALLEL_WORKERS = 10
Aynı anda 200 işçi başlatmak yerine, işleri gruplar halinde çalıştırmak daha güvenli olabilir:
asyncio.Semaphore(MAX_PARALLEL_WORKERS)
Opus 4.8 fiyatlandırma dökümü, efor seviyeleri ve önbelleğe alma maliyetlerini daha ayrıntılı açıklar.
Kısa özet: Orkestrasyon güçlüdür, ancak fatura ajan sayısıyla ölçeklenir. Paralelliği varsayılan değil, bilinçli bir seçim olarak kullanın.
Orkestrasyonunuzu Apidog ile Test Etme
API üzerinden orkestrasyon kurarken hata ayıklaması en zor bölüm dağıtım aşamasıdır:
- İşçiler doğru kapsamı alıyor mu?
- Yanıt formatları birleştirme adımıyla uyumlu mu?
- Konuşma ortası sistem mesajı doğru noktada iletiliyor mu?
- Hatalı bir işçi sonucu tüm akışı bozuyor mu?
Bu sorunları 200 canlı işçi çağrısından sonra fark etmek istemezsiniz.
Apidog, orkestrasyonun parçalarını ayrı ayrı test etmenize yardımcı olur:
- Orkestratör isteğini kaydedip görev dökümünü canlı çağrıdan önce inceleyebilirsiniz.
- İşçi uç noktasını mocklayarak yüzlerce gerçek çağrı yapmadan fan-out ve merge mantığını test edebilirsiniz.
- İşçi yanıt şekline assertion ekleyerek bozuk payload’ları erken yakalayabilirsiniz.
- Aynı işçi çağrısını farklı
effortseviyeleriyle tekrar oynatıp maliyet/kalite dengesini ölçebilirsiniz.
Test akışı:
-
https://api.anthropic.com/v1/messagesiçin orkestratör isteğini oluşturun. - Orkestratör çıktısını beklenen görev listesi formatına sabitleyin.
- İşçi endpoint’ini mocklayın.
- Merge adımını mock sonuçlarla test edin.
- Assertion’lar geçtikten sonra canlı işçi çağrılarına geçin.
Başlangıç isteği için Opus 4.8 API kılavuzu kullanılabilir.
SSS
Claude Code’da Dinamik İş Akışları nedir?
Tek bir Claude Code oturumunun büyük ve dallanan görevleri yürütmek için yüzlerce paralel alt ajan başlatmasını sağlayan özelliktir. Opus 4.8’de xhigh eforu ve konuşma ortası sistem mesajları ile desteklenir.
ultracode ayrı bir efor seviyesi mi?
Hayır. ultracode, Claude Code’un xhigh eforunu çok ajanlı iş akışı izniyle birleştirmek için kullandığı mod adıdır. API efor seviyeleri hâlâ low, medium, high, xhigh ve max şeklindedir.
Konuşma ortası sistem mesajları nedir?
Mesajlar API’sinde konuşmanın ortasına sistem mesajı eklemenizi sağlayan Opus 4.8 özelliğidir. Görev sırasında yeni talimatlar veya izinler enjekte etmek için kullanılır.
Claude Code olmadan Dinamik İş Akışı benzeri yapı kurabilir miyim?
Evet. Ham Mesajlar API’sinde xhigh eforu, konuşma ortası sistem mesajları ve paralel işçi çağrıları kullanarak aynı orkestrasyon desenini kurabilirsiniz.
Dinamik İş Akışları pahalı mı?
Olabilir. Yüzlerce xhigh alt ajanı milyonlarca token tüketebilir. İşçi kapsamını dar tutun, mümkün olduğunda efor seviyesini düşürün, max_tokens sınırı koyun ve paylaşılan bağlamı önbelleğe alın.
Ne zaman Dinamik İş Akışlarından kaçınmalıyım?
Dar, küçük veya tamamen sıralı görevlerde. Her adım bir önceki adıma bağlıysa paralel işçiler değer katmaz ve gereksiz token maliyeti oluşturur.


Top comments (0)