Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ore-mal-pkg-inspector — बहु-पारिस्थितिकी तंत्र दुर्भावनापूर्ण पैकेज पहचान और आपूर्ति श्रृंखला सुरक्षा स्कैनर | Kitploit
उपकरण/GitHubGitHub/rapticore/ore-mal-pkg-inspector
स्थैतिक विश्लेषणभेद्यता स्कैनरकोड विश्लेषणजानकारी एकत्र करनामालवेयर विश्लेषणDevSecOpsखतरा खुफियाआपूर्ति श्रृंखला सुरक्षालर्निंग और शिक्षा
GitHubrapticore/ore-mal-pkg-inspector

ore-mal-pkg-inspector

बहु-पारिस्थितिकी तंत्र दुर्भावनापूर्ण पैकेज पहचान और आपूर्ति श्रृंखला सुरक्षा स्कैनर

813 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें

OreWatch

बहु-पारिस्थितिकी तंत्र दुर्भावनापूर्ण पैकेज का पता लगाना और आपूर्ति श्रृंखला सुरक्षा स्कैनर

Python Version License Status Ecosystems

एक उत्पादन-ग्रेड सुरक्षा उपकरण जो npm, PyPI, Maven, RubyGems, Go और Cargo पारिस्थितिकी तंत्रों में दुर्भावनापूर्ण पैकेजों और आपूर्ति श्रृंखला खतरों का पता लगाता है। यह आपके प्रोजेक्ट्स में समझौता की गई निर्भरताओं की पहचान करने के लिए विश्वसनीय सुरक्षा स्रोतों से स्वचालित खतरा खुफिया संग्रह का उपयोग करता है।

OreWatch उत्पाद और PyPI पैकेज का नाम है। वर्तमान स्रोत रिपॉजिटरी पथ अभी भी ore-mal-pkg-inspector का उपयोग करता है।

वीडियो

स्थापना

https://github.com/rapticore/ore-mal-pkg-inspector/issues/2#issue-4215016110

OreWatch और Cursor

https://github.com/rapticore/ore-mal-pkg-inspector/issues/3#issue-4215017945

OreWatch और CodeX

https://github.com/rapticore/ore-mal-pkg-inspector/issues/4#issue-4215019385

OreWatch और Claude-Code

https://github.com/rapticore/ore-mal-pkg-inspector/issues/5#issue-4215021599


विषय सूची

  • समस्या
  • समाधान
  • मुख्य विशेषताएं
  • OreWatch क्यों?
  • यहाँ से शुरू करें
  • त्वरित आरंभ
    • पूर्वापेक्षाएँ
    • स्थापना
    • पहला स्कैन
  • उपयोग
    • मूल आदेश
    • उन्नत उपयोग
    • कमांड-लाइन संदर्भ
    • पृष्ठभूमि निगरानी
  • अपनाने की मार्गदर्शिका
  • वितरण
    • प्रबंधित macOS रोलआउट
  • लॉगिंग और डिबगिंग
  • आउटपुट और रिपोर्ट
  • CI/CD एकीकरण
  • समस्या निवारण
  • FAQ
  • योगदान
  • सुरक्षा नीति
  • रोडमैप
  • लाइसेंस
  • सहायता
  • आभार

समस्या

आपूर्ति श्रृंखला हमले अब सॉफ्टवेयर से समझौता करने का प्रमुख खतरा वेक्टर हैं। अकेले 2024 में, npm, PyPI और अन्य पैकेज रजिस्ट्रियों पर हजारों दुर्भावनापूर्ण पैकेज प्रकाशित किए गए, जो टाइपोस्क्वाटिंग, निर्भरता भ्रम और Shai-Hulud जैसे परिष्कृत मैलवेयर अभियानों के साथ डेवलपर्स को लक्षित कर रहे थे।

चुनौती: संगठनों और डेवलपर्स को निम्न की आवश्यकता है:

  • एकाधिक प्रोग्रामिंग पारिस्थितिकी तंत्रों में निर्भरताओं को स्कैन करना
  • कई स्रोतों से तेजी से विकसित हो रही खतरे की खुफिया जानकारी के साथ अद्यतित रहना
  • न केवल ज्ञात दुर्भावनापूर्ण पैकेजों बल्कि समझौता संकेतकों (IoCs) का भी पता लगाना
  • मौजूदा विकास कार्यप्रवाहों में सुरक्षा स्कैनिंग को एकीकृत करना
  • नई खोजे गए खतरों पर त्वरित प्रतिक्रिया देना

अंतर: मौजूदा समाधान अक्सर:

  • एकल पारिस्थितिकी तंत्र तक सीमित (केवल npm, केवल PyPI, आदि)
  • मैनुअल खतरा सूची रखरखाव पर निर्भर
  • IoC का पता लगाने की क्षमताओं की कमी
  • स्वचालित पाइपलाइनों में एकीकृत करना कठिन
  • पारदर्शिता के बिना मालिकाना ब्लैक-बॉक्स उपकरण

समाधान

OreWatch इन चुनौतियों का समाधान प्रदान करके करता है:

व्यापक बहु-पारिस्थितिकी तंत्र कवरेज: npm, PyPI, Maven, RubyGems, Go और Cargo पैकेजों के लिए एकल उपकरण

स्वचालित खतरा खुफिया: विश्वसनीय सुरक्षा अनुसंधान स्रोतों से डेटा को गतिशील रूप से एकत्र और विलीन करता है

सक्रिय IoC का पता लगाना: पैकेज नाम मिलान से परे Shai-Hulud हमले पैटर्न और अन्य दुर्भावनापूर्ण कोड संकेतकों की पहचान करता है

CI/CD के लिए तैयार: GitHub Actions, GitLab CI, Jenkins और अन्य ऑटोमेशन प्लेटफॉर्म में निर्बाध एकीकरण के लिए डिज़ाइन किया गया

ओपन सोर्स और पारदर्शी: पहचान तर्क, डेटा स्रोतों और स्कैनिंग पद्धति में पूर्ण दृश्यता


मुख्य विशेषताएं

बहु-पारिस्थितिकी तंत्र समर्थन npm, PyPI, Maven, RubyGems, Go और Cargo पैकेजों को प्रोजेक्ट संरचना से स्वचालित पारिस्थितिकी तंत्र का पता लगाकर स्कैन करता है।

एकीकृत खतरा खुफिया डेटाबेस विश्वसनीय सुरक्षा अनुसंधान स्रोतों से गतिशील रूप से एकत्रित दुर्भावनापूर्ण पैकेज डेटाबेस के विरुद्ध जांच करता है।

स्वचालित पारिस्थितिकी तंत्र का पता लगाना निर्देशिका संरचना, फ़ाइल नामों से बुद्धिमानी से पारिस्थितिकी तंत्रों की पहचान करता है, और एक ही चलाने में एकाधिक पारिस्थितिकी तंत्रों को स्कैन कर सकता है।

समझौता संकेतक (IoC) का पता लगाना Shai-Hulud हमले पैटर्न (मूल और 2.0 संस्करण), दुर्भावनापूर्ण हुक, संदिग्ध कार्यप्रवाह और ज्ञात पेलोड फ़ाइलों के लिए स्कैन करता है।

Shai-Hulud एकीकरण OreNPMGuard से व्यापक Shai-Hulud प्रभावित पैकेज सूची के विरुद्ध npm पैकेजों का क्रॉस-रेफरेंस करता है।

संरचित JSON रिपोर्टिंग स्पष्ट खतरा-डेटा मेटाडेटा और निष्कर्षों के लिए SARIF-शैली फ़ाइल स्थानों के साथ मशीन-पठनीय JSON रिपोर्ट उत्पन्न करता है।

लचीले इनपुट प्रारूप मानक निर्भरता फ़ाइलों (package.json, requirements.txt, आदि) और सामान्य पैकेज सूचियों (text, JSON, YAML) का समर्थन करता है।

उत्पादन-तैयार लॉगिंग समस्या निवारण और ऑडिट ट्रेल्स के लिए --verbose और --debug फ़्लैग के साथ कॉन्फ़िगर करने योग्य वर्बोसिटी स्तर।

सुरक्षित और तेज़ आपके कोड में कोई संशोधन नहीं के साथ केवल-पढ़ने के संचालन, बड़े कोडबेस को कुशलतापूर्वक स्कैन करने के लिए अनुकूलित।


OreWatch क्यों?

बनाम एकल-पारिस्थितिकी तंत्र उपकरण अधिकांश सुरक्षा स्कैनर एक पैकेज मैनेजर पर ध्यान केंद्रित करते हैं। OreWatch आधुनिक पॉलीग्लॉट विकास वातावरण के लिए आवश्यक, छह प्रमुख पारिस्थितिकी तंत्रों में एकीकृत सुरक्षा प्रदान करता है।

बनाम मैनुअल खतरा सूचियाँ स्थिर दुर्भावनापूर्ण पैकेज सूचियाँ जल्दी पुरानी हो जाती हैं। हमारे स्वचालित संग्राहक प्रतिदिन कई आधिकारिक स्रोतों से ताजा खतरा खुफिया जानकारी प्राप्त करते हैं।

बनाम केवल-पैकेज-नाम का पता लगाना केवल पैकेज नामों की जाँच करने से परिष्कृत हमले छूट जाते हैं। IoC का पता लगाना ब्लैकलिस्ट में अभी तक नहीं आए पैकेजों में भी दुर्भावनापूर्ण कोड पैटर्न की पहचान करता है।

बनाम मैनुअल सुरक्षा ऑडिट मैनुअल निर्भरता समीक्षाएं समय लेने वाली और त्रुटि-प्रवण होती हैं। स्वचालित स्कैनिंग प्रत्येक बिल्ड में निरंतर सुरक्षा सत्यापन सक्षम करती है।

बनाम वाणिज्यिक ब्लैक-बॉक्स उपकरण मालिकाना उपकरणों में पता लगाने के तर्क में पारदर्शिता का अभाव है। एक ओपन-सोर्स प्रोजेक्ट के रूप में, प्रत्येक पता लगाने का नियम और डेटा स्रोत ऑडिट योग्य है।

उत्पत्ति की कहानी OreWatch का जन्म OreNPMGuard के विकास से हुआ, जो Shai-Hulud npm हमलों के लिए एक विशेष स्कैनर है। उस प्रोजेक्ट के दौरान, हमने npm से परे व्यापक बहु-पारिस्थितिकी तंत्र कवरेज की आवश्यकता को पहचाना। दिसंबर 2025 में, हमने बहु-पारिस्थितिकी तंत्र का पता लगाने की क्षमताओं को निकालकर इस स्टैंडअलोन टूल में बढ़ाया, OreNPMGuard का npm पर ध्यान बनाए रखते हुए OreWatch को सभी प्रमुख पैकेज पारिस्थितिकी तंत्रों में व्यापक डेवलपर समुदाय की सेवा करने में सक्षम बनाया।


यहाँ से शुरू करें

यदि आप पहली बार OreWatch अपना रहे हैं, तो अपने कार्यप्रवाह से मेल खाने वाला सबसे छोटा पथ चुनें:

अधिकांश डेवलपर्स के लिए अनुशंसित पहली बार चलाने का क्रम:

  1. OreWatch को pip install . या प्रकाशित पैकेज के साथ स्थापित करें।
  2. orewatch monitor quickstart /path/to/project --client <your-client> चलाएँ।
  3. orewatch monitor status के साथ डेमॉन को सत्यापित करें।
  4. यदि आप macOS पर हैं, तो सूचनाओं और स्थानीय UI के लिए orewatch monitor menubar लॉन्च करें।

यदि आप कॉपी-पेस्ट कमांड के साथ एक छोटी सेटअप मार्गदर्शिका चाहते हैं, तो docs/adoption-guide.md का उपयोग करें।


त्वरित आरंभ

पूर्वापेक्षाएँ

  • Python 3.14 या उच्चतर
  • निर्भरताएं स्थापित करने के लिए pip
  • रिपॉजिटरी क्लोन करने के लिए Git
  • प्रारंभिक खतरा खुफिया सेटअप के लिए इंटरनेट कनेक्शन
  • मॉनिटर स्नैपशॉट कार्यप्रवाहों में हस्ताक्षरित स्नैपशॉट कुंजी निर्माण, प्रकाशन और सत्यापन के लिए OpenSSL

स्थापना

OreWatch को pipx (अनुशंसित), Homebrew (macOS), pip, या स्रोत से स्थापित किया जा सकता है। सभी विधियाँ orewatch CLI कमांड उत्पन्न करती हैं।

विकल्प 1 — pipx (अनुशंसित)

