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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
phantomstars — GitHub पर नकली जुड़ाव का स्वचालित पता लगाना और ट्रैकिंग — दैनिक CI, शून्य बुनियादी ढांचा | Kitploit
उपकरण/GitHubGitHub/tg12/phantomstars
OSINT (खुला स्रोत खुफिया)टोहीस्क्रिप्टिंग और स्वचालनजानकारी एकत्र करनाखतरा खुफियालर्निंग और शिक्षाक्रॉलरचयनित संसाधनएंटी-बॉट
GitHubtg12/phantomstars

phantomstars

GitHub पर नकली जुड़ाव का स्वचालित पता लगाना और ट्रैकिंग — दैनिक CI, शून्य बुनियादी ढांचा

74342 महीने पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

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

phantomstars Python 3.13 Apache 2.0 GitHub Actions Daily

phantomstars

GitHub पर नकली जुड़ाव का स्वचालित पता लगाना और ट्रैकिंग

एक JS Labs परियोजना — AI Slop Intelligence पहल का हिस्सा।
प्रतिदिन चलता है। हर संदिग्ध खाते को स्कोर करता है। समन्वित बॉट अभियानों का पता लगाता है।
समझौता किए गए रिपॉजिटरी पर सीधे issues दर्ज करता है ताकि अनुरक्षक कार्रवाई कर सकें।


इस परियोजना का समर्थन करें

BTC   3QjWqhQbHdHgWeYHTpmorP8Pe1wgDjJy54
ETH   0x5851e6145F4773d1585b8686095FB16E368a4dA1
ZEC   t1KSR5YkNPbjqRSCoLKo5AddFWdm9Kzxh1B


यह क्यों मौजूद है

GitHub Stars एक विश्वास संकेत हैं। वे यह तय करने का तरीका हैं कि डेवलपर किसका मूल्यांकन करें, किस पर निर्भर रहें और किसकी सिफारिश करें। उस संकेत को व्यवस्थित रूप से दूषित किया जा रहा है।

2024-2026 के AI बूम के दौरान, बॉट फार्मों का एक उद्योग उभरा जो निम्न-गुणवत्ता, अक्सर दुर्भावनापूर्ण रिपॉजिटरी के लिए विश्वसनीयता उत्पन्न करता है। एक प्रोजेक्ट जिसे 48 घंटों में 800 स्टार मिलते हैं, वह खोज परिणामों को स्कैन करने वाले डेवलपर को वैध लगता है। यही बात है। नकली जुड़ाव का लक्ष्य स्टार नहीं हैं; यह वह सामाजिक प्रमाण है जो वे स्टार उत्पन्न करते हैं, और वह डाउनस्ट्रीम निर्णय जो उस सामाजिक प्रमाण से प्रभावित होते हैं।

पैटर्न पहचाना जा सकता है। एक ही सप्ताह बनाए गए खाते, कोई बायो नहीं, कोई अनुयायी नहीं, कोई मूल रिपॉजिटरी नहीं, 2 घंटे की खिड़की में समान 15 रिपोज को स्टार कर रहे हैं। एक नहीं, बल्कि दर्जनों अभियान एक साथ चल रहे हैं, हर दिन, हजारों खातों में। डेटा उन रिपोज को दिखाता है जहां 185 में से 185 जुड़ाव करने वाले बॉट हैं। 100% नकली अनुपात। पूरी तरह से कुछ भी नहीं पर बने ट्रेंडिंग प्लेसमेंट।

phantomstars इसलिए बनाया गया क्योंकि यह समस्या हल करने योग्य है। GitHub के सार्वजनिक API में सिग्नल-टू-शोर अनुपात अभी भी इतना अधिक है कि समन्वित अभियान स्पष्ट फिंगरप्रिंट छोड़ते हैं। यह प्रोजेक्ट उन फिंगरप्रिंट को पढ़ता है, कच्चा डेटा प्रकाशित करता है, और प्रभावित रिपॉजिटरी अनुरक्षकों को सीधे सूचित करता है।

