Agent Client Protocol (ACP) oturumları, OpenClaw’ın harici kodlama harness’larını (örneğin Pi, Claude Code, Cursor, Copilot, Droid, OpenClaw ACP, OpenCode, Gemini CLI ve diğer desteklenen ACPX harness’ları) bir ACP arka uç Plugin’i üzerinden çalıştırmasını sağlar. Her ACP oturumu spawn’ı bir arka plan görevi olarak izlenir.Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
ACP, harici harness yoludur; varsayılan Codex yolu değildir. Yerel
Codex uygulama sunucusu Plugin’i, agent dönüşleri için
/codex ...
kontrollerinin ve varsayılan openai/gpt-* gömülü runtime’ının sahibidir;
ACP ise /acp ... kontrollerinin ve sessions_spawn({ runtime: "acp" })
oturumlarının sahibidir.Codex veya Claude Code’un, mevcut OpenClaw kanal konuşmalarına doğrudan
harici bir MCP istemcisi olarak bağlanmasını istiyorsanız ACP yerine
openclaw mcp serve kullanın.Hangi sayfayı istiyorum?
| Şunu yapmak istiyorsunuz… | Bunu kullanın | Notlar |
|---|---|---|
| Geçerli konuşmada Codex’i bağlamak veya kontrol etmek | /codex bind, /codex threads | codex Plugin’i etkin olduğunda yerel Codex uygulama sunucusu yolu; bağlı sohbet yanıtları, görüntü iletme, model/hızlı/izinler, durdurma ve yönlendirme kontrollerini içerir. ACP açık bir yedektir |
| Claude Code, Gemini CLI, açık Codex ACP veya başka bir harici harness’ı OpenClaw üzerinden çalıştırmak | Bu sayfa | Sohbete bağlı oturumlar, /acp spawn, sessions_spawn({ runtime: "acp" }), arka plan görevleri, runtime kontrolleri |
| Bir OpenClaw Gateway oturumunu bir düzenleyici veya istemci için ACP sunucusu olarak açmak | openclaw acp | Köprü modu. IDE/istemci, stdio/WebSocket üzerinden OpenClaw’a ACP konuşur |
| Yerel bir AI CLI’ını yalnızca metin tabanlı yedek model olarak yeniden kullanmak | CLI Arka Uçları | ACP değildir. OpenClaw araçları yok, ACP kontrolleri yok, harness runtime’ı yok |
Bu kutudan çıktığı gibi çalışır mı?
Evet, resmi ACP runtime Plugin’i yüklendikten sonra:pnpm install sonrasında yerel extensions/acpx
çalışma alanı Plugin’ini kullanabilir. Hazırlık denetimi için /acp doctor
çalıştırın.
OpenClaw, agent’lara ACP spawn işlemini yalnızca ACP gerçekten
kullanılabilir olduğunda öğretir: ACP etkin olmalı, dispatch devre dışı
olmamalı, geçerli oturum sandbox tarafından engellenmemiş olmalı ve bir
runtime arka ucu yüklenmiş olmalıdır. Bu koşullar karşılanmazsa ACP Plugin
Skills’leri ve sessions_spawn ACP kılavuzu gizli kalır; böylece agent
kullanılamayan bir arka uç önermez.
İlk çalıştırma sorunları
İlk çalıştırma sorunları
plugins.allowayarlanmışsa bu kısıtlayıcı bir Plugin envanteridir veacpxöğesini içermelidir; aksi halde yüklü ACP arka ucu kasıtlı olarak engellenir ve/acp doctoreksik allowlist girdisini bildirir.- Codex ACP adaptörü,
acpxPlugin’iyle hazırlanır ve mümkün olduğunda yerelde başlatılır. - Codex ACP yalıtılmış bir
CODEX_HOMEile çalışır; OpenClaw, ana makinedeki Codex config’inden yalnızca güvenilir proje girdilerini kopyalar ve etkin çalışma alanına güvenir; auth, bildirimler ve hook’lar ana makine config’inde kalır. - Diğer hedef harness adaptörleri, ilk kullanımınızda hâlâ
npxile isteğe bağlı olarak getirilebilir. - Vendor auth, o harness için ana makinede hâlâ mevcut olmalıdır.
- Ana makinede npm veya ağ erişimi yoksa ilk çalıştırma adaptör getirmeleri, önbellekler önceden ısıtılana veya adaptör başka bir yolla yüklenene kadar başarısız olur.
Runtime önkoşulları
Runtime önkoşulları
ACP gerçek bir harici harness süreci başlatır. OpenClaw yönlendirme,
arka plan görevi durumu, teslim, bağlamalar ve politikanın sahibidir;
harness ise kendi sağlayıcı oturum açma işleminin, model kataloğunun,
dosya sistemi davranışının ve yerel araçlarının sahibidir.OpenClaw’ı suçlamadan önce şunları doğrulayın:
/acp doctoretkin ve sağlıklı bir arka uç bildiriyor.- İlgili allowlist ayarlandığında hedef id,
acp.allowedAgentstarafından izinli. - Harness komutu Gateway ana makinesinde başlatılabiliyor.
- Sağlayıcı auth’u o harness için mevcut (
claude,codex,gemini,opencode,droidvb.). - Seçilen model o harness için mevcut - model id’leri harness’lar arasında taşınabilir değildir.
- İstenen
cwdmevcut ve erişilebilir ya dacwddeğerini atlayıp arka ucun varsayılanını kullanmasına izin verin. - İzin modu işle eşleşiyor. Etkileşimsiz oturumlar yerel izin istemlerine tıklayamaz; bu nedenle yazma/çalıştırma ağırlıklı kodlama çalışmaları genellikle başsız ilerleyebilen bir ACPX izin profiline ihtiyaç duyar.
Desteklenen harness hedefleri
acpx arka ucuyla, /acp spawn <id> veya
sessions_spawn({ runtime: "acp", agentId: "<id>" }) hedefleri olarak şu
harness id’lerini kullanın:
| Harness id | Tipik arka uç | Notlar |
|---|---|---|
claude | Claude Code ACP adaptörü | Ana makinede Claude Code auth gerektirir. |
codex | Codex ACP adaptörü | Yalnızca yerel /codex kullanılamadığında veya ACP istendiğinde açık ACP yedeği. |
copilot | GitHub Copilot ACP adaptörü | Copilot CLI/runtime auth gerektirir. |
cursor | Cursor CLI ACP (cursor-agent acp) | Yerel kurulum farklı bir ACP giriş noktası sunuyorsa acpx komutunu geçersiz kılın. |
droid | Factory Droid CLI | Harness ortamında Factory/Droid auth veya FACTORY_API_KEY gerektirir. |
gemini | Gemini CLI ACP adaptörü | Gemini CLI auth veya API key kurulumu gerektirir. |
iflow | iFlow CLI | Adaptör kullanılabilirliği ve model kontrolü yüklü CLI’a bağlıdır. |
kilocode | Kilo Code CLI | Adaptör kullanılabilirliği ve model kontrolü yüklü CLI’a bağlıdır. |
kimi | Kimi/Moonshot CLI | Ana makinede Kimi/Moonshot auth gerektirir. |
kiro | Kiro CLI | Adaptör kullanılabilirliği ve model kontrolü yüklü CLI’a bağlıdır. |
opencode | OpenCode ACP adaptörü | OpenCode CLI/sağlayıcı auth gerektirir. |
openclaw | openclaw acp üzerinden OpenClaw Gateway köprüsü | ACP farkındalığı olan bir harness’ın bir OpenClaw Gateway oturumuna geri konuşmasını sağlar. |
pi | Pi/gömülü OpenClaw runtime’ı | OpenClaw yerel harness deneyleri için kullanılır. |
qwen | Qwen Code / Qwen CLI | Ana makinede Qwen uyumlu auth gerektirir. |
acp.allowedAgents ve varsa
agents.list[].runtime.acp.agent eşlemesini denetler.
Operatör runbook’u
Sohbetten hızlı/acp akışı:
Spawn
/acp spawn claude --bind here,
/acp spawn gemini --mode persistent --thread auto veya açık
/acp spawn codex --bind here.Yaşam döngüsü ayrıntıları
Yaşam döngüsü ayrıntıları
- Spawn, bir ACP runtime oturumu oluşturur veya sürdürür, ACP meta verilerini OpenClaw oturum deposuna kaydeder ve çalışma üst öğeye ait olduğunda bir arka plan görevi oluşturabilir.
- Üst öğeye ait ACP oturumları, runtime oturumu kalıcı olsa bile arka plan işi olarak değerlendirilir; tamamlama ve yüzeyler arası teslim, normal kullanıcıya dönük sohbet oturumu gibi davranmak yerine üst görev bildiricisi üzerinden gider.
- Görev bakımı, terminal veya yetim kalmış üst öğeye ait tek seferlik ACP oturumlarını kapatır. Kalıcı ACP oturumları etkin bir konuşma bağlaması kaldığı sürece korunur; etkin bağlaması olmayan eski kalıcı oturumlar, sahip olan görev tamamlandıktan veya görev kaydı kaybolduktan sonra sessizce sürdürülememeleri için kapatılır.
- Bağlı takip mesajları, bağlama kapatılana, odaktan çıkarılana, sıfırlanana veya süresi dolana kadar doğrudan ACP oturumuna gider.
- Gateway komutları yerel kalır.
/acp ...,/statusve/unfocusbağlı bir ACP harness’ına asla normal prompt metni olarak gönderilmez. cancel, arka uç iptali desteklediğinde etkin dönüşü iptal eder; bağlamayı veya oturum meta verilerini silmez.close, OpenClaw açısından ACP oturumunu sonlandırır ve bağlamayı kaldırır. Bir harness, sürdürmeyi destekliyorsa kendi upstream geçmişini yine de tutabilir.- acpx Plugin’i,
closesonrasında OpenClaw’a ait wrapper ve adaptör süreç ağaçlarını temizler ve Gateway başlatılırken eski OpenClaw’a ait ACPX yetimlerini toplar. - Boştaki runtime worker’ları
acp.runtime.ttlMinutessonrasında temizleme için uygundur; depolanan oturum meta verileri/acp sessionsiçin kullanılabilir kalır.
Yerel Codex yönlendirme kuralları
Yerel Codex yönlendirme kuralları
Etkin olduğunda yerel Codex Plugin’ine yönlendirilmesi gereken
doğal dil tetikleyicileri:
- “Bu Discord kanalını Codex’e bağla.”
- “Bu sohbeti Codex thread’i
<id>öğesine ekle.” - “Codex thread’lerini göster, sonra bunu bağla.”
before_tool_call aşamasında engelleyebilir, after_tool_call
aşamasını gözlemleyebilir ve Codex PermissionRequest olaylarını
OpenClaw onayları üzerinden yönlendirebilir. Codex Stop kancaları,
OpenClaw before_agent_finalize aşamasına aktarılır; burada Plugin’ler,
Codex yanıtını sonlandırmadan önce bir model geçişi daha isteyebilir.
Aktarıcı bilinçli olarak muhafazakar kalır: Codex’e özgü yerel araç
bağımsız değişkenlerini değiştirmez veya Codex iş parçacığı kayıtlarını
yeniden yazmaz. Açık ACP’yi yalnızca ACP çalışma zamanı/oturum modelini
istediğinizde kullanın. Gömülü Codex destek sınırı
Codex harness v1 destek sözleşmesi
içinde belgelenmiştir.Model / sağlayıcı / çalışma zamanı seçimi özet tablosu
Model / sağlayıcı / çalışma zamanı seçimi özet tablosu
openai-codex/*- doctor tarafından onarılan eski Codex OAuth/abonelik modeli yolu.openai/*- OpenAI ajan turları için yerel Codex app-server gömülü çalışma zamanı./codex ...- yerel Codex konuşma denetimi./acp ...veyaruntime: "acp"- açık ACP/acpx denetimi.
ACP yönlendirmesi doğal dil tetikleyicileri
ACP yönlendirmesi doğal dil tetikleyicileri
ACP çalışma zamanına yönlendirilmesi gereken tetikleyiciler:
- “Bunu tek seferlik bir Claude Code ACP oturumu olarak çalıştır ve sonucu özetle.”
- “Bu görev için Gemini CLI’ı bir iş parçacığında kullan, ardından takipleri aynı iş parçacığında tut.”
- “Codex’i ACP üzerinden bir arka plan iş parçacığında çalıştır.”
runtime: "acp" değerini seçer, harness agentId
değerini çözümler, desteklendiğinde geçerli konuşmaya veya iş
parçacığına bağlanır ve takipleri kapanış/süre dolumuna kadar o
oturuma yönlendirir. Codex bu yolu yalnızca ACP/acpx açık olduğunda
veya istenen işlem için yerel Codex Plugin’i kullanılamadığında izler.sessions_spawn için runtime: "acp" yalnızca ACP etkinse,
istekte bulunan korumalı alanda değilse ve bir ACP çalışma zamanı
arka ucu yüklüyse duyurulur. acp.dispatch.enabled=false otomatik
ACP iş parçacığı dağıtımını duraklatır ancak açık
sessions_spawn({ runtime: "acp" }) çağrılarını gizlemez veya engellemez. codex,
claude, droid, gemini ya da opencode gibi ACP harness kimliklerini hedefler. Bu giriş
açıkça agents.list[].runtime.type="acp" ile yapılandırılmadıkça
agents_list içinden normal bir OpenClaw yapılandırma ajan kimliği
geçirmeyin; aksi halde varsayılan alt ajan çalışma zamanını kullanın.
Bir OpenClaw ajanı runtime.type="acp" ile yapılandırıldığında,
OpenClaw alttaki harness kimliği olarak runtime.acp.agent değerini
kullanır.ACP ve alt ajanlar
Harici bir harness çalışma zamanı istediğinizde ACP kullanın.codex
Plugin’i etkin olduğunda Codex konuşma bağlaması/denetimi için yerel Codex
app-server kullanın. OpenClaw’a özgü yerel devredilmiş çalıştırmalar
istediğinizde alt ajanlar kullanın.
| Alan | ACP oturumu | Alt ajan çalıştırması |
|---|---|---|
| Çalışma zamanı | ACP arka uç Plugin’i (örneğin acpx) | OpenClaw yerel alt ajan çalışma zamanı |
| Oturum anahtarı | agent:<agentId>:acp:<uuid> | agent:<agentId>:subagent:<uuid> |
| Ana komutlar | /acp ... | /subagents ... |
| Oluşturma aracı | sessions_spawn ile runtime:"acp" | sessions_spawn (varsayılan çalışma zamanı) |
ACP Claude Code’u nasıl çalıştırır
ACP üzerinden Claude Code için yığın şöyledir:- OpenClaw ACP oturum denetim düzlemi.
- Resmi
@openclaw/acpxçalışma zamanı Plugin’i. - Claude ACP bağdaştırıcısı.
- Claude tarafı çalışma zamanı/oturum mekanizması.
/acp spawn, bağlanabilir oturumlar, çalışma zamanı denetimleri veya kalıcı harness işi mi istiyorsunuz? ACP kullanın.- Ham CLI üzerinden basit yerel metin yedeği mi istiyorsunuz? CLI arka uçlarını kullanın.
Bağlı oturumlar
Zihinsel model
- Sohbet yüzeyi - insanların konuşmayı sürdürdüğü yer (Discord kanalı, Telegram konusu, iMessage sohbeti).
- ACP oturumu - OpenClaw’ın yönlendirdiği kalıcı Codex/Claude/Gemini çalışma zamanı durumu.
- Alt iş parçacığı/konu - yalnızca
--thread ...tarafından oluşturulan isteğe bağlı ek mesajlaşma yüzeyi. - Çalışma zamanı çalışma alanı - harness’in çalıştığı dosya sistemi konumu (
cwd, repo checkout, arka uç çalışma alanı). Sohbet yüzeyinden bağımsızdır.
Geçerli konuşma bağlamaları
/acp spawn <harness> --bind here, geçerli konuşmayı oluşturulan ACP
oturumuna sabitler - alt iş parçacığı yoktur, aynı sohbet yüzeyi kullanılır.
OpenClaw taşıma, kimlik doğrulama, güvenlik ve teslimi yönetmeye devam eder.
Bu konuşmadaki takip mesajları aynı oturuma yönlendirilir; /new ve
/reset oturumu yerinde sıfırlar; /acp close bağlamayı kaldırır.
Örnekler:
Bağlama kuralları ve münhasırlık
Bağlama kuralları ve münhasırlık
--bind hereve--thread ...karşılıklı olarak birbirini dışlar.--bind hereyalnızca geçerli konuşma bağlamasını duyuran kanallarda çalışır; aksi halde OpenClaw açık bir desteklenmiyor mesajı döndürür. Bağlamalar Gateway yeniden başlatmalarında korunur.- Discord’da
spawnSessions,--thread auto|hereiçin alt iş parçacığı oluşturmayı denetler ---bind hereiçin değil. --cwdolmadan farklı bir ACP ajanına oluşturma yaparsanız, OpenClaw varsayılan olarak hedef ajanın çalışma alanını devralır. Eksik devralınan yollar (ENOENT/ENOTDIR) arka uç varsayılanına geri döner; diğer erişim hataları (örn.EACCES) oluşturma hataları olarak gösterilir.- Gateway yönetim komutları bağlı konuşmalarda yerel kalır - normal takip metni bağlı ACP oturumuna yönlendirilse bile
/acp ...komutları OpenClaw tarafından işlenir;/statusve/unfocusda o yüzey için komut işleme etkin olduğunda yerel kalır.
İş parçacığına bağlı oturumlar
İş parçacığına bağlı oturumlar
Bir kanal bağdaştırıcısı için iş parçacığı bağlamaları etkin olduğunda:
- OpenClaw bir iş parçacığını hedef ACP oturumuna bağlar.
- Bu iş parçacığındaki takip mesajları bağlı ACP oturumuna yönlendirilir.
- ACP çıktısı aynı iş parçacığına geri teslim edilir.
- Odaktan çıkarma/kapatma/arşivleme/boşta kalma zaman aşımı veya azami yaş süresi dolumu bağlamayı kaldırır.
/acp close,/acp cancel,/acp status,/statusve/unfocusGateway komutlarıdır, ACP harness’ine gönderilen istemler değildir.
acp.enabled=trueacp.dispatch.enabledvarsayılan olarak açıktır (otomatik ACP iş parçacığı dağıtımını duraklatmak içinfalseolarak ayarlayın; açıksessions_spawn({ runtime: "acp" })çağrıları çalışmaya devam eder).- Kanal bağdaştırıcısı iş parçacığı oturum oluşturma etkin (varsayılan:
true):- Discord:
channels.discord.threadBindings.spawnSessions=true - Telegram:
channels.telegram.threadBindings.spawnSessions=true
- Discord:
İş parçacığını destekleyen kanallar
İş parçacığını destekleyen kanallar
- Oturum/iş parçacığı bağlama yeteneği sunan herhangi bir kanal bağdaştırıcısı.
- Geçerli yerleşik destek: Discord iş parçacıkları/kanalları, Telegram konuları (gruplarda/süper gruplarda forum konuları ve DM konuları).
- Plugin kanalları aynı bağlama arayüzü üzerinden destek ekleyebilir.
Kalıcı kanal bağlamaları
Geçici olmayan iş akışları için kalıcı ACP bağlamalarını üst düzeybindings[] girişlerinde yapılandırın.
Bağlama modeli
Kalıcı bir ACP konuşma bağlamasını işaretler.
Hedef konuşmayı tanımlar. Kanal başına biçimler:
- Discord kanalı/iş parçacığı:
match.channel="discord"+match.peer.id="<channelOrThreadId>" - Slack kanalı/DM:
match.channel="slack"+match.peer.id="<channelId|channel:<channelId>|#<channelId>|userId|user:<userId>|slack:<userId>|<@userId>>". Kararlı Slack kimliklerini tercih edin; kanal bağlamaları o kanalın iş parçacıkları içindeki yanıtlarla da eşleşir. - Telegram forum konusu:
match.channel="telegram"+match.peer.id="<chatId>:topic:<topicId>" - iMessage DM/grup:
match.channel="imessage"+match.peer.id="<handle|chat_id:*|chat_guid:*|chat_identifier:*>". Kararlı grup bağlamaları içinchat_id:*tercih edin.
Sahip OpenClaw ajan kimliği.
İsteğe bağlı ACP geçersiz kılması.
İsteğe bağlı operatöre dönük etiket.
İsteğe bağlı çalışma zamanı çalışma dizini.
İsteğe bağlı arka uç geçersiz kılması.
Ajan başına çalışma zamanı varsayılanları
ACP varsayılanlarını ajan başına bir kez tanımlamak içinagents.list[].runtime kullanın:
agents.list[].runtime.type="acp"agents.list[].runtime.acp.agent(harness kimliği, örn.codexveyaclaude)agents.list[].runtime.acp.backendagents.list[].runtime.acp.modeagents.list[].runtime.acp.cwd
bindings[].acp.*agents.list[].runtime.acp.*- Genel ACP varsayılanları (örn.
acp.backend)
Örnek
Davranış
- OpenClaw, yapılandırılmış ACP oturumunun kullanılmadan önce var olduğundan emin olur.
- Bu kanaldaki veya konudaki mesajlar, yapılandırılmış ACP oturumuna yönlendirilir.
- Bağlı konuşmalarda
/newve/reset, aynı ACP oturum anahtarını yerinde sıfırlar. - Geçici çalışma zamanı bağlamaları (örneğin iş parçacığı odağı akışları tarafından oluşturulanlar), mevcut oldukları yerde uygulanmaya devam eder.
- Açık bir
cwdolmadan ajanlar arası ACP başlatmalarında OpenClaw, hedef ajan çalışma alanını ajan yapılandırmasından devralır. - Eksik devralınan çalışma alanı yolları arka uç varsayılan cwd değerine geri döner; eksik olmayan erişim hataları başlatma hataları olarak gösterilir.
ACP oturumlarını başlatma
Bir ACP oturumu başlatmanın iki yolu vardır:- sessions_spawn üzerinden
- /acp komutundan
Bir ajan dönüşünden veya araç çağrısından ACP oturumu başlatmak için
runtime: "acp"
kullanın.runtime varsayılan olarak subagent olur; bu yüzden ACP oturumları için
açıkça runtime: "acp" ayarlayın. agentId atlanırsa, yapılandırıldığında
OpenClaw acp.defaultAgent kullanır. mode: "session", kalıcı bir bağlı
konuşma tutmak için thread: true gerektirir.sessions_spawn parametreleri
ACP oturumuna gönderilen ilk istem.
ACP oturumları için
"acp" olmalıdır.ACP hedef harness kimliği. Ayarlıysa
acp.defaultAgent değerine geri döner.Desteklendiği yerlerde iş parçacığı bağlama akışı ister.
"run" tek seferliktir; "session" kalıcıdır. thread: true ise ve
mode atlanmışsa, OpenClaw çalışma zamanı yoluna göre kalıcı davranışı
varsayılan olarak kullanabilir. mode: "session" thread: true gerektirir.İstenen çalışma zamanı çalışma dizini (arka uç/çalışma zamanı
ilkesi tarafından doğrulanır). Atlanırsa, ACP başlatma yapılandırıldığında
hedef ajan çalışma alanını devralır; eksik devralınan yollar arka uç
varsayılanlarına geri dönerken gerçek erişim hataları döndürülür.
Oturum/banner metninde kullanılan operatöre dönük etiket.
Yeni bir oturum oluşturmak yerine mevcut bir ACP oturumunu sürdürür. Ajan,
konuşma geçmişini
session/load aracılığıyla yeniden oynatır. runtime: "acp"
gerektirir."parent", ilk ACP çalıştırma ilerleme özetlerini sistem olayları olarak
istekte bulunan oturuma geri akıtır. Kabul edilen yanıtlar, tam aktarma
geçmişi için tail ile izleyebileceğiniz oturum kapsamlı bir JSONL günlüğüne
(<sessionId>.acp-stream.jsonl) işaret eden streamLogPath içerir.ACP alt dönüşünü N saniye sonra sonlandırır.
0, dönüşü Gateway’in
zaman aşımı olmayan yolunda tutar. Aynı değer Gateway çalıştırmasına
ve ACP çalışma zamanına uygulanır; böylece takılan/kota tükenmiş harness’lar
üst ajan hattını süresiz olarak meşgul etmez.ACP alt oturumu için açık model geçersiz kılması. Codex ACP başlatmaları,
openai-codex/gpt-5.4 gibi OpenClaw Codex başvurularını session/new
öncesinde Codex ACP başlangıç yapılandırmasına normalleştirir; openai-codex/gpt-5.4/high
gibi eğik çizgi biçimleri ayrıca Codex ACP akıl yürütme çabasını ayarlar.
Diğer harness’lar ACP models bildirmeli ve session/set_model
desteklemelidir; aksi halde OpenClaw/acpx hedef ajan varsayılanına sessizce
geri dönmek yerine açıkça başarısız olur.Açık düşünme/akıl yürütme çabası. Codex ACP için
minimal düşük çabaya
eşlenir, low/medium/high/xhigh doğrudan eşlenir ve off
akıl yürütme çabası başlangıç geçersiz kılmasını atlar.Başlatma bağlama ve iş parçacığı modları
- --bind here|off
- --thread auto|here|off
| Mod | Davranış |
|---|---|
here | Geçerli etkin konuşmayı yerinde bağlar; etkin konuşma yoksa başarısız olur. |
off | Geçerli konuşma bağlaması oluşturmaz. |
--bind here, “bu kanalı veya sohbeti Codex destekli yap” için en basit operatör yoludur.--bind herealt iş parçacığı oluşturmaz.--bind hereyalnızca geçerli konuşma bağlama desteğini sunan kanallarda kullanılabilir.--bindve--threadaynı/acp spawnçağrısında birleştirilemez.
Teslim modeli
ACP oturumları etkileşimli çalışma alanları veya üst öğenin sahip olduğu arka plan işleri olabilir. Teslim yolu bu yapıya bağlıdır.Etkileşimli ACP oturumları
Etkileşimli ACP oturumları
Etkileşimli oturumlar görünür bir sohbet yüzeyinde konuşmayı sürdürmek
için tasarlanmıştır:
/acp spawn ... --bind heregeçerli konuşmayı ACP oturumuna bağlar./acp spawn ... --thread ...bir kanal iş parçacığını/konusunu ACP oturumuna bağlar.- Kalıcı yapılandırılmış
bindings[].type="acp", eşleşen konuşmaları aynı ACP oturumuna yönlendirir.
- Normal bağlı takipler, yalnızca harness/arka uç desteklediğinde eklerle birlikte istem metni olarak gönderilir.
/acpyönetim komutları ve yerel Gateway komutları ACP gönderiminden önce yakalanır.- Çalışma zamanı tarafından oluşturulan tamamlama olayları hedefe göre somutlaştırılır. OpenClaw ajanları OpenClaw’un dahili çalışma zamanı bağlamı zarfını alır; harici ACP harness’ları alt sonuç ve talimat içeren düz bir istem alır. Ham
<<<BEGIN_OPENCLAW_INTERNAL_CONTEXT>>>zarfı hiçbir zaman harici harness’lara gönderilmemeli veya ACP kullanıcı döküm metni olarak kalıcı hale getirilmemelidir. - ACP döküm girdileri kullanıcıya görünür tetikleyici metni veya düz tamamlama istemini kullanır. Dahili olay meta verileri mümkün olduğunda OpenClaw içinde yapılandırılmış kalır ve kullanıcı tarafından yazılmış sohbet içeriği olarak değerlendirilmez.
Üst öğenin sahip olduğu tek seferlik ACP oturumları
Üst öğenin sahip olduğu tek seferlik ACP oturumları
Başka bir ajan çalıştırması tarafından başlatılan tek seferlik ACP oturumları,
alt ajanlara benzer arka plan alt öğeleridir:
- Üst öğe
sessions_spawn({ runtime: "acp", mode: "run" })ile iş ister. - Alt öğe kendi ACP harness oturumunda çalışır.
- Alt dönüşler yerel alt ajan başlatmaları tarafından kullanılan aynı arka plan hattında çalışır; bu nedenle yavaş bir ACP harness’ı ilgisiz ana oturum işini engellemez.
- Tamamlama, görev tamamlama duyuru yolu üzerinden geri raporlanır. OpenClaw, harici bir harness’a göndermeden önce dahili tamamlama meta verilerini düz bir ACP istemine dönüştürür; böylece harness’lar yalnızca OpenClaw’a özgü çalışma zamanı bağlamı işaretçilerini görmez.
- Kullanıcıya dönük bir yanıt yararlı olduğunda üst öğe alt sonucu normal asistan sesiyle yeniden yazar.
sessions_send ve A2A teslimi
sessions_send ve A2A teslimi
sessions_send, başlatmadan sonra başka bir oturumu hedefleyebilir. Normal
eş oturumları için OpenClaw, mesajı enjekte ettikten sonra ajandan ajana
(A2A) takip yolu kullanır:- Hedef oturumun yanıtını bekler.
- İsteğe bağlı olarak istekte bulunanın ve hedefin sınırlı sayıda takip dönüşü alışverişi yapmasına izin verir.
- Hedeften bir duyuru mesajı üretmesini ister.
- Bu duyuruyu görünür kanala veya iş parçacığına teslim eder.
tools.sessions.visibility
ayarları altında, etkin kalır.OpenClaw yalnızca istekte bulunan, kendi üst öğesinin sahip olduğu tek
seferlik ACP alt öğesinin üst öğesiyse A2A takibini atlar. Bu durumda,
görev tamamlamanın üstünde A2A çalıştırmak üst öğeyi alt öğenin sonucuyla
uyandırabilir, üst öğenin yanıtını tekrar alt öğeye iletebilir ve bir
üst/alt yankı döngüsü oluşturabilir. Tamamlama yolu sonuçtan zaten sorumlu
olduğu için sessions_send sonucu bu sahip olunan alt öğe durumu için
delivery.status="skipped" bildirir.Mevcut bir oturumu sürdürme
Mevcut bir oturumu sürdürme
Baştan başlamak yerine önceki bir ACP oturumuna devam etmek için
Yaygın kullanım durumları:
resumeSessionId kullanın. Ajan, konuşma geçmişini session/load
aracılığıyla yeniden oynatır; böylece önceki bağlamın tamamıyla kaldığı
yerden devam eder.- Bir Codex oturumunu dizüstü bilgisayarınızdan telefonunuza devredin; ajanınıza kaldığınız yerden devam etmesini söyleyin.
- CLI içinde etkileşimli olarak başlattığınız bir kodlama oturumuna şimdi ajanınız üzerinden başsız olarak devam edin.
- Gateway yeniden başlatması veya boşta kalma zaman aşımı nedeniyle kesintiye uğrayan işi sürdürün.
resumeSessionIdyalnızcaruntime: "acp"olduğunda geçerlidir; varsayılan alt ajan çalışma zamanı bu yalnızca ACP alanını yok sayar.streamToyalnızcaruntime: "acp"olduğunda geçerlidir; varsayılan alt ajan çalışma zamanı bu yalnızca ACP alanını yok sayar.resumeSessionId, OpenClaw kanal oturum anahtarı değil, ana makineye yerel bir ACP/harness sürdürme kimliğidir; ACP arka ucu veya harness bu upstream kimliği yükleme yetkilendirmesinin sahibiyken OpenClaw gönderimden önce ACP başlatma ilkesini ve hedef ajan ilkesini yine de denetler.resumeSessionIdupstream ACP konuşma geçmişini geri yükler;threadvemode, oluşturduğunuz yeni OpenClaw oturumuna normal şekilde uygulanmaya devam eder; bu yüzdenmode: "session"yinethread: truegerektirir.- Hedef ajan
session/loaddesteklemelidir (Codex ve Claude Code destekler). - Oturum kimliği bulunamazsa başlatma açık bir hatayla başarısız olur; yeni bir oturuma sessiz geri dönüş yoktur.
Dağıtım sonrası smoke testi
Dağıtım sonrası smoke testi
Bir Gateway dağıtımından sonra, birim testlerine güvenmek yerine canlı
uçtan uca denetim çalıştırın:
- Hedef ana makinede dağıtılmış Gateway sürümünü ve commit’i doğrulayın.
- Canlı bir agente geçici bir ACPX köprü oturumu açın.
- Bu agentten
runtime: "acp",agentId: "codex",mode: "run"veReply with exactly LIVE-ACP-SPAWN-OKgöreviylesessions_spawnçağırmasını isteyin. accepted=yes, gerçek birchildSessionKeyve doğrulayıcı hatası olmadığını doğrulayın.- Geçici köprü oturumunu temizleyin.
mode: "run" üzerinde tutun ve streamTo: "parent" değerini atlayın -
iş parçacığına bağlı mode: "session" ve akış aktarma yolları ayrı
daha zengin entegrasyon geçişleridir.Korumalı alan uyumluluğu
ACP oturumları şu anda OpenClaw korumalı alanının içinde değil, ana makine çalışma zamanında çalışır. Geçerli sınırlamalar:- İstekte bulunan oturum korumalı alandaysa ACP başlatmaları hem
sessions_spawn({ runtime: "acp" })hem de/acp spawniçin engellenir. runtime: "acp"ilesessions_spawn,sandbox: "require"desteği sunmaz.
Oturum hedefi çözümleme
Çoğu/acp eylemi isteğe bağlı bir oturum hedefi (session-key,
session-id veya session-label) kabul eder.
Çözümleme sırası:
- Açık hedef argümanı (veya
/acp steeriçin--session)- anahtarı dener
- ardından UUID biçimli oturum kimliğini dener
- ardından etiketi dener
- Geçerli iş parçacığı bağlaması (bu konuşma/iş parçacığı bir ACP oturumuna bağlıysa).
- Geçerli istek sahibi oturumu yedeği.
Unable to resolve session target: ...).
ACP denetimleri
| Komut | Ne yapar | Örnek |
|---|---|---|
/acp spawn | ACP oturumu oluşturur; isteğe bağlı geçerli bağlama veya iş parçacığı bağlaması. | /acp spawn codex --bind here --cwd /repo |
/acp cancel | Hedef oturum için devam eden turu iptal eder. | /acp cancel agent:codex:acp:<uuid> |
/acp steer | Çalışan oturuma yönlendirme talimatı gönderir. | /acp steer --session support inbox prioritize failing tests |
/acp close | Oturumu kapatır ve iş parçacığı hedeflerinin bağını kaldırır. | /acp close |
/acp status | Arka ucu, modu, durumu, çalışma zamanı seçeneklerini ve yetenekleri gösterir. | /acp status |
/acp set-mode | Hedef oturum için çalışma zamanı modunu ayarlar. | /acp set-mode plan |
/acp set | Genel çalışma zamanı yapılandırma seçeneği yazımı. | /acp set model openai/gpt-5.4 |
/acp cwd | Çalışma zamanı çalışma dizini geçersiz kılmasını ayarlar. | /acp cwd /Users/user/Projects/repo |
/acp permissions | Onay politikası profilini ayarlar. | /acp permissions strict |
/acp timeout | Çalışma zamanı zaman aşımını ayarlar (saniye). | /acp timeout 120 |
/acp model | Çalışma zamanı model geçersiz kılmasını ayarlar. | /acp model anthropic/claude-opus-4-6 |
/acp reset-options | Oturum çalışma zamanı seçeneği geçersiz kılmalarını kaldırır. | /acp reset-options |
/acp sessions | Depodan son ACP oturumlarını listeler. | /acp sessions |
/acp doctor | Arka uç sağlığı, yetenekler, uygulanabilir düzeltmeler. | /acp doctor |
/acp install | Belirleyici kurulum ve etkinleştirme adımlarını yazdırır. | /acp install |
/acp status, etkili çalışma zamanı seçeneklerini ve çalışma zamanı düzeyi ile
arka uç düzeyi oturum tanımlayıcılarını gösterir. Bir arka uçta bir yetenek
bulunmadığında desteklenmeyen denetim hataları net biçimde görünür.
/acp sessions, geçerli bağlı oturum veya istek sahibi oturumu için
depoyu okur; hedef belirteçler (session-key, session-id veya
session-label), agente özel özel session.store kökleri dahil olmak üzere
gateway oturum keşfi üzerinden çözümlenir.
Çalışma zamanı seçenekleri eşlemesi
/acp, kolaylık komutlarına ve genel bir ayarlayıcıya sahiptir. Eşdeğer
işlemler:
| Komut | Şuna eşlenir | Notlar |
|---|---|---|
/acp model <id> | çalışma zamanı yapılandırma anahtarı model | Codex ACP için OpenClaw, openai-codex/<model> değerini adaptör model kimliğine normalleştirir ve openai-codex/gpt-5.4/high gibi eğik çizgili akıl yürütme son eklerini reasoning_effort değerine eşler. |
/acp set thinking <level> | kanonik seçenek thinking | OpenClaw mevcut olduğunda arka ucun duyurduğu eşdeğeri gönderir; sırasıyla thinking, ardından effort, reasoning_effort veya thought_level tercih edilir. Codex ACP için adaptör değerleri reasoning_effort değerine eşler. |
/acp permissions <profile> | kanonik seçenek permissionProfile | OpenClaw mevcut olduğunda approval_policy, permission_profile, permissions veya permission_mode gibi arka ucun duyurduğu eşdeğeri gönderir. |
/acp timeout <seconds> | kanonik seçenek timeoutSeconds | OpenClaw mevcut olduğunda timeout veya timeout_seconds gibi arka ucun duyurduğu eşdeğeri gönderir. |
/acp cwd <path> | çalışma zamanı cwd geçersiz kılması | Doğrudan güncelleme. |
/acp set <key> <value> | genel | key=cwd, cwd geçersiz kılma yolunu kullanır. |
/acp reset-options | tüm çalışma zamanı geçersiz kılmalarını temizler | - |
acpx koşumu, Plugin kurulumu ve izinler
acpx koşum yapılandırması (Claude Code / Codex / Gemini CLI takma adları), plugin-tools ve OpenClaw-tools MCP köprüleri ve ACP izin modları için bkz. ACP agentleri - kurulum.Sorun giderme
| Belirti | Olası neden | Düzeltme |
|---|---|---|
ACP runtime backend is not configured | Arka uç Plugin’i eksik, devre dışı veya plugins.allow tarafından engellenmiş. | Arka uç Plugin’ini kurup etkinleştirin, bu izin listesi ayarlıysa plugins.allow içine acpx ekleyin, ardından /acp doctor çalıştırın. |
ACP is disabled by policy (acp.enabled=false) | ACP genel olarak devre dışı. | acp.enabled=true olarak ayarlayın. |
ACP dispatch is disabled by policy (acp.dispatch.enabled=false) | Normal iş parçacığı iletilerinden otomatik dispatch devre dışı. | Otomatik iş parçacığı yönlendirmesini sürdürmek için acp.dispatch.enabled=true olarak ayarlayın; açık sessions_spawn({ runtime: "acp" }) çağrıları çalışmaya devam eder. |
ACP agent "<id>" is not allowed by policy | Aracı izin listesinde değil. | İzin verilen bir agentId kullanın veya acp.allowedAgents ayarını güncelleyin. |
/acp doctor reports backend not ready right after startup | Arka uç Plugin’i eksik, devre dışı, izin/reddetme politikası tarafından engellenmiş veya yapılandırılmış çalıştırılabilir dosyası kullanılamıyor. | Arka uç Plugin’ini kurun/etkinleştirin, /acp doctor komutunu yeniden çalıştırın ve sağlıksız kalırsa arka uç kurulumunu veya politika hatasını inceleyin. |
| Harness komutu bulunamadı | Bağdaştırıcı CLI’si kurulu değil, harici Plugin eksik veya ilk çalıştırma npx getirme işlemi Codex dışı bir bağdaştırıcı için başarısız oldu. | /acp doctor çalıştırın, bağdaştırıcıyı Gateway ana makinesinde kurun/önceden ısıtın veya acpx aracı komutunu açıkça yapılandırın. |
| Koşumdan model bulunamadı hatası | Model kimliği başka bir sağlayıcı/koşum için geçerli, ancak bu ACP hedefi için değil. | Bu koşum tarafından listelenen bir model kullanın, modeli koşumda yapılandırın veya geçersiz kılmayı atlayın. |
| Koşumdan satıcı kimlik doğrulama hatası | OpenClaw sağlıklı, ancak hedef CLI/sağlayıcıda oturum açılmamış. | Gateway ana makinesi ortamında oturum açın veya gerekli sağlayıcı anahtarını sağlayın. |
Unable to resolve session target: ... | Hatalı anahtar/kimlik/etiket belirteci. | /acp sessions çalıştırın, tam anahtarı/etiketi kopyalayın ve yeniden deneyin. |
--bind here requires running /acp spawn inside an active ... conversation | --bind here, etkin bağlanabilir bir konuşma olmadan kullanıldı. | Hedef sohbete/kanala geçip yeniden deneyin veya bağsız spawn kullanın. |
Conversation bindings are unavailable for <channel>. | Bağdaştırıcıda geçerli konuşma ACP bağlama yeteneği yok. | Desteklenen yerde /acp spawn ... --thread ... kullanın, üst düzey bindings[] yapılandırın veya desteklenen bir kanala geçin. |
--thread here requires running /acp spawn inside an active ... thread | --thread here, iş parçacığı bağlamı dışında kullanıldı. | Hedef iş parçacığına geçin veya --thread auto/off kullanın. |
Only <user-id> can rebind this channel/conversation/thread. | Etkin bağlama hedefinin sahibi başka bir kullanıcı. | Sahip olarak yeniden bağlayın veya farklı bir konuşma ya da iş parçacığı kullanın. |
Thread bindings are unavailable for <channel>. | Bağdaştırıcıda iş parçacığı bağlama yeteneği yok. | --thread off kullanın veya desteklenen bağdaştırıcıya/kanala geçin. |
Sandboxed sessions cannot spawn ACP sessions ... | ACP çalışma zamanı ana makine tarafındadır; istekte bulunan oturum korumalı alandadır. | Korumalı alan oturumlarından runtime="subagent" kullanın veya ACP spawn işlemini korumalı alanda olmayan bir oturumdan çalıştırın. |
sessions_spawn sandbox="require" is unsupported for runtime="acp" ... | ACP çalışma zamanı için sandbox="require" istendi. | Zorunlu korumalı alan için runtime="subagent" kullanın veya korumalı alanda olmayan bir oturumdan sandbox="inherit" ile ACP kullanın. |
Cannot apply --model ... did not advertise model support | Hedef koşum genel ACP model değiştirmeyi sunmuyor. | ACP models/session/set_model sunduğunu belirten bir koşum kullanın, Codex ACP model başvurularını kullanın veya kendi başlangıç bayrağı varsa modeli doğrudan koşumda yapılandırın. |
| Bağlı oturum için ACP metadata eksik | Eski/silinmiş ACP oturum metadata’sı. | /acp spawn ile yeniden oluşturun, ardından iş parçacığını yeniden bağlayın/odaklayın. |
AcpRuntimeError: Permission prompt unavailable in non-interactive mode | permissionMode, etkileşimsiz ACP oturumunda yazma/çalıştırma işlemlerini engelliyor. | plugins.entries.acpx.config.permissionMode değerini approve-all olarak ayarlayın ve gateway’i yeniden başlatın. Bkz. İzin yapılandırması. |
| ACP oturumu az çıktıyla erken başarısız oluyor | İzin istemleri permissionMode/nonInteractivePermissions tarafından engelleniyor. | Gateway günlüklerinde AcpRuntimeError olup olmadığını kontrol edin. Tam izinler için permissionMode=approve-all ayarlayın; zarif bozulma için nonInteractivePermissions=deny ayarlayın. |
| ACP oturumu işi tamamladıktan sonra süresiz olarak takılıyor | Koşum süreci tamamlandı, ancak ACP oturumu tamamlanmayı bildirmedi. | OpenClaw’ı güncelleyin; mevcut acpx temizliği, kapanışta ve Gateway başlangıcında OpenClaw’a ait eski sarmalayıcı ve bağdaştırıcı süreçlerini toplar. |
Koşum <<<BEGIN_OPENCLAW_INTERNAL_CONTEXT>>> görüyor | Dahili olay zarfı ACP sınırından sızdı. | OpenClaw’ı güncelleyin ve tamamlama akışını yeniden çalıştırın; harici koşumlar yalnızca düz tamamlama istemleri almalıdır. |