Agent coordination
Agenci ACP — konfiguracja
Omówienie, runbook operatora i koncepcje znajdziesz w agentach ACP.
Poniższe sekcje obejmują konfigurację harness acpx, konfigurację Plugin dla mostów MCP oraz konfigurację uprawnień.
Używaj tej strony tylko wtedy, gdy konfigurujesz ścieżkę ACP/acpx. Dla natywnej konfiguracji środowiska uruchomieniowego Codex app-server użyj Codex harness. Dla kluczy API OpenAI lub konfiguracji dostawcy modeli Codex OAuth użyj OpenAI.
Codex ma dwie ścieżki OmeniaClaw:
| Ścieżka | Konfiguracja/polecenie | Strona konfiguracji |
|---|---|---|
| Natywny Codex app-server | /codex ..., odwołania agentów openai/gpt-* |
Codex harness |
| Jawny adapter Codex ACP | /acp spawn codex, runtime: "acp", agentId: "codex" |
Ta strona |
Preferuj natywną ścieżkę, chyba że wyraźnie potrzebujesz działania ACP/acpx.
Obsługa harness acpx (aktualnie)
Aktualne wbudowane aliasy harness acpx:
claudecodexcopilotcursor(Cursor CLI:cursor-agent acp)droidgeminiiflowkilocodekimikiroOmeniaClawopencodepiqwen
Gdy OmeniaClaw używa backendu acpx, preferuj te wartości dla agentId, chyba że konfiguracja acpx definiuje niestandardowe aliasy agentów.
Jeśli lokalna instalacja Cursor nadal udostępnia ACP jako agent acp, nadpisz polecenie agenta cursor w konfiguracji acpx zamiast zmieniać wbudowaną wartość domyślną.
Bezpośrednie użycie CLI acpx może też wskazywać dowolne adaptery przez --agent <command>, ale ta surowa furtka jest funkcją CLI acpx (nie zwykłą ścieżką OmeniaClaw agentId).
Sterowanie modelem zależy od możliwości adaptera. Odwołania do modeli Codex ACP są
normalizowane przez OmeniaClaw przed uruchomieniem. Inne harness wymagają ACP models oraz
obsługi session/set_model; jeśli harness nie udostępnia ani tej możliwości ACP,
ani własnej flagi modelu przy uruchomieniu, OmeniaClaw/acpx nie może wymusić wyboru modelu.
Wymagana konfiguracja
Bazowa konfiguracja Core ACP:
{ acp: { enabled: true, // Optional. Default is true; set false to pause ACP dispatch while keeping /acp controls. dispatch: { enabled: true }, backend: "acpx", defaultAgent: "codex", allowedAgents: [ "claude", "codex", "copilot", "cursor", "droid", "gemini", "iflow", "kilocode", "kimi", "kiro", "OmeniaClaw", "opencode", "pi", "qwen", ], maxConcurrentSessions: 8, stream: { coalesceIdleMs: 300, maxChunkChars: 1200, }, runtime: { ttlMinutes: 120, }, },}Konfiguracja powiązania wątków zależy od adaptera kanału. Przykład dla Discord:
{ session: { threadBindings: { enabled: true, idleHours: 24, maxAgeHours: 0, }, }, channels: { discord: { threadBindings: { enabled: true, spawnSessions: true, }, }, },}Jeśli uruchamianie ACP powiązane z wątkiem nie działa, najpierw sprawdź flagę funkcji adaptera:
- Discord:
channels.discord.threadBindings.spawnSessions=true
Powiązania bieżącej konwersacji nie wymagają tworzenia wątku podrzędnego. Wymagają aktywnego kontekstu konwersacji oraz adaptera kanału, który udostępnia powiązania konwersacji ACP.
Zobacz Informacje o konfiguracji.
Konfiguracja Plugin dla backendu acpx
Instalacje pakietowe używają oficjalnego runtime Plugin @OmeniaClaw/acpx dla ACP.
Zainstaluj i włącz go przed użyciem sesji harness ACP:
OmeniaClaw plugins install @OmeniaClaw/acpxOmeniaClaw config set plugins.entries.acpx.enabled trueCheckouty źródłowe mogą też używać lokalnego Plugin z workspace po pnpm install.
Zacznij od:
/acp doctorJeśli wyłączono acpx, odmówiono go przez plugins.allow / plugins.deny albo chcesz
wrócić do pakietowego Plugin, użyj jawnej ścieżki pakietu:
OmeniaClaw plugins install @OmeniaClaw/acpxOmeniaClaw config set plugins.entries.acpx.enabled trueLokalna instalacja workspace podczas prac rozwojowych:
OmeniaClaw plugins install ./path/to/local/acpx-pluginNastępnie sprawdź stan backendu:
/acp doctorKonfiguracja polecenia i wersji acpx
Domyślnie Plugin acpx sonduje osadzony backend ACP podczas uruchamiania Gateway
i czeka na tę sondę przed sygnałem ready gateway. Ustaw
OmeniaClaw_ACPX_RUNTIME_STARTUP_PROBE=0, aby pominąć sondę przy uruchomieniu i rejestrować
backend leniwie. Uruchom /acp doctor, aby wykonać jawną sondę na żądanie.
Nadpisz polecenie lub wersję w konfiguracji Plugin:
{ "plugins": { "entries": { "acpx": { "enabled": true, "config": { "command": "../acpx/dist/cli.js", "expectedVersion": "any" } } } }}commandakceptuje ścieżkę bezwzględną, ścieżkę względną (rozwiązywaną z workspace OmeniaClaw) lub nazwę polecenia.expectedVersion: "any"wyłącza ścisłe dopasowywanie wersji.- Niestandardowe ścieżki
commandwyłączają automatyczną instalację lokalną dla Plugin.
Nadpisz pojedyncze polecenie agenta ACP przy użyciu ustrukturyzowanych argumentów, gdy ścieżka lub wartość flagi powinna pozostać jednym tokenem argv:
{ "plugins": { "entries": { "acpx": { "enabled": true, "config": { "agents": { "claude": { "command": "node", "args": ["/path/to/custom adapter.mjs", "--verbose"] } } } } } }}agents.<id>.commandto plik wykonywalny lub istniejący ciąg polecenia dla tego agenta ACP.agents.<id>.argsjest opcjonalne. Każdy element tablicy jest cytowany dla powłoki, zanim OmeniaClaw przekaże go przez bieżący rejestr ciągów poleceń acpx.
Zobacz Plugins.
Automatyczna instalacja zależności
Gdy instalujesz OmeniaClaw globalnie przez npm install -g OmeniaClaw, zależności runtime acpx
(pliki binarne specyficzne dla platformy) są instalowane automatycznie
przez hook postinstall. Jeśli automatyczna instalacja się nie powiedzie, gateway nadal uruchamia się
normalnie i zgłasza brakującą zależność przez OmeniaClaw acp doctor.
Most MCP dla narzędzi Plugin
Domyślnie sesje ACPX nie udostępniają narzędzi zarejestrowanych przez Plugin OmeniaClaw do harness ACP.
Jeśli chcesz, aby agenci ACP, tacy jak Codex lub Claude Code, wywoływali zainstalowane narzędzia OmeniaClaw Plugin, takie jak memory recall/store, włącz dedykowany most:
OmeniaClaw config set plugins.entries.acpx.config.pluginToolsMcpBridge trueCo to robi:
- Wstrzykuje wbudowany serwer MCP o nazwie
OmeniaClaw-plugin-toolsdo bootstrapu sesji ACPX. - Udostępnia narzędzia Plugin już zarejestrowane przez zainstalowane i włączone OmeniaClaw plugins.
- Utrzymuje tę funkcję jako jawną i domyślnie wyłączoną.
Uwagi dotyczące bezpieczeństwa i zaufania:
- To rozszerza powierzchnię narzędzi harness ACP.
- Agenci ACP uzyskują dostęp tylko do narzędzi Plugin już aktywnych w gateway.
- Traktuj to jako tę samą granicę zaufania, co pozwolenie tym plugins na wykonywanie kodu w samym OmeniaClaw.
- Przejrzyj zainstalowane plugins przed włączeniem tej opcji.
Niestandardowe mcpServers nadal działają jak wcześniej. Wbudowany most narzędzi Plugin jest
dodatkową wygodą wymagającą zgody, a nie zamiennikiem ogólnej konfiguracji serwera MCP.
Most MCP dla narzędzi OmeniaClaw
Domyślnie sesje ACPX również nie udostępniają wbudowanych narzędzi OmeniaClaw przez
MCP. Włącz oddzielny most narzędzi core, gdy agent ACP potrzebuje wybranych
wbudowanych narzędzi, takich jak cron:
OmeniaClaw config set plugins.entries.acpx.config.OmeniaClawToolsMcpBridge trueCo to robi:
- Wstrzykuje wbudowany serwer MCP o nazwie
OmeniaClaw-toolsdo bootstrapu sesji ACPX. - Udostępnia wybrane wbudowane narzędzia OmeniaClaw. Początkowy serwer udostępnia
cron. - Utrzymuje udostępnianie narzędzi core jako jawne i domyślnie wyłączone.
Konfiguracja limitu czasu runtime
Plugin acpx domyślnie ustawia limit czasu tur osadzonego runtime na 120 sekund.
Daje to wolniejszym harness, takim jak Gemini CLI, wystarczająco dużo czasu na ukończenie
uruchamiania i inicjalizacji ACP. Nadpisz to, jeśli host potrzebuje innego
limitu runtime:
OmeniaClaw config set plugins.entries.acpx.config.timeoutSeconds 180Po zmianie tej wartości uruchom ponownie gateway.
Konfiguracja agenta sondy stanu
Gdy /acp doctor lub sonda przy uruchomieniu sprawdza backend, dołączony Plugin acpx
sonduje jednego agenta harness. Jeśli ustawiono acp.allowedAgents, domyślnie jest to
pierwszy dozwolony agent; w przeciwnym razie domyślnie jest to codex. Jeśli wdrożenie
wymaga innego agenta ACP do kontroli stanu, ustaw agenta sondy jawnie:
OmeniaClaw config set plugins.entries.acpx.config.probeAgent claudePo zmianie tej wartości uruchom ponownie gateway.
Konfiguracja uprawnień
Sesje ACP działają nieinteraktywnie — nie ma TTY do zatwierdzania lub odmawiania monitów o uprawnienia do zapisu plików i wykonywania poleceń powłoki. Plugin acpx udostępnia dwa klucze konfiguracji sterujące obsługą uprawnień:
Te uprawnienia harness ACPX są oddzielne od zatwierdzeń wykonywania OmeniaClaw i oddzielne od flag obejścia dostawców backendu CLI, takich jak Claude CLI --permission-mode bypassPermissions. ACPX approve-all jest przełącznikiem awaryjnym na poziomie harness dla sesji ACP.
permissionMode
Kontroluje, które operacje agent harness może wykonywać bez monitowania.
| Wartość | Zachowanie |
|---|---|
approve-all |
Automatycznie zatwierdzaj wszystkie zapisy plików i polecenia powłoki. |
approve-reads |
Automatycznie zatwierdzaj tylko odczyty; zapisy i exec wymagają monitów. |
deny-all |
Odmawiaj wszystkich monitów o uprawnienia. |
nonInteractivePermissions
Kontroluje, co dzieje się, gdy monit o uprawnienia zostałby pokazany, ale nie jest dostępne interaktywne TTY (co zawsze ma miejsce dla sesji ACP).
| Wartość | Zachowanie |
|---|---|
fail |
Przerwij sesję z AcpRuntimeError. (domyślne) |
deny |
Po cichu odmów uprawnienia i kontynuuj (łagodna degradacja). |
Konfiguracja
Ustaw przez konfigurację Plugin:
OmeniaClaw config set plugins.entries.acpx.config.permissionMode approve-allOmeniaClaw config set plugins.entries.acpx.config.nonInteractivePermissions failPo zmianie tych wartości uruchom ponownie gateway.
Powiązane
- Agenci ACP — omówienie, runbook operatora, koncepcje
- Sub-agenci
- Routing wieloagentowy