如何用cc-skills-golang搭建AI代码评审:GitHub Actions + Claude Code + Copilot完整部署指南
【免费下载链接】cc-skills-golang🧑🎨 A collection of Golang agentic skills that works项目地址: https://gitcode.com/gh_mirrors/cc/cc-skills-golang
cc-skills-golang 是一套面向生产级 Go 项目的 Golang Agent Skills(AI 智能体技能集),本指南带你用它在 GitHub Actions 中落地 PR 级 AI 代码评审:把 Claude Code 与 GitHub Copilot 两种方案接入流水线,让每个 Pull Request 都被一位"资深 Go 工程师"按几十份技能规范自动审查,捕获静态分析器发现不了的架构漂移、逻辑缺陷与并发隐患。
为什么传统 Lint 不够用?
golangci-lint、go vet等工具擅长格式与模式问题,但对以下场景基本无能为力:
- 🔍架构漂移:新代码偏离项目既定模式
- 🐛逻辑缺陷:被吞掉的 error、未检查的 nil
- 🏁并发隐患:goroutine 生命周期、数据竞争(data race)
- 📦供应链风险:新依赖的 CVE 历史、废弃包识别
cc-skills-golang 的思路是:给 AI 智能体加载 Go 领域技能(如golang-error-handling、golang-concurrency、golang-security),让它在 CI 中以 PR 评审者身份逐行给出带行内定位 + 严重等级 + 修复建议的评论。完整的官方部署说明在 GOLANG-AI-DRIVEN-REVIEW.md。
项目结构速览:技能都放在哪
每个技能是一个独立目录,包含入口文件SKILL.md和按需加载的references/深度文档:
| 路径 | 说明 |
|---|---|
| skills/golang-continuous-integration/SKILL.md | CI/CD 技能主入口(含 AI Review 快速参考表) |
| GOLANG-AI-DRIVEN-REVIEW.md | AI 评审完整部署文档(Claude Code + Copilot) |
| skills/golang-continuous-integration/assets/claude-code-review.yml | Claude Code Action 工作流模板 |
| skills/golang-continuous-integration/assets/copilot-review-instructions.md | Copilot 评审指令模板 |
| skills/golang-continuous-integration/references/repo-security.md | 仓库安全配置参考 |
💡 提示:技能采用原子化、交叉引用设计,建议全量安装,只装一部分会得到不完整且可能互相矛盾的审查视角。
方案一:Claude Code Action 部署步骤(GitHub Actions)
这是功能最完整的方案:4 个并行评审 Job + 2 个辅助 Job,全部跑在 GitHub Actions 中。
第 1 步:安装 GitHub App 并配置密钥
在本地 Claude Code 中执行/install-github-app,它会自动完成 GitHub App 安装与 Claude API 对接,然后把ANTHROPIC_API_KEY配置到仓库 Secrets 中。
第 2 步:创建工作流文件
将模板 claude-code-review.yml 复制为.github/workflows/ai-code-review.yml。模板已包含最小权限声明(contents: read+pull-requests: write)和并发控制(同一 PR 重复 push 时自动取消旧任务,省钱又省时)。
第 3 步:理解 4 个并行评审 Job
| Job | 覆盖领域 | 对应技能 | 优先级策略 |
|---|---|---|---|
quality | 代码风格、命名、文档 | golang-code-style/golang-naming/golang-documentation | 🟡 建议优先(不阻塞) |
correctness | 错误处理、代码安全、并发 | golang-error-handling/golang-safety/golang-concurrency | 🔴 阻塞优先 |
security | 安全、依赖健康 | golang-security/golang-dependency-management | 🔴 阻塞优先 |
quality-depth | 测试、性能、可观测性、现代化 | golang-testing/golang-performance/golang-modernize | 混合 |
每个 Job 的提示词都要求:只评论有具体问题之处、给出具体修复、避免重复已提过的意见,并按🔴 BLOCKING / 🟠 IMPORTANT / 🟡 SUGGESTION三级标注严重度(见 严重等级定义)。
第 4 步(可选):启用 2 个辅助 Job
ci-diagnosis— 等待 4 个评审 Job 全部结束后,若有任何失败则自动读取日志、定位根因并在 PR 发布修复建议;discuss— 当人类发布评审意见时,智能体判断是否值得回复(如对方对 Go 语义有事实性错误),避免无意义的 AI 刷屏。
这两个 Job 不产生评审 API 费用,只在失败或有人评论时才触发。
成本与裁剪建议
4 个并行 Job 意味着每次 PR push 都会各启动一个 Claude 智能体。不需要哪个 Job 就删掉哪个(例如小型项目可只保留correctness+security)。模板中默认跳过机器人 PR(Dependabot 等),如需评审机器人 PR 可移除对应过滤条件(见 触发与过滤条件)。
方案二:GitHub Copilot 部署步骤(3 条命令搞定)
Copilot 方案更轻量,无需额外 API Key,适合已有 Copilot 订阅的团队。
第 1 步:把技能装进仓库,并建立 Copilot 可发现的软链接(见 Copilot 安装说明):
npx skills add https://gitcode.com/gh_mirrors/cc/cc-skills-golang --agent github-copilot --skill '*' -y --copy ln -s .agents .copilot第 2 步:把 copilot-review-instructions.md 的内容复制到.github/copilot-instructions.md。
这份指令文件定义了 Copilot 的评审行为:
- 评审范围:覆盖代码风格、命名、错误处理、并发、安全等 12 个领域,每个领域都指向具体技能路径(如
.copilot/skills/golang-concurrency/SKILL.md); - 优先级分层:阻塞优先(安全/安全编码/错误处理/并发)→ 重要(测试/性能/依赖)→ 建议优先(风格/命名/文档);
- 输出纪律:引用精确文件与行号、说明为什么重要、给出具体修复,"无话可说就不发评论"。
此后每次 PR,Copilot Code Review 就会自动按这套规范输出评审意见。
仓库安全配置:别忘了这 4 件事
AI 评审器需要pull-requests: write权限,安全基线必须同步到位(详见 repo-security.md):
- 分支保护:
main分支强制 PR 合并 + 至少 1 人审批 + 要求状态检查通过; - 默认 Token 只读:仓库级 Actions 权限设为"只读",各工作流按需声明最小权限;
- 限制 Fork PR 工作流:外部协作者的 Fork PR 设为"需要审批",防止消耗 Actions 分钟或接触 Secrets;
- Secrets 不入库:API Key 一律走仓库 Secrets,绝不写入工作流文件。
总结:两条路线怎么选?
| 维度 | Claude Code Action | GitHub Copilot |
|---|---|---|
| 部署复杂度 | 中(工作流 + API Key) | 低(2 条命令 + 1 个指令文件) |
| 评审深度 | 4 个领域专家并行 + CI 诊断 + 讨论回复 | 单智能体按指令文件评审 |
| 成本模型 | 按 Anthropic API 用量 | 走 Copilot 订阅额度 |
| 适合场景 | 追求最高评审质量的核心仓库 | 快速给团队"装上"AI 评审 |
无论哪条路线,核心都是同一套技能集:skills/下每个 SKILL.md 都是一位"领域专家",按需加载、互不冲突。配好流水线后,你的 Go 项目就拥有了一个 7×24 在线的资深评审员。🎯
【免费下载链接】cc-skills-golang🧑🎨 A collection of Golang agentic skills that works项目地址: https://gitcode.com/gh_mirrors/cc/cc-skills-golang
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考