uninstall
apothem uninstall कमांड के लिए CLI संदर्भ।
एक हार्नेस अडैप्टर कॉन्फ़िगरेशन हटाएँ।
सारांश
apothem uninstall --harness NAME|all [--yes] [--project PATH]
[--quiet|-q] [--verbose|-v]
[--format plain|json] [--json] [--no-color]अडैप्टर-प्रबंधित हार्नेस टारगेट हटाता है, फिर वे डायरेक्टरियाँ जिन्हें इंस्टॉल ने बनाया था, जब वे खाली हो जाएँ (जिस डायरेक्टरी में आपकी कोई भी चीज़ हो, वह बनी रहती है)।
साझा कार्य-डायरेक्टरी की मेमोरी, कॉन्टेक्स्ट और लर्निंग स्टोर का बैकअप लिया जाता है और उन्हें तभी हटाया जाता है जब उस डायरेक्टरी पर यह अंतिम हार्नेस इंस्टॉल हो।
हटाने की प्रक्रिया उन्हें उसी स्थान से हटाती है जहाँ इंस्टॉल ने उन्हें दर्ज किया था, इसलिए इंस्टॉल ने उन्हें जहाँ भी लिखा हो, वह उन्हें वहीं ढूँढ लेती है (देखें workspace प्रोफ़ाइल फ़ील्ड)। plans/ डायरेक्टरी कभी नहीं हटाई जाती।
जब तक --yes नहीं दिया जाता, कमांड पुष्टि के लिए प्रॉम्प्ट करता है। जब कोई प्रॉम्प्ट संभव न हो — --format json (प्रॉम्प्ट का टेक्स्ट एकल JSON दस्तावेज़ को दूषित कर देगा)
या एक गैर-इंटरैक्टिव शेल (कोई TTY नहीं) — तो कमांड, जब तक --yes नहीं दिया जाता, शुरुआत में ही
एक संरचित uninstall.confirmation_required त्रुटि (निकास 1) के साथ अस्वीकार कर देता है।
यदि चयनित कोई हार्नेस इंस्टॉल नहीं है, तो कमांड सफल होता है (निकास 0) और सादे आउटपुट में
NAME is not installed; nothing to remove. प्रिंट करता है, जहाँ NAME हार्नेस का id है।
इंस्टॉल रूट पर .apothem/ के अंतर्गत साझा डेटा स्टोर (memory/, contexts/,
learning/) तब तक बने रहते हैं जब तक उसी रूट पर कोई अन्य इंस्टॉल किया गया हार्नेस
अब भी उनका उपयोग करता है। जब आपके द्वारा हटाया जा रहा हार्नेस उस रूट पर अंतिम हो,
तब कमांड पहले हर स्टोर को Apothem बैकअप रूट (~/.apothem/backups/) में कॉपी करता
है, फिर उसे उसकी पूरी सामग्री सहित हटा देता है। plans/ में आप जो कुछ भी रखते हैं,
वह कभी नहीं हटाया जाता।
आपकी होम डायरेक्टरी में साझा फ़ोल्डर
कई इंस्टॉल आपकी होम डायरेक्टरी के एक ही फ़ोल्डर का उपयोग कर सकते हैं: स्किल
फ़ोल्डर (~/.agents/skills/, या ~/.codebuddy/skills/, ~/.kiro/skills/, या
~/.trae/skills/) और ~/.config/apothem/rules/ तथा
~/.config/apothem/templates/। इंस्टॉल
पृष्ठ सूचीबद्ध करता है कि कौन-सा अडैप्टर क्या लिखता है। Apothem दर्ज करता है कि
कौन-से इंस्टॉल प्रत्येक फ़ोल्डर का उपयोग करते हैं, और अनइंस्टॉल एक नियम का पालन
करता है: वह किसी फ़ोल्डर को तभी हटाता है जब कोई अन्य Apothem इंस्टॉल अब भी उसका
उपयोग नहीं करता।
- एक टूल को अनइंस्टॉल करने पर स्किल तब तक बनी रहती हैं जब तक कोई अन्य इंस्टॉल अब भी उनका उपयोग करता है, और यह बात बताई जाती है। दो प्रोजेक्ट में इंस्टॉल किया गया एक टूल दो इंस्टॉल गिना जाता है, इसलिए उसे प्रोजेक्ट A से अनइंस्टॉल करने पर फ़ोल्डर तब तक बने रहते हैं जब तक प्रोजेक्ट B अब भी उनका उपयोग करता है। अंतिम अनइंस्टॉल उन्हें हटाता है (नीचे दूसरा उदाहरण देखें)।
- केवल वही हटाया जाता है जो इंस्टॉल के अपने रिकॉर्ड में सूचीबद्ध है। फ़ोल्डरों के प्रबंधित होने से पहले किए गए इंस्टॉल का ऐसा कोई रिकॉर्ड नहीं होता, इसलिए उसे अनइंस्टॉल करने से आपकी होम में कुछ भी नहीं हटता। आपके द्वारा फ़ोल्डरों में जोड़ी गई फ़ाइलें बनी रहती हैं, और वह फ़ोल्डर भी जिसका नाम किसी Apothem स्किल का है और जिसे Apothem ने नहीं लिखा।
- जिस इंस्टॉल का प्रोजेक्ट फ़ोल्डर अब मौजूद नहीं है, उसे अनदेखा किया जाता है, ताकि कोई हटाया गया प्रोजेक्ट फ़ोल्डरों को हमेशा के लिए न रोके रखे। नोट उसका नाम बताता है।
- यदि किसी ऐसे इंस्टॉल का रिकॉर्ड, जो फ़ोल्डरों का उपयोग कर सकता है, पढ़ा नहीं जा सकता, तो अनइंस्टॉल कुछ भी हटाने से पहले एक त्रुटि के साथ रुक जाता है, और इंस्टॉल दर्ज बना रहता है। अपठनीय रिकॉर्ड की मरम्मत करें या उसे कहीं और ले जाएँ, फिर कमांड फिर से चलाएँ। किसी ऐसे टूल का क्षतिग्रस्त रिकॉर्ड, जो इन फ़ोल्डरों को कभी नहीं लिखता, अनदेखा किया जाता है।
- जब अंतिम उपयोग चला जाता है, तो खाली रह गए फ़ोल्डर भी हटा दिए जाते हैं। प्रत्येक
फ़ोल्डर का हटाए जाने से पहले
~/.apothem/backups/के अंतर्गत बैकअप लिया जाता है।
प्रत्येक अनइंस्टॉल प्रति फ़ोल्डर एक Note: प्रिंट करता है, उदाहरण के लिए Note: <harness> - ~/.agents/skills/ was kept: still used by <harness> (/path/to/project), या
was removed: no other Apothem install uses it। --format json एनवेलप में प्रत्येक
नोट "outcome": "advisory", "operation": "shared_root", और retained या
released पर सेट "role" वाली एक warnings प्रविष्टि होता है। इसमें path,
holders (वे इंस्टॉल जो फ़ोल्डर को बनाए रखते हैं), stale (अनदेखे किए गए
इंस्टॉल), और kept तथा total (बनाए रखी गई दर्ज प्रविष्टियाँ और इंस्टॉल द्वारा
सूचीबद्ध प्रविष्टियाँ) होते हैं।
यदि कोई फ़ोल्डर किसी ऐसे इंस्टॉल के कारण बना रहता है जिसे आप ढूँढ नहीं पाते, तो
नोट उसका नाम बताता है। जब प्रोजेक्ट फ़ोल्डर हटा दिया गया हो, तो इंस्टॉल को अनदेखा
किया जाता है और फ़ोल्डर अगले अनइंस्टॉल के साथ चला जाता है। जब प्रोजेक्ट मौजूद हो
पर आपने उसकी नियम फ़ाइल से Apothem ब्लॉक हाथ से हटा दिया हो, तो uninstall
हार्नेस को इंस्टॉल नहीं के रूप में रिपोर्ट करता है और अपना दावा नहीं छोड़ता; उसे
छोड़ने के लिए उस हार्नेस और प्रोजेक्ट के लिए install चलाएँ, फिर uninstall।
apothem verify दिखाता है कि कोई फ़ोल्डर अब भी पूर्ण है या नहीं।
--harness all द्वारा हटाना जानबूझकर संपूर्ण है: यह हर पंजीकृत हार्नेस को कवर करता है,
जिनमें वे भी शामिल हैं जिन्हें प्रोफ़ाइल का exclude_harnesses इंस्टॉल के दौरान छोड़ देता है।
सफ़ाई उस स्थिति तक पहुँचती है जो पहले के किसी अधिक व्यापक इंस्टॉल ने पीछे छोड़ी हो सकती है।
जो हार्नेस कभी इंस्टॉल नहीं हुए, उन्हें भी यही सूचना मिलती है।
सतत-रूप उपनाम apothem uninstalling (जिसे apothem Uninstalling के रूप में भी
स्वीकार किया जाता है) उसी हैंडलर पर हल होता है।
विकल्प
| विकल्प | विवरण |
|---|---|
--harness NAME | हटाने के लिए हार्नेस अडैप्टर, या रजिस्ट्री-व्यापी सेट के लिए all (आवश्यक)। |
--yes | पुष्टि प्रॉम्प्ट छोड़ें। |
--project PATH | प्रोजेक्ट-स्कोप हार्नेसों के लिए प्रोजेक्ट रूट। |
--quiet, -q | सूचनात्मक आउटपुट दबाएँ; केवल त्रुटियाँ उत्सर्जित होती हैं। |
--verbose, -v | अन्य कमांडों के साथ संगति के लिए स्वीकार किया जाता है; यह कमांड कोई अतिरिक्त आउटपुट प्रिंट नहीं करता। |
--format plain|json | आउटपुट प्रारूप (डिफ़ॉल्ट: plain)। |
--json | --format json का संक्षिप्त रूप। |
--no-color | आउटपुट में ANSI रंग कोड अक्षम करें। |
-h, --help | सहायता दिखाएँ और बाहर निकलें। |
JSON आउटपुट
जब अडैप्टर इंस्टॉल है और सफलतापूर्वक हटा दिया जाता है:
{
"schema_version": 1,
"status": "success",
"command": "uninstall",
"action": "uninstalled",
"harness": "claude-code",
"profile_path": null,
"project": null,
"files_written": [],
"results": [
{
"harness": "claude-code",
"outcome": "updated",
"operation": "uninstall",
"path": "C:\\Users\\Example\\.claude\\settings.json",
"message": "managed files removed"
}
],
"warnings": [],
"error": null,
"output_path": "C:\\Users\\Example\\.claude\\settings.json"
}जब अडैप्टर इंस्टॉल नहीं था, तो कमांड 0 के साथ बाहर निकलता है। JSON आउटपुट में
एनवेलप में "status": "success" और "action": "uninstalled" होते हैं, और परिणाम
पंक्ति में "outcome": "skipped" होता है, जिसका संदेश "not installed; no files removed" है। status फ़ील्ड कभी "not_installed" नहीं होता।
उदाहरण
apothem uninstall --harness claude-code
apothem uninstall --harness claude-code --yes
apothem uninstall --harness cursor --project . --yes
apothem uninstall --harness all --project . --yes
apothem uninstalling --harness cursor --project . --yes # continuous-form aliasएक साझा स्किल फ़ोल्डर तब तक बना रहता है जब तक उसका उपयोग करने वाला अंतिम इंस्टॉल नहीं चला जाता:
apothem install --harness codex
apothem install --harness cursor --project A
apothem uninstall --harness codex --yes # keeps ~/.agents/skills/, the cursor install uses it
apothem uninstall --harness cursor --project A --yes # removes it: no install uses it nowनिकास कोड
| कोड | अर्थ |
|---|---|
| 0 | अडैप्टर अनइंस्टॉल हुआ, या इंस्टॉल ही नहीं था |
| 1 | हार्नेस नहीं मिला, पुष्टि अस्वीकार की गई या उपलब्ध नहीं थी (--yes के बिना गैर-इंटरैक्टिव या JSON मोड), या हर हटाना विफल हुआ |
| 2 | आंशिक हटाना — किसी विफलता से पहले कम से कम एक हार्नेस हटाया गया |
| 64 | उपयोग त्रुटि: एक अज्ञात विकल्प या कमांड, या एक लुप्त या अमान्य विकल्प मान। --json के अंतर्गत त्रुटि cli.usage कोड वाला एक JSON एनवेलप होती है। |
यह भी देखें
apothem uninstalling— इस कमांड का सतत-रूप उपनाम (यहाँ प्रलेखित; CLI दोनों रूप स्वीकार करता है)- apothem install — एक हार्नेस कॉन्फ़िगरेशन इंस्टॉल करें
- apothem verify — इंस्टॉलेशन स्थिति की पुष्टि करें