
सत्यापित उपकरण रजिस्ट्री प्रबंधक। गिट-आधारित रजिस्ट्रियों से डेवलपर टूलचेन का प्रबंधन करता है।
उपकरण रजिस्ट्री प्रबंधक -- git-आधारित रजिस्ट्रियों से डेवलपर टूलचेन का प्रबंधन करता है, mise के ऊपर स्तरित।
kit एकाधिक रजिस्ट्रियों में टूल संस्करणों को हल करता है, mise कॉन्फ़िगरेशन उत्पन्न करता है, प्रकाशक रिलीज़ आर्टिफैक्ट्स के विरुद्ध SHA-256 चेकसम सत्यापित करता है, जहां प्रकाशक बेयर बाइनरी पर हस्ताक्षर करते हैं वहां cosign हस्ताक्षर सत्यापित करता है, और तीन-पाइपलाइन CI आर्किटेक्चर के माध्यम से अपस्ट्रीम अपडेट ट्रैकिंग को स्वचालित करता है।
यदि आपके पास अभी तक Rust नहीं है, तो सबसे तेज़ मार्ग mise है:
mise use --global rust
cargo install nomograph-kit
या rustup का उपयोग करें:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
cargo install nomograph-kit
बाइनरी को kit कहा जाता है।
kit setup --registry https://gitlab.com/your/registry.git
kit sync
kit status
रजिस्ट्री एक git रेपो है जिसमें प्रति-टूल TOML परिभाषाएँ होती हैं:
tools/
_meta.toml # registry metadata + merge policy
gh.toml # one file per tool
muxr.toml
...
प्रत्येक टूल परिभाषा स्व-निहित होती है:
[tool]
name = "gh"
source = "github"
repo = "cli/cli"
version = "2.89.0"
tag_prefix = "v"
bin = "gh"
tier = "high"
aqua = "cli/cli"
[tool.assets]
macos-arm64 = "gh_{version}_macOS_arm64.zip"
linux-x64 = "gh_{version}_linux_amd64.tar.gz"
[tool.checksum]
file = "gh_{version}_checksums.txt"
format = "sha256"
[tool.signature]
method = "github-attestation"
स्रोत: github, gitlab, npm, crates, direct, rustup, brew
brew स्रोत स्थापना को mise के brew: बैकएंड को सौंपता है (CI में कोई स्थानीय brew CLI आवश्यक नहीं)। kit formulae.brew.sh API के माध्यम से संस्करण-ट्रैक करता है और name = "brew:<formula>@<version>" प्रविष्टियों को mise.toml में उत्सर्जित करता है।
स्मार्ट kit add अपस्ट्रीम से पूछताछ करता है और स्वतः पॉपुलेट करता है:
kit add jq jqlang/jq # GitHub
kit add muxr nomograph/muxr --gitlab # GitLab (resolves project_id)
kit add claude-code --npm @anthropic-ai/claude-code
kit add cargo-nextest --crates
kit add chafa --brew # Homebrew formula (formula defaults to tool name)
kit add go121 --brew [email protected] # Homebrew formula with explicit formula name
प्रत्येक टूल में एक स्तर होता है जो मर्ज नीति को नियंत्रित करता है:
| स्तर | अर्थ | सामान्य नीति |
|---|---|---|
| own | आपके द्वारा बनाए और प्रकाशित किए जाने वाले उपकरण | सभी बंप स्वतः मर्ज करें |
| high | महत्वपूर्ण तृतीय-पक्ष उपकरण | मैन्युअल समीक्षा |
| low | सामान्य उपकरण | पैच/माइनर स्वतः मर्ज करें |
स्तर प्रति-टूल TOML परिभाषा में सेट किए जाते हैं। रजिस्ट्री का _meta.toml परिभाषित करता है कि कौन से स्तर स्वतः मर्ज होते हैं:
[policy]
auto_merge_tiers = ["own", "low"]
auto_merge_bump = ["patch", "minor"]
auto_merge_requires_checksum = true
~/.config/kit/config.toml में एकाधिक रजिस्ट्रियाँ कॉन्फ़िगर करें। जब उपकरण ओवरलैप होते हैं तो पहली रजिस्ट्री जीतती है। स्थानीय पिन ओवरराइड करते हैं।
[[registry]]
name = "nomograph"
url = "https://gitlab.com/nomograph/kits.git"
[[registry]]
name = "personal"
url = "https://gitlab.com/you/kits.git"
विश्वास सीमा द्वारा रजिस्ट्रियों को अलग करें। उदाहरण के लिए, अपने स्वयं के उपकरणों को एक रजिस्ट्री में और तृतीय-पक्ष उपकरणों को दूसरी में रखें। प्रत्येक रजिस्ट्री की अपनी पाइपलाइन, मर्ज नीति और अपडेट कैडेंस होता है।
kit कार्यशील निर्देशिका से ऊपर जाकर kit.toml खोजता है। मिलने पर, उपकरण उस प्रोजेक्ट तक सीमित हो जाते हैं:
kit.toml के बगल में .kit.lock (git में कमिट किया गया).mise.toml को # kit:begin / # kit:end मार्करों के साथ मर्ज किया गयाkit kit-registry CI घटक के माध्यम से तीन-पाइपलाइन आपूर्ति श्रृंखला आर्किटेक्चर को संचालित करता है:
include:
- component: gitlab.com/nomograph/pipeline/kit-registry@v3
inputs:
kit_version: "0.10.1"
mr_assignee: "andunn"
kit sense अपस्ट्रीम रिलीज़ से पूछताछ करता है, संपत्तियाँ डाउनलोड करता है, चेकसम सत्यापित करता है, और सलाहकार डेटाबेस की जाँच करता है। प्रत्येक खोज को जोखिम (बंप स्तर, स्तर, चेकसम स्थिति) द्वारा वर्गीकृत करता है। संस्करण बहाव पर कभी विफल नहीं होता -- बहाव वही है जो वह पता लगाता है।
kit evaluate नियतात्मक नियम लागू करता है (स्वच्छ पैच को स्वतः स्वीकृत करें, चेकसम बेमेल को अस्वीकार करें) और वैकल्पिक रूप से किनारे के मामलों (प्रमुख बंप, लापता चेकसम, सलाहकार) के लिए LLM को आमंत्रित करता है।
kit apply डिस्क पर टूल TOML फ़ाइलों को अपडेट करता है और अपडेट को ऑटो-मर्ज पात्रता द्वारा दो समूहों में विभाजित करता है:
CI घटक प्रत्येक समूह के लिए एक अलग शाखा और MR बनाता है। सत्यापन पाइपलाइन पास होने के बाद ऑटो-मर्ज MR स्वयं को मर्ज करता है। समीक्षा MR मानव समीक्षा के लिए खुला रहता है।
kit verify-registry सभी टूल परिभाषाओं को पुनः मान्य करता है और चेकसम को पुनः सत्यापित करता है। मर्ज गेट के रूप में प्रत्येक MR पर चलता है।
kit सत्यापन पथ पर वास्तव में क्या करता है:
kit क्या नहीं करता: आउट-ऑफ-बैंड चेकसम सत्यापन (चेकसम संपत्ति के समान रिलीज़ से लाए जाते हैं), आर्काइव-सामग्री हस्ताक्षर सत्यापन, या उन स्तरों के लिए मानव समीक्षा प्रतिस्थापन जो स्वतः मर्ज होते हैं।
kit सेवानिवृत्त हो गया है, जिसे mise (jdx/mise) द्वारा प्रतिस्थापित किया गया है। टूल पिन अब संस्करण-नियंत्रित mise.toml + एक कमिटेड mise.lock (प्रति-प्लेटफ़ॉर्म sha256 + प्रोवेंस) में रहते हैं: dunn.dev/harness में मशीन-बेसलाइन, प्रति-एस्टेट कॉन्फ़िग (जैसे nomograph/keaton)। अपडेट Renovate ( gitlab: बैकएंड के लिए customManager के साथ) + mise.lock अंतरों पर CI प्रोवेंस ऑडिट के माध्यम से प्रवाहित होते हैं — एक स्थिर होस्ट पर kit का सत्यापित-इंस्टॉलर + ऑटो-बंप आशय। माइग्रेशन रिकॉर्ड: nomograph/keaton -> campaigns/harness/sessions/baseline.md (2026-06-16)।
MIT -- Nomograph
| कमांड | विवरण |
|---|
kit setup | एक-बार कॉन्फ़िग, वैकल्पिक रूप से एक रजिस्ट्री जोड़ें |
kit sync | रजिस्ट्रियाँ खींचें, हल करें, mise कॉन्फ़िग उत्पन्न करें, स्थापित करें |
kit status | स्थापित बनाम रजिस्ट्री, ड्रिफ्ट का पता लगाना, सत्यापन शक्ति |
kit diff | लॉकफ़ाइल और रजिस्ट्री के बीच परिवर्तन दिखाएँ |
kit upgrade | इंटरैक्टिव टूल अपडेट वर्कफ़्लो |
kit verify | सभी स्थापित बाइनरी को पुनः सत्यापित करें (हमेशा चेकसम; केवल बेयर-बाइनरी संपत्तियों के लिए cosign) |
kit audit | ज्ञात सुरक्षा सलाहकारों के लिए टूल की जाँच करें |
kit add <name> <source> | अपस्ट्रीम क्वेरी करें, टूल परिभाषा उत्पन्न करें |
kit push <name> | टूल परिभाषा को कमिट और पुश करें |
kit remove <name> | लिखने योग्य रजिस्ट्री से एक टूल हटाएँ |
kit pin <name> <version> | स्थानीय रूप से एक टूल के संस्करण को पिन करें |
kit unpin <name> | एक स्थानीय पिन हटाएँ |
kit sense | अपस्ट्रीम परिवर्तनों का पता लगाएँ, जोखिम के अनुसार वर्गीकृत करें (CI) |
kit evaluate | नियम-आधारित + निष्कर्षों की LLM समीक्षा (CI) |
kit apply | TOML अपडेट करें, ऑटो-मर्ज पात्रता के अनुसार विभाजित करें (CI) |
kit verify-registry | मर्ज से पहले सभी टूल परिभाषाओं को मान्य करें (CI) |
kit init [--ci] | एक नई रजिस्ट्री का स्कैफोल्ड बनाएँ |
kit completions <shell> | शेल पूर्णताएँ (bash/zsh/fish) |
kit man-page | मैन पेज उत्पन्न करें |