यह JS Labs में व्यापक AI Slop Intelligence कार्य का हिस्सा है, जो डेवलपर इकोसिस्टम में निम्न-गुणवत्ता AI-जनित सामग्री के तंत्र और मापने योग्य प्रभावों पर चल रहे शोध हैं। नकली जुड़ाव कोई गौण मुद्दा नहीं है। यह वह वितरण तंत्र है जो स्लॉप को वास्तविक उपयोगकर्ताओं के सामने लाता है।


यह क्या करता है

phantomstars एक दैनिक GitHub Actions जॉब चलाता है जो:

  1. GitHub Trending पेज से आज स्टार प्राप्त कर रहे रिपोज को स्क्रैप करता है
  2. पिछले 7 दिनों में बनाई गई रिपोज के लिए GitHub Search API पर क्वेरी करता है जिनमें अचानक स्टार गतिविधि हो (व्यापक खिड़की 24-घंटे के स्कैन से छूटे बहु-दिवसीय अभियानों को पकड़ती है)
  3. r/osinttools और r/coolgithubprojects में हाल के Reddit पोस्ट से अतिरिक्त उम्मीदवार रिपोज सीड करता है, पिछले 2 दिनों के GitHub repo लिंक निकालकर
  4. Events API के माध्यम से हाल के जुड़ाव ईवेंट (स्टार, फोर्क) खींचता है (प्रति रेपो पिछले 24 घंटे)
  5. GraphQL के माध्यम से प्रत्येक जुड़ाव करने वाले खाते का पूरा प्रोफाइल प्राप्त करता है: खाता निर्माण तिथि, अनुयायी/अनुसरण संख्या, बायो, रेपो इतिहास
  6. प्रत्येक खाते को एक समग्र ह्यूरिस्टिक मॉडल के विरुद्ध स्कोर करता है: खाता आयु, प्रोफाइल पूर्णता, रिपॉजिटरी पैटर्न और गतिविधि इतिहास
  7. टाइमस्टैम्प क्लस्टरिंग और यूनियन-फाइंड का उपयोग करके समन्वित अभियानों का पता लगाता है: संदिग्ध खातों के समूह जो 3 घंटे की खिड़की के भीतर जुड़े
  8. लेजर लेखन, रेपो-स्तरीय अनुपात, डैशबोर्ड और सूचनाओं से पहले झूठी-सकारात्मक अनुमति सूची लागू करता है ताकि प्रत्येक दृश्य मीट्रिक समान जनसंख्या का उपयोग करे
  9. सभी संदिग्धों को एक append-only JSONL लेजर में जोड़ता है जो इस रेपो में वापस किया जाता है
  10. प्रति-रेपो बुद्धिमत्ता फ़ीड प्रकाशित करता है जो दिखाता है कि किन रिपोज को लक्षित किया जा रहा है, कौन से डिस्कवरी स्रोतों ने उन्हें पाया, और क्या Events API विंडो पूर्ण थी या सीमित
  11. लक्षित रिपोज पर सीधे GitHub Issues दर्ज करता है ताकि अनुरक्षक अपने स्वयं के issue ट्रैकर में अभियान डेटा देखें
  12. GitHub Actions जॉब सारांश में एक स्वरूपित स्कैन रिपोर्ट लिखता है

कोई सर्वर नहीं। कोई डेटाबेस नहीं। कोई बुनियादी ढांचा बिल नहीं।


अक्सर पूछे जाने वाले प्रश्न

क्या यह लक्षित रिपो को सूचित करता है?

हाँ। जब किसी रिपो का नकलीपन अनुपात 40% से अधिक हो जाता है या एक समन्वित अभियान का पता चलता है, तो phantomstars सीधे उस रिपॉजिटरी पर एक issue खोलता है। Issue में पूर्ण संदिग्ध तालिका, अभियान सदस्यता, समग्र स्कोर और खाता निर्माण तिथियां होती हैं: वह सब कुछ जो एक अनुरक्षक को जांच करने और GitHub को रिपोर्ट करने के लिए चाहिए।

