CLI commands

माइग्रेट करें

openclaw migrate

Plugin-स्वामित्व वाले माइग्रेशन प्रदाता के माध्यम से किसी अन्य एजेंट सिस्टम से स्थिति आयात करें। बंडल किए गए प्रदाता Claude, Codex CLI और Hermes को कवर करते हैं; Plugin अतिरिक्त प्रदाताओं को पंजीकृत कर सकते हैं।

कमांड

bash
openclaw migrate listopenclaw migrate claude --dry-runopenclaw migrate codex --dry-runopenclaw migrate codex --skill gog-vault77-google-workspaceopenclaw migrate codex --plugin google-calendar --dry-runopenclaw migrate codex --plugin google-calendar --verify-plugin-apps --dry-runopenclaw migrate hermes --dry-runopenclaw migrate hermesopenclaw migrate apply codex --yes --skill gog-vault77-google-workspaceopenclaw migrate apply codex --yes --plugin google-calendaropenclaw migrate apply codex --yesopenclaw migrate apply claude --yesopenclaw migrate apply hermes --yesopenclaw migrate apply hermes --include-secrets --yesopenclaw onboard --flow importopenclaw onboard --import-from claude --import-source ~/.claudeopenclaw onboard --import-from hermes --import-source ~/.hermes

बिना किसी अन्य फ़्लैग के openclaw migrate <provider> चलाने पर योजना बनती है, पूर्वावलोकन दिखता है और (TTY में) लागू करने से पहले संकेत दिया जाता है। openclaw migrate plan <provider> और openclaw migrate apply <provider> समान फ़्लैग के साथ पूर्वावलोकन और लागू करने की प्रक्रिया को अलग-अलग उपकमांड में विभाजित करते हैं।

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ijxwcm92aWRlcg " type="string"> पंजीकृत माइग्रेशन प्रदाता का नाम, उदाहरण के लिए hermes। इंस्टॉल किए गए प्रदाता देखने के लिए openclaw migrate list चलाएँ।

--dry-runboolean

योजना बनाएँ और स्थिति बदले बिना बाहर निकलें।

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tZnJvbSA8cGF0aA " type="string"> स्रोत स्थिति डायरेक्टरी को ओवरराइड करें। Hermes $HERMES_HOME और सक्रिय प्रोफ़ाइल का अनुसरण करता है, फिर प्लेटफ़ॉर्म का डिफ़ॉल्ट (~/.hermes या %LOCALAPPDATA%\hermes) उपयोग करता है। Codex का डिफ़ॉल्ट ~/.codex (या $CODEX_HOME) है, Claude का डिफ़ॉल्ट ~/.claude है।

--include-secretsboolean

संकेत दिए बिना समर्थित क्रेडेंशियल आयात करें। इंटरैक्टिव रूप से लागू करते समय पहचाने गए प्रमाणीकरण क्रेडेंशियल आयात करने से पहले पूछा जाता है, जिसमें डिफ़ॉल्ट रूप से हाँ चयनित होता है; गैर-इंटरैक्टिव --yes में उन्हें आयात करने के लिए --include-secrets आवश्यक है।

--no-auth-credentialsboolean

इंटरैक्टिव संकेत सहित प्रमाणीकरण क्रेडेंशियल का आयात छोड़ें।

--overwriteboolean

योजना द्वारा टकराव रिपोर्ट किए जाने पर लागू करने की प्रक्रिया को मौजूदा लक्ष्यों को बदलने की अनुमति दें।

--yesboolean

पुष्टिकरण संकेत छोड़ें। गैर-इंटरैक्टिव मोड में आवश्यक है।

"--skill

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcGx1Z2luIDxuYW1l " type="string"> Plugin नाम या आइटम आईडी के आधार पर इंस्टॉल करने के लिए एक Codex Plugin आइटम चुनें। एकाधिक Codex Plugin माइग्रेट करने के लिए फ़्लैग दोहराएँ। इसे छोड़ने पर इंटरैक्टिव Codex माइग्रेशन एक मूल Codex Plugin चेकबॉक्स चयनकर्ता दिखाते हैं और गैर-इंटरैक्टिव माइग्रेशन सभी नियोजित Plugin बनाए रखते हैं। यह केवल Codex ऐप-सर्वर इन्वेंटरी द्वारा खोजे गए स्रोत से इंस्टॉल किए गए openai-curated Codex Plugin पर लागू होता है।

