Skip to content

集成篇

目录

12. 将 Skill 融入开发流程

Skill 的真正价值不是孤立使用,而是串联到开发流程的关键节点,形成质量管线

12.1 本地开发:Makefile 驱动的质量门禁

go-makefile-writer skill 帮我们为 Go 项目生成标准化的 Makefile。核心理念:开发者在 push 之前就应该能捕获 CI 会发现的所有问题

issue2md 项目为例,Makefile 中的 ci 目标直接镜像 CI 流程:

ci: fmt-check ci-core  ## Local/CI required gate parity checks

ci-core: cover-check lint build-all  ## Run coverage gate, lint, build

本地执行 make ci 和 CI 执行 make ci COVER_MIN=80同一条命令——这就是 go-ci-workflow skill 所说的 "Local Parity"(本地一致性)。

12.2 CI 流程:Skill 驱动的自动化门禁

CI workflow 是 Makefile 目标的薄封装层。以下以 issue2md 项目为例(需根据自己的项目适配工具版本和目标名称):

# .github/workflows/ci.yml(示例,需适配)
jobs:
  ci:
    steps:
       - name: Install golangci-lint
        run: go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.6.2
       - name: Run CI gate
        run: make ci COVER_MIN=80

  docker-build:
    steps:
       - name: Build image
        run: make docker-build

每个 CI job 委托给一个 Makefile 目标。开发者在本地跑 make ci,CI 也跑 make ci——流程完全一致。

issue2md CI 流水线:§8.1 中 git-commit skill 提交的 fix(github) 触发,6 个 job 全绿,1m 29s

这次 CI 正是由 §8.1 中 git-commit skill 的提交触发的——从本地门禁到 CI 全绿,整条链路由 skill 驱动。

12.3 代码审查:AI 驱动的 PR Review

go-code-reviewer skill 可以集成到 CI 中,对每个 PR 自动执行代码审查。以下以 tcg-ucs 项目为例(需根据自己的项目适配 skill 路径、prompt 内容和工具权限):

# .github/workflows/claude-code-review.yml(示例,需适配)
name: Claude Code Review
on:
  pull_request:
    branches: [master, main]
    types: [opened, synchronize]

jobs:
  review:
    steps:
       - uses: anthropics/claude-code-action@v1.0.3
        with:
          prompt: |
            Read .claude/skills/go-code-reviewer/SKILL.md,
            get the PR diff via `gh pr diff`,
            select review mode (Lite/Standard/Strict),
            execute the full review workflow,
            post findings as PR comments.

工作流 YAML 只做编排,所有审查逻辑都在 skill 中。更新审查标准只需更新 skill 文件,无需修改 CI 配置。

12.4 完整的质量管线

把上述环节串联起来,形成从编码到合并的完整质量管线:

编码
make fmt / make lint(本地质量检查,go-makefile-writer 生成)
git commit(git-commit skill:安全扫描 + 质量门禁 + 规范化 message)
git push
create PR(create-pr skill:8 道门禁 + 结构化 PR body)
CI 触发
  ├── make ci(格式 + 测试 + lint + 覆盖率 + 构建)
  ├── make docker-build(容器镜像验证)
  ├── Claude Code Review(go-code-reviewer skill:自动代码审查)
  └── govulncheck(依赖漏洞扫描)
人工审查 + 合并

每个环节都有对应的 skill 提供保障,且本地和 CI 保持一致。

12.5 团队落地策略:渐进式推广与阻力处理

Skill 的技术集成只是一半,另一半是团队接受度。工具再好,若推广方式引发阻力,最终也会被束之高阁。以下是经过验证的渐进式推广路径,核心思路是"先证明价值,再固化为流程"。

第一阶段:个人试点(1-2 周)

由 1-2 名对 AI 工具熟悉的成员先在日常工作中使用 skill,收集真实的正面案例和问题反馈。这个阶段的目标不是推广,而是积累说服团队的证据——没有真实案例,任何宣讲都是空洞的。

第二阶段:可选启用(2-4 周)

将 skill 提交到项目的 .claude/skills/ 目录,但不强制使用。在团队会议上用第一阶段的真实案例(如"Skill 拦截了一次密钥泄漏")展示价值。关键原则:用证据说服,不用行政命令强推。强制推广往往引发逆反心理,反而阻碍采用。

第三阶段:CI 门禁集成

当团队大多数成员已经在自愿使用 skill 后,再将其集成到 CI 流程中作为质量门禁。此时团队对 skill 的行为已有预期,CI 集成不会产生意外摩擦。过早集成到 CI 是常见错误——在团队尚未建立信任之前就设置强制门禁,只会让 skill 成为"令人烦躁的障碍"。

常见阻力与应对

阻力 应对
"Skill 拖慢了我的提交速度" 先检查是否误报过多,优化后再推广
"我不信任 AI 生成的审查意见" 初期将 Skill 输出设为建议模式而非阻断模式
"规范太死板,不适合我的场景" 给 Skill 增加合理的降级和豁免机制

渐进式推广的本质是把"工具采用"当成一个需要管理预期、积累信任、降低摩擦的工程问题——和写好 skill 本身同等重要。


13. Skill 与其他 Claude Code 特性的关系

Claude Code 提供了多种扩展机制,各有其适用场景。理解它们的区别是正确使用的前提。

13.1 特性对比