यदि लक्षित रिपो पर issues अक्षम हैं, तो सूचना चुपचाप छोड़ दी जाती है और स्कैन लॉग में दर्ज की जाती है।

क्या मैं एक विशिष्ट रिपॉजिटरी के लिए जांच का अनुरोध कर सकता हूँ?

हाँ।

  • सामान्य एक-बार जांच के लिए, owner/repo रूप में एक रिपो सबमिट करें और एक लक्षित स्कैन चलाएं।
  • आजीवन ऑडिट अनुरोध के लिए, एक-बार आजीवन मोड का उपयोग करें। यह दैनिक स्कैन से अलग है।

विभाजन क्यों:

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

क्या मैं एक झूठी सकारात्मक रिपोर्ट कर सकता हूँ?

हाँ। यदि आपका खाता data/suspects.jsonl में दिखाई देता है और आप मानते हैं कि वर्गीकरण गलत है, तो प्रदान किए गए टेम्पलेट का उपयोग करके एक झूठी सकारात्मक issue खोलें। किसी भी अनुमति सूची में जोड़ने से पहले रिपोर्ट की मैन्युअल समीक्षा की जाती है। अनुमति सूची data/allowlist.txt में संग्रहीत है; वहां सूचीबद्ध खातों को सभी भविष्य के स्कैन और संदिग्ध लेजर से बाहर रखा गया है।

अभियान आईडी क्या है?

एक अभियान आईडी (जैसे c-a3f9b2e1) उस अभियान में सदस्य लॉगिन के क्रमबद्ध सेट के SHA-256 हैश से प्राप्त एक निर्धारणात्मक 8-अक्षर हेक्स फिंगरप्रिंट है। खातों का एक ही समूह स्वतंत्र स्कैन रन में एक ही अभियान आईडी उत्पन्न करेगा, जो अनुदैर्ध्य ट्रैकिंग को सक्षम करता है। यह एक रेपो नाम, उपयोगकर्ता नाम, या कोई बाहरी पहचानकर्ता नहीं है।

स्थिरता: आईडी तब तक स्थिर है जब तक अभियान का सदस्य सेट अपरिवर्तित है। यदि स्कैन के बीच बॉट जोड़े या निलंबित किए जाते हैं, तो आईडी बदल जाती है क्योंकि सदस्यता बदल गई। यह अपेक्षित है और बॉट फार्म संरचना में वास्तविक दुनिया के बहाव को दर्शाता है।

क्या यह खाता निर्माण तिथियां जांचता है?

हाँ। प्रत्येक खाते की निर्माण तिथि GitHub GraphQL API (createdAt फ़ील्ड) से लाई जाती है और प्रत्येक संदिग्ध रिकॉर्ड में account_created_at के रूप में संग्रहीत की जाती है। यह खाता आयु स्कोर का प्राथमिक इनपुट भी है, जो नकली खातों के लिए सबसे मजबूत एकल संकेत है। जुड़ाव के 2 दिनों के भीतर बनाए गए खाते अकेले आयु पर 1.0 स्कोर करते हैं।

यह कितना विश्वसनीय है?

व्यक्तिगत स्कोर में सार्थक झूठी सकारात्मक दरें होती हैं। एक नया डेवलपर विरल प्रोफाइल के साथ वैध रूप से 0.75+ स्कोर कर सकता है। उपकरण इसके लिए issues दर्ज करने से पहले अभियान-स्तर के साक्ष्य की आवश्यकता के द्वारा खाता रखता है; एक अकेला संदिग्ध खाता पर्याप्त नहीं है। 40+ खातों का एक समन्वित समूह, सभी एक ही सप्ताह बनाए गए, सभी 0.75+ स्कोर कर रहे हैं, सभी 90 मिनट के भीतर जुड़ रहे हैं, एक अलग बात है। वहां पर विश्वास कार्रवाई योग्य हो जाता है।

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


लाइव डैशबोर्ड


आज के सबसे अधिक लक्षित रिपोज