pipx OreWatch को अपने स्वयं के पृथक वातावरण में स्थापित करता है जबकि orewatch कमांड को वैश्विक रूप से उपलब्ध कराता है। यह अधिकांश डेवलपर्स के लिए सबसे अच्छा विकल्प है।```bash

Install pipx if you don't have it

python3.14 -m pip install --user pipx python3.14 -m pipx ensurepath

Install OreWatch

pipx install --python python3.14 orewatch

If you want the macOS menu bar app on a fresh install, use this instead:

pipx install --python python3.14 'orewatch[mac-menubar]'

Verify

orewatch --help

Optional macOS menu bar app

orewatch monitor menubar

root@kitploit:~
यदि आपने पहले से `orewatch` को pipx के साथ स्थापित किया है और बाद में macOS मेनू बार ऐप जोड़ना चाहते हैं, तो उसी pipx वातावरण में Cocoa bindings इंजेक्ट करें:```bash
pipx inject orewatch pyobjc-framework-Cocoa

अपग्रेड:```bash pipx upgrade orewatch

root@kitploit:~
**अनइंस्टॉल करें:**```bash
pipx uninstall orewatch

विकल्प 2 — Homebrew (macOS)

macOS के उपयोगकर्ताओं के लिए जो Homebrew-प्रबंधित इंस्टॉल पसंद करते हैं:```bash

Add the OreWatch tap

brew tap rapticore/tap

Install

brew install rapticore/tap/orewatch

Verify

orewatch --help

Optional macOS menu bar app

orewatch monitor menubar

root@kitploit:~
**उन्नयन:**```bash
brew update && brew upgrade orewatch

अनइंस्टॉल करें:```bash brew uninstall orewatch brew untap rapticore/tap # optional — removes the tap

root@kitploit:~
> **नोट:** Homebrew फॉर्मूला में `orewatch monitor menubar` के लिए आवश्यक Cocoa बाइंडिंग्स शामिल हैं। यदि कोई पुराना Homebrew इंस्टॉल `ModuleNotFoundError: No module named 'AppKit'` रिपोर्ट करता है, तो `brew update && brew reinstall rapticore/tap/orewatch` चलाएँ ताकि फॉर्मूला अपने पृथक Python वातावरण को मेन्यू बार समर्थन के साथ पुनः निर्माण करे।

#### विकल्प 3 — pip

CI पाइपलाइनों, Docker इमेजेज़, या अपने स्वयं के virtualenvs प्रबंधित करने के लिए `pip` का उपयोग करें:```bash
# Install into an active Python 3.14 virtualenv or user site
python3.14 -m pip install orewatch

# Pin a version for reproducible CI builds
python3.14 -m pip install orewatch==1.3.0

# If you want the macOS menu bar app on a fresh install, use this instead:
# python3.14 -m pip install 'orewatch[mac-menubar]'

# Verify
orewatch --help

अपग्रेड:```bash python3.14 -m pip install --upgrade orewatch

root@kitploit:~
#### विकल्प 4 — स्रोत चेकआउट (योगदानकर्ता)```bash
# Clone the repository
git clone https://github.com/rapticore/ore-mal-pkg-inspector.git
cd ore-mal-pkg-inspector

# Create and activate a Python 3.14 virtual environment (recommended)
python3.14 -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install in editable mode for development
python -m pip install -e .

# Verify
orewatch --help

स्थापना के बाद सत्यापन

किसी भी विधि से स्थापित करने के बाद, सुनिश्चित करें कि OreWatch काम कर रहा है:```bash

Check the CLI is accessible

orewatch --help

List supported manifest filenames

orewatch --list-supported-files

Run a quick scan on the current directory

orewatch .

root@kitploit:~
#### प्लेटफ़ॉर्म नोट्स

| प्लेटफ़ॉर्म | पायथन स्रोत | नोट्स |
|---|---|---|
| **macOS** (Homebrew Python) | `brew install [email protected]` | Homebrew उपयोगकर्ताओं के लिए अनुशंसित |
| **macOS** (pyenv) | `pyenv install 3.14` | बहु-संस्करण सेटअप के लिए सर्वोत्तम |
| **Ubuntu / Debian** | `sudo apt install python3.14` या pyenv | जाँचें कि आपका डिस्ट्रो 3.14+ शिप करता है |
| **Fedora / RHEL** | `sudo dnf install python3.14` या pyenv | — |
| **Windows (WSL)** | pyenv या सिस्टम पैकेज | मूल विंडोज़ अप्रमाणित है |

> **पायथन 3.14 आवश्यक है।** OreWatch पायथन 3.14 में शुरू की गई भाषा सुविधाओं का उपयोग करता है। पुराने संस्करण आयात समय पर विफल होंगे।

#### समस्या निवारण स्थापना

| लक्षण | समाधान |
|---|---|
| `command not found: orewatch` | सुनिश्चित करें कि इंस्टॉल स्थान आपके `PATH` पर है। pipx के लिए: `pipx ensurepath` चलाएँ और अपना शेल पुनरारंभ करें। |
| आयात पर `ModuleNotFoundError` | आपके पास एकाधिक पायथन संस्करण हो सकते हैं। `orewatch` के पीछे रनटाइम पायथन 3.14+ है इसकी पुष्टि करें और मेल खाने वाले इंटरप्रेटर के साथ पुनः इंस्टॉल करें। |
| pipx इंस्टॉल रिज़ॉल्वर त्रुटियों के साथ विफल होता है | pipx अपग्रेड करें: `python3.14 -m pip install --upgrade pipx` |
| Homebrew `orewatch` इंस्टॉल के बाद नहीं मिलता | पहले `brew tap rapticore/tap` चलाएँ, फिर इंस्टॉल का पुनः प्रयास करें। |
| pip इंस्टॉल के दौरान अनुमति अस्वीकार | `pip install --user orewatch` का उपयोग करें या वर्चुअलएनवी के अंदर इंस्टॉल करें। |

_नोट: यदि स्थानीय खतरा डेटा गायब या पुराना है, तो पैकेज स्कैन एक लाइव-अपडेट उम्मीदवार तैयार करते हैं और केवल विसंगति गेट्स पास करने के बाद उसे प्रमोट करते हैं। यदि उम्मीदवार संदिग्ध लगता है, तो OreWatch अंतिम-ज्ञात-अच्छा डेटासेट सक्रिय रखता है।_

_स्थापित CLI:_ `orewatch`
_संगतता उपनाम:_ `ore-mal-pkg-inspector`

### पहला स्कैन

**एक प्रोजेक्ट निर्देशिका स्कैन करें:**```bash
# Auto-detect ecosystem and scan current directory
orewatch .

# Scan specific project path
orewatch /path/to/your/project

# With verbose output to see progress
orewatch /path/to/your/project --verbose

अपेक्षित आउटपुट:``` Detected multiple ecosystems: npm, pypi Scanning all detected ecosystems...

Scanning npm... Found 2 dependency file(s) for npm Parsing: package.json Parsing: package-lock.json

Scanning pypi... Found 1 dependency file(s) for pypi Parsing: requirements.txt

Extracted 45 unique package(s) across 2 ecosystem(s)

Checking 45 package(s) against malicious databases... Checking 30 npm package(s)... Checking 15 pypi package(s)...

Scanning for Indicators of Compromise...

Generating report...

============================================================ SCAN REPORT SUMMARY

Ecosystem: npm, pypi Total Packages Scanned: 45 Malicious Packages Found: 0 IoCs Found: 0

✅ No malicious packages or IoCs detected

HTML report saved to: scan-output/malicious_packages_report_20251231_120000.html JSON report saved to: scan-output/malicious_packages_report_20251231_120000.json

root@kitploit:~
यदि आप चाहते हैं कि OreWatch इस पहले स्कैन के बाद भी प्रोजेक्ट की निगरानी करता रहे, तो [Background Monitoring](#background-monitoring) के साथ जारी रखें या सीधे [docs/adoption-guide.md](https://github.com/rapticore/ore-mal-pkg-inspector/blob/HEAD/docs/adoption-guide.md) पर जाएँ।

---

## उपयोग

### मूलभूत कमांड

**निर्देशिका स्कैन करें (स्वचालित रूप से इकोसिस्टम का पता लगाएं):**```bash
# Current directory
orewatch .

# Specific directory
orewatch /home/user/projects/my-app

# With an absolute path
orewatch /home/user/projects/backend-api

विशिष्ट निर्भरता फ़ाइलें स्कैन करें:```bash

Ecosystem auto-detected from filename

orewatch --file package.json orewatch --file requirements.txt orewatch --file pom.xml orewatch --file Gemfile orewatch --file go.mod orewatch --file Cargo.toml

root@kitploit:~
**विशिष्ट पारिस्थितिकी तंत्र बल:**```bash
# Override auto-detection
orewatch /path/to/project --ecosystem npm
orewatch /path/to/project --ecosystem pypi
orewatch /path/to/project --ecosystem maven
orewatch /path/to/project --ecosystem rubygems
orewatch /path/to/project --ecosystem go
orewatch /path/to/project --ecosystem cargo

सामान्य पैकेज सूचियों को स्कैन करें:```bash

Text file (one package per line) - must specify ecosystem

orewatch --file packages.txt --ecosystem pypi

JSON file with package array

orewatch --file packages.json --ecosystem npm

YAML file

orewatch --file packages.yaml --ecosystem npm

root@kitploit:~
### उन्नत उपयोग

**कस्टम आउटपुट पथ:**```bash
# Save to custom location
orewatch /path/to/project --output /tmp/scan_report.json

# Save to specific subdirectory
orewatch /path/to/project --output reports/security/$(date +%Y%m%d).json

IoC स्कैनिंग नियंत्रण:```bash

Full scan (packages + IoCs) - default behavior

orewatch /path/to/project

Skip IoC scanning for faster package-only checks

orewatch /path/to/project --no-ioc

Only scan for IoCs, skip package database checking

orewatch /path/to/project --ioc-only

root@kitploit:~
**शांत मोड:**```bash
# Generate report without console summary (useful for scripts)
orewatch /path/to/project --no-summary

