自动PR代码审核

还能自动修复错误,优化代码

```yaml name: Claude Code Review & Auto Fix

on: pull_request: types: [opened, synchronize, ready_for_review, reopened] issue_comment: types: [created]

jobs: claude-review: # 在 PR 事件时自动运行,或在 PR 评论中包含 @claude 或 /review 时运行 if: | github.event_name == 'pull_request' || (github.event_name == 'issue_comment' && github.event.issue.pull_request && (contains(github.event.comment.body, '@claude') || contains(github.event.comment.body, '/review')))

runs-on: ubuntu-latest
permissions:
  contents: write      # ✨ 允许修改文件并提交
  pull-requests: write
  issues: write
  id-token: write
  actions: read
env:
  # 配置 Aliyun DashScope Anthropic API 端点
  ANTHROPIC_BASE_URL: https://dashscope.aliyuncs.com/apps/anthropic
  ANTHROPIC_DEFAULT_HAIKU_MODEL: qwen3-coder-plus
  ANTHROPIC_DEFAULT_OPUS_MODEL: qwen3-coder-plus
  ANTHROPIC_DEFAULT_SONNET_MODEL: qwen3-coder-plus

steps:
  - name: Checkout PR branch
    uses: actions/checkout@v4
    with:
      ref: ${{ github.event.pull_request.head.ref || github.event.issue.pull_request.head.ref }}
      fetch-depth: 0
      token: ${{ secrets.USER_TOKEN }}

  - name: 配置 Git
    run: |
      git config user.name "Claude Code Bot"
      git config user.email "claude-code-bot@users.noreply.github.com"

  - name: 运行 Claude 代码审查与自动修复
    uses: anthropics/claude-code-action@v1
    with:
      anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
      github_token: ${{ secrets.USER_TOKEN }}
      track_progress: true
      prompt: |
        REPO: ${{ github.repository }}
        PR NUMBER: ${{ github.event.pull_request.number || github.event.issue.number }}

        ## 任务说明

        使用 `/pr-review-toolkit:review-pr` 插件对这个 PR 进行全面的代码审查。

        ### 审查重点

        请关注以下方面(参考 `.claude/CLAUDE.md` 项目规范):

        1. **代码质量和可读性**
           - 变量命名是否清晰
           - 函数职责是否单一
           - 代码逻辑是否清晰

        2. **潜在的 Bug 或安全问题**
           - 空指针引用、数组越界
           - SQL 注入、XSS 等安全漏洞
           - 并发安全问题
           - 资源泄漏(文件句柄、数据库连接等)

        3. **性能优化建议**
           - 不必要的循环嵌套
           - 可以优化的算法
           - 内存使用问题

        4. **Go 语言最佳实践**
           - 错误处理是否正确
           - defer 使用是否合理
           - goroutine 和 channel 使用是否安全
           - 是否遵循 Go 命名约定

        5. **项目规范**
           - 是否符合 `.claude/CLAUDE.md` 中的规范
           - 提交信息格式是否正确
           - 文档是否需要更新

        ### 自动修复流程

        对于发现的可以安全自动修复的问题,请直接修复:

        **可自动修复的问题类型**:
        - ✅ 代码格式问题(gofmt、行尾空格、缩进)
        - ✅ 明显的语法错误
        - ✅ 简单的逻辑错误
        - ✅ 缺少的基本错误处理
        - ✅ 拼写错误
        - ✅ 未使用的变量和导入
        - ✅ 简单的性能优化(如预分配切片容量)

        **不要自动修复的问题**(仅在审查报告中指出):
        - ❌ 需要架构调整的问题
        - ❌ 可能影响业务逻辑的修改
        - ❌ 复杂的重构
        - ❌ 不确定的安全问题

        ### 修复步骤

        如果发现可修复的问题:
        1. 使用 Read 工具读取需要修改的文件
        2. 使用 Edit 工具进行精确修改
        3. 所有修复完成后,使用 Bash 工具创建提交:
           ```bash
           git add -A
           git commit -m "🤖 Claude 自动修复: [简要说明]

           基于 pr-review-toolkit 审查结果自动修复:
           - 列出修复的问题

           Co-Authored-By: Claude Code Bot <claude-code-bot@users.noreply.github.com>"
           git push
           ```

        ### 审查报告格式

        在 PR 中发布审查报告,在开头添加 Claude 标识,格式如下:

        ```markdown
        <div align="center">
          <img src="https://mintlify.s3-us-west-1.amazonaws.com/anthropic/logo/light.svg" alt="Claude" width="120" />

          # Claude Code 审查报告

          **🔮 Powered by Claude Code** | 使用 pr-review-toolkit 专业审查
        </div>

        ---

        ### ✅ 已自动修复的问题

        - [x] 问题描述(文件:行号)

        ### ⚠️ 需要手动处理的问题

        #### 🔴 高优先级
        - [ ] 问题描述(文件:行号)

        #### 🟡 中优先级
        - [ ] 问题描述(文件:行号)

        ### 💡 优化建议

        - 建议描述

        ### 📊 总结

        - 检查了 X 个文件
        - 自动修复了 Y 个问题
        - 发现 Z 个需要手动处理的问题
        ```

        ## 重要提示

        - 所有回复使用中文,除非在当前对话中用户明确要求使用其他语言
        - 如果没有发现需要修复的问题,只发布审查报告,不要创建空提交
        - 修复时要谨慎,确保不会破坏现有功能
        - 使用内联评论指出具体代码位置的问题(如果适用)

      # 允许的工具:读写文件、执行所有 Bash 命令、GitHub 操作、调用插件
      claude_args: |
        --allowedTools "Read,Edit,Write,Glob,Grep,Bash,mcp__github__*,Skill"
        --max-turns 100