27 सितंबर से 2 अक्टूबर के बीच मैंने बारह ओपन-सोर्स प्रोजेक्ट को फ़िक्स, बग रिपोर्ट और कमेंट भेजे। काम का बड़ा हिस्सा एक कोडिंग एजेंट ने किया: Claude Code ने बग रिप्रोड्यूस किए, पैच और टेस्ट लिखे, और ज़्यादातर टेक्स्ट के मसौदे तैयार किए। हर इश्यू मैंने चुना और हर टेक्स्ट पढ़ा, और जब तक मैंने मंज़ूरी नहीं दी, मेरे अकाउंट से कुछ भी नहीं भेजा गया।
इस दौरान प्रोजेक्ट मुझे बताते रहे कि उनके हिसाब से इस तरह का काम कैसे होना चाहिए। spec-kit चाहता था कि AI से बने हर कमेंट में बताया जाए कि कौन-सा एजेंट और मॉडल इस्तेमाल हुआ, उसकी सेटिंग क्या थी और उसने कितनी मदद की। MLX का पुल रिक्वेस्ट टेम्पलेट टिक लगी एक लाइन से शुरू होता है: "मैं समझता हूँ कि PR का विवरण लिखने के लिए AI का इस्तेमाल सख़्त मना है"। इसलिए 2 अक्टूबर को मैंने 30 रिपॉज़िटरी के योगदान के नियम पढ़े: वे जिन्हें मैंने काम भेजा था, और 21 ऐसी जिन्हें नहीं भेजा था।
संक्षेप में: 30 में से 19 में AI के बारे में नियम है, और इन 19 में से 14 नियम 2026 में आए। ज़्यादातर नियम बदलाव की ज़िम्मेदारी उस व्यक्ति पर डालते हैं जो उसे भेजता है। पंद्रह कहते हैं कि आप बताएँ कि आपने AI का इस्तेमाल किया, और दस चाहते हैं कि विवरण, कमेंट या कमिट मैसेज कोई इंसान लिखे, मॉडल नहीं। कोडिंग एजेंट डिफ़ॉल्ट रूप से जो कमिट ट्रेलर जोड़ते हैं, उसे इनमें से कुछ प्रोजेक्ट ज़रूरी मानते हैं और कुछ उस पर पाबंदी लगाते हैं।
मैंने क्या पढ़ा
यह नमूना रैंडम नहीं है। 30 में से नौ वे प्रोजेक्ट हैं जिन्हें मैंने उस हफ़्ते काम भेजा था: MLX, spec-kit, huggingface_hub, codebase-memory-mcp, Deskflow, agent-framework, awslabs/mcp, kaggle-cli और avoid-ai-writing। बाक़ी 21 AI टूलिंग, डेवलपर टूल और इन्फ़्रास्ट्रक्चर के प्रोजेक्ट हैं, जिनमें Docling, garak, TypeScript, Rust, Node.js और Kubernetes भी हैं। मैंने जिन तीन और प्रोजेक्ट को काम भेजा था, यानी copilot-cli, PartCrafter और ltx-2-mlx, वे इन 30 में शामिल नहीं हैं, और उनमें से किसी में मुझे AI का कोई नियम नहीं मिला।
हर रिपॉज़िटरी में मैंने 2 अक्टूबर 2026 को डिफ़ॉल्ट ब्रांच पर ये चीज़ें पढ़ीं: CONTRIBUTING, पुल रिक्वेस्ट और इश्यू के टेम्पलेट, AGENTS.md और CLAUDE.md, आचार संहिता, और वे गाइड और विकी पेज जिनके लिंक इन फ़ाइलों में हैं। नीचे हर उद्धरण का लिंक उस कमिट पर उसकी लाइन खोलता है जिसे मैंने पढ़ा था, इसलिए फ़ाइल बदल जाने के बाद भी लिंक दिखाता है कि उस दिन फ़ाइल में क्या लिखा था। उद्धरण यहाँ हिंदी अनुवाद में हैं, और हर लिंक अंग्रेज़ी में मूल लाइन खोलता है। किसी नियम की तारीख़ तय करने के लिए मैंने उसकी फ़ाइल के इतिहास में वह पहला कमिट खोजा जिसमें वह नियम मौजूद है।
नियम किसके पास है
30 में से 19 के पास योगदान में AI के इस्तेमाल का नियम है: MLX, spec-kit, TypeScript, huggingface_hub, transformers, trl, peft, LangChain, Strands Agents, MLflow, garak, codebase-memory-mcp, Deskflow, workers-sdk, pydantic-ai, Rust, CPython, Node.js और Kubernetes।
नौ में मुझे कोई नियम नहीं मिला: accelerate, awslabs/mcp, kaggle-cli, Docling, BeeAI, ADK for Python, NeMo Agent Toolkit, VS Code और React। दो और को मैंने गिनती में नहीं लिया। agent-framework सिर्फ़ यह चेतावनी देता है कि AI की वजह से योगदानों की संख्या बढ़ गई है, इसलिए रिव्यू में ज़्यादा समय लगता है, और avoid-ai-writing गद्य की शैली जाँचता है, यह नहीं कि वह किस तरह तैयार हुआ।
एक नियम आम तौर पर एक साथ कई चीज़ें माँगता है:

दूसरी पट्टी मेरी अपनी व्याख्या है: 19 में से 12 किसी न किसी रूप में कहते हैं कि भेजने वाला व्यक्ति बदलाव के लिए ज़िम्मेदार है और उसे वह बदलाव समझना चाहिए। huggingface_hub यह बात दो वाक्यों में कहता है: "कोड लिखने में AI की मदद लेना ठीक है। AI से बना ऐसा कचरा भेजना ठीक नहीं है जिसे आप समझा न सकें।" CPython लेखकों से उम्मीद करता है कि वे "अपने प्रस्तावित बदलाव अपने शब्दों में समझा सकें", और Strands Agents योगदान करने वालों से कहता है: "अपनी पुल रिक्वेस्ट के लेखक आप हैं, आपका एजेंट नहीं।"
नियम कब आए
सबसे पहला CPython था: अक्टूबर 2024 में उसकी डेवलपर गाइड में एक छोटा पेज। 2025 में चार और आए: spec-kit, LangChain, Kubernetes और MLflow। बाक़ी 14 नियम 2026 में आए, उनमें से सात जून से अब तक। codebase-memory-mcp ने अपना नियम मेरे पढ़ने से ग्यारह दिन पहले जोड़ा था।

फ़ाइलें अब भी बदल रही हैं। 19 में से 16 में नियम वाली किसी फ़ाइल में सितंबर में या अक्टूबर के पहले दो दिनों में बदलाव हुआ, हालाँकि इनमें से हर बदलाव ने AI वाले टेक्स्ट को नहीं छुआ।
बता दीजिए
AI के इस्तेमाल का खुलासा सबसे आम नियम है, और प्रोजेक्टों में फ़र्क़ इस बात का है कि उन्हें कितना खुलासा चाहिए। Kubernetes के लिए एक वाक्य काफ़ी है: उसकी गाइड कहती है कि विवरण में "यह PR कुछ हद तक जनरेटिव AI की मदद से लिखी गई थी" जोड़ना "पर्याप्त है।" TypeScript इसके बिना PR बंद कर देता है: "अगर आपकी PR AI की लिखी लगती है और आपने यह खुलासा शामिल नहीं किया है, तो आपकी PR बिना रिव्यू के बंद कर दी जाएगी।" spec-kit चाहता है कि यह सब, यानी एजेंट, मॉडल, सेटिंग और मदद कितनी थी, पुल रिक्वेस्ट में बताया जाए, फिर AI से बने हर कमेंट में दोबारा, और एजेंट के लिखे हर कमिट पर Assisted-by: ट्रेलर के रूप में भी।
दो प्रोजेक्ट एक लाइन में बता देते हैं कि दाँव पर क्या है। codebase-memory-mcp: "खुलासे को कभी किसी योगदान के ख़िलाफ़ नहीं गिना जाता। बाद में पता चलने को गिना जाता है।" Deskflow: "योगदान में AI के इस्तेमाल के बारे में बेईमानी करने पर प्रोजेक्ट से बैन कर दिया जाएगा।"
CPython बाक़ियों से कम माँगता है: "PR के विवरण में AI टूल के इस्तेमाल का खुलासा सराहा जाता है, हालाँकि यह ज़रूरी नहीं है।"
शब्द इंसान लिखे
दस प्रोजेक्ट कोड में मॉडल की मदद लेने देते हैं, लेकिन चाहते हैं कि टेक्स्ट कोई इंसान लिखे। सबसे सख़्त Rust है: "LLM से बने PR विवरणों पर पाबंदी है। LLM से बने GitHub कमेंट पर पाबंदी है।" कमिट के लिए भी यही बात है: "कमिट मैसेज आपके लिखे होने चाहिए, आपके LLM के नहीं।"
Kubernetes और Node.js रिव्यू पर रेखा खींचते हैं। Kubernetes: "रिव्यू कमेंट का जवाब देते समय आपको यह AI टूल पर निर्भर हुए बिना करना होगा।" Node.js: फ़ीडबैक के जवाब "AI टूल से ऑटोमेट नहीं किए जाने चाहिए।"
दूसरे प्रोजेक्ट इसे अपने टेम्पलेट में ही शामिल कर देते हैं। MLX में ऊपर उद्धृत लाइन है, और इश्यू के लिए उसी जैसी एक लाइन भी। Strands Agents ने अपने पुल रिक्वेस्ट टेम्पलेट में "Human Overview" (इंसान का लिखा सार) नाम का सेक्शन रखा है, जिसे "किसी AI एजेंट को हरगिज़ नहीं भरना चाहिए"। LangChain का टेम्पलेट चेतावनी देता है: "अगर आप यहाँ साफ़ तौर पर AI से बना कोई लंबा विवरण चिपकाते हैं, तो आपकी PR को अनदेखा या बंद किया जा सकता है!"

