这个项目能做什么

# VibeCoder **在手机上创建 GitHub issue,自动获得 PR(Pull Request),通过点赞进行审查并请求修复。** VibeCoder 是一个由编码代理 CLI 驱动的自动化 GitHub issue 工作器。它监控你的仓库,领取 issue,编写代码,运行质量检查,并创建拉取请求——全程无需你触碰键盘。 它**与提供商无关**:`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. worker 创建一个功能分支,并将工作委托给配置的 Coding Agent。 4. 代理编写代码更改。 5. worker 运行质量检查(linting、测试、格式化)。 6. 如果检查通过,worker 在 GitHub 上创建一个 Pull Request。 7. 你审查 PR,留下评论,或点赞以触发修复。 8. worker 应用反馈并推送更新。 9. 你批准并合并 PR。 ## 选择你的编码代理 编码代理是一个可分离的层。内置四个提供商: | 提供商 id | 代理 | 凭据文件 | | --- | --- | --- | | `claude`(默认) | Claude Code | `claude/provider.env` | | `codex` | Codex CLI | `codex/provider.env` | | `gemini` | Gemini CLI | `gemini/provider.env` | | `deepseek` | DeepSeek(通过 Claude Code CLI) | `deepseek/provider.env` | 通过 `.config.json` 中的 `agent_provider` 键选择一个。混合主机可以选择启用配额感知选择。 ## 主要功能 - **Issue 到 PR 流水线**:编写 issue,获得 PR。worker 处理分支、编码、测试和 PR 创建。 - **审查反馈循环**:在 PR 上留下评论,点赞以触发修复。 - **澄清与细化**:如果 issue 不明确,worker 会在开始前提出问题。 - **规划模式**:添加 `planning` 标签以获取任务分解和子 issue,而不是直接实现。 - **问题解答**:添加 `question` 标签以获取有关代码库的答案,而不进行实现。 - **拼写自动修复**:PR 上失败的拼写检查会自动更正。 - **CI 失败自动修复**:打开的 PR 上失败的 CI 检查会自动诊断并修复。 - **空闲任务框架**:当不存在可领取的工作时,worker 会提交低优先级的空闲任务(安全、最佳实践等)。 - **安全扫描**:空闲运行会对受监控的仓库进行安全扫描。 - **基于优先级的工作队列**:优先处理 PR 反馈,然后是拼写修复、CI 修复等。 - **成本优化**:基于阶段的模型选择、提示缓存和 token 使用跟踪。 - **运行后回调**:可选的可执行文件在成功/失败运行后运行。 - **按仓库配置**:为每个仓库自定义 worker 行为。 - **里程碑增强**:进度通知,自动回滚卡住的分支。 - **自愈**:影子副本执行、自动仓库重置、磁盘清理、崩溃恢复能力。 - **默认安全**:仅处理来自允许作者且具有配置标签的 issue。 - **可扩展**:通过 Deno/TypeScript 命令添加新功能。 ## 质量与控制 未经你的审查,任何内容都不会进入默认分支(prod)。每个更改都以 PR 形式到达;你在合并前进行审查、请求修复并批准。worker 遵循 TDD、KISS、DRY,并运行完整的质量门禁(`deno test`、`deno lint`、`deno check`、`deno fmt --check` 和 semgrep)。 ## 快速开始 ### 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 ``` ## 架构 worker 使用薄启动器 + Deno TypeScript 架构。入口点是最小的 shell/PowerShell 脚本,将所有业务逻辑委托给 Deno。跨平台:macOS、Linux 和 Windows。 worker 在最小权限容器内运行。隔离是强制性的。GitHub 是唯一的正常远程控制平面。 ## 要求 - 受支持的容器运行时:macOS 上的 Apple `container`,Linux 和 Windows 上的 Docker 或 Podman。 - [Deno](https://deno.com/) 2+ —— 启动器唯一的宿主工具。 - `bash`(macOS/Linux)或 PowerShell(Windows)以运行启动器。 - 仅用于设置:Git 和经过身份验证的 GitHub CLI。 ## 文档 - [Overview](docs/OVERVIEW.md):单页演练。 - [Label Flows](docs/workflows/label-flows.md):何时使用哪个标签。 - [Usage Guide](docs/USAGE.md):创建 issue、PR 工作流。 - [Workflows Overview](docs/workflows/README.md):面向仓库所有者的用户手册。 - [Quorum](docs/QUORUM.md):同时运行多个提供商。