इसे छोड़कर कंटेंट पर जाएं

मार्केटप्लेस प्लगइन सिस्टम

मार्केटप्लेस सिस्टम आपको Git-होस्टेड कैटलॉग से प्लगइन खोजने, इंस्टॉल करने और प्रबंधित करने की सुविधा देता है। यह Claude Code प्लगइन रजिस्ट्री फ़ॉर्मेट के साथ संगत है।

/marketplace add anthropics/f5-sales-demo-marketplace
/marketplace install wordpress.com@f5-sales-demo-marketplace

या बिना किसी तर्क के बस /marketplace टाइप करें और इंटरेक्टिव प्लगइन ब्राउज़र खोलें।

एक मार्केटप्लेस एक Git रिपॉज़िटरी (या स्थानीय डायरेक्टरी) होती है जिसमें .xcsh-plugin/marketplace.json पर एक कैटलॉग फ़ाइल होती है। कैटलॉग उपलब्ध प्लगइन को उनके स्रोत, विवरण और मेटाडेटा के साथ सूचीबद्ध करता है।

एक प्लगइन एक डायरेक्टरी है जिसमें स्किल्स, कमांड, हुक, MCP सर्वर, या LSP सर्वर होते हैं। प्लगइन को name@marketplace (जैसे code-review@f5-sales-demo-marketplace) द्वारा पहचाना जाता है।

स्कोप: प्लगइन को दो स्कोप पर इंस्टॉल किया जा सकता है:

  • user (डिफ़ॉल्ट) — सभी प्रोजेक्ट में उपलब्ध, ~/.xcsh/plugins/installed_plugins.json में संग्रहीत
  • project — केवल वर्तमान प्रोजेक्ट में उपलब्ध, .xcsh/installed_plugins.json में संग्रहीत

प्रोजेक्ट-स्कोप्ड इंस्टॉल, उसी प्लगइन के user-स्कोप्ड इंस्टॉल को ओवरराइड करते हैं।

कमांडप्रभाव
/marketplaceइंटरेक्टिव प्लगइन ब्राउज़र खोलें (इंस्टॉल)

मार्केटप्लेस प्रबंधन

Section titled “मार्केटप्लेस प्रबंधन”
कमांडप्रभाव
/marketplace add <source>एक मार्केटप्लेस स्रोत जोड़ें
/marketplace remove <name>एक मार्केटप्लेस हटाएँ
/marketplace update [name]कैटलॉग पुनः प्राप्त करें; सभी अपडेट करने के लिए नाम छोड़ें
/marketplace listकॉन्फ़िगर किए गए मार्केटप्लेस सूचीबद्ध करें
कमांडप्रभाव
/marketplace discover [marketplace]उपलब्ध प्लगइन ब्राउज़ करें
/marketplace install [--force] [--scope user|project] name@marketplaceएक प्लगइन इंस्टॉल करें
/marketplace uninstall [--scope user|project] name@marketplaceएक प्लगइन अनइंस्टॉल करें
/marketplace installedइंस्टॉल किए गए मार्केटप्लेस प्लगइन सूचीबद्ध करें
/marketplace upgrade [--scope user|project] [name@marketplace]एक या सभी प्लगइन अपग्रेड करें

वही संचालन कमांड लाइन से भी उपलब्ध हैं:

xcsh plugin marketplace add <source>
xcsh plugin marketplace remove <name>
xcsh plugin marketplace update [name]
xcsh plugin marketplace list
xcsh plugin discover [marketplace]
xcsh plugin install --scope project name@marketplace

मार्केटप्लेस स्रोत

Section titled “मार्केटप्लेस स्रोत”

जब आप /marketplace add <source> चलाते हैं, तो सिस्टम स्रोत को वर्गीकृत करता है:

स्रोत फ़ॉर्मेटप्रकारउदाहरण
owner/repoGitHub शॉर्टहैंडanthropics/f5-sales-demo-marketplace
https://...*.jsonडायरेक्ट कैटलॉग URLhttps://example.com/marketplace.json
https://...*.git या git@...Git रिपॉज़िटरीhttps://github.com/org/repo.git
./path या ~/path या /pathस्थानीय डायरेक्टरी./my-marketplace

