इस प्रोजेक्ट के बारे में

# VibeCoder **अपने फ़ोन से GitHub issues बनाएँ, स्वचालित रूप से PRs (Pull Requests) प्राप्त करें, समीक्षा करें और thumbs up के साथ सुधार का अनुरोध करें।** VibeCoder एक स्वचालित GitHub issue वर्कर है जो एक coding-agent CLI द्वारा संचालित होता है। यह आपकी रिपॉज़िटरी की निगरानी करता है, issues उठाता है, कोड लिखता है, गुणवत्ता जाँच चलाता है, और pull requests खोलता है — यह सब आपके कीबोर्ड को छुए बिना। यह **provider agnostic** है: `claude` ([Claude Code](https://docs.anthropic.com/en/docs/claude-code)) डिफ़ॉल्ट है, और `codex` (OpenAI Codex CLI), `gemini` (Gemini CLI) तथा `deepseek` (DeepSeek, Claude Code CLI के माध्यम से सेवित) अंतर्निहित हैं और कॉन्फ़िगरेशन द्वारा चुने जाते हैं। ## यह कैसे काम करता है 1. आप GitHub पर एक issue बनाते हैं (उदाहरण के लिए, अपने फ़ोन से)। 2. VibeCoder Worker issue का पता लगाता है और स्वयं को असाइन करता है। 3. वर्कर एक feature branch बनाता है और कार्य को कॉन्फ़िगर किए गए Coding Agent को सौंपता है। 4. एजेंट कोड परिवर्तन लिखता है। 5. वर्कर गुणवत्ता जाँच (linting, testing, formatting) चलाता है। 6. यदि जाँच पास होती है, तो वर्कर GitHub पर एक Pull Request खोलता है। 7. आप PR की समीक्षा करते हैं, टिप्पणियाँ छोड़ते हैं, या सुधार शुरू करने के लिए thumbs-up देते हैं। 8. वर्कर फीडबैक लागू करता है और अपडेट पुश करता है। 9. आप PR को approve और merge करते हैं। ## अपना coding agent चुनें coding agent एक अलग परत है। चार providers अंतर्निहित हैं: | Provider id | Agent | Credential file | | --- | --- | --- | | `claude` (default) | Claude Code | `claude/provider.env` | | `codex` | Codex CLI | `codex/provider.env` | | `gemini` | Gemini CLI | `gemini/provider.env` | | `deepseek` | DeepSeek (via Claude Code CLI) | `deepseek/provider.env` | `.config.json` में `agent_provider` key के साथ एक चुनें। मिश्रित होस्ट quota-aware चयन का विकल्प चुन सकते हैं। ## मुख्य विशेषताएँ - **Issue-to-PR pipeline**: एक issue लिखें, एक PR प्राप्त करें। वर्कर branching, coding, testing, और PR creation संभालता है। - **Review feedback loop**: PR पर टिप्पणियाँ छोड़ें, सुधार शुरू करने के लिए thumbs-up दें। - **Clarification & refinement**: यदि issue अस्पष्ट है, तो वर्कर शुरू करने से पहले प्रश्न पूछता है। - **Planning mode**: सीधे कार्यान्वयन के बजाय कार्य विभाजन और sub-issues प्राप्त करने के लिए `planning` label जोड़ें। - **Question answering**: कार्यान्वयन के बिना codebase के बारे में उत्तर पाने के लिए `question` label जोड़ें। - **Spelling auto-fix**: PRs पर विफल spelling जाँच स्वचालित रूप से ठीक की जाती हैं। - **CI failure auto-fix**: खुले PRs पर विफल CI जाँचों का स्वचालित रूप से निदान और समाधान किया जाता है। - **Idle-task framework**: जब कोई claimable कार्य मौजूद न हो, तो वर्कर कम-प्राथमिकता वाले idle tasks (security, best-practices, आदि) दर्ज करता है। - **Security scans**: Idle-runs निगरानी की गई repos के विरुद्ध security scans चलाते हैं। - **Priority-based work queue**: PR feedback, फिर spelling fixes, CI remediation, आदि को प्राथमिकता देता है। - **Cost optimisation**: Phase-based model selection, prompt caching, और token usage tracking। - **Post-run callbacks**: सफल/विफल रन के बाद वैकल्पिक executables चलते हैं। - **Per-repo configuration**: प्रति रिपॉज़िटरी वर्कर व्यवहार को अनुकूलित करें। - **Milestone enhancements**: प्रगति सूचनाएँ, अटकी हुई branches का स्वचालित roll-back। - **Self-healing**: Shadow-copy execution, स्वचालित repo resets, disk cleanup, crash resilience। - **Safe by default**: केवल अनुमत authors से configured labels वाले issues को संसाधित करता है। - **Extendable**: Deno/TypeScript commands के माध्यम से नई कार्यक्षमता जोड़ें। ## गुणवत्ता और नियंत्रण आपकी समीक्षा के बिना कुछ भी default branch (prod) पर नहीं जाता। प्रत्येक परिवर्तन एक PR के रूप में आता है; आप merge से पहले समीक्षा करते हैं, सुधार का अनुरोध करते हैं, और approve करते हैं। वर्कर TDD, KISS, DRY का पालन करता है, और पूर्ण quality gates (`deno test`, `deno lint`, `deno check`, `deno fmt --check`, और semgrep) चलाता है। ## Quick Start ### macOS / Linux ```bash # Clone the repository gh repo clone <your-org>/VibeCoder cd VibeCoder # Configure via environment variables VIBE_ALLOWED_AUTHOR=myusername \ VIBE_REPOS="myorg/repo1,myorg/repo2" \ ./setup.sh # Start the worker ./run.sh ``` ### Windows (PowerShell) ```powershell # Clone the repository gh repo clone <your-org>/VibeCoder cd VibeCoder # Configure $env:VIBE_ALLOWED_AUTHOR = "myusername" $env:VIBE_REPOS = "myorg/repo1,myorg/repo2" .\setup.ps1 # Start the worker .\run.ps1 ``` ## Architecture वर्कर एक thin launcher + Deno TypeScript architecture का उपयोग करता है। Entry points न्यूनतम shell/PowerShell scripts हैं जो सभी business logic के लिए Deno को सौंपते हैं। Cross-platform: macOS, Linux, और Windows। वर्कर एक least-privilege container के अंदर चलता है। Containment अनिवार्य है। GitHub एकमात्र सामान्य remote control plane है। ## Requirements - एक समर्थित container runtime: macOS पर Apple `container`, Linux और Windows पर Docker या Podman। - [Deno](https://deno.com/) 2+ — launcher का एकमात्र host tool। - launcher चलाने के लिए `bash` (macOS/Linux) या PowerShell (Windows)। - केवल setup के लिए: Git और एक authenticated GitHub CLI। ## Documentation - [Overview](docs/OVERVIEW.md): Single-page walkthrough। - [Label Flows](docs/workflows/label-flows.md): कब कौन सा label। - [Usage Guide](docs/USAGE.md): Issues बनाना, PR workflow। - [Workflows Overview](docs/workflows/README.md): Repo owners के लिए user manual। - [Quorum](docs/QUORUM.md): एक साथ कई providers चलाना।