@echo off chcp 65001 >nul title Dev-Agent - Gitea Issue Worker :: ── Parse GITEA_USER from command line ──────────────────────────────────────── if "%1"=="" ( echo Usage: start_dev_agent.bat ^ echo Example: start_dev_agent.bat pzhang_dev_agent_01 pause exit /b 1 ) set GITEA_USER=%1 :: ── Change to project root ──────────────────────────────────────────────────── cd /d "%~dp0.." :: ── Load Gitea configuration from ~/.gitea/config.yaml ──────────────────────── for /f "usebackq tokens=1,* delims= " %%a in (`python scripts\_get_gitea_config.py --batch 2^>nul`) do set "%%b" :: ── Validate required vars ──────────────────────────────────────────────────── if "%GITEA_URL%"=="" ( echo ERROR: Gitea configuration not loaded. echo Make sure "%USERPROFILE%\.gitea\config.yaml" contains a profile for "%GITEA_USER%". pause exit /b 1 ) echo ============================================ echo Dev-Agent 启动器 echo ============================================ echo. echo 模式选择: echo [1] 单次任务 - 检查 Issue 并处理,完成后退出 (automode^) echo [2] 互动轮询 - 进入 Claude Code 界面,每 10 分钟轮询 echo. set /p MODE="请输入 (1/2): " if "%MODE%"=="1" ( echo. echo 执行单次检查 (automode)... claude -p --agent agents/DEV_AGENT.md --dangerously-skip-permissions "你是 Dev-Agent。执行一次 Issue 巡检(单次任务,不要用 /loop):1. agent_poller.py --action list 列出所有打开的 Issue 2. 跳过纯测试 3. 逐个走闭环:分析-开发-pytest-commit-push-create-pr-CI-merge-pr-通知QE 4. 退出。" pause exit /b 0 ) if "%MODE%"=="2" ( echo. echo 启动互动轮询模式... echo Dev-Agent 进入 Claude Code 界面后将自动每 10 分钟轮询 Gitea Issue echo 按 Ctrl+C 停止 claude --agent agents/DEV_AGENT.md "你是 Dev-Agent。现在开始工作。使用 /loop 10m 每 10 分钟 python scripts/agent_poller.py --action list 检查 Issue,跳过纯测试,有则走完整闭环,无则报告 main healthy。保持对话开放。" pause exit /b 0 ) echo 无效选择。 pause exit /b 1