सिस्टम रिपॉज़िटरी क्लोन करता है (या स्थानीय डायरेक्टरी पढ़ता है), .xcsh-plugin/marketplace.json ढूँढता है, उसे सत्यापित करता है, और कैटलॉग को स्थानीय रूप से कैश करता है।

कैटलॉग फ़ॉर्मेट (marketplace.json)

Section titled “कैटलॉग फ़ॉर्मेट (marketplace.json)”

एक मार्केटप्लेस कैटलॉग रिपॉज़िटरी रूट में .xcsh-plugin/marketplace.json पर स्थित होता है:

{
"$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
"name": "my-marketplace",
"owner": {
"name": "Your Name",
"email": "you@example.com"
},
"description": "A collection of plugins",
"plugins": [
{
"name": "my-plugin",
"description": "What this plugin does",
"source": "./plugins/my-plugin",
"category": "development",
"homepage": "https://github.com/you/my-plugin"
}
]
}
फ़ील्डविवरण
nameमार्केटप्लेस का नाम। लोअरकेस अल्फ़ान्यूमेरिक, हाइफ़न और डॉट। अल्फ़ान्यूमेरिक से शुरू और समाप्त होना चाहिए। अधिकतम 64 अक्षर।
owner.nameमार्केटप्लेस स्वामी का नाम
pluginsप्लगइन एंट्री की सरणी

प्लगइन एंट्री फ़ील्ड

Section titled “प्लगइन एंट्री फ़ील्ड”
फ़ील्डआवश्यकविवरण
nameहाँप्लगइन का नाम (मार्केटप्लेस नाम के समान नियम)
sourceहाँप्लगइन कहाँ खोजें (नीचे देखें)
descriptionनहींसंक्षिप्त विवरण
versionनहींसंस्करण स्ट्रिंग
authorनहीं{ name, email? }
homepageनहींURL
categoryनहींश्रेणी स्ट्रिंग (जैसे development, productivity, security)
tagsनहींस्ट्रिंग टैग की सरणी
strictनहींबूलियन
commandsनहींप्रदान किए गए स्लैश कमांड
agentsनहींप्रदान किए गए एजेंट
hooksनहींहुक परिभाषाएँ
mcpServersनहींMCP सर्वर परिभाषाएँ
lspServersनहींLSP सर्वर परिभाषाएँ

प्लगइन स्रोत फ़ॉर्मेट

Section titled “प्लगइन स्रोत फ़ॉर्मेट”

source फ़ील्ड कई फ़ॉर्मेट का समर्थन करता है:

सापेक्ष पथ (मार्केटप्लेस रेपो के भीतर):

"source": "./plugins/my-plugin"

Git रिपॉज़िटरी URL:

"source": {
"source": "url",
"url": "https://github.com/org/repo.git",
"sha": "abc123..."
}

GitHub शॉर्टहैंड:

"source": {
"source": "github",
"repo": "org/repo",
"ref": "main",
"sha": "abc123..."
}

Git सबडायरेक्टरी (मोनोरेपो):

"source": {
"source": "git-subdir",
"url": "https://github.com/org/monorepo.git",
"path": "plugins/my-plugin",
"ref": "main",
"sha": "abc123..."
}

npm पैकेज:

"source": {
"source": "npm",
"package": "@scope/my-plugin",
"version": "1.0.0"
}
~/.xcsh/
config/
marketplaces.json # जोड़े गए मार्केटप्लेस की रजिस्ट्री
plugins/
installed_plugins.json # User-स्कोप्ड इंस्टॉल किए गए प्लगइन
cache/
marketplaces/ # कैश किए गए मार्केटप्लेस कैटलॉग
plugins/ # कैश की गई प्लगइन डायरेक्टरी
<project>/.xcsh/
installed_plugins.json # Project-स्कोप्ड इंस्टॉल किए गए प्लगइन

मार्केटप्लेस और प्लगइन नाम:

  • लोअरकेस अक्षर या अंक से शुरू और समाप्त होने चाहिए
  • केवल लोअरकेस अक्षर, अंक, हाइफ़न और डॉट हो सकते हैं
  • अधिकतम 64 अक्षर के होने चाहिए

प्लगइन ID (name@marketplace) कुल अधिकतम 128 अक्षर होने चाहिए।

मान्य उदाहरण: my-plugin, code-review, wordpress.com, ai-firstify अमान्य उदाहरण: -bad, bad-, .bad, Bad, under_score