स्कोरिंग मॉडल

प्रत्येक खाते को चार संकेतों से एक समग्र संदेह स्कोर (0.0 = साफ, 1.0 = संभावित नकली) प्राप्त होता है:

वर्गीकरण सीमाएं:

स्कोरवर्गीकरण
≥ 0.75संभावित नकली
≥ 0.45संदिग्ध
< 0.45स्वच्छ (संग्रहीत नहीं)

अभियान का पता लगाना

एक अभियान संदिग्ध खातों का एक समूह (≥ 4) है जो सभी एक ही रिपो के साथ 3 घंटे की खिड़की के भीतर जुड़े। एल्गोरिदम कनेक्टेड घटकों के निर्माण के लिए यूनियन-फाइंड का उपयोग करता है; जो खाते खिड़की के भीतर सह-जुड़े हैं वे विलय हो जाते हैं, और न्यूनतम आकार से ऊपर का कोई भी घटक एक समन्वित अभियान के रूप में चिह्नित किया जाता है।

अभियान आईडी क्रमबद्ध सदस्य सेट के स्थिर SHA-256 फिंगरप्रिंट हैं। एक ही अभियान लगातार दिनों में पाया गया होगा वही आईडी जब तक सदस्यता अपरिवर्तित है।

अभियान ही वास्तविक संकेत क्यों हैं: व्यक्तिगत स्कोर में सार्थक झूठी सकारात्मक दरें होती हैं। एक नया डेवलपर विरल प्रोफाइल के साथ अकेले 0.80 स्कोर कर सकता है। चालीस खाते सभी 0.75+ स्कोर कर रहे हैं, एक ही सप्ताह बनाए गए, सभी एक ही रिपो को 90 मिनट के भीतर स्टार कर रहे हैं, यह कोई संयोग नहीं है। अभियान संकेत वह जगह है जहां डेटा कार्रवाई योग्य हो जाता है: एक संदिग्ध डेटा बिंदु और एक समन्वित संचालन के साक्ष्य के बीच का अंतर।


डेटा प्रारूप

सभी निष्कर्ष data/suspects.jsonl और data/repos.jsonl में प्रतिबद्ध किए जाते हैं, प्रति पंक्ति एक JSON रिकॉर्ड, append-only। GitHub Actions जॉब सारांश (प्रत्येक रन के बाद Actions UI में दृश्यमान) प्रति स्कैन स्वरूपित रिपोर्ट प्रदान करता है।

suspects.jsonl — प्रति स्कैन प्रति चिह्नित खाते एक रिकॉर्ड:```json { "login": "user98432", "account_age_score": 0.9, "profile_score": 0.8, "repo_pattern_score": 0.8, "activity_score": 0.85, "composite": 0.842, "classification": "likely_fake", "campaign_id": "c-a3f9b2e1", "scan_date": "2026-05-17", "account_created_at": "2026-05-15", "target_repos": ["owner/repo-a", "owner/repo-b"] }

root@kitploit:~
**repos.jsonl** — प्रत्येक स्कैन में लक्षित रिपॉज़िटरी के लिए एक रिकॉर्ड:```json
{
  "full_name": "owner/suspicious-repo",
  "total_scanned": 87,
  "likely_fake": 62,
  "suspicious": 18,
  "known_likely_fake": 27,
  "known_likely_fake_ratio": 0.310,
  "repeat_offenders": 11,
  "allowlisted_excluded": 3,
  "fakeness_ratio": 0.713,
  "classification": "likely_fake",
  "campaign_count": 3,
  "discovery_sources": ["github_search_recent", "reddit_osinttools"],
  "event_sample_complete": false,
  "scan_date": "2026-05-17"
}

