name: AI Code Review (on comment) on: issue_comment: types: [created, edited] jobs: code-review: runs-on: ubuntu-latest if: github.event.issue.pull_request && (startsWith(github.event.comment.body, 'openai') || github.event.comment.body == 'openai') steps: - name: OpenAI Code Review uses: sgxya/gitea-code-review-action@main # env: # # 可直连则删除本行;需代理则改成你的代理地址 # OPENAI_PROXY: https://aiyjg.lol # NODE_TLS_REJECT_UNAUTHORIZED: '0' with: SOURCE_AT: gitea GITHUB_BASE_URL: 'https://49.235.186.195' OPENAI_BASE_URL: 'https://aiyjg.lol' PROGRAMMING_LANGUAGE: 'JavaScript' # 避免使用 auto FULL_REVIEW_COMMENT: openai REVIEW_COMMENT_PREFIX: 'openai:' MAX_CODE_LENGTH: 6000 OPENAI_TOKEN: ${{ secrets.OPENAI_TOKEN }} GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - name: Comment on PR when AI review fails (Gitea API) if: failure() # 仅在 AI Review 步骤失败时执行 env: GITEA_BASE_URL: https://49.235.186.195 TOKEN: ${{ secrets.GH_TOKEN }} # 或者使用你在 Gitea 配置的 PAT OWNER: ${{ github.repository_owner }} REPO: ${{ github.event.repository.name }} ISSUE_NUMBER: ${{ github.event.issue.number }} # PR 在 API 上也是 issue run: | set -e api="$GITEA_BASE_URL/api/v1/repos/$OWNER/$REPO/issues/$ISSUE_NUMBER/comments" body=$(cat <<'EOF' { "body": "AI 自动审查未通过,请根据机器人评论修复问题后,在此评论 `openai` 以重新触发审查。" } EOF ) curl -sS -X POST "$api" \ -H "Content-Type: application/json" \ -H "Authorization: token $TOKEN" \ --data "$body"