खतरा डेटा नियंत्रण:```bash

Force a staged live refresh of the default core sources before scanning

orewatch /path/to/project --latest-data

Fail if any requested ecosystem only has partial or missing threat data

orewatch /path/to/project --strict-data

Include experimental sources during collection

orewatch /path/to/project --latest-data --include-experimental-sources

Print the exact dependency filenames the scanner recognizes

orewatch --list-supported-files

root@kitploit:~
**बैच स्कैनिंग:**```bash
# Scan multiple projects
for dir in ~/projects/*/; do
    echo "Scanning $dir"
    orewatch "$dir" --output "reports/$(basename $dir).json"
done

कमांड-लाइन संदर्भ

स्कैनर विकल्प

पृष्ठभूमि निगरानी

रिपॉजिटरी में अब एक स्थानीय पृष्ठभूमि मॉनिटर शामिल है जो खतरा डेटा को ताजा रखता है, ऑप्ट-इन प्रोजेक्ट्स को मेनिफेस्ट और वर्कफ़्लो परिवर्तनों के लिए देखता है, डीबाउंस किए गए स्कैन चलाता है, और नए या बढ़े हुए निष्कर्षों के लिए सूचनाएं रिकॉर्ड करता है। मॉनिटर-स्वामित्व वाला कॉन्फ़िग और स्थिति रिपॉजिटरी के बाहर उपयोगकर्ता-स्वामित्व वाली निर्देशिकाओं में संग्रहीत की जाती है ताकि क्लोन की गई रिपॉजिटरी मॉनिटर व्यवहार को पूर्व-बीज नहीं कर सके।

OreWatch अब मॉनिटर को प्रति-उपयोगकर्ता सिंगलटन के रूप में मानता है। एक डेमॉन डिस्क पर कहीं भी कई प्रोजेक्ट्स देख सकता है और कई समवर्ती Claude Code, Codex, Cursor, VS Code, JetBrains / PyCharm, और Xcode क्लाइंट्स को सेवा प्रदान कर सकता है।

एंड-टू-एंड मॉनिटर सेटअप

1. सिंगलटन मॉनिटर स्थापित करें और बूटस्ट्रैप करें```bash

First project + first client

orewatch monitor quickstart /path/to/project --client claude_code

root@kitploit:~
`monitor quickstart` अनुशंसित पहली बार चलाने की प्रक्रिया है। यह:

- सिंगलटन मॉनिटर सेवा को स्थापित या ताज़ा करता है
- यदि आवश्यक हो तो मॉनिटर प्रारंभ करता है
- लक्ष्य प्रोजेक्ट को वॉच लिस्ट में जोड़ता है
- चयनित क्लाइंट के लिए बूटस्ट्रैप ब्लॉक प्रिंट करता है

यदि आप पहले मॉनिटर स्थापित करना और बाद में क्लाइंट को कनेक्ट करना पसंद करते हैं:```bash
orewatch monitor install
orewatch monitor install --ide-bootstrap
orewatch monitor install --service-manager launchd --no-start

2. सुनिश्चित करें कि मॉनिटर स्वस्थ है```bash orewatch monitor status orewatch monitor connection-info orewatch monitor doctor

root@kitploit:~
Use these commands for slightly different jobs:

- `monitor status` दिखाता है कि सिंगलटन डेमॉन और API चल रहे हैं या नहीं
- `monitor connection-info` लूपबैक API URL, टोकन पथ, मॉनिटर होम और समर्थित बूटस्ट्रैप क्लाइंट को प्रिंट करता है
- `monitor doctor` सटीक कॉन्फ़िग, स्टेट DB, लॉग और साझा थ्रेट-डेटा पथ को प्रिंट करता है

**3. हर उस प्रोजेक्ट को जोड़ें जिसे आप सिंगलटन को देखना चाहते हैं**```bash
orewatch monitor watch add /path/to/project-a
orewatch monitor watch add /path/to/project-b
orewatch monitor watch list
orewatch monitor watch remove /path/to/project-b

एक OreWatch डेमॉन एक साथ इन सभी प्रोजेक्ट्स पर नज़र रख सकता है। आपको प्रति रिपॉजिटरी या प्रति IDE वर्कस्पेस के लिए अलग मॉनिटर की आवश्यकता नहीं है।

क्लाइंट एकीकरण व्यंजन

OreWatch दो एकीकरण ट्रांसपोर्ट का समर्थन करता है:

बूटस्ट्रैप कमांड निम्न में से एक रूप प्रिंट करते हैं:```json { "mcpServers": { "orewatch": { "command": "/absolute/path/to/orewatch", "args": [ "monitor", "mcp" ] } } }

root@kitploit:~
जब `orewatch monitor ide-bootstrap --client <client>` स्थानीय कंसोल स्क्रिप्ट को हल कर सकता है, तो यह अब उस पूर्ण पथ को उत्सर्जित करता है, बजाय सादा `orewatch` के। यदि आपके पास पुराना MCP कॉन्फ़िग है जो अभी भी `"command": "orewatch"` कहता है, तो इसे पुनर्जनित करें और पुरानी प्रविष्टि को बदलें।```json
{
  "orewatch": {
    "baseUrl": "http://127.0.0.1:48736",
    "tokenPath": "/path/to/api.token"
  }
}
Cursor, Claude Code, and Codex

ये सभी क्लाइंट एक ही स्थानीय MCP bridge का उपयोग करते हैं:```bash orewatch monitor mcp

root@kitploit:~
अनुशंसित सेटअप:

1. एक बार `orewatch monitor quickstart /path/to/project --client <cursor|claude_code|codex>` चलाएँ।
2. मुद्रित MCP ब्लॉक को संबंधित MCP क्लाइंट में कॉपी करें।
3. उस क्लाइंट में एक देखा गया प्रोजेक्ट खोलें।
4. क्लाइंट को OreWatch को MCP के माध्यम से कॉल करने दें:
   - `orewatch_health`
   - `orewatch_check_dependency_add`
   - `orewatch_check_manifest`
   - `orewatch_override_dependency_add`
   - `orewatch_list_active_findings`
   - `orewatch_list_notifications`

नोट:

- `monitor mcp` एक stdio सर्वर है। यदि आप इसे मैन्युअल रूप से लॉन्च करते हैं, तो यह MCP क्लाइंट की प्रतीक्षा करते हुए निष्क्रिय दिखाई देगा।
- MCP ब्रिज स्टार्टअप पर स्थानीय API की जाँच करता है और जब `auto_start_on_client` सक्षम होता है तो एक बार सिंगलटन मॉनिटर को स्वचालित रूप से शुरू कर सकता है।
- विश्वसनीय IDE स्टार्टअप के लिए, `monitor install` के साथ एक बार बैकग्राउंड मॉनिटर स्थापित करें ताकि MCP ब्रिज शुरू होने से पहले डेमॉन पहले से उपलब्ध हो।

##### VS Code

VS Code एकीकरण को MCP ब्रिज के बजाय सिंगलटन localhost API का उपयोग करना चाहिए।

अनुशंसित सेटअप:

1. `orewatch monitor quickstart /path/to/project --client vscode` चलाएँ।
2. `orewatch monitor ide-bootstrap --client vscode` से `baseUrl` और `tokenPath` कॉपी करें।
3. उन मानों को अपने स्थानीय VS Code एक्सटेंशन, टास्क या हेल्पर में वायर करें।
4. डिपेंडेंसी-एड, मेनिफेस्ट-सेव और अलर्ट-रिफ्रेश इवेंट्स पर API को कॉल करें।

VS Code एकीकरण के लिए अनुशंसित API उपयोग:

- पैकेज-मैनेजर इंस्टॉल/एड फ्लो से पहले `POST /v1/check/dependency-add` कॉल करें
- जब कोई समर्थित मेनिफेस्ट सेव या स्पष्ट रूप से पुनः जाँचा जाता है तब `POST /v1/check/manifest` कॉल करें
- बैकग्राउंड डिटेक्शन को सतह पर लाने के लिए `GET /v1/findings/active` और `GET /v1/notifications` को पोल करें

##### JetBrains / PyCharm

JetBrains और PyCharm VS Code के समान localhost API अनुबंध का उपयोग करते हैं।

अनुशंसित सेटअप:

1. `orewatch monitor quickstart /path/to/project --client jetbrains` चलाएँ।
2. `orewatch monitor ide-bootstrap --client jetbrains` से API ब्लॉक कॉपी करें।
3. JetBrains प्लगइन, बाहरी टूल या स्थानीय हेल्पर में लौटाए गए `baseUrl` और `tokenPath` का उपयोग करें।
4. IDE के अंदर सिंक्रोनस डिपेंडेंसी निर्णय और संग्रहीत बैकग्राउंड अलर्ट दोनों को सतह पर लाएँ।

JetBrains एकीकरण के लिए अनुशंसित API उपयोग:

- `POST /v1/check/dependency-add` के साथ डिपेंडेंसी जोड़तोड़ की जाँच करें
- `POST /v1/check/manifest` के साथ `package.json`, `requirements.txt`, `pyproject.toml`, `pom.xml`, `Gemfile`, `go.mod`, `Cargo.toml`, और संबंधित समर्थित मेनिफेस्ट की पुनः जाँच करें
- स्थायी अलर्ट पैनल या टूल विंडो के लिए `GET /v1/findings/active` और `GET /v1/notifications` लाएँ

##### Xcode

Xcode एकीकरण को भी सिंगलटन localhost API का उपयोग करना चाहिए, लेकिन एक महत्वपूर्ण स्कोप बाउंड्री है: OreWatch अभी तक मूल Apple डिपेंडेंसी मेनिफेस्ट जैसे `Package.resolved`, `Podfile.lock`, या `Cartfile` को पार्स नहीं करता है। आज, Xcode एकीकरण इसके लिए सर्वोत्तम है:

- किसी हेल्पर, स्क्रिप्ट या साथी ऐप में बैकग्राउंड findings और नोटिफिकेशन दिखाना
- Xcode में खोले गए मिश्रित-भाषा रिपॉजिटरी जिनमें `package.json`, `pyproject.toml`, या `Cargo.toml` जैसे समर्थित मेनिफेस्ट भी शामिल हैं
- वे टीमें जो Xcode में काम करते समय macOS मेनू बार ऐप और नोटिफिकेशन सेंटर अलर्ट चाहती हैं

अनुशंसित सेटअप:

1. `orewatch monitor quickstart /path/to/project --client xcode` चलाएँ।
2. `orewatch monitor ide-bootstrap --client xcode` से API ब्लॉक कॉपी करें।
3. बिल्ड-फेज़ स्क्रिप्ट, हेल्पर प्रक्रिया या कस्टम Xcode एकीकरण से लौटाए गए `baseUrl` और `tokenPath` का उपयोग करें।
4. उपयोगकर्ता-दृश्य अलर्ट के लिए `GET /v1/findings/active` और `GET /v1/notifications` को पोल करें।
5. यदि Xcode वर्कस्पेस में समर्थित गैर-Apple मेनिफेस्ट शामिल हैं, तो अपने वर्कफ़्लो के भाग के रूप में उन फ़ाइलों के लिए `POST /v1/check/manifest` कॉल करें।

वर्तमान एकीकरण स्थिति:

- Claude Code, Codex और Cursor: इस रेपो में प्रथम श्रेणी का MCP ब्रिज शामिल है
- VS Code: स्थानीय API अनुबंध दस्तावेज़ीकृत है, लेकिन अभी तक कोई प्रथम-पक्ष एक्सटेंशन बंडल नहीं किया गया है
- JetBrains / PyCharm: स्थानीय API अनुबंध दस्तावेज़ीकृत है, लेकिन अभी तक कोई प्रथम-पक्ष प्लगइन बंडल नहीं किया गया है
- Xcode: स्थानीय API और मेनू बार एकीकरण दस्तावेज़ीकृत है, लेकिन अभी तक कोई प्रथम-पक्ष Xcode एक्सटेंशन और कोई मूल Apple मेनिफेस्ट पार्सर नहीं है

#### जब OreWatch कुछ ढूँढता है

जब बैकग्राउंड मॉनिटर किसी देखे गए प्रोजेक्ट में एक समझौता किए गए पैकेज या IoC का पता लगाता है, तो OreWatch:

- सिंगलटन मॉनिटर `reports/` निर्देशिका के अंतर्गत मॉनिटर-प्रबंधित JSON और HTML रिपोर्ट लिखता है
- सक्रिय finding को मॉनिटर स्टेट DB में संग्रहीत करता है
- एक कार्रवाई योग्य संदेश के साथ एक नोटिफिकेशन प्रविष्टि संग्रहीत करता है
- यदि टर्मिनल नोटिफिकेशन सक्षम हैं तो एक टर्मिनल चेतावनी उत्सर्जित करता है
- macOS पर, जब वह चल रहा होता है तो पॉपअप चैनल के रूप में सिंगलटन मेनू बार ऐप को प्राथमिकता देता है
- त्वरित समीक्षा के लिए सबसे नया ध्यान देने योग्य अलर्ट को मेनू बार ड्रॉपडाउन के शीर्ष पर पिन रखता है
- अन्यथा, यदि डेस्कटॉप नोटिफिकेशन सक्षम हैं तो सर्वोत्तम-प्रयास वाली प्रत्यक्ष डेस्कटॉप नोटिफिकेशन पर वापस आ जाता है
- दूरस्थ या हेडलेस वातावरण के लिए एक वैकल्पिक वेबहुक नोटिफिकेशन भेज सकता है

उन अलर्टों का निरीक्षण करने के लिए अंतर्निहित CLI समीक्षा सतह का उपयोग करें:```bash
orewatch monitor findings
orewatch monitor findings --project /path/to/project --min-severity high
orewatch monitor notifications
orewatch monitor notifications --project /path/to/project
orewatch monitor package-updates
orewatch monitor package-updates --check

स्थानीय API और MCP ब्रिज IDE और एजेंटों के लिए समान डेटा प्रस्तुत करते हैं:

  • API:
    • GET /v1/findings/active
    • GET /v1/notifications
    • GET /v1/package-updates
    • POST /v1/package-updates/check
  • MCP:
    • orewatch_list_active_findings
    • orewatch_list_notifications
    • orewatch_list_package_updates
    • orewatch_check_package_updates

मूल स्कैन समाप्त होने के बाद पृष्ठभूमि में पाई गई चीज़ों को सामने लाने के लिए यह IDE, MCP क्लाइंट और कोडिंग एजेंटों के लिए समर्थित पथ है।

पैकेज अपडेट सलाहकार सूचनाएँ केवल सूचित करने के लिए हैं। OreWatch देखे जा रहे प्रोजेक्ट निर्भरताओं और स्वयं OreWatch के लिए नए संस्करणों की रिपोर्ट करता है, लेकिन यह मैनिफेस्ट, लॉकफ़ाइल या स्थापित पैकेजों को संशोधित नहीं करता है।

मूल macOS मेनू बार ऐप

अब OreWatch में एक macOS-मूल मेनू बार ऐप शामिल है, जो उन लोगों के लिए है जो केवल CLI कमांड, MCP पोलिंग या Notification Center के पॉपअप पर निर्भर रहने के बजाय एक दृश्य स्थानीय UI चाहते हैं।

वैकल्पिक Cocoa बाइंडिंग को उसी रनटाइम में स्थापित करें जो orewatch कमांड प्रदान करता है। अपनी स्थापना विधि से मेल खाने वाला कमांड चुनें:```bash

pip / source-checkout install

python3.14 -m pip install 'orewatch[mac-menubar]'

existing pipx install

pipx inject orewatch pyobjc-framework-Cocoa

Homebrew install

brew install rapticore/tap/orewatch

root@kitploit:~
फिर मेनू बार एप्लिकेशन लॉन्च करें:```bash
orewatch monitor menubar

By default, monitor menubar relaunches the app in the background and returns your shell prompt immediately. Use orewatch monitor menubar --foreground only when you explicitly want to keep it attached to the terminal for debugging.

The menu bar app attaches to the same singleton monitor. It does not start a second monitor instance. If the monitor is not already installed and running, the app will install/start it on first launch.

Homebrew installs the Cocoa bindings into OreWatch's isolated libexec environment. If orewatch monitor menubar reports No module named 'AppKit', refresh the formula with brew update && brew reinstall rapticore/tap/orewatch. For pip, pipx, and source installs, the optional bindings still need to be added to the same Python environment that provides the orewatch command.

When desktop notifications are enabled on macOS, the singleton watcher now keeps one singleton menu bar app alive and uses it as the primary popup surface. That avoids relying only on a detached osascript invocation from the daemon and gives you a persistent native UI for new findings.

The current menu bar build is icon-first. The old OW shorthand and earlier OreWatch icon wording should be treated as legacy references; the app now prefers the bundled branded icon and only falls back to compact text or badges when macOS cannot render the image or needs an alert count.

What the macOS menu bar app gives you:

  • a persistent menu bar status item that prefers the bundled branded icon, with compact text fallback or alert badges when needed
  • a compact red/bold alert state for newly detected alerts that stays visible until you open the menu
  • a live summary of active findings and highest severity
  • a first-class Package Updates section with project dependency updates, OreWatch self-update state, last check status, and copyable suggested commands
  • recent notifications in a native dropdown menu
  • native Notification Center popups for newly stored monitor alerts
  • an Add Workspace Folder... action that enrolls a project into the singleton watcher and runs an initial quick scan
  • built-in configuration toggles for desktop notifications, terminal notifications, menu bar keepalive, and menu-bar-driven popups
  • one-click actions to open reports, monitor home, and the monitor log
  • one-click actions to open the monitor config file and config folder
  • menu actions to check package updates, refresh threat intelligence, run quick/full scans, and start/restart/stop the singleton monitor

Recommended Mac flow:

  1. Run orewatch monitor quickstart /path/to/project --client claude_code once.
  2. Install the optional bindings into the same environment as orewatch.
  3. Launch orewatch monitor menubar.
  4. Keep the menu bar app running for a persistent native review surface while your IDEs and coding agents continue using MCP or the local API.

अपनाने की मार्गदर्शिका

For easier rollout, use the focused docs instead of reading the full README end to end:

  • docs/adoption-guide.md: स्थानीय डेवलपर अपनाने के लिए सबसे छोटा रास्ता
  • docs/local-api.md: सटीक localhost API और MCP अनुबंध
  • docs/e2e-testing.md: योगदानकर्ता और सत्यापन कार्यप्रवाह

Recommended adoption order:

  1. एक रेपो और एक उपयोगकर्ता से शुरू करें।
  2. monitor quickstart के साथ सिंगलटन मॉनिटर सक्षम करें।
  3. एक क्लाइंट कनेक्ट करें: Cursor, Claude Code, Codex, VS Code, PyCharm, या Xcode।
  4. पुष्टि करें कि निष्कर्ष orewatch monitor findings और orewatch monitor notifications में दिखाई देते हैं।
  5. macOS पर, monitor menubar जोड़ें ताकि उपयोगकर्ताओं को एक स्थायी समीक्षा सतह और पॉपअप वितरण मिल सके।
  6. स्थानीय अपनाने के स्थिर होने के बाद, CI स्कैन और वैकल्पिक वेबहुक जोड़ें।

दैनिक संचालन

सामान्य परिचालन कमांड:```bash

Background service lifecycle

orewatch monitor start orewatch monitor restart orewatch monitor stop orewatch monitor uninstall

Run the daemon in the foreground

orewatch monitor run

Launch the native macOS menu bar UI

orewatch monitor menubar

Trigger immediate scans

orewatch monitor scan-now orewatch monitor scan-now /path/to/project

Review detections and alerts

orewatch monitor findings orewatch monitor notifications

Reclaim disk space — prune accumulated backup manifests and orphaned staging

orewatch monitor cleanup orewatch monitor cleanup --keep-backups 5 --staging-max-age-seconds 3600

root@kitploit:~
**मैन्युअल स्नैपशॉट और हस्ताक्षर क्रियाएँ:**```bash
# Generate a signing keypair
orewatch monitor snapshot keygen /tmp/ore-keys

# Build and apply local threat-data snapshots
orewatch monitor snapshot build /tmp/ore-snapshot \
  --private-key /tmp/ore-keys/snapshot_signing_private.pem \
  --public-key /tmp/ore-keys/snapshot_signing_public.pem
orewatch monitor snapshot apply /tmp/ore-snapshot/manifest.json \
  --public-key /tmp/ore-keys/snapshot_signing_public.pem

# Publish a hosted snapshot channel
orewatch monitor snapshot publish /tmp/ore-snapshots \
  --base-url https://example.com/ore-snapshots \
  --channel stable \
  --private-key /tmp/ore-keys/snapshot_signing_private.pem \
  --public-key /tmp/ore-keys/snapshot_signing_public.pem

Monitor behavior:

  • त्वरित स्कैन पैकेज-केंद्रित होते हैं और एक शेड्यूल पर और सामान्य मैनिफेस्ट परिवर्तनों के बाद चलते हैं।
  • पूर्ण स्कैन में IoC डिटेक्शन शामिल है और रात भर, मैन्युअल अनुरोध पर, और वर्कफ़्लो या पेलोड-फ़ाइल परिवर्तनों के बाद चलता है।
  • लिनक्स पर, config डिफ़ॉल्ट रूप से ~/.config/orewatch/singleton/ और state डिफ़ॉल्ट रूप से ~/.local/state/orewatch/singleton/ होता है।
  • macOS पर, config डिफ़ॉल्ट रूप से ~/Library/Application Support/OreWatch/singleton/ और state डिफ़ॉल्ट रूप से ~/Library/Application Support/OreWatch/State/singleton/ होता है।
  • साझा खतरा डेटा अब singleton state निर्देशिका के अंतर्गत threat-data/final-data/ पर रहता है।
  • monitor doctor singleton मॉनिटर के लिए सटीक config_path, state_db, log_file, final_data_dir, और सेवा-टेम्पलेट निर्देशिका प्रिंट करता है।
  • प्रति-प्रोजेक्ट नीति ओवरराइड को प्रोजेक्ट रूट पर .ore-monitor.yml में संग्रहीत किया जा सकता है।

Local integration surface:

  • OreWatch अब जब monitor डेमन चल रहा होता है तो डिफ़ॉल्ट रूप से 127.0.0.1:48736 पर एक केवल-लोकलहोस्ट API उजागर करता है।
  • API monitor config निर्देशिका में api.token पर केवल-मालिक अनुमतियों के साथ संग्रहीत प्रति-उपयोगकर्ता bearer टोकन का उपयोग करता है।
  • 127.0.0.1:48736 पर Authorization: Bearer <token> के बिना सीधे अनुरोध सही ढंग से 401 Unauthorized लौटाएंगे।
  • एजेंट और IDE क्लाइंट को पथों का अनुमान लगाने के बजाय orewatch monitor connection-info के माध्यम से monitor की खोज करनी चाहिए, और निर्भरता-जांच अनुरोधों के अंदर उस वास्तविक project_path को भेजना चाहिए जिस पर वे काम कर रहे हैं।
  • Claude Code, Codex, और Cursor बंडल MCP ब्रिज का उपयोग कर सकते हैं, जो orewatch_health, orewatch_check_dependency_add, orewatch_check_manifest, orewatch_override_dependency_add, orewatch_list_active_findings, , , और को उजागर करता है।

Optional anomaly-gated live-update config:```yaml live_updates: enabled: true mode: gated bootstrap_from_live: true block_on_core_source_failure: false max_drop_ratio: 0.40 max_drop_absolute: 200 max_removal_ratio: 0.25 max_removal_absolute: 100 warn_growth_ratio: 5.0 warn_growth_absolute: 2000

root@kitploit:~
मुख्य व्यवहार:
- लाइव उम्मीदवार पहले स्टेजिंग एरिया में बनाए जाते हैं; वे संग्रह के दौरान सक्रिय डेटाबेस को ओवरराइट नहीं करते।
- बड़ी गिरावट, इकोसिस्टम रिग्रेशन, खाली इकोसिस्टम और सामूहिक हटाने से प्रमोशन अवरुद्ध हो जाता है।
- कोर-सोर्स आउटेज डिफ़ॉल्ट रूप से ओपन-सोर्स लाइव रिफ्रेश के लिए केवल चेतावनी-भरा होता है; इकोसिस्टम-स्तरीय गिरावट और हटाने अभी भी खराब प्रमोशन को अवरुद्ध करते हैं।
- केवल चेतावनी-भरे विसंगतियाँ स्थिति और रिपोर्ट में दर्ज की जाती हैं लेकिन प्रमोशन को नहीं रोकतीं।
- अस्वीकृत उम्मीदवार अंतिम-ज्ञात-अच्छा डेटासेट को सक्रिय रखते हैं जब एक पहले से मौजूद हो।
- पहली बार बूटस्ट्रैप लाइव फ़ीड से अनुमत है यदि कम से कम एक कोर स्रोत सफल होता है और उम्मीदवार उपयोग योग्य इकोसिस्टम डेटा उत्पन्न करता है।

**वैकल्पिक सूचना वेबहुक कॉन्फ़िग:**```yaml
notifications:
  desktop: true
  terminal: true
  webhook_url: https://hooks.example.com/orewatch
  webhook_format: generic
  webhook_timeout_ms: 5000
  webhook_headers:
    Authorization: Bearer change-me

Set webhook_format: slack जब Slack इनकमिंग वेबहुक को लक्षित कर रहे हों तो सेट करें। उस मोड में OreWatch एक साधारण text पेलोड भेजता है।


वितरण

इस प्रोजेक्ट के अब दो अलग-अलग वितरण सतहें हैं:

  1. CLI और मॉनिटर कोड
  2. मॉनिटर द्वारा उपभोग किए गए खतरा-डेटा स्नैपशॉट

इन्हें अलग-अलग वितरित किया जाना चाहिए।

अनुशंसित पैकेज वितरण

डेवलपर्स के लिए सर्वोत्तम डिफ़ॉल्ट: स्कैनर को एक सामान्य पायथन पैकेज के रूप में PyPI पर प्रकाशित करें और pipx के साथ इंस्टॉलेशन की अनुशंसा करें।

यह सबसे उपयुक्त क्यों है:

  • प्रोजेक्ट एक पायथन CLI और बैकग्राउंड मॉनिटर है, इसलिए एक यूनिवर्सल व्हील और सोर्स डिस्ट्रीब्यूशन सबसे सीधा रिलीज़ आर्टिफैक्ट है।
  • pipx डेवलपर्स को प्रोजेक्ट वर्चुअलएन्व को प्रदूषित किए बिना एक पृथक, उपयोगकर्ता-स्तरीय इंस्टॉलेशन देता है।
  • CI अभी भी python3.14 -m pip install orewatch==<version> के साथ समान संस्करण स्थापित कर सकता है।
  • यह CLI अपग्रेड पथ को सरल रखता है जबकि खतरा-डेटा अपडेट को हस्ताक्षरित स्नैपशॉट चैनल पर छोड़ देता है।

अनुशंसित रिलीज़ रूप:

  • sdist और यूनिवर्सल व्हील आर्टिफैक्ट्स को PyPI पर प्रकाशित करें।
  • orewatch कंसोल एंट्री पॉइंट को उजागर करें।
  • ore-mal-pkg-inspector को अस्थायी संगतता उपनाम के रूप में रखें।
  • स्थानीय डेवलपर इंस्टॉल के लिए pipx install --python python3.14 orewatch का दस्तावेज़ीकरण करें।
  • CI और पिन की गई ऑटोमेशन के लिए python3.14 -m pip install orewatch==<version> का दस्तावेज़ीकरण करें।

उपलब्ध द्वितीयक चैनल: मैकओएस उपयोगकर्ताओं के लिए होमब्रू टैप अब लाइव है जो ब्रू-प्रबंधित इंस्टॉल पसंद करते हैं:```bash brew install rapticore/tap/orewatch

root@kitploit:~
होमब्रू, प्रकाशित PyPI रिलीज़ पर एक सुविधा परत बना हुआ है, प्राथमिक रिलीज़ आर्टिफैक्ट नहीं।

**योगदानकर्ताओं के लिए सबसे अच्छा विकल्प:** मौजूदा स्रोत-चेकआउट प्रवाह को बनाए रखें:```bash
git clone https://github.com/rapticore/ore-mal-pkg-inspector.git
cd ore-mal-pkg-inspector
python3.14 -m venv .venv
source .venv/bin/activate
python -m pip install -e .

प्रबंधित macOS रोलआउट

यदि आप Kandji, Jamf Pro, Intune, Munki, या किसी अन्य macOS सॉफ़्टवेयर-वितरण प्रणाली के साथ OreWatch को रोल आउट कर रहे हैं, तो अनुशंसित मॉडल डेवलपर pipx पथ से भिन्न है।

वर्तमान उत्पाद वास्तविकता:

  • आज रिपो एक Python पैकेज भेजता है, न कि एक प्रथम-पक्ष नोटरीकृत macOS इंस्टॉलर पैकेज
  • प्रबंधित फ्लीट के लिए, अनुशंसित आर्टिफैक्ट एक हस्ताक्षरित फ्लैट .pkg है जो प्रकाशित OreWatch व्हील के आसपास बनाया गया है
  • खतरा-डेटा स्नैपशॉट अभी भी ऐप/रनटाइम पैकेज से अलग वितरित किए जाने चाहिए

अनुशंसित एंटरप्राइज़ रोलआउट मॉडल:

  1. डिवाइस इंस्टॉल
    • एक हस्ताक्षरित .pkg तैनात करें जो OreWatch रनटाइम और एक स्थिर orewatch CLI शिम स्थापित करता है
    • वैकल्पिक रूप से mac-menubar एक्स्ट्रा शामिल करें यदि आप प्रबंधित Macs पर देशी मेनू बार ऐप चाहते हैं
  2. उपयोगकर्ता सक्रियण
    • orewatch monitor quickstart /path/to/project --client <client> या एक समतुल्य उपयोगकर्ता-संदर्भ बूटस्ट्रैप चलाएं
    • यह चरण अलग है क्योंकि OreWatch का मॉनिटर जानबूझकर प्रति-उपयोगकर्ता है और उपयोगकर्ता LaunchAgent के साथ उपयोगकर्ता-स्वामित्व वाले कॉन्फ़िग/टोकन/स्टेट का उपयोग करता है
  3. चल रहे अपडेट
    • अपने सामान्य सॉफ़्टवेयर लाइफ़साइकिल पर रनटाइम पैकेज अपडेट करें
    • हस्ताक्षरित स्नैपशॉट चैनल या लाइव-अपडेट पथ के माध्यम से स्वतंत्र रूप से खतरा-डेटा स्नैपशॉट अपडेट करें

यह विभाजन क्यों मायने रखता है:

  • MDM उपकरण मशीन पर कोड स्थापित करने में अच्छे हैं
  • OreWatch का मॉनिटर, API टोकन और launchd सेवा उपयोगकर्ता-स्कोप्ड हैं, इसलिए उन्हें मशीन-स्कोप पैकेज इंस्टॉल से मजबूर होने के बजाय लॉग-इन उपयोगकर्ता संदर्भ में बनाया जाना चाहिए

प्रबंधित macOS के लिए अनुशंसित पैकेज आकार:

  • एक स्थिर पथ जैसे /Library/Application Support/OreWatch/runtime के तहत एक समर्पित रनटाइम
  • एक स्थिर शिम जैसे /usr/local/bin/orewatch
  • संस्करणित पैकेज मेटाडेटा ताकि MDM प्लेटफ़ॉर्म साफ-साफ अपग्रेड का पता लगा सकें
  • कोड साइनिंग और नोटरीकरण जहां आपकी फ्लीट नीति इसकी उम्मीद करती है

विक्रेता-विशिष्ट मार्गदर्शन:

  • Kandji
    • एक कस्टम ऐप का उपयोग करें जिसमें इंस्टॉलर पैकेज (.pkg) हो
    • OreWatch के लिए .dmg या .zip पर .pkg को प्राथमिकता दें क्योंकि रनटाइम ड्रैग-एंड-ड्रॉप ऐप नहीं है
    • पहली बार मॉनिटर सक्रियण के लिए सेल्फ सर्विस या उपयोगकर्ता-सामना वाले ऑनबोर्डिंग चरण का उपयोग करें
  • Jamf Pro
    • .pkg को एक पैकेज के रूप में अपलोड करें और इसे एक नीति या सेल्फ सर्विस के साथ तैनात करें
    • उपयोगकर्ता सक्रियण को मशीन पैकेज तैनाती से अलग रखें जब तक कि आपके पास एक सुविचारित उपयोगकर्ता-संदर्भ बूटस्ट्रैप चरण न हो
  • Microsoft Intune
    • हस्ताक्षरित .pkg के साथ macOS LOB ऐप का उपयोग करें
    • Intune अन्य चैनलों की तुलना में सख्त है: यह एक वास्तविक .pkg की अपेक्षा करता है, जो Developer ID Installer प्रमाणपत्र के साथ हस्ताक्षरित हो, और पैकेज में एक पेलोड होना चाहिए
  • Munki
    • .pkg के साथ pkg मेटाडेटा प्रकाशित करें और OreWatch को अन्य प्रबंधित macOS सॉफ़्टवेयर की तरह मानें
    • Munki एक अच्छा विकल्प है जब आप पैकेज रिपो और वैकल्पिक सेल्फ सर्विस शैली अपनाना चाहते हैं
  • अन्य सिस्टम

पूर्ण रोलआउट प्लेबुक के लिए, docs/managed-rollout.md देखें।

अनुशंसित स्नैपशॉट वितरण

खतरा-डेटा स्नैपशॉट को Python पैकेज के अंदर बंडल नहीं किया जाना चाहिए। वे एक अलग कैडेंस पर बदलते हैं और पहले से ही हस्ताक्षरित होस्टेड आर्टिफैक्ट के रूप में समर्थित हैं।

ओपन-सोर्स/समुदाय डिफ़ॉल्ट: openssf और osv को सीधे anomaly-gated लाइव-अपडेट पथ के माध्यम से उपभोग करें। एंटरप्राइज़ डिफ़ॉल्ट: स्थिर HTTPS होस्टिंग पर संस्करणित हस्ताक्षरित स्नैपशॉट प्रकाशित करें और क्लाइंट को उन्हें स्वतंत्र रूप से रिफ्रेश करने दें।

अनुशंसित होस्टिंग लक्ष्य:

  • GitHub Releases एसेट्स
  • S3 या Cloudflare R2 HTTPS के पीछे
  • कोई भी स्थिर CDN-समर्थित बकेट जो अपरिवर्तनीय संस्करणित फ़ाइलें परोसता है

अनुशंसित स्नैपशॉट लेआउट:

  • versions/<version>/manifest.json
  • versions/<version>/*.db
  • channels/stable.json

अनुशंसित विश्वास मॉडल:

  • निजी हस्ताक्षर कुंजी ऑफ़लाइन रखें
  • क्लाइंट कॉन्फ़िग या पैकेज के साथ केवल सार्वजनिक सत्यापन कुंजी भेजें
  • डाउनलोड/लागू करने से पहले प्रत्येक चैनल विवरणक और मेनिफेस्ट सत्यापित करें

अनुशंसित समग्र मॉडल

उत्पादन रिलीज़ के लिए, सबसे साफ सेटअप है:

  • एप्लिकेशन को PyPI पैकेज के रूप में वितरित करें
  • स्थानीय रूप से pipx के साथ स्थापित करें
  • CI में pip के साथ स्थापित करें
  • HTTPS पर हस्ताक्षरित स्नैपशॉट चैनलों के रूप में खतरा डेटा वितरित करें
  • स्रोत चेकआउट को एक विकास पथ के रूप में मानें, न कि प्राथमिक अंत-उपयोगकर्ता इंस्टॉल के रूप में

लॉगिंग और डिबगिंग

डिफ़ॉल्ट रूप से, स्कैनर केवल चेतावनियाँ, त्रुटियाँ और अंतिम सारांश दिखाता है। समस्या निवारण या विस्तृत प्रगति ट्रैकिंग के लिए, लॉगिंग फ़्लैग का उपयोग करें:

वर्बोज़ मोड

प्रगति संदेश और संग्रह आँकड़े देखें:```bash orewatch /path/to/project --verbose

root@kitploit:~
**आउटपुट में शामिल हैं:**
- इकोसिस्टम डिटेक्शन परिणाम
- फ़ाइल पार्सिंग प्रगति
- पैकेज निष्कर्षण गणना
- डेटाबेस क्वेरी विवरण
- IoC स्कैनिंग प्रगति

**उदाहरण:**```
INFO: Detected ecosystems: npm, pypi
INFO: Loaded database for npm: 15234 malicious packages
INFO: Loaded database for pypi: 8421 malicious packages
INFO: Extracted 45 packages from 3 files
INFO: Checking 30 npm packages against database...
INFO: Checking 15 pypi packages against database...
INFO: IoC scan complete: 0 indicators found

डीबग मोड

समस्या निवारण के लिए विस्तृत निदान जानकारी देखें:```bash orewatch /path/to/project --debug

root@kitploit:~
**आउटपुट में शामिल हैं:**
- सभी INFO लेवल के संदेश
- स्कैन किए जा रहे फ़ाइल पथ
- SQL क्वेरी निष्पादन विवरण
- हैश गणनाएँ
- पैटर्न मिलान परिणाम
- आंतरिक स्थिति जानकारी

**उपयोग के मामले:**
- यह जाँचना कि किसी पैकेज का पता क्यों नहीं चला
- इकोसिस्टम ऑटो-डिटेक्शन समस्याओं को डीबग करना
- विस्तृत संदर्भ के साथ मुद्दों की रिपोर्ट करना
- स्कैनर व्यवहार का ऑडिट करना

### कलेक्टर्स के लिए लॉगिंग

खतरे की खुफिया संग्राहक भी वर्बोज़ और डीबग मोड का समर्थन करते हैं:```bash
cd collectors

# See collection progress
python3 orchestrator.py --verbose

# Debug data source issues
python3 orchestrator.py --debug

नोट: सभी लॉग stderr पर जाते हैं, JSON रिपोर्ट आउटपुट के लिए stdout को साफ रखते हैं। इससे लॉग संदेशों के हस्तक्षेप के बिना स्कैनर परिणामों को अन्य टूल्स पर पाइप करना संभव होता है।


आउटपुट और रिपोर्ट्स

रिपोर्ट संरचना

रिपोर्ट्स डिफ़ॉल्ट रूप से scan-output/ निर्देशिका में सहेजी जाती हैं (या --output के साथ कस्टम पथ)। OreWatch एक मशीन-पठनीय JSON रिपोर्ट और उसी बेसनाम के साथ एक स्टाइल किया हुआ HTML सहयोगी रिपोर्ट लिखता है। JSON कलाकृति में खतरा-डेटा उपलब्धता मेटाडेटा शामिल है और पैकेज निष्कर्षों के लिए SARIF-शैली के physicalLocation ऑब्जेक्ट का उपयोग करता है, लेकिन यह पूर्ण SARIF 2.1.0 दस्तावेज़ नहीं है।

उदाहरण रिपोर्ट:```json { "scan_timestamp": "2025-12-31T12:00:00Z", "ecosystem": "npm", "scanned_path": "/path/to/project", "total_packages_scanned": 150, "data_status": "complete", "sources_used": ["openssf", "osv"], "experimental_sources_used": [], "missing_ecosystems": [], "malicious_packages_found": 2, "iocs_found": 3, "malicious_packages": [ { "name": "malicious-pkg", "version": "1.0.0", "severity": "critical", "sources": ["threat-intel-db", "research-community"], "description": "Malicious code executes unauthorized operations", "detected_behaviors": ["malicious_code", "data_exfiltration"] } ], "iocs": [ { "type": "malicious_bundle_js", "path": "node_modules/suspect-pkg/bundle.js", "hash": "46faab8ab153fae6e80e7cca38eab363075bb524edd79e42269217a083628f09", "severity": "CRITICAL", "variant": "original", "description": "Known malicious payload file from Shai-Hulud attack" }, { "type": "malicious_postinstall", "path": "package.json", "pattern": "node bundle.js", "severity": "CRITICAL", "variant": "original", "description": "Malicious postinstall hook executes payload" } ] }

root@kitploit:~
**धमकी डेटा फ़ील्ड्स:**
- `data_status`: `complete`, `partial`, `failed`, या `not_applicable`
- `sources_used`: अनुरोधित इकोसिस्टम के लिए उपयोगी धमकी डेटा प्रदान करने वाले स्रोत
- `experimental_sources_used`: स्कैन डेटा में शामिल प्रायोगिक स्रोत
- `missing_ecosystems`: अनुरोधित इकोसिस्टम जिनके पास कोई उपयोगी पैकेज-धमकी डेटाबेस नहीं था
- `promotion_decision`: मौजूदा-डेटा स्कैन के लिए खाली, अन्यथा `promoted`, `bootstrapped`, या `rejected`
- `kept_last_known_good`: `true` जब कोई लाइव उम्मीदवार अस्वीकार कर दिया गया था लेकिन पिछला सक्रिय डेटासेट उपयोग योग्य रहा
- `anomalies`: लाइव रिफ्रेश प्रयास के दौरान उठाई गई चेतावनी/अवरोध असामान्यताएं

### परिणामों को समझना

**गंभीरता स्तर:**
- **CRITICAL:** सक्रिय शोषण या डेटा बहिर्गमन के साथ ज्ञात दुर्भावनापूर्ण कोड
- **HIGH:** दुर्भावनापूर्ण इरादे या टाइपोस्क्वाटिंग के मजबूत संकेत
- **MEDIUM:** संदिग्ध पैटर्न या संभावित कमजोरियां
- **LOW:** मामूली चिंताएं या सूचनात्मक निष्कर्ष

**अनुशंसित कार्रवाइयाँ:**
1. **गंभीर/उच्च निष्कर्ष:** प्रभावित पैकेजों को तुरंत हटाएं और प्रभाव की जांच करें
2. **IoCs की समीक्षा करें:** जांचें कि क्या दुर्भावनापूर्ण कोड निष्पादित हुआ है (लॉग, नेटवर्क गतिविधि)
3. **निर्भरताएँ अपडेट करें:** दुर्भावनापूर्ण पैकेजों को वैध विकल्पों से बदलें
4. **पुनः स्कैन करें:** अनुवर्ती स्कैन के साथ सुधार की पुष्टि करें
5. **रिपोर्ट करें:** पैकेज रजिस्ट्री अनुरक्षकों को रिपोर्ट करने पर विचार करें

---

## CI/CD एकीकरण

### GitHub Actions

**बुनियादी सुरक्षा स्कैन:**```yaml
name: Security Scan - Malicious Packages
on: [push, pull_request]

jobs:
  malicious-package-scan:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Set up Python
        uses: actions/setup-python@v5
        with:
          python-version: '3.14'

      - name: Install OreWatch
        run: |
          git clone https://github.com/rapticore/ore-mal-pkg-inspector.git scanner
          cd scanner
          pip install .

      - name: Scan for malicious packages
        run: |
          cd scanner
          orewatch ${{ github.workspace }} --latest-data

      - name: Upload scan report
        uses: actions/upload-artifact@v4
        if: always()
        with:
          name: security-scan-report
          path: scanner/scan-output/

पता लगाने पर विफलता के साथ उन्नत:```yaml - name: Scan and fail on malicious packages run: | cd scanner orewatch ${{ github.workspace }} --latest-data --output report.json

root@kitploit:~
      # Check if malicious packages were found
      MALICIOUS_COUNT=$(jq '.malicious_packages_found' report.json)
      IOC_COUNT=$(jq '.iocs_found' report.json)

      if [ "$MALICIOUS_COUNT" -gt 0 ] || [ "$IOC_COUNT" -gt 0 ]; then
        echo "🚨 SECURITY ALERT: Malicious packages or IoCs detected!"
        echo "Malicious packages: $MALICIOUS_COUNT"
        echo "IoCs found: $IOC_COUNT"
        exit 1
      fi
root@kitploit:~
### GitLab CI```yaml
malicious-package-scan:
  image: python:3.14
  stage: security
  before_script:
    - git clone https://github.com/rapticore/ore-mal-pkg-inspector.git scanner
    - cd scanner && pip install .
  script:
    - orewatch $CI_PROJECT_DIR --latest-data --strict-data --output scan-report.json
  artifacts:
    paths:
      - scan-report.json
    when: always
  allow_failure: false

Jenkins पाइपलाइन```groovy

pipeline { agent any

root@kitploit:~
stages {
    stage('Setup Scanner') {
        steps {
            sh '''
                git clone https://github.com/rapticore/ore-mal-pkg-inspector.git scanner
                cd scanner
                python3.14 -m pip install .
            '''
        }
    }

    stage('Security Scan') {
        steps {
            sh '''
                cd scanner
                orewatch ${WORKSPACE} --latest-data
            '''
        }
    }
}

post {
    always {
        archiveArtifacts artifacts: 'scanner/scan-output/*.json', fingerprint: true
    }
}

}

root@kitploit:~
### प्री-कमिट हुक

`.git/hooks/pre-commit` में जोड़ें:```bash
#!/bin/bash

echo "Running malicious package scan..."

cd /path/to/ore-mal-pkg-inspector
orewatch $PROJECT_DIR --no-summary

if [ $? -ne 0 ]; then
    echo "❌ Malicious packages or IoCs detected! Commit blocked."
    echo "Review the scan report in scan-output/"
    exit 1
fi

echo "✅ Security scan passed"

समस्या समाधान

सामान्य समस्याएँ

"डेटाबेस नहीं मिला" त्रुटि

लक्षण:``` ERROR: No usable threat data available for requested ecosystems: npm

root@kitploit:~
**कारण:** खतरा-डेटा संग्रह विफल रहा, मेटाडेटा अपूर्ण है, या अनुरोधित पारिस्थितिकी तंत्रों के पास अभी तक उपयोग योग्य स्थानीय डेटाबेस नहीं हैं।

**समाधान:**```bash
# Force recollection and require a complete result for the requested ecosystems
orewatch /path/to/project --latest-data --strict-data

नोट: यदि यह बना रहता है, तो नेटवर्क कनेक्टिविटी, फ़ाइलसिस्टम अनुमतियाँ, और यह जाँचें कि क्या आपने जानबूझकर प्रायोगिक स्रोतों का अनुरोध किया था।

"कोई पैकेज नहीं मिला" चेतावनी

लक्षण:``` WARNING: No packages detected in /path/to/project

root@kitploit:~
**संभावित कारण और समाधान:**

1. **गलत निर्देशिका:** सुनिश्चित करें कि आप सही प्रोजेक्ट निर्देशिका स्कैन कर रहे हैं   ```bash
   ls /path/to/project  # Verify package.json or requirements.txt exists
  1. असमर्थित या अप्रत्याशित मैनिफेस्ट: सटीक समर्थित फ़ाइल नाम प्रिंट करें ```bash orewatch --list-supported-files
    root@kitploit:~
  2. फ़ाइल अनुमतियाँ: सुनिश्चित करें कि फ़ाइलें पठनीय हैं ```bash ls -la /path/to/project/package.json
    root@kitploit:~

कनेक्शन त्रुटियां अपडेट के दौरान

लक्षण:``` ERROR: Error downloading npm: <urlopen error [Errno -3] Temporary failure in name resolution>

root@kitploit:~
**समाधान:**

1. **इंटरनेट कनेक्शन जाँचें:**   ```bash
   ping google.com
  1. टाइमआउट बढ़ाकर पुनः प्रयास करें: Edit collectors/config.yaml: ```yaml osv: timeout: 600 # Increase from default 300
    root@kitploit:~
  2. कैश किए गए डेटा का उपयोग करें: यदि आपने पहले डेटा डाउनलोड किया है: ```bash python3 orchestrator.py --skip-build # Skip download, rebuild from cache
    root@kitploit:~

अनुमति अस्वीकृत त्रुटियाँ

लक्षण:``` ERROR: Error creating directory collectors/raw-data: Permission denied

root@kitploit:~
**समाधान:**```bash
# Ensure proper ownership
sudo chown -R $USER:$USER /path/to/ore-mal-pkg-inspector

# Or run from user-writable location
cd ~/
git clone https://github.com/rapticore/ore-mal-pkg-inspector.git
cd ore-mal-pkg-inspector

OreWatch ने बहुत अधिक डिस्क उपयोग किया है

लक्षण: ~/Library/Application Support/OreWatch (macOS) या $XDG_STATE_HOME/orewatch (Linux) दसियों गीगाबाइट तक बढ़ गया है।

कारण (पूर्व-1.2.3): प्रत्येक लाइव-अपडेट प्रमोशन ने बिना प्रतिधारण के पिछले खतरा-डेटा डेटाबेस (~300 MB) की एक पूर्ण प्रतिलिपि संग्रहीत की। एक लंबे समय तक चलने वाला मॉनिटर प्रति चक्र अनिश्चितकाल तक एक स्नैपशॉट जमा करता रहा।

समाधान: 1.2.3 या बाद के संस्करण में अपग्रेड करें। बैकअप अब ~1 KB के SHA-256 मेनिफेस्ट हैं, प्रतिधारण डिफ़ॉल्ट रूप से नवीनतम 30 तक सीमित है, और एक स्पष्ट सफाई कमांड उपलब्ध है:```bash

Apply the configured retention policy now (default: keep 30 manifests,

remove staging entries older than 1 hour).

orewatch monitor cleanup

Reclaim everything except the most recent 5 backups and purge staging.

orewatch monitor cleanup --keep-backups 5 --staging-max-age-seconds 0

Tune retention in monitor config (live_updates section):

retain_backups: # how many backup manifests to keep

staging_max_age_seconds: # stale candidate-* staging cutoff

root@kitploit:~
#### झूठी सकारात्मकता

**लक्षण:** वैध पैकेज को दुर्भावनापूर्ण के रूप में चिह्नित किया गया।

**चरण:**

1. **परिणाम की पुष्टि करें:** रिपोर्ट के विवरण की समीक्षा करें जिसमें गंभीरता और विवरण शामिल हैं

2. **संस्करण जांचें:** चिह्नित संस्करण विशिष्ट हो सकता है:   ```bash
   orewatch /path/to/project --verbose
  1. गलत सकारात्मक की रिपोर्ट करें: यदि गलत पुष्टि हो जाए:
    • विवरण के साथ https://github.com/rapticore/ore-mal-pkg-inspector/issues पर समस्या खोलें

जांच के लिए डीबग मोड

विस्तृत लॉगिंग सक्षम करें:```bash

Scanner debug mode

orewatch /path/to/project --debug 2> debug.log

Collector debug mode

cd collectors python3 orchestrator.py --debug 2> collector-debug.log

root@kitploit:~
**समीक्षा लॉग:** `debug.log` की जाँच करें विस्तृत निष्पादन ट्रेस के लिए जिसमें शामिल हैं:
- स्कैन की गई फ़ाइल पथ
- निष्पादित SQL क्वेरीज़
- पैटर्न मिलान परिणाम
- त्रुटि स्टैक ट्रेस

---

## सामान्य प्रश्न

### मुझे कितनी बार खतरा खुफिया जानकारी अपडेट करनी चाहिए?

**अनुशंसा:**
- **उत्पादन/CI वातावरण:** दैनिक स्वचालित अपडेट
- **डेवलपमेंट वर्कस्टेशन:** न्यूनतम साप्ताहिक अपडेट
- **सुरक्षा समाचार के बाद:** जब नए खतरे घोषित किए जाएँ तुरंत अपडेट करें

दुर्भावनापूर्ण पैकेज लगातार प्रकाशित होते रहते हैं। दैनिक अपडेट नवीनतम सुरक्षा सुनिश्चित करते हैं।

### मैं खतरा खुफिया डेटा कैसे अपडेट करूं?

स्कैनर को `--latest-data` फ्लैग के साथ चलाएँ एक अपडेट बलपूर्वक करने के लिए:```bash
orewatch /path/to/project --latest-data

CI/CD में स्वचालित अपडेट के लिए, --latest-data फ़्लैग के साथ समय-समय पर स्कैन शेड्यूल करें (जैसे, दैनिक)। --include-experimental-sources केवल तभी जोड़ें जब आप स्पष्ट रूप से रीबिल्ड में फ़ाइलम-व्युत्पन्न डेटा शामिल करना चाहते हैं।

नोट: पहली बार स्कैन स्वचालित रूप से डेटा एकत्र करते हैं, इसलिए मौजूदा डेटाबेस को ताज़ा करने के लिए ही मैन्युअल अपडेट की आवश्यकता होती है।

धमकी का डेटा कहाँ से आता है?

डिफ़ॉल्ट डेटाबेस प्रोजेक्ट के मुख्य धमकी स्रोतों से बनाए गए हैं:

  • openssf
  • osv

स्कैनर प्रोजेक्ट के प्रायोगिक स्रोत सेट को भी शामिल कर सकता है:

  • phylum के साथ --include-experimental-sources

socketdev एक अक्षम प्लेसहोल्डर के रूप में रिपॉजिटरी में मौजूद है और डिफ़ॉल्ट संग्रह पथ का हिस्सा नहीं है।

डेटा स्रोतों, संग्रह और प्रसंस्करण के बारे में तकनीकी विवरण के लिए, ARCHITECTURE.md देखें।

क्या यह उपकरण मेरे कोड या निर्भरताओं को संशोधित करता है?

नहीं। OreWatch केवल-पढ़ने के ऑपरेशन करता है। यह:

  • ✅ निर्भरता फ़ाइलों को पढ़ता है
  • ✅ धमकी डेटाबेस से पूछताछ करता है
  • ✅ फ़ाइल पैटर्न को स्कैन करता है
  • ✅ रिपोर्ट तैयार करता है

यह कभी नहीं:

  • ❌ पैकेज फ़ाइलों को संशोधित नहीं करता
  • ❌ पैकेज स्थापित या हटाता नहीं है
  • ❌ प्रोजेक्ट कॉन्फ़िगरेशन नहीं बदलता
  • ❌ पैकेज कोड निष्पादित नहीं करता

अगर मेरा पैकेज दुर्भावनापूर्ण के रूप में चिह्नित हो जाए तो क्या करें?

उठाए जाने वाले कदम:

  1. निष्कर्ष सत्यापित करें: विवरण और गंभीरता के लिए रिपोर्ट जांचें
  2. सबूतों की समीक्षा करें: विवरण और पता लगाए गए व्यवहारों की जांच करें
  3. संस्करण जांचें: निर्धारित करें कि क्या विशिष्ट संस्करण प्रभावित हैं
  4. यदि वैध हो:
    • डेटा स्रोत रखरखावकर्ताओं को गलत सकारात्मक रिपोर्ट करें
    • विवरण के साथ हमारे GitHub पर मुद्दा खोलें
  5. यदि वास्तव में दुर्भावनापूर्ण हो:
    • तुरंत पैकेज हटाएं
    • क्षति के लिए हाल के कोड कमिट की समीक्षा करें
    • संदिग्ध गतिविधि के लिए लॉग जांचें
    • सुरक्षित विकल्प पर अपडेट करें

क्या मैं इसे ऑफ़लाइन उपयोग कर सकता हूँ?

आंशिक रूप से।

ऑफ़लाइन स्कैनिंग: ✅ हाँ, एक बार डेटाबेस आरंभ हो जाने पर```bash

Online: Initial setup (one-time - runs automatically on first scan)

orewatch /path/to/project

Offline: Subsequent scans work with local databases

orewatch /path/to/project

root@kitploit:~
**Offline updates:** ❌ नहीं, खतरे की खुफिया जानकारी संग्रह करने के लिए सुरक्षा स्रोतों से डेटा लाने हेतु इंटरनेट एक्सेस की आवश्यकता है।

**Airgapped environments:** आप यह कर सकते हैं:
1. इंटरनेट-कनेक्टेड मशीन पर डेटाबेस डाउनलोड करें
2. SQLite फ़ाइलों को `orewatch monitor doctor` द्वारा दिखाए गए एकल `final_data_dir` में ट्रांसफ़र करें
3. संभावित रूप से पुराने डेटा के साथ ऑफ़लाइन स्कैन चलाएँ

### यह npm audit या pip-audit से कैसे तुलना करता है?

**अलग-अलग उद्देश्य:**

**npm audit / pip-audit:**
- ज्ञात CVE कमजोरियों पर ध्यान केंद्रित करते हैं
- पैकेज संस्करणों की सलाहकार डेटाबेस से जांच करते हैं
- पैकेज रजिस्ट्री टीमों द्वारा अनुरक्षित

**OreWatch:**
- दुर्भावनापूर्ण पैकेजों पर ध्यान केंद्रित करता है (सिर्फ कमजोर पैकेज नहीं)
- टाइपोस्क्वॉटिंग, malware, supply chain हमलों का पता लगाता है
- क्रॉस-इकोसिस्टम कवरेज
- सक्रिय खतरों के लिए IoC का पता लगाना

**सर्वोत्तम अभ्यास:** **दोनों** का उपयोग करें:```bash
# Check for vulnerabilities
npm audit
pip-audit

# Check for malicious packages
orewatch /path/to/project

क्या यह निजी पैकेज रजिस्ट्रियों के साथ काम करता है?

निर्भरता स्कैनिंग: ✅ हाँ, स्कैनर आपकी निर्भरता फ़ाइलों को पढ़ता है, चाहे पैकेज कहीं से भी आएं।

खतरे की खुफिया जानकारी: ⚠️ सीमित। हमारे डेटाबेस सार्वजनिक रजिस्ट्रियों (npmjs.com, pypi.org, आदि) को कवर करते हैं। निजी रजिस्ट्रियों पर दुर्भावनापूर्ण पैकेज तब तक पहचाने नहीं जाएंगे जब तक आप कस्टम खतरे का डेटा नहीं जोड़ते।

कस्टम खतरे का डेटा: आप डेटाबेस को अपनी स्वयं की दुर्भावनापूर्ण पैकेज सूचियों के साथ विस्तारित कर सकते हैं। इस उन्नत उपयोग मामले पर मार्गदर्शन के लिए हमसे संपर्क करें।

प्रदर्शन पर क्या प्रभाव है?

स्कैन समय:

  • छोटी परियोजनाएं (< 50 पैकेज): < 5 सेकंड
  • मध्यम परियोजनाएं (50-500 पैकेज): 5-30 सेकंड
  • बड़ी परियोजनाएं (500+ पैकेज): 30-120 सेकंड

कारक:

  • IoC स्कैनिंग 10-50% ओवरहेड जोड़ता है (यदि आवश्यक न हो तो --no-ioc से अक्षम करें)
  • पहला रन धीमा हो सकता है क्योंकि डेटाबेस मेमोरी में लोड होते हैं

अनुकूलन युक्तियाँ:```bash

Scan specific files instead of entire directory

orewatch --file package.json

root@kitploit:~
---

## योगदान

हम योगदान का स्वागत करते हैं! चाहे आप बग रिपोर्ट कर रहे हों, सुविधाएँ सुझा रहे हों, या कोड का योगदान दे रहे हों, आपकी सहायता OreWatch को सभी के लिए बेहतर बनाती है।

**बग रिपोर्ट करें या सुविधाओं का अनुरोध करें:**
- GitHub Issues: https://github.com/rapticore/ore-mal-pkg-inspector/issues

**कोड का योगदान करें:**
- विकास सेटअप, कोड शैली, परीक्षण और पुल अनुरोध प्रक्रिया पर विस्तृत दिशानिर्देशों के लिए [CONTRIBUTING.md](https://github.com/rapticore/ore-mal-pkg-inspector/blob/HEAD/CONTRIBUTING.md) देखें।

**प्रश्न या चर्चाएँ:**
- GitHub Discussions: https://github.com/rapticore/ore-mal-pkg-inspector/discussions

---

## सुरक्षा नीति

सुरक्षा हमारी सर्वोच्च प्राथमिकता है। OreWatch एक सुरक्षा उपकरण है, और हम कमजोरियों को गंभीरता से लेते हैं।

### सुरक्षा कमजोरियों की रिपोर्ट करना

**सुरक्षा कमजोरियों के लिए सार्वजनिक GitHub इश्यू न खोलें।**

इसके बजाय, निजी रूप से रिपोर्ट करें:

**Email:** [email protected]

**शामिल करें:**
- कमजोरी का विवरण
- पुनरुत्पादन के चरण
- संभावित प्रभाव
- सुझाया गया समाधान (यदि लागू हो)
- अनुवर्ती के लिए आपकी संपर्क जानकारी

### प्रतिक्रिया समयरेखा

- **स्वीकृति:** 48 घंटे के भीतर
- **प्रारंभिक मूल्यांकन:** 7 दिनों के भीतर
- **समाधान समयरेखा:** गंभीरता के अनुसार भिन्न
  - क्रिटिकल: 7-14 दिन
  - उच्च: 14-30 दिन
  - मध्यम/निम्न: 30-60 दिन

### सुरक्षा सर्वोत्तम अभ्यास

OreWatch का उपयोग करते समय:

**करें:**
- ✅ न्यूनतम विशेषाधिकार के साथ चलाएँ (रूट/एडमिन आवश्यक नहीं)
- ✅ खतरा खुफिया जानकारी नियमित रूप से अपडेट करें
- ✅ स्कैन रिपोर्ट की तुरंत समीक्षा करें
- ✅ निरंतर सुरक्षा के लिए CI/CD में एकीकृत करें
- ✅ उपकरण को नवीनतम संस्करण में अपडेट रखें

**न करें:**
- ❌ जांच के बिना स्कैन निष्कर्षों को नज़रअंदाज़ करें
- ❌ उत्पादन वातावरण में IoC स्कैनिंग अक्षम करें
- ❌ अविश्वसनीय स्रोतों से डेटाबेस फ़ाइलें साझा करें
- ❌ अनावश्यक रूप से उच्च विशेषाधिकारों के साथ चलाएँ

### कमजोरी प्रकटीकरण

हम समन्वित प्रकटीकरण का पालन करते हैं:
1. कमजोरी की निजी रिपोर्ट
2. समाधान विकसित और परीक्षित
3. सुरक्षा सलाहकार प्रकाशित
4. समाधान उपलब्ध होने के बाद सार्वजनिक प्रकटीकरण

### सुरक्षा हॉल ऑफ फ़ेम

हम उन सुरक्षा शोधकर्ताओं को मान्यता देते हैं जो जिम्मेदारी से कमजोरियों का खुलासा करते हैं:

*रिपोर्ट प्राप्त होने पर सूची बनाए रखी जाएगी*

---

### सामुदायिक अनुरोध

सुविधाओं पर वोट करें या सुझाव दें:
- **GitHub Discussions:** https://github.com/rapticore/ore-mal-pkg-inspector/discussions
- **Feature Requests:** https://github.com/rapticore/ore-mal-pkg-inspector/issues

### रोडमैप में योगदान

हम सुविधाओं को प्राथमिकता देते हैं:
- सुरक्षा प्रभाव
- सामुदायिक मांग
- रखरखाव स्थिरता
- परियोजना लक्ष्यों के साथ संरेखण

रोडमैप को प्रभावित करने के लिए:
1. विस्तृत उपयोग मामले के साथ एक फीचर अनुरोध खोलें
2. चर्चाओं में भाग लें
3. कार्यान्वयन में योगदान दें (PR का स्वागत है!)

---

## रोडमैप

OreWatch आज के लिए उपयोग योग्य है:

- npm, PyPI, Maven, RubyGems, Go और Cargo में स्थानीय CLI स्कैन
- कई परियोजनाओं के लिए प्रति-उपयोगकर्ता एक पृष्ठभूमि मॉनिटर
- Cursor, Claude Code और Codex के लिए MCP एकीकरण
- VS Code, JetBrains / PyCharm और Xcode सहायकों के लिए localhost API एकीकरण
- macOS मेनू बार समीक्षा और पॉपअप सूचनाएँ

निकट अवधि की प्राथमिकताएँ:

- प्रथम-पक्ष VS Code और JetBrains / PyCharm एकीकरण उदाहरण या पतली प्लगइन्स
- स्थानीय पॉपअप से परे मजबूत उपयोगकर्ता-मुखी सूचना कार्यप्रवाह
- CLI और UI से स्पष्ट परियोजना नीति प्रबंधन
- समृद्ध मॉनिटर रिपोर्टिंग और अपनाने के दस्तावेज़

मध्य अवधि की प्राथमिकताएँ:

- मॉनिटर और MCP सतह से व्यापक परियोजना-स्कैन कार्यप्रवाह
- बेहतर संगठन-स्तरीय रोलआउट मार्गदर्शन
- अधिक मजबूत बाहरी अलर्ट वितरण और एस्केलेशन चैनल
- केवल API एकीकरण मार्गदर्शन के बजाय गहरा IDE-विशिष्ट UX

ज्ञात वर्तमान सीमा:

- Xcode एकीकरण वर्तमान में अलर्ट दृश्यता और मिश्रित-भाषा रिपॉजिटरी के लिए सर्वोत्तम है। OreWatch अभी तक `Package.resolved`, `Podfile.lock`, या `Cartfile` जैसे मूल Apple मेनिफेस्ट को पार्स नहीं करता है।

दीर्घकालिक दिशा:

- मूल Apple इकोसिस्टम मेनिफेस्ट समर्थन
- मजबूत प्रथम-पक्ष संपादक एकीकरण
- वर्तमान macOS मेनू बार पथ से परे व्यापक ऑपरेटिंग-सिस्टम UX समानता

अधिक अपनाने-केंद्रित रोडमैप दृश्य के लिए [docs/roadmap.md](https://github.com/rapticore/ore-mal-pkg-inspector/blob/HEAD/docs/roadmap.md) देखें।

---

## लाइसेंस

MIT लाइसेंस

Copyright (c) 2025 Rapticore

इसके द्वारा अनुमति दी जाती है, नि:शुल्क, किसी भी व्यक्ति को जो इस सॉफ्टवेयर और संबंधित दस्तावेज़ फ़ाइलों ("सॉफ्टवेयर") की एक प्रति प्राप्त करता है, बिना किसी प्रतिबंध के सॉफ्टवेयर से निपटने की अनुमति दी जाती है, जिसमें बिना किसी सीमा के सॉफ्टवेयर की प्रतियों का उपयोग, प्रतिलिपि, संशोधन, विलय, प्रकाशन, वितरण, उप-लाइसेंस और/या बेचने का अधिकार शामिल है, और उन व्यक्तियों को ऐसा करने की अनुमति देना जिन्हें सॉफ्टवेयर प्रदान किया गया है, निम्नलिखित शर्तों के अधीन:

उपरोक्त कॉपीराइट नोटिस और यह अनुमति नोटिस सॉफ्टवेयर की सभी प्रतियों या महत्वपूर्ण भागों में शामिल किया जाएगा।

सॉफ्टवेयर "जैसा है" प्रदान किया जाता है, किसी भी प्रकार की वारंटी के बिना, स्पष्ट या निहित, जिसमें व्यापारिकता, किसी विशेष उद्देश्य के लिए उपयुक्तता और उल्लंघन न करने की वारंटी शामिल है लेकिन इन्हीं तक सीमित नहीं है। किसी भी स्थिति में लेखक या कॉपीराइट धारक किसी भी दावे, क्षति या अन्य देयता के लिए उत्तरदायी नहीं होंगे, चाहे वह अनुबंध की कार्रवाई में हो, अपकृत्य में हो या अन्यथा, सॉफ्टवेयर से या सॉफ्टवेयर के उपयोग या अन्य लेन-देन से उत्पन्न हो।

---

## सहायता

### सहायता प्राप्त करना

**दस्तावेज़ीकरण:** आप इसे पढ़ रहे हैं! अधिकांश प्रश्नों के लिए यहीं से शुरू करें।

**GitHub चर्चाएँ:** प्रश्नों, विचारों और सामुदायिक बातचीत के लिए:
- https://github.com/rapticore/ore-mal-pkg-inspector/discussions

**GitHub इश्यू:** बग रिपोर्ट और फीचर अनुरोधों के लिए:
- https://github.com/rapticore/ore-mal-pkg-inspector/issues

**ईमेल:** सुरक्षा कमजोरियों और निजी पूछताछ के लिए:
- [email protected]

### व्यावसायिक सहायता

उन संगठनों के लिए जिन्हें आवश्यकता है:
- कस्टम एकीकरण
- SLA-समर्थित सहायता
- निजी तैनाती सहायता
- कस्टम खतरा खुफिया फ़ीड

Contact: [email protected]

---

## आभार

### परियोजना उत्पत्ति

इस परियोजना को [OreNPMGuard](https://github.com/rapticore/OreNPMGuard) रिपॉजिटरी से निकाला गया था ताकि स्पष्ट परियोजना फोकस बनाए रखते हुए क्षमताओं का विस्तार किया जा सके।

**OreNPMGuard** (दिसंबर 2025) 738+ प्रभावित पैकेजों और गहन IoC विश्लेषण के साथ Shai-Hulud npm हमले का पता लगाने में विशेषज्ञता रखता है। इसके विकास के दौरान, हमने व्यापक बहु-पारिस्थितिकी तंत्र सुरक्षा की आवश्यकता को पहचाना, जिसके परिणामस्वरूप OreWatch को एक स्टैंडअलोन उपकरण के रूप में बनाया गया जो सभी प्रमुख पैकेज पारिस्थितिकी तंत्रों में व्यापक डेवलपर समुदाय की सेवा करता है।

### संबंधित परियोजनाएँ

- **[OreNPMGuard](https://github.com/rapticore/OreNPMGuard)** - विशेष Shai-Hulud npm स्कैनर
---

**Rapticore सुरक्षा अनुसंधान टीम द्वारा निर्मित**

*सॉफ्टवेयर आपूर्ति श्रृंखलाओं की रक्षा करना, एक स्कैन एक बार में।*
टूल डाउनलोड करें
मैं चाहता हूँ...इस पथ का उपयोग करेंइससे शुरू करें
अभी एक रिपॉजिटरी स्कैन करेंCLI स्कैनorewatch /path/to/project
पृष्ठभूमि में स्थानीय विकास की सुरक्षा करेंसिंगलटन मॉनिटरorewatch monitor quickstart /path/to/project --client claude_code
Cursor, Claude Code, या Codex से OreWatch का उपयोग करेंMCP ब्रिजorewatch monitor quickstart /path/to/project --client <cursor|claude_code|codex>
VS Code, PyCharm, या Xcode के साथ एकीकृत करेंलोकलहोस्ट APIorewatch monitor quickstart /path/to/project --client vscode
दृश्यमान macOS अलर्ट और एक मूल समीक्षा सतह प्राप्त करेंमेनू बार ऐपorewatch monitor menubar
CI में बिल्ड को मान्य करेंएक बार का CLI स्कैनorewatch . --strict-data
विकल्पसंक्षिप्तविवरणडिफ़ॉल्ट
--file-fस्कैन करने के लिए विशिष्ट फ़ाइल का पथ (निर्देशिका पहचान छोड़ता है)कोई नहीं
--ecosystem-eईकोसिस्टम बल दें: npm, pypi, maven, rubygems, go, cargoऑटो-डिटेक्ट
--output-oप्राथमिक JSON रिपोर्ट के लिए कस्टम आउटपुट पथ; OreWatch एक सहोदर HTML रिपोर्ट भी लिखता हैscan-output/malicious_packages_report_{timestamp}.json
--no-summaryकंसोल पर रिपोर्ट सारांश मुद्रित करना छोड़ेंअसत्य
--no-iocIoC (समझौता संकेतक) स्कैनिंग छोड़ेंअसत्य
--ioc-onlyकेवल IoCs के लिए स्कैन करें, पैकेज जाँच छोड़ेंअसत्य
--latest-dataस्कैनिंग से पहले एक चरणबद्ध लाइव रिफ्रेश और विसंगति-गेटेड प्रमोशन बल देंअसत्य
--strict-dataयदि किसी अनुरोधित ईकोसिस्टम में आंशिक या गुम खतरा डेटा है तो विफल हो जाएंअसत्य
--include-experimental-sourcesखतरा-डेटा रिफ्रेश के दौरान प्रयोगात्मक कलेक्टर शामिल करेंअसत्य
--list-supported-filesसमर्थित निर्भरता मेनिफेस्ट फ़ाइलनामों को सटीक रूप से प्रिंट करें और बाहर निकलेंअसत्य
--verbose-vINFO स्तर के लॉग दिखाएं (प्रगति संदेश)असत्य
--debugDEBUG स्तर के लॉग दिखाएं (विस्तृत निदान)असत्य
क्लाइंटट्रांसपोर्टबूटस्ट्रैप कमांडनोट्स
Claude CodeMCPorewatch monitor ide-bootstrap --client claude_codeप्रथम श्रेणी MCP ब्रिज
CodexMCPorewatch monitor ide-bootstrap --client codexप्रथम श्रेणी MCP ब्रिज
CursorMCPorewatch monitor ide-bootstrap --client cursorप्रथम श्रेणी MCP ब्रिज
VS CodeLocal APIorewatch monitor ide-bootstrap --client vscodeकोई बंडल एक्सटेंशन नहीं; localhost API का उपयोग करें
JetBrains / PyCharmLocal APIorewatch monitor ide-bootstrap --client jetbrainsकोई बंडल प्लगइन नहीं; localhost API का उपयोग करें
XcodeLocal APIorewatch monitor ide-bootstrap --client xcodeफाइंडिंग/नोटिफिकेशन और मिश्रित-भाषा रिपॉजिटरी के लिए सर्वोत्तम
  • monitor install अब उपलब्ध होने पर उपयोगकर्ता-स्तरीय launchd या systemd सेवा स्थापित करता है, और अन्यथा स्थानीय पृष्ठभूमि मोड पर वापस आ जाता है।
  • monitor quickstart /path/to/project --client claude_code स्थानीय LLM एजेंट सेटअप के लिए सबसे आसान पहली-रन फ्लो है।
  • --workspace-root /path/to/workspace अभी भी एक रिलीज़ के लिए deprecated संगतता उपनाम के रूप में स्वीकार किया जाता है, लेकिन यह अब monitor पहचान, टोकन स्थान या सेवा नामकरण नहीं बदलता है।
  • auto मोड में, यदि मूल launchd या systemd सेटअप विफल होता है, तो OreWatch अब सेटअप को रद्द करने के बजाय स्थानीय पृष्ठभूमि मोड पर वापस आ जाता है।
  • monitor install --ide-bootstrap Claude Code, Codex, Cursor, VS Code, JetBrains / PyCharm, और Xcode के लिए कॉपी-पेस्ट बूटस्ट्रैप स्निपेट प्रिंट करता है।
  • monitor connection-info लूपबैक API बेस URL, टोकन पथ, singleton monitor scope/home, और डेमन पहले से चल रहा है या नहीं, प्रिंट करता है।
  • monitor ide-bootstrap कुछ भी पुनः स्थापित किए बिना वर्तमान MCP/API बूटस्ट्रैप स्निपेट को फिर से प्रिंट करता है।
  • monitor mcp एक स्थानीय MCP ब्रिज चलाता है जो OreWatch निर्भरता जांच को Claude Code, Codex, और Cursor को उजागर करता है।
  • monitor findings, monitor notifications, और monitor package-updates पृष्ठभूमि डिटेक्शन और अपडेट सलाहकारों के लिए अंतर्निहित समीक्षा सतह प्रदान करते हैं।
  • monitor menubar singleton monitor और findings store द्वारा समर्थित एक मूल macOS मेनू बार ऐप लॉन्च करता है।
  • monitor mcp एक stdio सर्वर है, इसलिए यह स्टार्टअप के बाद MCP क्लाइंट की प्रतीक्षा करेगा। यह अब readiness और auto-start स्थिति stderr पर लिखता है, stdout पर नहीं।
  • IDE या MCP-क्लाइंट स्टार्टअप के लिए, monitor install का उपयोग करें ताकि जब क्लाइंट monitor mcp लॉन्च करे या API कॉल करे तो पृष्ठभूमि डेमन पहले से उपलब्ध हो।
  • make test-e2e-clients सिंथेटिक वर्कस्पेस बूटस्ट्रैप करता है और Claude Code, Codex, और Cursor के लिए क्रॉस-इकोसिस्टम MCP/API क्लाइंट मैट्रिक्स चलाता है।
  • ओपन-सोर्स/समुदाय इंस्टॉल डिफ़ॉल्ट रूप से अपस्ट्रीम कोर फीड (openssf और osv) से विसंगति-गेटेड लाइव अपडेट प्राप्त करते हैं। उम्मीदवार डेटा उपयोगकर्ता-स्वामित्व वाली monitor state निर्देशिका में चरणबद्ध किया जाता है, असामान्य ड्रॉप/हटाने की जाँच की जाती है, और उसके बाद ही सक्रिय डेटाबेस में प्रचारित किया जाता है।
  • प्रबंधित/एंटरप्राइज़ इंस्टॉल इसके बजाय उपयोगकर्ता-स्वामित्व वाली monitor config फ़ाइल में snapshots.channel_url या snapshots.manifest_url के माध्यम से कॉन्फ़िगर किए गए हस्ताक्षरित चैनल विवरणक या मैनिफेस्ट का उपयोग कर सकते हैं, और monitor उन्हें snapshots.public_key_path से सत्यापित करता है।
  • हस्ताक्षरित स्नैपशॉट वर्कफ़्लो को वर्तमान में स्थानीय मशीन पर openssl की आवश्यकता होती है।
  • क्रॉस-इकोसिस्टम क्लाइंट एकीकरण परीक्षण मार्गदर्शन docs/e2e-testing.md में प्रलेखित है।
  • orewatch_list_notifications
    orewatch_list_package_updates
    orewatch_check_package_updates
  • VS Code, JetBrains / PyCharm, और Xcode एकीकरण को निर्भरता-जोड़ जांच, मैनिफेस्ट पुनर्जांच, सक्रिय findings, हाल की सूचनाएं, और पैकेज अपडेट सलाहकारों के लिए उसी लोकलहोस्ट API को कॉल करना चाहिए।
  • सटीक अनुरोध और प्रतिक्रिया आकार docs/local-api.md में प्रलेखित हैं।
    • कोई भी पैकेज वितरण प्रणाली जो सामान्य macOS फ्लैट पैकेज तैनात कर सकती है और वैकल्पिक रूप से उपयोगकर्ता बूटस्ट्रैप चरण चला सकती है, OreWatch ले जा सकती है