प्रश्न उदाहरण:```bash

All likely_fake accounts from today

jq 'select(.scan_date == "2026-05-17" and .classification == "likely_fake") | .login' data/suspects.jsonl

Accounts created in the last 3 days that were flagged

jq 'select(.account_created_at >= "2026-05-14") | [.login, .account_created_at, .classification] | @tsv' -r data/suspects.jsonl

Which repos were targeted today, sorted by fakeness ratio

jq 'select(.scan_date == "2026-05-17") | [.full_name, .fakeness_ratio, .likely_fake] | @tsv' -r data/repos.jsonl | sort -t$'''\t''' -k2 -rn

Repos with the highest recycled-bot share from previously seen likely_fake accounts

jq 'select(.scan_date == "2026-05-17") | [.full_name, .known_likely_fake_ratio, .repeat_offenders] | @tsv' -r data/repos.jsonl | sort -t$'''\t''' -k2 -rn

All members of a specific campaign

jq 'select(.campaign_id == "c-a3f9b2e1") | [.login, .account_created_at, .composite] | @tsv' -r data/suspects.jsonl

Repos a specific account targeted

jq 'select(.login == "user98432") | .target_repos[]' data/suspects.jsonl

High-confidence repos: fakeness ratio above 60%

jq 'select(.fakeness_ratio >= 0.6) | [.full_name, .fakeness_ratio, .campaign_count] | @tsv' -r data/repos.jsonl | sort -t$'\t' -k2 -rn

root@kitploit:~
---

## सेटअप

### 1. इस रिपॉजिटरी को फोर्क करें

आपका फोर्क डेटा का मालिक है। प्रतिदिन रन के बाद परिणाम `data/suspects.jsonl` और `data/repos.jsonl` पर आपके फोर्क में कमिट हो जाते हैं।

### 2. GitHub PAT सीक्रेट जोड़ें

एक **क्लासिक** पर्सनल एक्सेस टोकन बनाएं जिसमें ये स्कोप हों:
- `public_repo`: सार्वजनिक रिपॉजिटरी इवेंट्स और स्टारगेज़र्स पढ़ें, सार्वजनिक रिपॉजिटरी पर इश्यू बनाएं
- `read:user`: GraphQL के माध्यम से उपयोगकर्ता प्रोफाइल प्राप्त करें

**सेटिंग्स &rarr; सीक्रेट्स और वेरिएबल्स &rarr; एक्शन्स &rarr; नई रिपॉजिटरी सीक्रेट** &rarr; इसे `GH_TOKEN` नाम दें।

> डिफ़ॉल्ट `GITHUB_TOKEN` में प्रतिबंधित रेट लिमिट होती है और यह उपयोगकर्ता GraphQL एंडपॉइंट को पूरी क्षमता से कॉल नहीं कर सकता। एक PAT आवश्यक है।

### 3. एक्शन्स सक्षम करें

**एक्शन्स &rarr; अपने फोर्क पर GitHub Actions सक्षम करें**। वर्कफ़्लो `Europe/London` घड़ी का उपयोग करके **प्रतिदिन UK समय 07:00** पर चलता है:
- **06:00 UTC** ब्रिटिश समर टाइम के दौरान
- **07:00 UTC** ग्रीनविच मीन टाइम के दौरान

कोई अतिरिक्त शेड्यूलिंग एनवायरनमेंट वेरिएबल की आवश्यकता नहीं है। GitHub Actions क्रोन केवल UTC है, इसलिए वर्कफ़्लो दोनों UTC घंटों पर ट्रिगर होता है और केवल तभी आगे बढ़ता है जब स्थानीय लंदन समय 07:00 हो। मैन्युअल ट्रिगर **एक्शन्स &rarr; डेली फैंटम स्टार्स स्कैन &rarr; वर्कफ़्लो चलाएं** के माध्यम से उपलब्ध है।

प्रत्येक रन के बाद, फ़ॉर्मेटेड स्कैन रिपोर्ट **एक्शन्स &rarr; [run] &rarr; सारांश** में दिखाई देती है।

### 4. स्थानीय रूप से चलाएं```bash
git clone https://github.com/YOUR_USERNAME/phantomstars.git
cd phantomstars
python -m venv venv && source venv/bin/activate
pip install -e .
GH_TOKEN=ghp_your_token python -m phantomstars.main