--verify-plugin-appsboolean

केवल Codex। मूल Plugin सक्रियण की योजना बनाने से पहले स्रोत Codex ऐप-सर्वर के app/list का नया ट्रैवर्सल अनिवार्य करता है। माइग्रेशन योजना को तेज़ रखने के लिए डिफ़ॉल्ट रूप से बंद रहता है।

OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tYmFja3VwLW91dHB1dCA8cGF0aA " type="string"> माइग्रेशन-पूर्व बैकअप आर्काइव पथ या डायरेक्टरी। इसे openclaw backup create को यथावत दिया जाता है।

--no-backupboolean

लागू करने से पहले का बैकअप छोड़ें। स्थानीय OpenClaw स्थिति मौजूद होने पर --force आवश्यक है।

--forceboolean

जब लागू करने की प्रक्रिया अन्यथा बैकअप छोड़ने से मना करती, तब --no-backup के साथ आवश्यक है।

--jsonboolean

योजना या लागू करने का परिणाम JSON के रूप में प्रिंट करें। --json के साथ और --yes के बिना, लागू करने की प्रक्रिया योजना प्रिंट करती है और स्थिति में बदलाव नहीं करती।

सुरक्षा मॉडल

openclaw migrate में पूर्वावलोकन को प्राथमिकता दी जाती है।

लागू करने से पहले पूर्वावलोकन

कुछ भी बदलने से पहले प्रदाता टकरावों, छोड़े गए आइटमों और संवेदनशील आइटमों सहित मदवार योजना लौटाता है। JSON योजनाएँ, लागू करने का आउटपुट और माइग्रेशन रिपोर्ट API कुंजियों, टोकन, प्राधिकरण हेडर, कुकी और पासवर्ड जैसी गुप्त जानकारी से मिलती-जुलती नेस्टेड कुंजियों को छिपाते हैं।

openclaw migrate apply <provider> योजना का पूर्वावलोकन करता है और स्थिति बदलने से पहले संकेत देता है, जब तक --yes सेट न हो। गैर-इंटरैक्टिव मोड में लागू करने के लिए --yes आवश्यक है।

बैकअप

लागू करने की प्रक्रिया माइग्रेशन लागू करने से पहले OpenClaw बैकअप बनाती और सत्यापित करती है। यदि अभी तक कोई स्थानीय OpenClaw स्थिति मौजूद नहीं है, तो बैकअप चरण छोड़ दिया जाता है और माइग्रेशन जारी रहता है। स्थिति मौजूद होने पर बैकअप छोड़ने के लिए --no-backup और --force दोनों दें।

टकराव

योजना में टकराव होने पर लागू करने की प्रक्रिया जारी रखने से मना करती है। योजना की समीक्षा करें, फिर यदि मौजूदा लक्ष्यों को बदलना जानबूझकर किया जा रहा है तो --overwrite के साथ फिर से चलाएँ। प्रदाता अब भी माइग्रेशन रिपोर्ट डायरेक्टरी में अधिलेखित फ़ाइलों के लिए आइटम-स्तरीय बैकअप लिख सकते हैं।

गुप्त जानकारियाँ

इंटरैक्टिव रूप से लागू करते समय पूछा जाता है कि पहचाने गए प्रमाणीकरण क्रेडेंशियल आयात करने हैं या नहीं, जिसमें डिफ़ॉल्ट रूप से हाँ चयनित होता है। उन्हें छोड़ने के लिए --no-auth-credentials का उपयोग करें, या --yes के साथ अप्रबंधित क्रेडेंशियल आयात के लिए --include-secrets का उपयोग करें।

Claude प्रदाता

बंडल किया गया Claude प्रदाता डिफ़ॉल्ट रूप से ~/.claude पर Claude Code स्थिति का पता लगाता है। किसी विशिष्ट Claude Code होम या प्रोजेक्ट रूट को आयात करने के लिए --from <path> का उपयोग करें।

