CLI
CLI पैकेज:clawhub, बाइनरी: clawhub.
इसे npm या pnpm से वैश्विक रूप से इंस्टॉल करें:
वैश्विक फ़्लैग
--workdir <dir>: कार्यशील डायरेक्टरी (डिफ़ॉल्ट: cwd; कॉन्फ़िगर होने पर Clawdbot वर्कस्पेस पर फ़ॉलबैक)--dir <dir>: workdir के अंतर्गत इंस्टॉल डायरेक्टरी (डिफ़ॉल्ट:skills)--site <url>: ब्राउज़र लॉगिन के लिए आधार URL (डिफ़ॉल्ट:https://clawhub.ai)--registry <url>: API आधार URL (डिफ़ॉल्ट: खोजा गया, अन्यथाhttps://clawhub.ai)--no-input: प्रॉम्प्ट अक्षम करें
CLAWHUB_SITE(पुरानाCLAWDHUB_SITE)CLAWHUB_REGISTRY(पुरानाCLAWDHUB_REGISTRY)CLAWHUB_WORKDIR(पुरानाCLAWDHUB_WORKDIR)
HTTP प्रॉक्सी
CLI कॉर्पोरेट प्रॉक्सी या प्रतिबंधित नेटवर्क के पीछे स्थित सिस्टम के लिए मानक HTTP प्रॉक्सी परिवेश चरों का पालन करता है:HTTPS_PROXY/https_proxyHTTP_PROXY/http_proxyNO_PROXY/no_proxy
HTTPS_PROXY, साधारण HTTP के लिए HTTP_PROXY
का उपयोग होता है। विशिष्ट होस्ट या डोमेन के लिए प्रॉक्सी को बायपास करने हेतु
NO_PROXY / no_proxy का पालन किया जाता है।
यह उन सिस्टम पर आवश्यक है जहाँ सीधे आउटबाउंड कनेक्शन अवरुद्ध होते हैं
(जैसे Docker कंटेनर, केवल-प्रॉक्सी इंटरनेट वाला Hetzner VPS, कॉर्पोरेट
फ़ायरवॉल)।
उदाहरण:
कॉन्फ़िगरेशन फ़ाइल
आपका API टोकन और कैश किया हुआ रजिस्ट्री URL संग्रहीत करती है।- macOS:
~/Library/Application Support/clawhub/config.json - Linux/XDG:
$XDG_CONFIG_HOME/clawhub/config.jsonया~/.config/clawhub/config.json - Windows:
%APPDATA%\\clawhub\\config.json - पुराना फ़ॉलबैक: यदि
clawhub/config.jsonअभी मौजूद नहीं है, लेकिनclawdhub/config.jsonमौजूद है, तो CLI पुराने पथ का पुनः उपयोग करता है - ओवरराइड:
CLAWHUB_CONFIG_PATH(पुरानाCLAWDHUB_CONFIG_PATH)
कमांड
login / auth login
- डिफ़ॉल्ट: ब्राउज़र में
<site>/cli/authखोलता है और लूपबैक कॉलबैक के माध्यम से प्रक्रिया पूरी करता है। - हेडलेस:
clawhub login --token clh_... - रिमोट/हेडलेस इंटरैक्टिव:
clawhub login --deviceएक कोड प्रिंट करता है और आपके द्वारा<site>/cli/deviceपर उसे अधिकृत किए जाने तक प्रतीक्षा करता है।
whoami
- संग्रहीत टोकन को
/api/v1/whoamiके माध्यम से सत्यापित करता है।
token
- संग्रहीत API टोकन को stdout पर प्रिंट करता है।
- स्थानीय लॉगिन टोकन को CI सीक्रेट सेटअप कमांड में पाइप करने के लिए उपयोगी।
star <skill> / unstar <skill>
- आपके बुकमार्क में किसी स्किल को जोड़ता/हटाता है। संगतता के लिए कमांड नाम
starऔरunstarही रहते हैं। POST /api/v1/stars/<slug>औरDELETE /api/v1/stars/<slug>को कॉल करता है।--yesपुष्टि को छोड़ देता है।
search <query...>
/api/v1/search?q=...को कॉल करता है।- आउटपुट में स्किल स्लग, स्वामी हैंडल, प्रदर्शन नाम और प्रासंगिकता स्कोर शामिल होते हैं।
- खोज, डाउनलोड लोकप्रियता से पहले सटीक स्लग/नाम टोकन मिलानों को प्राथमिकता देती है।
mapजैसा स्वतंत्र स्लग टोकन,amapके अंदर मौजूद उपस्ट्रिंग की तुलना मेंpersonal-mapसे अधिक मज़बूती से मेल खाता है। - लोकप्रियता रैंकिंग का एक छोटा पूर्व-कारक है, शीर्ष स्थान की गारंटी नहीं।
- यदि कोई स्किल दिखाई देनी चाहिए लेकिन दिखाई नहीं देती, तो मेटाडेटा का नाम बदलने से पहले, लॉग इन रहते हुए
clawhub inspect @owner/slugचलाकर स्वामी को दिखाई देने वाले मॉडरेशन निदान जाँचें।
explore
/api/v1/skills?limit=...&sort=createdAtके माध्यम से नवीनतम स्किल सूचीबद्ध करता है (createdAtके अनुसार अवरोही क्रम में)।- फ़्लैग:
--limit <n>(1-200, डिफ़ॉल्ट: 25)--sort newest|updated|rating|downloads|trending(डिफ़ॉल्ट: नवीनतम)। संगतता के लिए पुराने इंस्टॉल सॉर्ट उपनाम अभी भी काम करते हैं।--json(मशीन-पठनीय आउटपुट)
- आउटपुट:
<slug> v<version> <age> <summary>(सारांश 50 वर्णों तक छोटा किया गया)।
inspect @owner/slug
- इंस्टॉल किए बिना स्किल मेटाडेटा और संस्करण फ़ाइलें प्राप्त करता है।
--version <version>: किसी विशिष्ट संस्करण का निरीक्षण करें (डिफ़ॉल्ट: नवीनतम)।--tag <tag>: किसी टैग किए गए संस्करण का निरीक्षण करें (जैसेlatest)।--versions: संस्करण इतिहास सूचीबद्ध करें (पहला पृष्ठ)।--limit <n>: सूचीबद्ध करने के लिए अधिकतम संस्करण (1-200)।--files: चयनित संस्करण की फ़ाइलें सूचीबद्ध करें।--file <path>: कच्चे फ़ाइल बाइट प्राप्त करें (10MB सीमा)।--json: मशीन-पठनीय आउटपुट; उपलब्ध होने पर--fileमें सटीक बाइट base64 और UTF-8 पाठ के रूप में शामिल होते हैं।
install @owner/slug
- नामित स्वामी और स्किल के लिए नवीनतम संस्करण निर्धारित करता है।
/api/v1/downloadके माध्यम से zip डाउनलोड करता है।<workdir>/<dir>/<slug>में एक्सट्रैक्ट करता है।- पिन की गई स्किल को ओवरराइट करने से मना करता है; पहले
clawhub unpin <skill>चलाएँ। - लिखता है:
<workdir>/.clawhub/lock.json(पुराना.clawdhub)<skill>/.clawhub/origin.json(पुराना.clawdhub)
uninstall <skill>
<workdir>/<dir>/<slug>हटाता है और लॉकफ़ाइल प्रविष्टि मिटाता है।- लॉग इन होने पर सर्वोत्तम-प्रयास टेलीमेट्री भेजता है, ताकि वर्तमान इंस्टॉल संख्या को निष्क्रिय किया जा सके।
- इंटरैक्टिव: पुष्टि माँगता है।
- गैर-इंटरैक्टिव (
--no-input):--yesआवश्यक है।
list
<workdir>/.clawhub/lock.jsonपढ़ता है (पुराना.clawdhub)।clawhub pinसे फ़्रीज़ की गई स्किल के आगेpinnedदिखाता है, जिसमें वैकल्पिक कारण भी शामिल है।
pin <skill>
- इंस्टॉल की गई स्किल को लॉकफ़ाइल में पिन की गई के रूप में चिह्नित करता है।
--reason <text>दर्ज करता है कि स्किल क्यों फ़्रीज़ की गई है।- पिन की गई स्किल को
update --allछोड़ देता है और प्रत्यक्षupdate <skill>उन्हें अस्वीकार करता है। - पिन की गई स्किल
install --forceको भी अस्वीकार करती है, ताकि स्थानीय बाइट अनजाने में बदले न जा सकें।
unpin <skill>
- इंस्टॉल की गई स्किल से लॉकफ़ाइल पिन हटाता है, ताकि भविष्य के अपडेट उसे संशोधित कर सकें।
update [@owner/slug] / update --all
- स्थानीय फ़ाइलों से फ़िंगरप्रिंट की गणना करता है।
- यदि फ़िंगरप्रिंट किसी ज्ञात संस्करण से मेल खाता है: कोई प्रॉम्प्ट नहीं।
- यदि फ़िंगरप्रिंट मेल नहीं खाता:
- डिफ़ॉल्ट रूप से अस्वीकार करता है
--forceसे ओवरराइट करता है (या इंटरैक्टिव होने पर प्रॉम्प्ट करता है)
- पिन की गई स्किल को
--forceकभी अपडेट नहीं करता। update <skill>पिन की गई स्किल के लिए तुरंत विफल होता है और पहलेclawhub unpin <skill>चलाने को कहता है।update --allपिन किए गए स्लग छोड़ देता है और जो फ़्रीज़ रहे उनका सारांश प्रिंट करता है।
skill publish <path>
- स्थानीय बंडल फ़िंगरप्रिंट की तुलना ClawHub से करता है और सामग्री पहले से प्रकाशित होने पर सफलतापूर्वक बाहर निकलता है।
- नई स्किल का डिफ़ॉल्ट
1.0.0होता है; बदली गई स्किल का डिफ़ॉल्ट अगला पैच संस्करण होता है। --version <version>स्पष्ट रूप से एक संस्करण चुनता है और सामग्री किसी मौजूदा संस्करण से मेल खाने पर भी प्रकाशित करता है।--dry-runअपलोड किए बिना प्रकाशन का समाधान करता है;--jsonएक मशीन-पठनीय परिणाम प्रिंट करता है।- जब कर्ता के पास प्रकाशक पहुँच होती है, तो
--owner <handle>किसी संगठन/उपयोगकर्ता प्रकाशक हैंडल के अंतर्गत प्रकाशित करता है। --migrate-ownerनया संस्करण प्रकाशित करते समय किसी मौजूदा स्किल को--ownerपर ले जाता है। दोनों प्रकाशकों पर व्यवस्थापक/स्वामी पहुँच आवश्यक है।- स्वामी और समीक्षा व्यवहार की व्याख्या
docs/publishing.mdमें की गई है। - किसी स्किल को प्रकाशित करने का अर्थ है कि उसे ClawHub पर
MIT-0के अंतर्गत जारी किया जाता है। - प्रकाशित स्किल का उपयोग, संशोधन और पुनर्वितरण बिना श्रेय के निःशुल्क किया जा सकता है।
- ClawHub सशुल्क स्किल या प्रति-स्किल मूल्य निर्धारण का समर्थन नहीं करता।
- पुराना उपनाम:
publish <path>।
GitHub Actions
ClawHub का पुनः उपयोग योग्यskill-publish.yml
वर्कफ़्लो एक skill_path के लिए, या root (डिफ़ॉल्ट: skills) के अंतर्गत प्रत्येक सीधे स्किल
फ़ोल्डर के लिए skill publish को कॉल करता है। यह अपरिवर्तित स्किल को छोड़ देता है और
उसी स्वचालित पैच-संस्करण व्यवहार का उपयोग करता है।
टोकन के बिना पूर्वावलोकन करने के लिए dry_run: true सेट करें। वास्तविक प्रकाशन के लिए
clawhub_token सीक्रेट आवश्यक है।
sync
- वर्तमान workdir, कॉन्फ़िगर की गई स्किल डायरेक्टरी और किसी भी
--root <dir>फ़ोल्डर को उन स्थानीय स्किल फ़ोल्डर के लिए स्कैन करता है जिनमेंSKILL.mdयाskill.mdहो। - प्रत्येक स्थानीय स्किल फ़िंगरप्रिंट की तुलना ClawHub से करता है और केवल नई या बदली गई स्किल प्रकाशित करता है।
- नई स्किल
1.0.0के रूप में प्रकाशित होती हैं; बदली गई स्किल डिफ़ॉल्ट रूप से अगला पैच संस्करण प्रकाशित करती हैं। उन अपडेट बैचों के लिए--bump minor|majorका उपयोग करें जिन्हें बड़े semver चरण से आगे बढ़ना चाहिए। --dry-runअपलोड किए बिना प्रकाशन योजना दिखाता है;--jsonएक मशीन-पठनीय योजना प्रिंट करता है।--allबिना प्रॉम्प्ट किए प्रत्येक नई या बदली गई स्किल प्रकाशित करता है।--allके बिना, इंटरैक्टिव टर्मिनल आपको प्रकाशित करने के लिए स्किल चुनने देते हैं।- जब कर्ता के पास प्रकाशक पहुँच होती है, तो
--owner <handle>किसी संगठन/उपयोगकर्ता प्रकाशक हैंडल के अंतर्गत प्रकाशित करता है। syncकेवल एक-तरफ़ा प्रकाशन है। यह इंस्टॉल, अपडेट, डाउनलोड या इंस्टॉल/डाउनलोड टेलीमेट्री रिपोर्ट नहीं करता।
scan --slug <slug>
clawhub loginआवश्यक है।POST /api/v1/skills/-/scanके माध्यम से ClawHub ClawScan चलाता है, फिर स्कैन के अंतिम स्थिति में पहुँचने तक पोल करता है।- स्कैन अतुल्यकालिक होते हैं और पूरे होने में समय लग सकता है। कतार में रहते समय, टर्मिनल स्पिनर वर्तमान प्राथमिकता-प्राप्त स्कैन स्थान और आगे मौजूद स्कैन की संख्या दिखाता है।
- प्रकाशित स्कैन के लिए स्वामित्व या प्रकाशक प्रबंधन पहुँच आवश्यक है। मॉडरेटर/व्यवस्थापक
clawhub-adminके माध्यम से उसी बैकएंड का उपयोग कर सकते हैं। --updateकेवल--slugके साथ मान्य है; यह सफल प्रकाशित स्कैन परिणामों को चयनित संस्करण में वापस लिखता है।--output <file.zip>,manifest.json,clawscan.json,skillspector.json,static-analysis.json,virustotal.json, औरREADME.mdसहित पूरी रिपोर्ट आर्काइव डाउनलोड करता है।--jsonस्वचालन के लिए पूर्ण पोल प्रतिक्रिया प्रिंट करता है।- स्थानीय पथ स्कैन अब समर्थित नहीं हैं। नया संस्करण अपलोड करें, फिर उस सबमिट किए गए संस्करण के संग्रहीत स्कैन परिणाम प्राप्त करने के लिए
scan downloadका उपयोग करें।
scan download <name>
- के लिए
clawhub loginआवश्यक है। - सबमिट किए गए skill या Plugin संस्करण के लिए संग्रहीत स्कैन रिपोर्ट ZIP डाउनलोड करता है, जिसमें वे संस्करण भी शामिल हैं जिन्हें ClawHub सुरक्षा जाँचों ने अवरुद्ध या छिपाया था।
- Skill डाउनलोड skill slug का उपयोग करते हैं और डिफ़ॉल्ट रूप से
--kind skillका उपयोग करते हैं। - Plugin डाउनलोड पैकेज नाम का उपयोग करते हैं और उनके लिए
--kind pluginआवश्यक है। --versionआवश्यक है, ताकि लेखक ClawHub द्वारा अवरुद्ध किए गए बिल्कुल उसी सबमिट किए गए संस्करण का निरीक्षण करें।--output <file.zip>गंतव्य पथ चुनता है।
GitHub Actions
ClawHub, skill रिपॉज़िटरी और कैटलॉग रिपॉज़िटरी के लिए/.github/workflows/skill-publish.yml
पर एक आधिकारिक पुनः उपयोग योग्य वर्कफ़्लो प्रदान करता है।
सामान्य कैटलॉग सेटअप:
- कैटलॉग रिपॉज़िटरी के लिए
rootका डिफ़ॉल्ट मानskillsहै। - एक skill फ़ोल्डर को संसाधित करने के लिए
skill_path: skills/review-helperपास करें। ownerCLI के--ownerफ़्लैग से मैप होता है; प्रमाणित उपयोगकर्ता के रूप में प्रकाशित करने के लिए इसे छोड़ दें।- V1 skill प्रकाशन
clawhub_tokenका उपयोग करता है; फिलहाल GitHub OIDC विश्वसनीय प्रकाशन केवल पैकेज के लिए है।
delete <skill>
--versionके बिना, किसी skill को सॉफ़्ट-डिलीट करें (स्वामी, मॉडरेटर या एडमिन)।DELETE /api/v1/skills/{slug}को कॉल करता है।- स्वामी द्वारा शुरू किए गए सॉफ़्ट-डिलीट slug को 30 दिनों के लिए आरक्षित रखते हैं; कमांड समाप्ति समय प्रिंट करता है।
--version <version>विफल होने पर बंद होने वाले, संस्करण-विशिष्ट रूट के माध्यम से स्वामित्व वाले किसी एक गैर-नवीनतम संस्करण को वापस लेता है। संस्करण संख्या आरक्षित रहती है और अलग सामग्री के साथ दोबारा प्रकाशित नहीं की जा सकती। वर्तमान नवीनतम संस्करण को हटाने से पहले उसका प्रतिस्थापन प्रकाशित करें। इस केवल-संस्करण प्रवाह में प्लेटफ़ॉर्म कर्मचारी स्वामित्व को दरकिनार नहीं करते।--reason <text>पूरे skill के सॉफ़्ट-डिलीट और ऑडिट लॉग में मॉडरेशन टिप्पणी दर्ज करता है।--note <text>,--reasonका उपनाम है।--yesपुष्टि को छोड़ देता है।
undelete <skill>
- किसी छिपे हुए skill को पुनर्स्थापित करें (स्वामी, मॉडरेटर या एडमिन)।
POST /api/v1/skills/{slug}/undeleteको कॉल करता है।--version <version>केवल उसी स्वामी कर्ता द्वारा पहले वापस ली गई, सुरक्षित रखी गई बिल्कुल उसी कलाकृति को पुनर्स्थापित करता है। यह पुनर्स्थापित संस्करण को नवीनतम नहीं बनाता या हटाए गए टैग दोबारा नहीं बनाता।- संस्करण पुनर्स्थापन
POST /api/v1/skills/{slug}/versions/{version}/restoreको कॉल करता है। --reason <text>skill और ऑडिट लॉग में मॉडरेशन टिप्पणी दर्ज करता है।--note <text>,--reasonका उपनाम है।--yesपुष्टि को छोड़ देता है।
hide <skill>
- किसी skill को छिपाएँ (स्वामी, मॉडरेटर या एडमिन)।
deleteका उपनाम।
unhide <skill>
- किसी skill को फिर से दिखाएँ (स्वामी, मॉडरेटर या एडमिन)।
undeleteका उपनाम।
skill rename <skill> <new-name>
- स्वामित्व वाले किसी skill का नाम बदलें और पिछले slug को रीडायरेक्ट उपनाम के रूप में रखें।
POST /api/v1/skills/{slug}/renameको कॉल करता है।--yesपुष्टि को छोड़ देता है।
skill merge <source> <target>
- स्वामित्व वाले एक skill को स्वामित्व वाले दूसरे skill में मर्ज करें।
- स्रोत slug सार्वजनिक रूप से सूचीबद्ध होना बंद कर देता है और लक्ष्य का रीडायरेक्ट उपनाम बन जाता है।
POST /api/v1/skills/{sourceSlug}/mergeको कॉल करता है।--yesपुष्टि को छोड़ देता है।
transfer
- स्वामित्व हस्तांतरण वर्कफ़्लो।
- उपयोगकर्ता हैंडल को किए गए हस्तांतरण एक लंबित अनुरोध बनाते हैं, जिसे प्राप्तकर्ता स्वीकार करता है।
- संगठन/प्रकाशक हैंडल को किए गए हस्तांतरण तभी तुरंत लागू होते हैं, जब कर्ता के पास वर्तमान स्वामी और गंतव्य प्रकाशक दोनों पर एडमिन पहुँच हो।
- उप-कमांड:
transfer request <skill> <handle> [--message "..."] [--yes]transfer list [--outgoing]transfer accept <skill> [--yes]transfer reject <skill> [--yes]transfer cancel <skill> [--yes]
- एंडपॉइंट:
POST /api/v1/skills/{slug}/transferPOST /api/v1/skills/{slug}/transfer/acceptPOST /api/v1/skills/{slug}/transfer/rejectPOST /api/v1/skills/{slug}/transfer/cancelGET /api/v1/transfers/incomingGET /api/v1/transfers/outgoing
package explore [query...]
GET /api/v1/packagesऔरGET /api/v1/packages/searchके माध्यम से एकीकृत पैकेज कैटलॉग ब्राउज़ करता है या उसमें खोज करता है।- Plugin और अन्य पैकेज-परिवार प्रविष्टियों के लिए इसका उपयोग करें; शीर्ष-स्तरीय
searchskill खोज सतह बना रहता है। - फ़्लैग:
--family skill|code-plugin|bundle-plugin--official--executes-code--target <target>,--os <os>,--arch <arch>,--libc <libc>--requires-browser,--requires-desktop,--requires-native-deps--requires-external-service,--external-service <name>--binary <name>,--os-permission <name>--artifact-kind legacy-zip|npm-pack--npm-mirror--limit <n>(1-100, डिफ़ॉल्ट: 25)--json
package inspect <name>
- इंस्टॉल किए बिना पैकेज मेटाडेटा प्राप्त करता है।
- Plugin मेटाडेटा, संगतता, सत्यापन, स्रोत और संस्करण/फ़ाइल निरीक्षण के लिए इसका उपयोग करें।
--version <version>: किसी विशिष्ट संस्करण का निरीक्षण करें (डिफ़ॉल्ट: नवीनतम)।--tag <tag>: किसी टैग किए गए संस्करण का निरीक्षण करें (उदाहरण:latest)।--versions: संस्करण इतिहास सूचीबद्ध करें (पहला पृष्ठ)।--limit <n>: सूचीबद्ध किए जाने वाले संस्करणों की अधिकतम संख्या (1-100)।--files: चयनित संस्करण की फ़ाइलें सूचीबद्ध करें।--file <path>: सीमित UTF-8 टेक्स्ट पूर्वावलोकन प्राप्त करें (200KB सीमा)।--json: मशीन-पठनीय आउटपुट।
package download <name>
GET /api/v1/packages/{name}/versions/{version}/artifactके माध्यम से पैकेज संस्करण का समाधान करता है।- रिज़ॉल्वर के
downloadUrlसे कलाकृति डाउनलोड करता है। - सभी कलाकृतियों के लिए ClawHub SHA-256 सत्यापित करता है।
- ClawPack npm-pack कलाकृतियों के लिए npm
sha512अखंडता, npm shasum और tarball केpackage.jsonनाम/संस्करण को भी सत्यापित करता है। - पुराने ZIP संस्करण पुराने ZIP रूट के माध्यम से डाउनलोड होते हैं।
- फ़्लैग:
--version <version>: कोई विशिष्ट संस्करण डाउनलोड करें।--tag <tag>: कोई टैग किया गया संस्करण डाउनलोड करें (डिफ़ॉल्ट:latest)।-o, --output <path>: आउटपुट फ़ाइल या निर्देशिका।--force: किसी मौजूदा आउटपुट फ़ाइल को अधिलेखित करें।--json: मशीन-पठनीय आउटपुट।
package verify <file>
- स्थानीय कलाकृति के लिए ClawHub SHA-256, npm
sha512अखंडता और npm shasum की गणना करता है। --packageके साथ, ClawHub से अपेक्षित मेटाडेटा का समाधान करता है और स्थानीय फ़ाइल की प्रकाशित कलाकृति मेटाडेटा से तुलना करता है।- प्रत्यक्ष डाइजेस्ट फ़्लैग के साथ, नेटवर्क लुकअप के बिना सत्यापित करता है।
- फ़्लैग:
--package <name>: अपेक्षित कलाकृति मेटाडेटा का समाधान करने के लिए पैकेज नाम।--version <version>या--tag <tag>: अपेक्षित पैकेज संस्करण।--sha256 <hex>: अपेक्षित ClawHub SHA-256।--npm-integrity <sri>: अपेक्षित npm अखंडता।--npm-shasum <sha1>: अपेक्षित npm shasum।--json: मशीन-पठनीय आउटपुट।
package validate <source>
- स्थानीय Plugin पैकेज फ़ोल्डर पर ClawHub CLI का बंडल किया हुआ Plugin Inspector चलाता है।
- स्थानीय OpenClaw चेकआउट खोजे या आयात किए बिना, डिफ़ॉल्ट रूप से ऑफ़लाइन/स्थैतिक सत्यापन करता है।
- गंभीर संगतता त्रुटियों पर गैर-शून्य निकास होता है। केवल-चेतावनी निष्कर्ष प्रिंट होते हैं, लेकिन निकास शून्य होता है।
- फ़्लैग:
--out <dir>: इस निर्देशिका में Plugin Inspector रिपोर्ट लिखें।--openclaw <path>: किसी स्पष्ट स्थानीय OpenClaw चेकआउट के विरुद्ध निरीक्षण करें।--runtime: रनटाइम कैप्चर सक्षम करें; Plugin कोड आयात करता है।--allow-execute: अलग-थलग कार्यक्षेत्र में रनटाइम कैप्चर की अनुमति दें।--no-mock-sdk: रनटाइम कैप्चर के दौरान मॉक किए गए OpenClaw SDK को अक्षम करें।--json: मशीन-पठनीय आउटपुट।
package delete <name>
--versionके बिना, किसी पैकेज और उसके सभी रिलीज़ को सॉफ़्ट-डिलीट करता है।--version <version>विफल होने पर बंद होने वाले, संस्करण-विशिष्ट रूट के माध्यम से स्वामित्व वाली किसी एक गैर-नवीनतम रिलीज़ को वापस लेता है। संस्करण संख्या आरक्षित रहती है और अलग सामग्री के साथ दोबारा प्रकाशित नहीं की जा सकती। वर्तमान नवीनतम संस्करण को हटाने से पहले उसका प्रतिस्थापन प्रकाशित करें। इस केवल-संस्करण प्रवाह के लिए पैकेज स्वामी या संगठन प्रकाशक एडमिन आवश्यक है; प्लेटफ़ॉर्म कर्मचारी पैकेज स्वामित्व को दरकिनार नहीं करते।- पूरे पैकेज के सॉफ़्ट-डिलीट के लिए पैकेज स्वामी, संगठन प्रकाशक स्वामी/एडमिन, प्लेटफ़ॉर्म मॉडरेटर या प्लेटफ़ॉर्म एडमिन आवश्यक है।
- फ़्लैग:
--version <version>: किसी एक गैर-नवीनतम संस्करण को वापस लें।--yes: पुष्टि को छोड़ दें।--json: मशीन-पठनीय आउटपुट।
package undelete <name>
- सॉफ़्ट-डिलीट किए गए पैकेज और रिलीज़ को पुनर्स्थापित करता है।
- इसके लिए पैकेज स्वामी, संगठन प्रकाशक स्वामी/एडमिन, प्लेटफ़ॉर्म मॉडरेटर या प्लेटफ़ॉर्म एडमिन आवश्यक है।
POST /api/v1/packages/{name}/undeleteको कॉल करता है।--version <version>केवल उसी स्वामी कर्ता द्वारा पहले वापस ली गई, सुरक्षित रखी गई बिल्कुल उसी रिलीज़ को पुनर्स्थापित करता है। यह रिलीज़ को नवीनतम नहीं बनाता या हटाए गए पैकेज टैग/dist-tags दोबारा नहीं बनाता।- संस्करण पुनर्स्थापन
POST /api/v1/packages/{name}/versions/{version}/restoreको कॉल करता है। - फ़्लैग:
--version <version>: स्वामी द्वारा वापस ली गई किसी एक रिलीज़ को पुनर्स्थापित करें।--yes: पुष्टि को छोड़ दें।--json: मशीन-पठनीय आउटपुट।
package transfer <name>
- किसी पैकेज को दूसरे प्रकाशक को स्थानांतरित करता है।
- वर्तमान पैकेज स्वामी और गंतव्य प्रकाशक, दोनों के लिए व्यवस्थापक पहुँच आवश्यक है, जब तक कि यह कार्य किसी प्लेटफ़ॉर्म व्यवस्थापक द्वारा न किया जाए।
- स्कोप किए गए पैकेज नामों को मेल खाने वाले स्कोप स्वामी को ही स्थानांतरित किया जाना चाहिए।
POST /api/v1/packages/{name}/transferको कॉल करता है।- फ़्लैग:
--to <owner>: गंतव्य प्रकाशक हैंडल।--reason <text>: वैकल्पिक ऑडिट कारण।--json: मशीन-पठनीय आउटपुट।
package report
- किसी पैकेज की मॉडरेटरों को रिपोर्ट करने के लिए प्रमाणीकृत कमांड।
POST /api/v1/packages/{name}/reportको कॉल करता है।- रिपोर्ट पैकेज-स्तरीय होती हैं, वैकल्पिक रूप से किसी संस्करण से संबद्ध की जा सकती हैं, और समीक्षा के लिए मॉडरेटरों को दिखाई देने लगती हैं।
- रिपोर्ट अपने-आप पैकेज नहीं छिपातीं या डाउनलोड अवरुद्ध नहीं करतीं।
- फ़्लैग:
--version <version>: रिपोर्ट से संबद्ध करने के लिए वैकल्पिक पैकेज संस्करण।--reason <text>: आवश्यक रिपोर्ट कारण।--json: मशीन-पठनीय आउटपुट।
package moderation-status
- पैकेज की मॉडरेशन दृश्यता जाँचने के लिए स्वामी कमांड।
GET /api/v1/packages/{name}/moderationको कॉल करता है।- वर्तमान पैकेज स्कैन स्थिति, खुली रिपोर्टों की संख्या, नवीनतम रिलीज़ की मैन्युअल मॉडरेशन स्थिति, डाउनलोड अवरोध स्थिति और मॉडरेशन कारण दिखाता है।
- फ़्लैग:
--json: मशीन-पठनीय आउटपुट।
package readiness <name>
- जाँचता है कि कोई पैकेज भविष्य में OpenClaw द्वारा उपयोग के लिए तैयार है या नहीं।
GET /api/v1/packages/{name}/readinessको कॉल करता है।- आधिकारिक स्थिति, ClawPack उपलब्धता, आर्टिफ़ैक्ट डाइजेस्ट, स्रोत उद्गम, OpenClaw संगतता, होस्ट लक्ष्य, परिवेश मेटाडेटा और स्कैन स्थिति में आने वाली बाधाओं की रिपोर्ट करता है।
- फ़्लैग:
--json: मशीन-पठनीय आउटपुट।
package migration-status <name>
- ऐसे पैकेज के लिए ऑपरेटर-उन्मुख माइग्रेशन स्थिति दिखाता है, जो किसी बंडल किए गए OpenClaw Plugin को प्रतिस्थापित कर सकता है।
package readinessवाले समान परिकलित तत्परता एंडपॉइंट को कॉल करता है, लेकिन माइग्रेशन-केंद्रित स्थिति, नवीनतम संस्करण, आधिकारिक-पैकेज स्थिति, जाँचें और बाधाएँ प्रिंट करता है।- फ़्लैग:
--json: मशीन-पठनीय आउटपुट।
publisher create <handle>
- प्रमाणीकृत उपयोगकर्ता के स्वामित्व वाला संगठन प्रकाशक बनाता है।
- हैंडल को छोटे अक्षरों में सामान्यीकृत किया जाता है और इसे
@के साथ या उसके बिना दिया जा सकता है। - नए बनाए गए संगठन प्रकाशक डिफ़ॉल्ट रूप से विश्वसनीय/आधिकारिक नहीं होते।
- यदि हैंडल का उपयोग पहले से किसी मौजूदा प्रकाशक, उपयोगकर्ता या आरक्षित रूट द्वारा किया जा रहा हो, तो यह विफल हो जाता है।
package publish <source>
POST /api/v1/packagesके माध्यम से कोड Plugin या बंडल Plugin प्रकाशित करता है।<source>यह स्वीकार करता है:- स्थानीय फ़ोल्डर पथ:
./my-plugin - स्थानीय ClawPack npm-pack टारबॉल:
./my-plugin-1.2.3.tgz - GitHub रेपो:
owner/repoयाowner/repo@ref - GitHub URL:
https://github.com/owner/repo
- स्थानीय फ़ोल्डर पथ:
- मेटाडेटा का स्वतः पता
package.json,openclaw.plugin.jsonऔर वास्तविक OpenClaw बंडल मार्करों, जैसे.codex-plugin/plugin.json,.claude-plugin/plugin.jsonऔर.cursor-plugin/plugin.json, से लगाया जाता है। .tgzस्रोतों को ClawPack माना जाता है। CLI सटीक npm-pack बाइट अपलोड करता है और निकाली गईpackage/सामग्री का उपयोग केवल सत्यापन और मेटाडेटा पूर्व-भरण के लिए करता है।- कोड-Plugin फ़ोल्डरों को अपलोड से पहले ClawPack npm टारबॉल में पैक किया जाता है, ताकि OpenClaw इंस्टॉलेशन सटीक आर्टिफ़ैक्ट सत्यापित कर सकें। बंडल-Plugin फ़ोल्डर अब भी निकाली गई फ़ाइलों वाला प्रकाशन पथ उपयोग करते हैं।
- GitHub स्रोतों के लिए, स्रोत श्रेय रेपो, निर्धारित कमिट, रेफ़ और उपपथ से स्वतः भरा जाता है।
- स्थानीय फ़ोल्डरों के लिए, यदि origin रिमोट GitHub की ओर संकेत करता है, तो स्थानीय git से स्रोत श्रेय का स्वतः पता लगाया जाता है।
- बाहरी कोड Plugin को
openclaw.compat.pluginApiऔरopenclaw.build.openclawVersionस्पष्ट रूप से घोषित करने चाहिए। शीर्ष-स्तरीयpackage.json.versionका उपयोग प्रकाशन सत्यापन के लिए फ़ॉलबैक के रूप में नहीं किया जाता। --dry-runअपलोड किए बिना निर्धारित प्रकाशन पेलोड का पूर्वावलोकन करता है।--jsonCI के लिए मशीन-पठनीय आउटपुट देता है।- जब कर्ता के पास प्रकाशक पहुँच होती है, तो
--owner <handle>उपयोगकर्ता या संगठन प्रकाशक हैंडल के अंतर्गत प्रकाशित करता है। - स्कोप किए गए पैकेज नाम चयनित स्वामी से मेल खाने चाहिए।
docs/publishing.mdदेखें। - मौजूदा फ़्लैग (
--family,--name,--version,--source-repo,--source-commit,--source-ref,--source-path) अब भी ओवरराइड के रूप में काम करते हैं। - निजी GitHub रेपो के लिए
GITHUB_TOKENआवश्यक है।
अनुशंसित स्थानीय प्रवाह
पहले--dry-run का उपयोग करें, ताकि लाइव रिलीज़ बनाने से पहले निर्धारित पैकेज मेटाडेटा और
स्रोत श्रेय की पुष्टि की जा सके:
स्थानीय फ़ोल्डर प्रवाह
कोड Plugin के लिए, फ़ोल्डर प्रकाशन पैकेज फ़ोल्डर से ClawPack आर्टिफ़ैक्ट बनाकर उसे अपलोड करता है:--family code-plugin के लिए न्यूनतम package.json
बाहरी कोड Plugin को package.json में थोड़ी-सी OpenClaw मेटाडेटा की
आवश्यकता होती है। सफल प्रकाशन के लिए यह न्यूनतम मैनिफ़ेस्ट पर्याप्त है:
openclaw.compat.pluginApiopenclaw.build.openclawVersion
package.json.versionआपके पैकेज रिलीज़ का संस्करण है, लेकिन इसका उपयोग OpenClaw संगतता/बिल्ड सत्यापन के लिए फ़ॉलबैक के रूप में नहीं किया जाता।openclaw.hostTargetsऔरopenclaw.environmentवैकल्पिक मेटाडेटा हैं। मौजूद होने पर ClawHub इन्हें दिखा सकता है, लेकिन प्रकाशन के लिए ये आवश्यक नहीं हैं।openclaw.compat.minGatewayVersionऔरopenclaw.build.pluginSdkVersionवैकल्पिक अतिरिक्त फ़ील्ड हैं, यदि आप अधिक विस्तृत संगतता मेटाडेटा प्रकाशित करना चाहते हैं।- यदि आप
clawhubCLI का कोई पुराना रिलीज़ उपयोग कर रहे हैं, तो प्रकाशन से पहले अपग्रेड करें, ताकि स्थानीय प्रीफ़्लाइट जाँचें अपलोड से पहले चलें। - यदि सत्यापन कोई सुधार कोड रिपोर्ट करता है, तो Plugin सत्यापन सुधार देखें।
GitHub Actions
ClawHub, Plugin रेपो के लिए/.github/workflows/package-publish.yml
पर एक आधिकारिक पुनःप्रयोग योग्य वर्कफ़्लो भी उपलब्ध कराता है।
सामान्य कॉलर सेटअप:
- पुनःप्रयोग योग्य वर्कफ़्लो में
sourceडिफ़ॉल्ट रूप से कॉलर रेपो होता है। - मोनोरेपो के लिए
source_pathदें, ताकि वर्कफ़्लो Plugin पैकेज फ़ोल्डर प्रकाशित करे, उदाहरण के लिएsource_path: extensions/codex। - पुनःप्रयोग योग्य वर्कफ़्लो को किसी स्थिर टैग या पूर्ण कमिट SHA पर पिन करें।
@mainसे रिलीज़ प्रकाशन न चलाएँ। pull_requestमेंdry_run: trueका उपयोग होना चाहिए, ताकि CI में अनावश्यक बदलाव न हों।- वास्तविक प्रकाशन को
workflow_dispatchया टैग पुश जैसे विश्वसनीय इवेंट तक सीमित रखा जाना चाहिए। - बिना सीक्रेट के विश्वसनीय प्रकाशन केवल
workflow_dispatchपर काम करता है; टैग पुश के लिए अब भीclawhub_tokenआवश्यक है। - पहले प्रकाशन, अविश्वसनीय पैकेज या आपातकालीन प्रकाशन के लिए
clawhub_tokenउपलब्ध रखें। - वर्कफ़्लो JSON परिणाम को आर्टिफ़ैक्ट के रूप में अपलोड करता है और उसे वर्कफ़्लो आउटपुट के रूप में उपलब्ध कराता है।
package trusted-publisher get <name>
- किसी पैकेज के लिए GitHub Actions विश्वसनीय प्रकाशक कॉन्फ़िगरेशन दिखाता है।
- कॉन्फ़िगरेशन सेट करने के बाद रेपॉज़िटरी, वर्कफ़्लो फ़ाइल नाम और वैकल्पिक परिवेश पिन की पुष्टि करने के लिए इसका उपयोग करें।
- फ़्लैग:
--json: मशीन-पठनीय आउटपुट।
package trusted-publisher set <name>
- किसी मौजूदा पैकेज के लिए GitHub Actions विश्वसनीय प्रकाशक कॉन्फ़िगरेशन जोड़ता या प्रतिस्थापित करता है।
- पैकेज को पहले सामान्य मैन्युअल या टोकन-प्रमाणीकृत
clawhub package publishके माध्यम से बनाया जाना चाहिए। - कॉन्फ़िगरेशन सेट होने के बाद, भविष्य के समर्थित GitHub Actions प्रकाशन दीर्घकालिक ClawHub टोकन के बिना OIDC/विश्वसनीय प्रकाशन का उपयोग कर सकते हैं।
--repository <repo>कोowner/repoहोना चाहिए।--workflow-filename <file>को.github/workflows/में मौजूद वर्कफ़्लो फ़ाइल नाम से मेल खाना चाहिए।--environment <name>वैकल्पिक है। कॉन्फ़िगर किए जाने पर, OIDC क्लेम में GitHub Actions परिवेश बिल्कुल मेल खाना चाहिए।- यह कमांड चलने पर ClawHub कॉन्फ़िगर की गई GitHub रेपॉज़िटरी सत्यापित करता है। सार्वजनिक रेपॉज़िटरी को सार्वजनिक GitHub मेटाडेटा के माध्यम से सत्यापित किया जा सकता है। निजी रेपॉज़िटरी के लिए ClawHub के पास उस रेपॉज़िटरी की GitHub पहुँच होनी चाहिए, उदाहरण के लिए भविष्य के ClawHub GitHub App इंस्टॉलेशन या किसी अन्य अधिकृत GitHub एकीकरण के माध्यम से।
- फ़्लैग:
--repository <repo>: GitHub रेपॉज़िटरी, उदाहरण के लिएopenclaw/example-plugin।--workflow-filename <file>: वर्कफ़्लो फ़ाइल नाम, उदाहरण के लिएpackage-publish.yml।--environment <name>: वैकल्पिक सटीक-मिलान वाला GitHub Actions परिवेश।--json: मशीन-पठनीय आउटपुट।
package trusted-publisher delete <name>
- किसी पैकेज से विश्वसनीय प्रकाशक कॉन्फ़िगरेशन हटाता है।
- यदि वर्कफ़्लो, रेपॉज़िटरी या परिवेश पिन को अक्षम या फिर से बनाने की आवश्यकता हो, तो इसे रोलबैक के रूप में उपयोग करें।
- कॉन्फ़िगरेशन फिर से सेट होने तक भविष्य के वास्तविक प्रकाशनों को सामान्य प्रमाणीकृत प्रकाशन का उपयोग करना होगा।
- फ़्लैग:
--json: मशीन-पठनीय आउटपुट।
इंस्टॉल टेलीमेट्री
- लॉग इन होने पर
clawhub install <slug>के बाद भेजी जाती है, जब तक किCLAWHUB_DISABLE_TELEMETRY=1सेट न हो। - रिपोर्टिंग सर्वोत्तम प्रयास के आधार पर होती है। टेलीमेट्री अनुपलब्ध होने पर इंस्टॉल कमांड विफल नहीं होते।
- विवरण:
docs/telemetry.md।