एक आकस्मिक स्थानीय रन के लिए सेटअप के बाद:```bash GH_TOKEN=ghp_your_token python -m phantomstars.main

root@kitploit:~
सामान्य खोज सेट के बजाय एक रिपॉजिटरी को स्कैन करने के लिए:```bash
PHANTOMSTARS_TARGET_REPO=owner/repo GH_TOKEN=ghp_your_token python -m phantomstars.main

एकमुश्त अनुरोध

उपयोगकर्ता एकमुश्त रेपो जांच दो तरीकों से अनुरोध कर सकते हैं:

  1. Repo Check Request समस्या टेम्पलेट खोलें और लक्ष्य रेपो साथ ही अनुरोधित गहराई प्रदान करें।
  2. Actions -> Daily Phantom Stars Scan -> Run workflow का उपयोग करें और वैकल्पिक रूप से सेट करें:
    • target_repo: owner/repo
    • request_depth: recent या lifetime-request

वर्तमान व्यवहार:

  • recent: लक्षित हालिया-सहभागिता स्कैन तुरंत चलाता है।
  • lifetime-request: केवल उस रेपो के ऐतिहासिक स्टार्स और फोर्क्स पर लक्षित आजीवन स्कैन चलाता है।
  • दैनिक अनुसूचित स्कैन अपरिवर्तित रहता है और हालिया-सहभागिता विधि का उपयोग जारी रखता है।

आजीवन मोड के लिए सुरक्षा उपाय:

  • केवल स्पष्ट एकमुश्त लक्षित अनुरोधों के लिए उपलब्ध
  • स्कैन शुरू होने से पहले कॉन्फ़िगर किए गए रेपो-आकार सीमाओं द्वारा सीमित
  • दैनिक स्कैन की तुलना में धीमा और अधिक API-गहन