特性 加载时机 最佳用途 上下文成本
CLAUDE.md 每次会话自动加载 项目通用规范:代码风格、commit 规范、技术栈说明、构建命令 每次请求都消耗
Rules.claude/rules/ 每次会话或匹配文件时 按文件类型/目录的细粒度规范 条件性消耗
Skill 按需加载(描述始终在上下文,正文仅在使用时加载) 可复用的领域知识和工作流 低(不用不消耗)
Sub-agent 被调度时 隔离的并行子任务,避免撑爆主会话上下文 独立上下文,不影响主会话
MCP 会话启动时 连接外部服务(GitHub API、Google 邮箱、数据库) 每次请求消耗
Hook 事件触发时 确定性自动化:提交前格式化、保存时 lint 零(不进入 AI 上下文)
自定义斜杠命令 用户输入 / 已被 skill 吸收,.claude/commands/ 仍兼容 同 skill

13.2 选择决策树

这个知识/流程需要在每次会话中生效吗?
├── 是 → 它短于 200 行吗?
│   ├── 是 → 放在 CLAUDE.md
│   └── 否 → 拆分到 .claude/rules/ 或抽取为 skill
├── 否 → 它需要用户主动触发吗?
│   ├── 是 → 它有副作用吗?
│   │   ├── 是 → Skill + disable-model-invocation: true
│   │   └── 否 → Skill(默认)
│   └── 否 → 它是确定性逻辑(如格式化、lint)吗?
│       ├── 是 → Hook(零 AI 上下文成本)
│       └── 否 → 它需要连接外部服务吗?
│           ├── 是 → MCP server
│           └── 否 → Skill + user-invocable: false(后台知识)

13.3 组合使用模式

这些特性不是互斥的,最佳实践是组合使用:

组合 效果
CLAUDE.md + Skill CLAUDE.md 定义全局规范(commit 格式、日志规范),skill 提供具体工作流(git-commit 如何执行)
Skill + Sub-agent skill 中设置 context: fork,在隔离上下文中运行复杂分析,避免撑爆主会话
Skill + MCP skill 定义操作流程,MCP 提供外部工具(如 skill 定义 PR 创建流程,MCP 连接 GitHub API)
Skill + Hook skill 定义代码审查标准,hook 在 git commit 前自动运行格式化和静态检查
Skill + Skill skill 之间交叉引用(如 go-ci-workflow 引用 $go-makefile-writer 来修复缺失的 Makefile 目标)

13.4 一句话总结

CLAUDE.md 是"始终生效的背景知识",Skill 是"按需加载的专业能力",Hook 是"零成本的确定性保障",MCP 是"连接外部世界的桥梁",Sub-agent 是"隔离执行的并行agent"。

把对的知识放在对的位置,既保证了 AI 在关键时刻拥有必要的上下文,又避免了无关信息对上下文窗口的浪费。


14. AI 编程助手定制能力横向对比

Skill 并非唯一的 AI 编程助手定制机制。了解市场上其他工具的定制能力,有助于理解 skill 的设计理念和独特优势。

14.1 主流工具定制能力对比

能力维度 Claude Code (Skill) Cursor (Rules) GitHub Copilot Windsurf
配置文件 CLAUDE.md + .claude/rules/ + Skill .cursor/rules/ .github/copilot-instructions.md .windsurfrules
按需加载 支持(description 触发 + 选择性 reference) 支持(glob 模式匹配) 不支持 不支持
可调用工作流 支持(/skill-name + 参数传递) 有限 不支持 不支持
子代理隔离 支持(context: fork 不支持 不支持 不支持
动态上下文注入 支持(!`command` 预处理) 不支持 不支持 不支持
脚本封装 支持(scripts/ 目录) 不支持 不支持 不支持
工具权限控制 支持(allowed-tools 白名单) 不支持 不支持 不支持
跨工具互操作 支持(Agent Skills 开放标准) 不支持 不支持 不支持
分发机制 企业/个人/项目/插件 四级 项目级 项目级 项目级

14.2 AI 代码审查工具对比

在 CI 集成的代码审查领域,也有多种选择:

工具 渗透率 定制深度 典型用法
GitHub Copilot Code Review 6000 万+ 次审查,12000+ 组织 低(通过 .github/copilot-instructions.md 定制) 开箱即用,覆盖 GitHub 20%+ 的代码审查
CodeRabbit 200 万仓库,10000+ 付费客户 中(YAML 配置 + 规则) 安装 GitHub App 即可使用
Claude Code + 自定义 Skill 早期采用阶段 高(完整的门禁/反例/渐进式披露体系) 需要工程投入,但定制深度和审查质量上限最高

Copilot 和 CodeRabbit 胜在开箱即用和规模;Claude Code + Skill 胜在定制深度和领域适配。对于有特定领域审查需求(如 Go 并发安全、资源生命周期管理)的团队,后者的投入产出比更高。

14.3 趋势判断

AI 代码审查已经从"新鲜事物"变成"基础设施"——Copilot Code Review 覆盖了 GitHub 20% 以上的代码审查量。但在定制化深度上,行业仍处于早期:

  • 大多数团队:直接使用 Copilot 或 CodeRabbit 的默认配置,不做深度定制
  • 进阶团队:通过配置文件传递项目级规范(如 .github/copilot-instructions.md
  • 前沿实践:用自定义 skill 构建完整的领域审查体系(门禁、反例、版本感知、降级策略)

从"能用 AI"到"用好 AI",中间隔着的正是本文讨论的这些设计模式和工程实践。