Claude क्या आयात करता है

  • ~/.claude/projects/*/memory से Claude Code ऑटो-मेमोरी Markdown और उपयोगकर्ता द्वारा कॉन्फ़िगर किया गया autoMemoryDirectory, जिन्हें इंडेक्स की गई पुनःस्मृति के लिए memory/imports/claude-code/ के अंतर्गत कॉपी किया जाता है।
  • प्रोजेक्ट CLAUDE.md और .claude/CLAUDE.md को OpenClaw एजेंट वर्कस्पेस (AGENTS.md) में।
  • उपयोगकर्ता ~/.claude/CLAUDE.md को वर्कस्पेस USER.md में जोड़ा जाता है।
  • प्रोजेक्ट .mcp.json, Claude Code ~/.claude.json (उसकी प्रति-प्रोजेक्ट प्रविष्टियों सहित), और Claude Desktop claude_desktop_config.json से MCP सर्वर परिभाषाएँ।
  • Claude स्किल डायरेक्टरी जिनमें SKILL.md शामिल है (उपयोगकर्ता ~/.claude/skills और प्रोजेक्ट .claude/skills)।
  • Claude कमांड Markdown फ़ाइलें (उपयोगकर्ता ~/.claude/commands और प्रोजेक्ट .claude/commands), जिन्हें केवल मैन्युअल आह्वान वाले OpenClaw स्किल में बदला जाता है।

आर्काइव और मैन्युअल-समीक्षा स्थिति

Claude हुक, अनुमतियाँ, परिवेश डिफ़ॉल्ट, प्रोजेक्ट CLAUDE.local.md, .claude/rules, उपयोगकर्ता और प्रोजेक्ट agents/ डायरेक्टरी, और प्रोजेक्ट इतिहास (~/.claude के अंतर्गत projects, cache, plans) माइग्रेशन रिपोर्ट में संरक्षित किए जाते हैं या मैन्युअल-समीक्षा आइटम के रूप में रिपोर्ट किए जाते हैं। OpenClaw हुक निष्पादित नहीं करता, व्यापक अनुमति-सूचियाँ कॉपी नहीं करता, या OAuth/Desktop क्रेडेंशियल स्थिति को स्वचालित रूप से आयात नहीं करता।

Codex प्रदाता

बंडल किया गया Codex प्रदाता डिफ़ॉल्ट रूप से ~/.codex पर, या उस पर्यावरण चर के सेट होने पर CODEX_HOME पर Codex CLI स्थिति का पता लगाता है। किसी विशिष्ट Codex होम की इन्वेंटरी बनाने के लिए --from <path> का उपयोग करें।

OpenClaw Codex हार्नेस पर जाते समय और उपयोगी व्यक्तिगत Codex CLI एसेट को सोच-समझकर आगे बढ़ाने के लिए इस प्रदाता का उपयोग करें। स्थानीय Codex ऐप-सर्वर लॉन्च प्रति-एजेंट CODEX_HOME का उपयोग करते हैं, इसलिए वे डिफ़ॉल्ट रूप से आपके व्यक्तिगत ~/.codex को नहीं पढ़ते। सामान्य प्रक्रिया HOME अब भी इनहेरिट की जाती है, इसलिए Codex साझा $HOME/.agents/* स्किल/Plugin मार्केटप्लेस प्रविष्टियाँ देख सकता है और उपप्रक्रियाएँ उपयोगकर्ता-होम कॉन्फ़िगरेशन तथा टोकन ढूँढ सकती हैं।

इंटरैक्टिव टर्मिनल में openclaw migrate codex चलाने पर पूरी योजना का पूर्वावलोकन दिखता है, फिर अंतिम लागू-पुष्टि से पहले चेकबॉक्स चयनकर्ता खुलते हैं। पहले स्किल कॉपी आइटमों के लिए संकेत दिया जाता है। सामूहिक चयन के लिए Toggle all on या Toggle all off का उपयोग करें। पंक्तियाँ टॉगल करने के लिए Space दबाएँ, या हाइलाइट की गई पंक्ति सक्रिय करके आगे बढ़ने के लिए Enter दबाएँ। नियोजित स्किल चयनित रूप में शुरू होते हैं, टकराव वाले स्किल अचयनित रूप में शुरू होते हैं, और Skip for now इस रन के लिए स्किल कॉपी छोड़कर भी Plugin चयन जारी रखता है। जब स्रोत से इंस्टॉल किए गए क्यूरेटेड Codex Plugin माइग्रेट किए जा सकते हों और --plugin न दिया गया हो, तो माइग्रेशन Plugin नाम के आधार पर मूल Codex Plugin सक्रियण के लिए संकेत देता है। Plugin आइटम चयनित रूप में शुरू होते हैं, जब तक लक्ष्य OpenClaw Codex Plugin कॉन्फ़िगरेशन में वह Plugin पहले से मौजूद न हो। मौजूदा लक्ष्य Plugin अचयनित रूप में शुरू होते हैं और conflict: plugin exists जैसा टकराव संकेत दिखाते हैं; उस रन में कोई मूल Codex Plugin माइग्रेट न करने के लिए Toggle all off चुनें, या लागू करने से पहले रुकने के लिए Skip for now चुनें।

स्क्रिप्टेड या सटीक रन के लिए, एक या अधिक स्किल या Plugin स्पष्ट रूप से चुनें:

bash
openclaw migrate codex --dry-run --skill gog-vault77-google-workspaceopenclaw migrate apply codex --yes --skill gog-vault77-google-workspaceopenclaw migrate codex --dry-run --plugin google-calendaropenclaw migrate apply codex --yes --plugin google-calendar

Codex क्या आयात करता है

  • $CODEX_HOME/memories से समेकित Codex MEMORY.md और memory_summary.md, जिन्हें इंडेक्स की गई पुनःस्मृति के लिए memory/imports/codex/ के अंतर्गत कॉपी किया जाता है। अपरिष्कृत रोलआउट मेमोरी आयात नहीं की जाती।
  • $CODEX_HOME/skills के अंतर्गत Codex CLI स्किल डायरेक्टरी, Codex के .system कैश को छोड़कर।
  • $HOME/.agents/skills के अंतर्गत व्यक्तिगत AgentSkills, जिन्हें प्रति-एजेंट स्वामित्व के लिए वर्तमान OpenClaw एजेंट वर्कस्पेस में कॉपी किया जाता है।
  • Codex ऐप-सर्वर plugin/list के माध्यम से खोजे गए स्रोत से इंस्टॉल किए गए openai-curated Codex Plugin। योजना प्रत्येक सक्षम इंस्टॉल किए गए Plugin के लिए plugin/read पढ़ती है।

ऐप-समर्थित Plugin माइग्रेशन में अतिरिक्त जाँच-द्वार होते हैं:

  • ऐप-समर्थित Plugin के लिए स्रोत Codex ऐप-सर्वर खाता ChatGPT सदस्यता खाता होना आवश्यक है। गैर-ChatGPT या अनुपस्थित खाता प्रतिक्रियाएँ codex_subscription_required के साथ छोड़ दी जाती हैं।
  • डिफ़ॉल्ट रूप से, माइग्रेशन स्रोत app/list को कॉल नहीं करता, इसलिए खाता जाँच पार करने वाले ऐप-समर्थित Plugin की योजना स्रोत ऐप-पहुँच सत्यापन के बिना बनाई जाती है, और खाता-लुकअप परिवहन विफलताएँ codex_account_unavailable के साथ छोड़ दी जाती हैं।
  • स्रोत app/list का नया स्नैपशॉट अनिवार्य करने और मूल सक्रियण की योजना बनाने से पहले प्रत्येक स्वामित्व वाले ऐप का मौजूद, सक्षम और पहुँच योग्य होना आवश्यक करने के लिए --verify-plugin-apps दें। उस मोड में, खाता-लुकअप परिवहन विफलताएँ स्रोत ऐप-इन्वेंटरी सत्यापन तक आगे बढ़ती हैं। स्नैपशॉट केवल वर्तमान प्रक्रिया के लिए मेमोरी में रखा जाता है; इसे कभी भी माइग्रेशन आउटपुट या लक्ष्य कॉन्फ़िगरेशन में नहीं लिखा जाता।

अक्षम Plugin, अपठनीय Plugin विवरण, सदस्यता-प्रतिबंधित स्रोत खाते, और (--verify-plugin-apps सेट होने पर) अनुपस्थित, अक्षम या पहुँच से बाहर ऐप लक्ष्य कॉन्फ़िगरेशन प्रविष्टियों के बजाय टाइप किए गए कारणों वाले मैन्युअल रूप से छोड़े गए आइटम बन जाते हैं। लागू करने की प्रक्रिया प्रत्येक चयनित पात्र Plugin के लिए ऐप-सर्वर plugin/install को कॉल करती है, भले ही लक्ष्य ऐप-सर्वर पहले से उस Plugin को इंस्टॉल और सक्षम रिपोर्ट करता हो। माइग्रेट किए गए Codex Plugin केवल उन सत्रों में उपयोग योग्य होते हैं जो मूल Codex हार्नेस चुनते हैं; वे OpenClaw प्रदाता रन, ACP वार्तालाप बाइंडिंग या अन्य हार्नेस के लिए उपलब्ध नहीं कराए जाते।

मैन्युअल-समीक्षा Codex स्थिति

Codex config.toml, नेटिव hooks/hooks.json, गैर-क्यूरेटेड मार्केटप्लेस, कैश किए गए Plugin बंडल जो स्रोत से इंस्टॉल किए गए क्यूरेटेड Plugin नहीं हैं, और स्रोत से इंस्टॉल किए गए वे Plugin जो स्रोत सदस्यता गेट में विफल होते हैं, स्वचालित रूप से सक्रिय नहीं किए जाते। जब --verify-plugin-apps सेट होता है, तो स्रोत ऐप-इन्वेंटरी गेट में विफल होने वाले Plugin भी छोड़ दिए जाते हैं। मैन्युअल समीक्षा के लिए इन सभी को माइग्रेशन रिपोर्ट में कॉपी किया जाता है या इनकी सूचना दी जाती है।

माइग्रेट किए गए, स्रोत से इंस्टॉल किए गए क्यूरेटेड Plugin के लिए ये लेखन लागू करें:

  • plugins.entries.codex.enabled: true
  • plugins.entries.codex.config.codexPlugins.enabled: true
  • plugins.entries.codex.config.codexPlugins.allow_destructive_actions: true
  • प्रत्येक चयनित Plugin के लिए marketplaceName: "openai-curated" और pluginName वाली एक स्पष्ट Plugin प्रविष्टि

माइग्रेशन कभी भी plugins["*"] नहीं लिखता और स्थानीय मार्केटप्लेस कैश पथ कभी संग्रहीत नहीं करता।

छोड़े गए Plugin लक्ष्य कॉन्फ़िगरेशन में नहीं लिखे जाते। स्रोत-पक्ष की सदस्यता विफलताएँ मैन्युअल आइटम में इन टाइप किए गए कारणों के साथ रिपोर्ट की जाती हैं: codex_subscription_required, codex_account_unavailable, plugin_disabled, या plugin_read_unavailable--verify-plugin-apps के साथ, स्रोत ऐप-इन्वेंटरी विफलताएँ app_inaccessible, app_disabled, app_missing, या app_inventory_unavailable के रूप में भी दिखाई दे सकती हैं। लक्ष्य-पक्ष पर प्रमाणीकरण आवश्यक होने वाले इंस्टॉल प्रभावित Plugin आइटम पर status: "skipped", reason: "auth_required", और सैनिटाइज़ किए गए ऐप आइडेंटिफ़ायर के साथ रिपोर्ट किए जाते हैं; उनकी स्पष्ट कॉन्फ़िगरेशन प्रविष्टियाँ तब तक अक्षम स्थिति में लिखी जाती हैं, जब तक आप उन्हें पुनः अधिकृत और सक्षम नहीं करते। अन्य इंस्टॉल विफलताएँ आइटम-स्कोप वाले error परिणाम होती हैं।

यदि योजना बनाने के दौरान Codex ऐप-सर्वर Plugin इन्वेंटरी उपलब्ध नहीं है, तो पूरा माइग्रेशन विफल करने के बजाय माइग्रेशन कैश किए गए बंडल के परामर्शात्मक आइटम पर वापस चला जाता है।

Hermes प्रोवाइडर

बंडल किया गया Hermes प्रोवाइडर $HERMES_HOME और सक्रिय प्रोफ़ाइल का अनुसरण करता है, फिर प्लेटफ़ॉर्म डिफ़ॉल्ट (~/.hermes या %LOCALAPPDATA%\hermes) का उपयोग करता है। डिस्कवरी को ओवरराइड करने के लिए --from <path> का उपयोग करें।

Hermes क्या इंपोर्ट करता है

  • config.yaml से डिफ़ॉल्ट मॉडल कॉन्फ़िगरेशन।
  • model, providers, और custom_providers से कॉन्फ़िगर किए गए मॉडल प्रोवाइडर और कस्टम OpenAI-संगत एंडपॉइंट।
  • mcp_servers या mcp.servers से MCP सर्वर परिभाषाएँ। सटीक OpenClaw मैपिंग में डिफ़ॉल्ट Streamable HTTP रूटिंग, OAuth स्कोप, बूलियन TLS सत्यापन, अलग क्लाइंट प्रमाणपत्र/कुंजी पथ, और Hermes नेटिव/रिसोर्स/प्रॉम्प्ट टूल नीति शामिल हैं। असमर्थित, केवल-Hermes रनटाइम या क्रेडेंशियल फ़ील्ड मैन्युअल समीक्षा के लिए रिपोर्ट किए जाते हैं।
  • SOUL.md और AGENTS.md को OpenClaw एजेंट वर्कस्पेस में।
  • memories/MEMORY.md और memories/USER.md को वर्कस्पेस मेमोरी फ़ाइलों में जोड़ा जाता है। इसके बजाय केवल-मेमोरी सतहें (ऑनबोर्डिंग मेमोरी पेज और Control UI Memory इंपोर्ट पेज) मौजूदा वर्कस्पेस मेमोरी को छुए बिना इंडेक्स की गई पुनःप्राप्ति के लिए इन फ़ाइलों को memory/imports/hermes/ के अंतर्गत कॉपी करती हैं।
  • OpenClaw फ़ाइल मेमोरी के लिए मेमोरी कॉन्फ़िगरेशन डिफ़ॉल्ट, साथ ही Honcho जैसे बाहरी मेमोरी प्रोवाइडर के लिए आर्काइव या मैन्युअल-समीक्षा आइटम।
  • ऐसे Skills जिनमें skills/ के अंतर्गत कहीं भी SKILL.md फ़ाइल शामिल हो; नेस्टेड Skills को वर्कस्पेस स्किल डायरेक्टरी में समतल किया जाता है।
  • skills.config से प्रत्येक Skill के कॉन्फ़िगरेशन मान।
  • मौजूदा Hermes OpenAI Codex OAuth क्रेडेंशियल और OpenCode OpenAI OAuth क्रेडेंशियल, जब इंटरैक्टिव क्रेडेंशियल माइग्रेशन स्वीकार किया गया हो, या जब --include-secrets सेट हो। Hermes और OpenClaw को एक ही इंपोर्ट किए गए रीफ़्रेश ग्रांट का उपयोग करते न रहने दें।
  • Hermes .env और OpenCode auth.json से समर्थित API कुंजियाँ और टोकन, जब इंटरैक्टिव क्रेडेंशियल माइग्रेशन स्वीकार किया गया हो, या जब --include-secrets सेट हो।

समर्थित .env कुंजियाँ

AI_GATEWAY_API_KEY, ALIBABA_API_KEY, ANTHROPIC_API_KEY, ARCEEAI_API_KEY, CEREBRAS_API_KEY, CHUTES_API_KEY, CLOUDFLARE_AI_GATEWAY_API_KEY, COPILOT_GITHUB_TOKEN, DASHSCOPE_API_KEY, DEEPINFRA_API_KEY, DEEPSEEK_API_KEY, FIREWORKS_API_KEY, GEMINI_API_KEY, GH_TOKEN, GITHUB_TOKEN, GLM_API_KEY, GOOGLE_API_KEY, GROQ_API_KEY, HF_TOKEN, HUGGINGFACE_HUB_TOKEN, KILOCODE_API_KEY, KIMICODE_API_KEY, KIMI_API_KEY, KIMI_CODING_API_KEY, MINIMAX_API_KEY, MINIMAX_CODING_API_KEY, MISTRAL_API_KEY, MODELSTUDIO_API_KEY, MOONSHOT_API_KEY, NVIDIA_API_KEY, OPENAI_API_KEY, OPENCODE_API_KEY, OPENCODE_GO_API_KEY, OPENCODE_ZEN_API_KEY, OPENROUTER_API_KEY, QIANFAN_API_KEY, QWEN_API_KEY, TOGETHER_API_KEY, VENICE_API_KEY, XAI_API_KEY, XIAOMI_API_KEY, ZAI_API_KEY, Z_AI_API_KEY

केवल-आर्काइव स्थिति

जिस Hermes स्थिति की OpenClaw सुरक्षित रूप से व्याख्या नहीं कर सकता, उसे मैन्युअल समीक्षा के लिए माइग्रेशन रिपोर्ट में कॉपी किया जाता है, लेकिन उसे सक्रिय OpenClaw कॉन्फ़िगरेशन या क्रेडेंशियल में लोड नहीं किया जाता। इसमें plugins/, sessions/, logs/, cron/, mcp-tokens/, plans/, workspace/, skins/, kanban/, पेयरिंग/प्लेटफ़ॉर्म स्थिति, Gateway रूटिंग/प्रोसेस स्थिति, और पहचाने गए Hermes SQLite डेटाबेस शामिल हैं।

लागू करने के बाद

bash
openclaw doctor

Plugin अनुबंध

माइग्रेशन स्रोत Plugin होते हैं। कोई Plugin openclaw.plugin.json में अपने प्रोवाइडर आईडी घोषित करता है:

json
{  "contracts": {    "migrationProviders": ["hermes"]  }}

रनटाइम पर Plugin api.registerMigrationProvider(...) को कॉल करता है। प्रोवाइडर detect, plan, और apply को लागू करता है। कोर CLI ऑर्केस्ट्रेशन, बैकअप नीति, प्रॉम्प्ट, JSON आउटपुट, और विरोध प्रीफ़्लाइट का स्वामी है। कोर समीक्षा की गई योजना को apply(ctx, plan) में पास करता है, और संगतता के लिए प्रोवाइडर केवल तभी योजना को फिर से बना सकते हैं जब वह आर्ग्युमेंट अनुपस्थित हो। माइग्रेशन आइटम बाहरी सक्रियण प्रभावों के लिए applyPhase: "after-promotion" सेट कर सकते हैं, जिन्हें ऑनबोर्डिंग को तब तक स्थगित करना चाहिए जब तक स्टेज किया गया स्थानीय डेटा स्थायी रूप से प्रकाशित न हो जाए। उन प्रोवाइडर को deferredApply: { retrySafe: true } घोषित करना होगा और हर स्थगित प्रभाव को बाधित प्रोसेस के बाद फिर से चलाने के लिए सुरक्षित बनाना होगा; ऑनबोर्डिंग अघोषित स्थगित प्रभावों को अस्वीकार करती है। किसी आइडेम्पोटेंट नो-ऑप को deferredCompletion: true वाला गैर-परिवर्तनकारी आइटम लौटाना चाहिए, ताकि रिकवरी उसे पूर्ण के रूप में दर्ज कर सके। स्टैंडअलोन openclaw migrate अब भी अपनी सामान्य बैकअप-समर्थित प्रक्रिया के माध्यम से पूरी योजना लागू करता है।

प्रोवाइडर Plugin आइटम निर्माण और सारांश गणनाओं के लिए openclaw/plugin-sdk/migration, तथा विरोध-जागरूक फ़ाइल कॉपी, केवल-आर्काइव रिपोर्ट कॉपी, कैश किए गए कॉन्फ़िगरेशन-रनटाइम रैपर और माइग्रेशन रिपोर्ट के लिए openclaw/plugin-sdk/migration-runtime का उपयोग कर सकते हैं।

ऑनबोर्डिंग एकीकरण

जब कोई प्रोवाइडर किसी ज्ञात स्रोत का पता लगाता है, तो ऑनबोर्डिंग माइग्रेशन की पेशकश कर सकती है। openclaw onboard --flow import और openclaw setup --wizard --import-from hermes दोनों एक ही Plugin माइग्रेशन प्रोवाइडर का उपयोग करते हैं और लागू करने से पहले फिर भी पूर्वावलोकन दिखाते हैं। स्टैंडअलोन माइग्रेशन के विपरीत, नए-लक्ष्य वाला ऑनबोर्डिंग पथ स्थानीय आर्टिफ़ैक्ट और इंपोर्ट किए गए क्रेडेंशियल को स्टेज करता है, स्टेजिंग के भीतर इंपोर्ट किए गए इन्फ़रेंस को सत्यापित या सुधारता है, फिर कॉन्फ़िगरेशन कमिट करने से पहले वर्कस्पेस और एजेंट स्थिति को प्रमोट करता है। mode-0600 वाला प्रमोशन जर्नल अगली रन को बाधित प्रकाशन पूरा करने या वापस रोल करने देता है—जिसमें कोई भी स्थगित बाहरी सक्रियण शामिल है—और इसके लिए इंपोर्ट किए गए स्थानीय डेटा को फिर से चलाना नहीं पड़ता।

संबंधित

Was this useful?
On this page

On this page