परियोजना संरचना```

phantomstars/ ├── .github/ │ ├── workflows/daily-scan.yml # Runs daily at 07:00 Europe/London │ └── ISSUE_TEMPLATE/false_positive.yml ├── src/phantomstars/ │ ├── config.py # All constants, no argparse, no env parsing │ ├── models.py # Frozen dataclasses │ ├── github_client.py # REST + GraphQL, tenacity retries, rate-limit aware │ ├── heuristics.py # Per-user composite scoring engine │ ├── campaigns.py # Timestamp clustering + union-find │ ├── storage.py # JSONL append + query helpers │ ├── reporter.py # README dashboard injector │ ├── notifier.py # GitHub Issues notifier (files on targeted repos) │ └── main.py # Orchestration entry point ├── tests/ │ ├── conftest.py │ ├── test_heuristics.py │ └── test_campaigns.py ├── data/ │ ├── suspects.jsonl # Append-only account findings ledger │ ├── repos.jsonl # Append-only per-repo intelligence │ └── allowlist.txt # Accounts excluded from future scans └── pyproject.toml

root@kitploit:~
---

## सीमाएँ और ज्ञात विफलता के कारण

- **इवेंट्स API की सीमा:** प्रति रिपॉजिटरी अधिकतम 300 हालिया इवेंट्स। जिन रिपॉजिटरी में एक दिन में हज़ारों स्टार्स होते हैं, उनका आंशिक कवरेज होता है।
- **कवरेज फ़्लैग:** जो रिपॉजिटरी 300 इवेंट्स की सीमा तक पहुँच जाती हैं, उन्हें रिपोर्ट और डैशबोर्ड में `capped` के रूप में चिह्नित किया जाता है; उन रिपॉजिटरी पर अनुपात रूढ़िवादी नमूने होते हैं, पूरे दिन की गणना नहीं।
- **खोज सूचकांक की देरी:** GitHub का खोज सूचकांक अंततः संगत होता है। स्कैन सीमा से सेकंड पहले बनाई गई रिपॉजिटरी छूट सकती हैं।
- **ह्यूरिस्टिक बहाव:** बॉट ऑपरेटर अनुकूलन करते हैं। स्कोर भार (weights) को समय-समय पर समायोजन की आवश्यकता हो सकती है; `config.py` में स्थिरांकों को समायोजित करें।
- **व्यक्तिगत गलत सकारात्मक:** एक नए डेवलपर का विरल प्रोफ़ाइल अलग-थलग 0.75+ स्कोर करता है। अभियान सदस्यता उच्च-विश्वसनीयता संकेत है।
- **अभियान आईडी बहाव:** यदि स्कैन के बीच बॉट फार्म की सदस्यता बदलती है (बॉट निलंबित, नए बॉट जोड़े गए), तो अभियान आईडी बदल जाती है। यह वास्तविक अभियान विकास को दर्शाता है, कोई बग नहीं।
- **दर सीमाएँ:** प्रमाणित PAT पर 5,000 API अनुरोध/घंटा। मानक ट्रेंडिंग पृष्ठ आकारों के लिए सीमा के भीतर।
- **अक्षम मुद्दे:** कुछ लक्षित रिपॉजिटरी मुद्दों को अक्षम कर देती हैं। उन रिपॉजिटरी के लिए सूचनाएँ चुपचाप छोड़ दी जाती हैं।

---

## गलत सकारात्मक प्रक्रिया

यदि आपका खाता `data/suspects.jsonl` में दिखाई देता है और आप मानते हैं कि इसे गलत वर्गीकृत किया गया है:

1. अपनी प्रविष्टि खोजें: `jq 'select(.login == "YOUR_LOGIN")' data/suspects.jsonl`
2. अपने लॉगिन, वर्गीकरण, स्कैन तिथि और स्पष्टीकरण के साथ [एक गलत सकारात्मक समस्या खोलें](../../issues/new?template=false_positive.yml)
3. रिपोर्ट की मैन्युअल समीक्षा की जाती है। सत्यापित गलत सकारात्मक को `data/allowlist.txt` में जोड़ा जाता है और भविष्य के सभी स्कैन, रिपॉजिटरी अनुपात और समस्या सूचनाओं से बाहर रखा जाता है।

नोट: समस्या खोलने से किसी भी मौजूदा डेटा में संशोधन या हटाव नहीं होता है। संदिग्ध लेज़र (ledger) केवल-जोड़ने योग्य है। अनुमति सूची केवल भविष्य के स्कैन को प्रभावित करती है।

---

## योगदान```bash
pip install -e ".[dev]"
python -m black .
python -m ruff check .
python -m mypy src
python -m pytest

All four must pass before a PR.


अस्वीकरण

यह उपकरण आधिकारिक GitHub API का उपयोग करके सार्वजनिक GitHub डेटा का केवल-पढ़ने के लिए विश्लेषण करता है। जहाँ लक्षित रिपॉजिटरी पर मुद्दे दायर किए जाते हैं, उनमें संभाव्य निष्कर्ष होते हैं और स्पष्ट रूप से स्वचालित के रूप में लेबल किए जाते हैं। निष्कर्ष संकेत हैं, आरोप नहीं। गलत सकारात्मक परिणाम मौजूद हैं और अपेक्षित हैं।

AI को कोडिंग पार्टनर के रूप में उपयोग करके बनाया गया, एक पारिस्थितिकी तंत्र समस्या के जवाब में जो आंशिक रूप से AI द्वारा निर्मित हुई।


लाइसेंस

Apache 2.0. देखें LICENSE


लेखक

tg12 द्वारा निर्मित · GitHub

एक JS Labs परियोजना · AI Slop Intelligence Dashboards

