Çok Ajanlı Sandbox ve Araç Yapılandırması
Çok ajanlı bir kurulumdaki her ajan, genel sandbox ve araç ilkesini geçersiz kılabilir. Bu sayfa, ajan başına yapılandırmayı, öncelik kurallarını ve örnekleri kapsar.- Sandbox arka uçları ve modları: bkz. Sandboxing.
- Engellenen araçlarda hata ayıklama: bkz. Sandbox vs Tool Policy vs Elevated ve
openclaw sandbox explain. - Yükseltilmiş exec: bkz. Elevated Mode.
agentDir kimlik doğrulama deposundan okur:
~/.openclaw/agents/<agentId>/agent/auth-profiles.json.
Kimlik bilgileri ajanlar arasında paylaşılmaz. agentDir dizinini ajanlar arasında asla yeniden kullanmayın.
Kimlik bilgilerini paylaşmak istiyorsanız, auth-profiles.json dosyasını diğer ajanın agentDir dizinine kopyalayın.
Yapılandırma Örnekleri
Örnek 1: Kişisel + Kısıtlanmış Aile Ajanı
mainajanı: Ana makinede çalışır, tam araç erişimi vardırfamilyajanı: Docker içinde çalışır (ajan başına bir kapsayıcı), yalnızcareadaracı vardır
Örnek 2: Paylaşılan Sandbox ile İş Ajanı
Örnek 2b: Genel kodlama profili + yalnızca mesajlaşma ajanı
- varsayılan ajanlar kodlama araçlarını alır
supportajanı yalnızca mesajlaşma içindir (+ Slack aracı)
Örnek 3: Ajan Başına Farklı Sandbox Modları
Yapılandırma Önceliği
Hem genel (agents.defaults.*) hem de ajana özgü (agents.list[].*) yapılandırmalar mevcut olduğunda:
Sandbox Yapılandırması
Ajana özgü ayarlar genelin önüne geçer:agents.list[].sandbox.{docker,browser,prune}.*, o ajan içinagents.defaults.sandbox.{docker,browser,prune}.*değerlerini geçersiz kılar (sandbox kapsamı"shared"olarak çözülürse yok sayılır).
Araç Kısıtlamaları
Filtreleme sırası şöyledir:- Araç profili (
tools.profileveyaagents.list[].tools.profile) - Sağlayıcı araç profili (
tools.byProvider[provider].profileveyaagents.list[].tools.byProvider[provider].profile) - Genel araç ilkesi (
tools.allow/tools.deny) - Sağlayıcı araç ilkesi (
tools.byProvider[provider].allow/deny) - Ajana özgü araç ilkesi (
agents.list[].tools.allow/deny) - Ajan sağlayıcı ilkesi (
agents.list[].tools.byProvider[provider].allow/deny) - Sandbox araç ilkesi (
tools.sandbox.toolsveyaagents.list[].tools.sandbox.tools) - Alt ajan araç ilkesi (
tools.subagents.tools, uygunsa)
agents.list[].tools.sandbox.tools ayarlanmışsa, o ajan için tools.sandbox.tools değerinin yerini alır.
agents.list[].tools.profile ayarlanmışsa, o ajan için tools.profile değerini geçersiz kılar.
Sağlayıcı araç anahtarları provider (ör. google-antigravity) veya provider/model (ör. openai/gpt-5.4) biçimlerinden birini kabul eder.
Araç ilkeleri, birden fazla araca genişleyen group:* kısayollarını destekler. Tam liste için Tool groups bölümüne bakın.
Ajan başına yükseltilmiş geçersiz kılmalar (agents.list[].tools.elevated), belirli ajanlar için yükseltilmiş exec’i daha da kısıtlayabilir. Ayrıntılar için Elevated Mode bölümüne bakın.
Tek Ajanlı Yapılandırmadan Geçiş
Önce (tek ajan):agent.* yapılandırmaları openclaw doctor tarafından taşınır; bundan sonra agents.defaults + agents.list kullanılması tercih edilir.
Araç Kısıtlama Örnekleri
Salt Okunur Ajan
Güvenli Yürütme Ajanı (dosya değişikliği yok)
Yalnızca İletişim Ajanı
sessions_history, ham bir döküm yerine yine sınırlı ve temizlenmiş bir geri çağırma
görünümü döndürür. Asistan geri çağırması, düşünme etiketlerini,
<relevant-memories> iskeletini, düz metin araç çağrısı XML yüklerini
( <tool_call>...</tool_call>,
<function_call>...</function_call>, <tool_calls>...</tool_calls>,
<function_calls>...</function_calls> ve kısaltılmış araç çağrısı blokları dahil),
düşürülmüş araç çağrısı iskeletini, sızmış ASCII/tam genişlikli model kontrol
belirteçlerini ve bozuk MiniMax araç çağrısı XML’ini sansürleme/kısaltma öncesinde ayıklar.
Yaygın Tuzak: “non-main”
agents.defaults.sandbox.mode: "non-main" değeri, ajan kimliğine değil,
session.mainKey değerine (varsayılan "main") dayanır. Grup/kanal oturumları her zaman
kendi anahtarlarını alır, bu nedenle main olmayan olarak değerlendirilir ve sandbox içine alınır.
Bir ajanın asla sandbox kullanmamasını istiyorsanız, agents.list[].sandbox.mode: "off" ayarlayın.
Test Etme
Çok ajanlı sandbox ve araçları yapılandırdıktan sonra:-
Ajan çözümlemesini kontrol edin:
-
Sandbox kapsayıcılarını doğrulayın:
-
Araç kısıtlamalarını test edin:
- Kısıtlı araçlar gerektiren bir mesaj gönderin
- Ajanın reddedilen araçları kullanamadığını doğrulayın
-
Günlükleri izleyin:
Sorun Giderme
mode: "all" olmasına rağmen ajan sandbox içine alınmıyor
- Bunu geçersiz kılan genel bir
agents.defaults.sandbox.modeolup olmadığını kontrol edin - Ajana özgü yapılandırma önceliklidir, bu yüzden
agents.list[].sandbox.mode: "all"ayarlayın
Reddetme listesine rağmen araçlar hâlâ kullanılabiliyor
- Araç filtreleme sırasını kontrol edin: genel → ajan → sandbox → alt ajan
- Her düzey yalnızca daha fazla kısıtlama getirebilir, geri veremez
- Günlüklerle doğrulayın:
[tools] filtering tools for agent:${agentId}
Kapsayıcı ajan başına izole edilmiyor
- Ajana özgü sandbox yapılandırmasında
scope: "agent"ayarlayın - Varsayılan
"session"değeridir ve oturum başına bir kapsayıcı oluşturur
Ayrıca bkz.
- Sandboxing — tam sandbox başvurusu (modlar, kapsamlar, arka uçlar, imajlar)
- Sandbox vs Tool Policy vs Elevated — “bu neden engelleniyor?” hata ayıklaması
- Elevated Mode
- Multi-Agent Routing
- Sandbox Configuration
- Session Management