थोक में नहीं, और पहले पूछिए
सात प्रोजेक्ट थोक में या अपने-आप भेजे गए योगदान पर पाबंदी लगाते हैं। TypeScript बताता है कि वह कौन-सा वर्कफ़्लो स्वीकार नहीं करता: "ऐसे वर्कफ़्लो, जिनमें कोई ऑपरेटर एक स्वायत्त एजेंट को GitHub पर छोड़ देता है, उससे कई असंबंधित इश्यू पर पैच बनवाता है, और नतीजा पुल रिक्वेस्ट के रूप में हमें भेज देता है।" LangChain की गाइड एक कसौटी देती है जो किसी भी योगदान पर लागू होती है: "अगर पुल रिक्वेस्ट बनाने में लगने वाली मेहनत उस मेहनत से कम है जो मेंटेनरों को उसका रिव्यू करने में लगती है, तो वह योगदान नहीं भेजा जाना चाहिए।"
छह प्रोजेक्ट पुल रिक्वेस्ट से पहले मंज़ूरी चाहते हैं। peft में यह किसी मेंटेनर का ऐसा कमेंट है जिसमें @peft-triage approved लिखा हो। Rust में LLM से बना बदलाव पहले से तय होना चाहिए, जिसका मतलब है कि "किसी रिव्यूअर ने पहले ही बता दिया हो कि वह LLM से बनी PR का रिव्यू करने को तैयार है।"
तीन प्रोजेक्ट एजेंट इस्तेमाल करने वाले नए लोगों को मना कर देते हैं। transformers का अनुरोध है "कि पहली बार योगदान करने वाले इश्यू या PR बनाने के लिए कोड एजेंट का इस्तेमाल न करें", और trl "पहली बार योगदान करने वालों की पूरी तरह AI से बनी PR का रिव्यू नहीं करेगा।" Node.js नए योगदानकर्ताओं से कहता है कि वे "प्रोजेक्ट से बातचीत के लिए AI एजेंट का इस्तेमाल करने से बचें", और "good first issue" लेबल वाले इश्यू के लिए AI से बने फ़िक्स पर पाबंदी लगाता है, क्योंकि ये इश्यू "नए इंसानी योगदानकर्ताओं को कोडबेस के बारे में सीखने में मदद के लिए हैं, किसी AI को नहीं"।
Rust ऐसे काम का हिस्सा भी सीमित करता है: "अगर 6 हफ़्ते की अवधि में मर्ज हुई PR में से आधी से ज़्यादा LLM से बनी हों, तो हम LLM से बनी नई PR मर्ज करने की इजाज़त तब तक नहीं देते जब तक यह हिस्सा फिर से 50% से नीचे न आ जाए, और यह रोक कम से कम 10 दिन की होती है।"
जिस ट्रेलर पर राय बँटी है
कोडिंग एजेंट अक्सर अपने काम पर दस्तख़त करते हैं। उदाहरण के लिए, Claude Code को मना न किया जाए तो वह हर कमिट में Co-Authored-By: Claude … ट्रेलर और पुल रिक्वेस्ट में "Generated with Claude Code" लाइन जोड़ देता है। नौ प्रोजेक्ट में ऐसे ट्रेलर के बारे में नियम है, और ये नियम उलटी दिशाओं में जाते हैं:

स्रोत: MLflow, garak, spec-kit, Node.js, Kubernetes, Rust, pydantic-ai, Deskflow और codebase-memory-mcp।
Kubernetes: "AI टूल को सह-लेखक के रूप में दर्ज करना, किसी AI टूल से कमिट पर सह-हस्ताक्षर करना, या assisted-by, co-developed या इसी तरह का कोई कमिट ट्रेलर इस्तेमाल करना मना है।" pydantic-ai यह बात उस फ़ाइल में कहता है जिसे Claude Code सत्र शुरू होने पर लोड करता है: "कमिट में ख़ुद को (Claude को) कभी सह-लेखक के रूप में न जोड़ें।" Rust की गाइड दोनों डिफ़ॉल्ट लाइनों को खुलासे के ख़राब उदाहरणों में गिनाती है: 🤖 Generated with Claude Code और Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>।
यानी डिफ़ॉल्ट ट्रेलर ठीक वही है जो MLflow माँगता है, और Kubernetes, Rust और pydantic-ai में वही नियम तोड़ना है। कोई भी सेटिंग हर जगह सही नहीं है। एजेंट को किसी रिपॉज़िटरी में पहला कमिट करने से पहले उसके नियम पढ़ने होंगे, और उसे चलाने वाले इंसान को भी।
एजेंट के लिए लिखे गए नियम
इनमें से कुछ नियम सीधे एजेंट से बात करते हैं, AGENTS.md या CLAUDE.md में, यानी उन फ़ाइलों में जिन्हें कोडिंग एजेंट किसी रिपॉज़िटरी में काम शुरू करते समय पढ़ते हैं। वे एजेंट से क्या कहते हैं:
- pydantic-ai: "कम गुणवत्ता वाले योगदान और मेंटेनरों के सिरदर्द के ख़िलाफ़ बचाव की पहली पंक्ति आप हैं"।
- MLX: "यूज़र के लिए PR विवरण और कमिट मैसेज न लिखें", यूज़र की ओर से कमेंट का जवाब न दें, और न पुश करें, न पुल रिक्वेस्ट खोलें।
- Rust: रुकें, "वर्जित श्रेणी का नाम बताएँ, और यूज़र से कहें कि वह इसे ख़ुद लिखे।"
- transformers: जो लोग अभी योगदानकर्ता नहीं हैं, उन्हें आगाह करें, "ब्लॉक किए जाने के ख़तरे के बारे में भी।"
- spec-kit: रिपॉज़िटरी में चौथी खुली पुल रिक्वेस्ट से पहले ऑपरेटर से पूछें, "स्वायत्त रूप से काम करते समय भी"।
- Strands Agents, तय समय पर चलने वाले एजेंटों से: "ऐसी रफ़्तार से काम करें कि इंसान उस पर नज़र रख सकें और जवाब दे सकें।"
ये नियम तभी काम करते हैं जब एजेंट फ़ाइल पढ़े और उसका पालन करे।
मेरे काम का क्या हुआ
- Kaggle/kaggle-cli: PR #1206,
kernels outputकी फ़ाइलों को साझा डाउनलोडर से स्ट्रीम करना। उसी दिन मर्ज हो गई। - conorbronsdon/avoid-ai-writing: PR #352, #361 और #362, डिटेक्टर के दो फ़िक्स और एक टेस्ट। तीनों एक-एक दिन के भीतर मर्ज हो गईं।
- huggingface/huggingface_hub: इश्यू #5065, फ़ाइल UTF-8 BOM से शुरू होने पर
--env-fileअपना पहला वेरिएबल खो देता था। 52 मिनट बाद एक मेंटेनर ने फ़िक्स #5066 खोला, और रिपोर्ट के दो घंटे के भीतर वह मर्ज हो गया। - microsoft/agent-framework: PR #8963, पैरामीटर वाले data URI। तीन घंटे बाद डुप्लिकेट के तौर पर बंद कर दी गई: एक पुरानी खुली PR, #8918, में यही फ़िक्स था।
- ml-explore/mlx: PR #4610, नेगेटिव स्ट्राइड वाले वेट के साथ Metal RMSNorm और LayerNorm। ढाई घंटे बाद बंद कर दी गई: "PR के लिए धन्यवाद, लेकिन यह आदर्श फ़िक्स नहीं होगा।"
- DeusData/codebase-memory-mcp: इश्यू #2454 और PR #2456, खाली सर्च नतीजों पर गुमराह करने वाला हिंट। ऊँची प्राथमिकता वाले बग का लेबल लगा, रिव्यू का इंतज़ार है।
- dgrauet/ltx-2-mlx: PR #167, इमेज एंकर के लिए
lastऔर नेगेटिव फ़्रेम इंडेक्स। मेंटेनर ने मर्ज से पहले एक सुधार माँगा, और मैंने उसे 3 अक्टूबर को भेज दिया। - github/spec-kit, microsoft/agent-framework और awslabs/mcp: #4213 पर प्रस्तावित दायरा, और #8909 व #4705 पर फ़िक्स की योजनाएँ। मेंटेनरों के जवाब का इंतज़ार है।
- deskflow/deskflow: #10068 का मूल कारण, macOS पर एक क्रैश। लेबल लगा और असाइन हुआ, अभी तक कोई जवाब नहीं।
- github/copilot-cli: इश्यू #5038, grep टूल डैश के बिना
nको अनदेखा कर देता है। लेबल लगा, अभी तक कोई जवाब नहीं। - wgsxm/PartCrafter: PR #46, Apple Silicon पर चलाना। अभी तक कोई जवाब नहीं।
बारह में से पाँच में AI का नियम है: MLX, spec-kit, huggingface_hub, codebase-memory-mcp और Deskflow। huggingface_hub में मैंने सिर्फ़ एक इश्यू खोला, और उसका नियम पुल रिक्वेस्ट के बारे में है। MLX में मैंने पुल रिक्वेस्ट का विवरण और कमिट मैसेज ख़ुद लिखे, जैसा उसके नियम माँगते हैं, और विवरण में बताया है कि एजेंट ने क्या किया। spec-kit पर मेरे कमेंट में वह पूरा खुलासा है जो spec-kit माँगता है, और codebase-memory-mcp में इश्यू, पुल रिक्वेस्ट और हर कमेंट में उसकी माँगी हुई एक लाइन है। codebase-memory-mcp में मेरे दो जवाब 28 सितंबर को इस लाइन के बिना चले गए, जबकि प्रोजेक्ट को यह नियम जोड़े एक हफ़्ता हो चुका था; मैंने 1 अक्टूबर को लाइन जोड़ दी। Deskflow पुल रिक्वेस्ट में खुलासा माँगता है। वहाँ मेरा कमेंट, जिसका मसौदा एजेंट ने बनाया था, बिना खुलासे के चला गया; मैंने 3 अक्टूबर को वह लाइन जोड़ दी।
PR बंद करते समय लिखे गए दोनों कमेंट में से किसी में भी AI का ज़िक्र नहीं है। agent-framework ने मेरी PR इसलिए बंद की क्योंकि एक पुरानी खुली PR में यही फ़िक्स था, और अपनी PR लिखने से पहले खोज लेता तो वह मुझे मिल जाती। MLX के मेंटेनर ने फ़ैसला तरीक़े को देखकर किया।
मैंने क्या बदला
- फ़िक्स लिखने से पहले मैं खुली पुल रिक्वेस्ट और इश्यू की टाइमलाइन में इश्यू नंबर खोजता हूँ। डुप्लिकेट यही क़दम छोड़ने से हुआ था।
- बड़े प्रोजेक्ट में मैं योजना कमेंट के रूप में लिखता हूँ, और जब तक कोई मेंटेनर जवाब न दे, कोई पुल रिक्वेस्ट नहीं खोलता। agent-framework, awslabs/mcp और spec-kit अभी इसी चरण में हैं।
- एक प्रोजेक्ट में एक समय पर एक ही खुली पुल रिक्वेस्ट।
- टेक्स्ट हर प्रोजेक्ट के अपने नियम के मुताबिक़ होता है। अगर कोई प्रोजेक्ट AI से लिखे विवरण पर पाबंदी लगाता है, जैसा MLX करता है, तो मैं उन्हें ख़ुद लिखता हूँ। spec-kit और codebase-memory-mcp को खुलासा उसी रूप में मिलता है जिसमें वे उसे माँगते हैं, और बिना नियम वाले प्रोजेक्ट को खुलासे की कोई लाइन नहीं मिलती।
- जब तक प्रोजेक्ट ख़ुद न माँगे, कोई ट्रेलर नहीं। मेरे कमिट पर सिर्फ़ मेरा नाम होता है।
- जिन प्रोजेक्ट के नियमों पर यह काम खरा नहीं उतरता, उन्हें मैं इस तरह का काम नहीं भेजता। Rust, Kubernetes और Node.js AI से लिखे कमेंट या रिव्यू के जवाबों पर पाबंदी लगाते हैं, transformers, trl और Node.js नए लोगों से एजेंट इस्तेमाल न करने को कहते हैं, और TypeScript इश्यू की कतार से चलने वाला काम स्वीकार नहीं करता।
सीमाएँ
यह छह दिनों में एक ही अकाउंट का अनुभव है। 30 रिपॉज़िटरी मेरी चुनी हुई हैं और AI टूलिंग की ओर झुकी हुई हैं, जहाँ नियम होने की संभावना ज़्यादा है। नियमों की क़िस्में मेरे दिए लेबल हैं, और एक नियम अक्सर कई क़िस्मों में आता है। सब कुछ 2 अक्टूबर 2026 को पढ़ा गया, और 19 में से 16 में नियमों वाली फ़ाइलें उससे पहले के महीने में बदलीं, इसलिए इसके कुछ हिस्से जल्द ही पुराने हो जाएँगे। पिन किए गए लिंक दिखाते हैं कि उस दिन हर फ़ाइल में क्या लिखा था।
सभी 106 उद्धरण, गिनतियाँ और एक स्क्रिप्ट, जो हर उद्धरण को उसकी फ़ाइल से मिलाकर जाँचती है, nefayran/oss-ai-rules में हैं।
इस नोट का मसौदा Claude Code (Claude Opus 5.5) की मदद से तैयार किया गया, जिसने नियमों वाली फ़ाइलें भी जुटाईं और हर उद्धरण को उनसे मिलाकर जाँचा।