टूल डाउनलोड करें
तिथिस्कैन किए गएसंभावित नकलीसंदिग्धअभियाननए नकली (24 घंटे)
2026-06-161846221162556190
2026-06-152274418185661397
2026-06-141953355159844310
2026-06-132012301171147251
2026-06-122298336196257300
2026-06-111957385157242356
2026-06-102043687135650665
2026-06-092199690150944632
2026-06-081913450146350424
2026-06-071797658113930618
2026-06-062625712191340620
2026-06-052403673173053617
2026-06-042237441179641367
2026-06-032331488184353431
2026-06-022795773202237616
2026-06-012490533195739355
2026-05-312302458184432280
2026-05-302576530204620356
2026-05-292838733210542369
2026-05-282748694205439396
2026-05-272193560163332491
2026-05-261930236169443190
2026-05-251526214131232158
2026-05-242170358181239265
2026-05-232548426212243317
2026-05-222318340197847247
2026-05-211981348163325277
2026-05-201613268134523163
2026-05-195463630412167442
2026-05-1888386707950128340
रिपोजुड़ाव करने वालेसंभावित नकलीज्ञात नकली %नकलीपन %अभियानकवरेजस्रोत
freeCodeCamp/freeCodeCamp264260.0%9.8%1completegithub_trending
Lolner95/use-kimi-on-cursor1161726.7%14.7%1completegithub_search_recent
zmustafa/AzureSupportAgent331636.4%48.5%1completegithub_search_recent
Free-TV/IPTV291140.3%4.8%1completegithub_trending
Panniantong/Agent-Reach292140.3%4.8%1cappedgithub_trending
jwasham/coding-interview-university288120.3%4.2%1cappedgithub_trending
Alex-Shayo/bakkes-mod-install37100.0%27.0%1completegithub_search_recent
Timgt86/yt-downloader-savetube37100.0%27.0%1completegithub_search_recent
devassisthub/Zelda-TP-PC-Port3590.0%25.7%1completegithub_search_recent
imohammedyasin/steam-tools3590.0%25.7%1completegithub_search_recent
lol-toolkit/ltk-manager-lol3590.0%25.7%1completegithub_search_recent
tor-browser-download/tor-browser3690.0%25.0%1completegithub_search_recent
claude-code-ai-anthropic/free-claude-code-ai-desktop-app3890.0%23.7%1completegithub_search_recent
vitaliikapliuk/modelharness60931.7%15.0%1completegithub_search_recent
shiyu-coder/Kronos28291.1%3.2%1completegithub_trending
snanas/Forza-Horizon-Spotify-Radio3480.0%23.5%1completegithub_search_recent
bingook/bingo4582.2%17.8%2completegithub_search_recent
darricke/claude-fable-5-desktop-free4980.0%16.3%1completegithub_search_recent
Ponzuu84/MaaNTE3270.0%21.9%1completegithub_search_recent
iDesignStudioz/yellowkey-bitlocker3370.0%21.2%1completegithub_search_recent
chatwoot/chatwoot23070.0%3.0%1completegithub_trending
Open-Builders/pumpfun-bundler-pump.fun-bundler-solana-token-bundler-bot18633.3%33.3%1completegithub_search_recent
taisly/agent23617.4%26.1%2completegithub_search_recent
iptv-org/iptv19360.0%3.1%1completegithub_trending
itsfatduck/optimizerDuck29360.3%2.0%1completegithub_trending
संकेतभारमाप
खाता आयु35%< 2 दिन → 1.00 · < 7 दिन → 0.90 · < 30 दिन → 0.55 · < 90 दिन → 0.20 · पुराना → 0.00
प्रोफाइल पूर्णता30%के लिए अंक: कोई बायो नहीं (+0.25), कोई स्थान नहीं (+0.15), कोई कंपनी नहीं (+0.10), शून्य अनुयायी (+0.30), शून्य अनुसरण (+0.10), बॉट-पैटर्न उपयोगकर्ता नाम (+0.20)
रिपॉजिटरी पैटर्न25%शून्य रिपोज → 0.90 · सभी रिपोज फोर्क हैं → 0.80 · >85% फोर्क अनुपात → 0.55
गतिविधि इतिहास10%14 दिन से अधिक पुराने खाते जिनमें शून्य रिपोज + शून्य सामाजिक ग्राफ → 0.80 (भूत खाते)। केवल शून्य रिपोज → 0.60। सभी-फोर्क + कोई सामाजिक ग्राफ नहीं → 0.50