openclaw acp IDE के लिए stdio पर ACP का उपयोग करता है और प्रॉम्प्ट को WebSocket पर Gateway को अग्रेषित करता है, साथ ही ACP सत्रों को Gateway सत्र कुंजियों से मैप करके रखता है। यह Gateway-समर्थित ACP ब्रिज है, पूर्ण ACP-नेटिव एडिटर रनटाइम नहीं: यह सत्र रूटिंग, प्रॉम्प्ट डिलीवरी और स्ट्रीमिंग अपडेट पर केंद्रित है।
यदि आप चाहते हैं कि कोई बाहरी MCP क्लाइंट ACP हार्नेस सत्र होस्ट करने के बजाय सीधे OpenClaw चैनल वार्तालापों से संचार करे, तो इसके बजाय openclaw mcp serve का उपयोग करें।
यह क्या नहीं है
openclaw acp का अर्थ है कि OpenClaw एक ACP सर्वर के रूप में कार्य करता है: कोई IDE या ACP क्लाइंट OpenClaw से कनेक्ट होता है, और OpenClaw उस कार्य को Gateway सत्र में अग्रेषित करता है।
यह ACP Agents से अलग है, जहाँ OpenClaw acpx के माध्यम से Codex या Claude Code जैसे किसी बाहरी हार्नेस को चलाता है।
त्वरित नियम:
- एडिटर/क्लाइंट ACP के माध्यम से OpenClaw से संचार करना चाहता है:
openclaw acpका उपयोग करें - OpenClaw को Codex/Claude/Gemini को ACP हार्नेस के रूप में लॉन्च करना चाहिए:
/acp spawnऔर ACP Agents का उपयोग करें
संगतता मैट्रिक्स
ज्ञात सीमाएँ
loadSessionकेवल ब्रिज द्वारा बनाए गए सत्रों के लिए पूरा ACP इवेंट-लेजर इतिहास दोबारा चलाता है। पुराने/बिना-लेजर वाले सत्र ट्रांसक्रिप्ट फ़ॉलबैक का उपयोग करते हैं और ऐतिहासिक टूल कॉल या सिस्टम सूचनाओं का पुनर्निर्माण नहीं करते।- यदि कई ACP क्लाइंट समान Gateway सत्र कुंजी साझा करते हैं, तो इवेंट और रद्दीकरण रूटिंग प्रत्येक क्लाइंट के लिए सख्ती से पृथक होने के बजाय सर्वोत्तम-प्रयास होती है। जब आपको स्वच्छ एडिटर-स्थानीय टर्न चाहिए, तो डिफ़ॉल्ट पृथक
acp-bridge:<uuid>सत्रों को प्राथमिकता दें। - Gateway की रुकने की स्थितियाँ ACP रुकने के कारणों में अनूदित होती हैं, लेकिन यह मैपिंग पूर्णतः ACP-नेटिव रनटाइम की तुलना में कम अभिव्यंजक है।
- सत्र नियंत्रण Gateway विकल्पों का एक केंद्रित उपसमुच्चय उपलब्ध कराते हैं: विचार स्तर, टूल वर्बोसिटी, रीजनिंग, उपयोग विवरण और उन्नत कार्रवाइयाँ। मॉडल चयन और निष्पादन-होस्ट नियंत्रण ACP कॉन्फ़िग विकल्पों के रूप में उपलब्ध नहीं हैं।
session_info_updateऔरusage_updateलाइव ACP-नेटिव रनटाइम लेखांकन के बजाय Gateway सत्र स्नैपशॉट से प्राप्त होते हैं। उपयोग अनुमानित है, इसमें लागत डेटा नहीं होता और इसे केवल तभी उत्सर्जित किया जाता है जब Gateway कुल टोकन डेटा को ताज़ा चिह्नित करता है।- टूल फ़ॉलो-अलॉन्ग डेटा सर्वोत्तम-प्रयास है: ब्रिज ज्ञात टूल आर्ग्युमेंट/परिणामों में दिखाई देने वाले फ़ाइल पथ उपलब्ध कराता है, लेकिन ACP टर्मिनल या संरचित फ़ाइल डिफ़ उत्सर्जित नहीं करता।
- निष्पादन अनुमोदन रिले सक्रिय ACP प्रॉम्प्ट टर्न तक सीमित है; अन्य Gateway सत्रों के अनुमोदन अनदेखे किए जाते हैं।
उपयोग
ACP क्लाइंट (डीबग)
IDE के बिना ब्रिज की सामान्य जाँच करने के लिए अंतर्निर्मित ACP क्लाइंट का उपयोग करें। यह ACP ब्रिज को स्पॉन करता है और आपको अंतःक्रियात्मक रूप से प्रॉम्प्ट टाइप करने देता है।- स्वतः-अनुमोदन अनुमति-सूची पर आधारित है और केवल विश्वसनीय मुख्य टूल आईडी पर लागू होता है।
readस्वतः-अनुमोदन वर्तमान कार्यशील डायरेक्टरी (--cwdसेट होने पर) तक सीमित है।- ACP केवल सीमित रीड-ओनली वर्गों को स्वतः अनुमोदित करता है: सक्रिय cwd के अंतर्गत सीमित
readकॉल, साथ ही रीड-ओनली खोज टूल (search,web_search,memory_search)। अज्ञात/गैर-मुख्य टूल, दायरे से बाहर रीड, निष्पादन-सक्षम टूल, कंट्रोल-प्लेन टूल, परिवर्तनकारी टूल और अंतःक्रियात्मक प्रवाहों के लिए हमेशा स्पष्ट प्रॉम्प्ट अनुमोदन आवश्यक होता है। - सर्वर द्वारा प्रदान किए गए
toolCall.kindको अविश्वसनीय मेटाडेटा माना जाता है, प्राधिकरण स्रोत नहीं। - यह ACP ब्रिज नीति ACPX हार्नेस अनुमतियों से अलग है। यदि आप
acpxबैकएंड के माध्यम से OpenClaw चलाते हैं, तोplugins.entries.acpx.config.permissionMode=approve-allउस हार्नेस सत्र के लिए आपातकालीन “yolo” स्विच है।
प्रोटोकॉल स्मोक परीक्षण
प्रोटोकॉल-स्तरीय डीबगिंग के लिए, पृथक स्थिति वाला Gateway शुरू करें और ACP JSON-RPC क्लाइंट के साथ stdio परopenclaw acp संचालित करें। initialize, session/new, एक निरपेक्ष cwd के साथ session/list, session/resume, session/close, डुप्लिकेट बंद करना और अनुपस्थित पुनः आरंभ शामिल करें।
प्रमाण में विज्ञापित जीवनचक्र क्षमताएँ, Gateway-समर्थित सत्र पंक्ति, अपडेट सूचनाएँ और Gateway sessions.list लॉग शामिल होने चाहिए:
openclaw gateway call sessions.list का उपयोग करने से बचें। वह CLI पथ नए-टोकन ऑपरेटर स्कोप अपग्रेड का अनुरोध कर सकता है; ACP ब्रिज की शुद्धता ACP stdio फ़्रेम और Gateway sessions.list लॉग से प्रमाणित होती है।
इसका उपयोग कैसे करें
ACP का उपयोग तब करें जब कोई IDE (या अन्य क्लाइंट) Agent Client Protocol का उपयोग करता हो और आप चाहते हों कि वह OpenClaw Gateway सत्र को संचालित करे।- सुनिश्चित करें कि Gateway चल रहा है (स्थानीय या रिमोट)।
- Gateway लक्ष्य कॉन्फ़िगर करें (कॉन्फ़िग या फ़्लैग)।
- अपने IDE को stdio पर
openclaw acpचलाने के लिए निर्देशित करें।
एजेंट चुनना
ACP सीधे एजेंट नहीं चुनता। यह Gateway सत्र कुंजी के आधार पर रूट करता है। किसी विशिष्ट एजेंट को लक्षित करने के लिए एजेंट-स्कोप वाली सत्र कुंजियों का उपयोग करें:acp-bridge:<uuid> सत्र का उपयोग करता है।
ब्रिज मोड में प्रति-सत्र mcpServers समर्थित नहीं हैं। यदि कोई ACP क्लाइंट उन्हें newSession या loadSession के दौरान भेजता है, तो ब्रिज उन्हें चुपचाप अनदेखा करने के बजाय स्पष्ट त्रुटि लौटाता है।
यदि आप चाहते हैं कि ACPX-समर्थित सत्र OpenClaw Plugin टूल या cron जैसे चुने हुए अंतर्निहित टूल देख सकें, तो प्रति-सत्र mcpServers पास करने की कोशिश करने के बजाय Gateway-साइड ACPX MCP ब्रिज सक्षम करें। ACP एजेंट और OpenClaw टूल MCP ब्रिज देखें।
acpx से उपयोग करें (Codex, Claude, अन्य ACP क्लाइंट)
यदि आप चाहते हैं कि Codex या Claude Code जैसा कोई कोडिंग एजेंट ACP के माध्यम से आपके OpenClaw बॉट से संवाद करे, तो उसके अंतर्निहित openclaw लक्ष्य के साथ acpx का उपयोग करें।
सामान्य प्रवाह:
- Gateway चलाएँ और सुनिश्चित करें कि ACP ब्रिज उस तक पहुँच सकता है।
acpx openclawकोopenclaw acpकी ओर इंगित करें।- उस OpenClaw सत्र कुंजी को लक्षित करें जिसका उपयोग कोडिंग एजेंट से करवाना है।
acpx openclaw हर बार किसी विशिष्ट Gateway और सत्र कुंजी को लक्षित करे, तो ~/.acpx/config.json में openclaw एजेंट कमांड को ओवरराइड करें:
Zed एडिटर सेटअप
~/.config/zed/settings.json में एक कस्टम ACP एजेंट जोड़ें (या Zed के Settings UI का उपयोग करें):
सत्र मैपिंग
डिफ़ॉल्ट रूप से, ACP ब्रिज सत्रों कोacp-bridge: उपसर्ग वाली पृथक Gateway सत्र कुंजी मिलती है। ये सामान्य-मॉडल ब्रिज सत्र कृत्रिम और अस्थायी होते हैं: इन पर पुराने रिकॉर्ड हटाने की प्रक्रिया लागू होती है और इन्हें संरक्षित मानवीय वार्तालाप सतह नहीं माना जाता। किसी ज्ञात सत्र का पुनः उपयोग करने के लिए सत्र कुंजी या लेबल पास करें:
--session <key>: किसी विशिष्ट Gateway सत्र कुंजी का उपयोग करें।--session-label <label>: किसी मौजूदा सत्र को लेबल के आधार पर रिज़ॉल्व करें।--reset-session: उस कुंजी के लिए नई सत्र आईडी बनाएँ (वही कुंजी, नई ट्रांसक्रिप्ट)।
विकल्प
--url <url>: Gateway WebSocket URL (कॉन्फ़िगर होने पर डिफ़ॉल्ट:gateway.remote.url)।--token <token>: Gateway प्रमाणीकरण टोकन।--token-file <path>: फ़ाइल से Gateway प्रमाणीकरण टोकन पढ़ें।--password <password>: Gateway प्रमाणीकरण पासवर्ड।--password-file <path>: फ़ाइल से Gateway प्रमाणीकरण पासवर्ड पढ़ें।--session <key>: डिफ़ॉल्ट सत्र कुंजी।--session-label <label>: रिज़ॉल्व करने के लिए डिफ़ॉल्ट सत्र लेबल।--require-existing: यदि सत्र कुंजी/लेबल मौजूद न हो, तो विफल हों।--reset-session: पहले उपयोग से पहले सत्र कुंजी रीसेट करें।--no-prefix-cwd: प्रॉम्प्ट के आगे कार्यशील डायरेक्टरी न जोड़ें।--provenance <off|meta|meta+receipt>: ACP उद्गम मेटाडेटा या रसीदें शामिल करें।--verbose, -v: stderr पर विस्तृत लॉगिंग।
--tokenऔर--passwordकुछ सिस्टम पर स्थानीय प्रक्रिया सूचियों में दिखाई दे सकते हैं।--token-file/--password-fileया पर्यावरण चर (OPENCLAW_GATEWAY_TOKEN,OPENCLAW_GATEWAY_PASSWORD) को प्राथमिकता दें।- Gateway प्रमाणीकरण रिज़ॉल्यूशन अन्य Gateway क्लाइंट द्वारा उपयोग किए जाने वाले साझा अनुबंध का पालन करता है:
- स्थानीय मोड: पहले env (
OPENCLAW_GATEWAY_*), फिरgateway.auth.*;gateway.auth.*अनसेट होने पर हीgateway.remote.*का फ़ॉलबैक (कॉन्फ़िगर किया गया लेकिन अनरिज़ॉल्व स्थानीय SecretRef चुपचाप फ़ॉलबैक करने के बजाय विफल हो जाता है) - रिमोट मोड: रिमोट प्राथमिकता नियमों के अनुसार env/config फ़ॉलबैक के साथ
gateway.remote.* --urlओवरराइड-सुरक्षित है और अप्रत्यक्ष config/env क्रेडेंशियल का पुनः उपयोग नहीं करता; स्पष्ट--token/--password(या फ़ाइल वाले रूप) पास करें
- स्थानीय मोड: पहले env (
acp client विकल्प
--cwd <dir>: ACP सत्र के लिए कार्यशील डायरेक्टरी।--server <command>: ACP सर्वर कमांड (डिफ़ॉल्ट:openclaw)।--server-args <args...>: ACP सर्वर को पास किए जाने वाले अतिरिक्त आर्ग्युमेंट।--server-verbose: ACP सर्वर पर विस्तृत लॉगिंग सक्षम करें।--verbose, -v: विस्तृत क्लाइंट लॉगिंग।openclaw acp clientशुरू की गई ब्रिज प्रक्रिया परOPENCLAW_SHELL=acp-clientसेट करता है, जिसका उपयोग संदर्भ-विशिष्ट शेल/प्रोफ़ाइल नियमों के लिए किया जा सकता है।