Skill 技能系统完全指南(八):进阶技巧——条件触发、多语言支持与 Agent/Workflow 配合

📅 2026/7/14 9:42:59
Skill 技能系统完全指南(八):进阶技巧——条件触发、多语言支持与 Agent/Workflow 配合
title: Skill 技能系统完全指南八进阶技巧——条件触发、多语言支持与 Agent/Workflow 配合date: 2026-07-10category: AI 开发工具tags: [Claude Code, Skill, 进阶, 条件触发, 多语言, Agent, Workflow]Skill 技能系统完全指南八进阶技巧——条件触发、多语言支持与 Agent/Workflow 配合系列终篇。当你已经熟练编写和共享 Skill 后这些进阶技巧能让你的 Skill 更加智能、更加强大。条件触发、多语言适配、与 Agent/Workflow 的深度协作——让你的 Skill 从能用升级到好用。前言这是 Skill 技能系统系列的最后一篇。在前面的 7 篇中我们认识了 Skill 系统第 1 篇学会了自定义 Skill 开发第 2 篇掌握了 Skill 编排与组合第 3 篇编写了 3 个实战 SkillDevOps 部署、代码质量、文档生成第 4-6 篇学习了团队共享与版本管理第 7 篇本篇作为收官带来 4 个进阶技巧帮你把 Skill 系统推到极致。一、条件触发让 Skill 更聪明1.1 什么是条件触发普通的 Skill 只要匹配到关键词就会触发。但有时候我们希望 Skill在特定条件下才触发在其他条件下静默。1.2 场景只在提交前触发 Lint 检查--- name: pre-commit-lint description: 提交前自动执行 Lint 检查仅在有未暂存文件时触发 trigger: 提交前检查, pre-commit, 提交 lint condition: 检测到 git diff 或 git status 有变更 --- # 提交前 Lint 检查 Skill ## 触发条件 仅在以下情况激活 - 当前有未暂存的代码变更git status 有 modified/added 文件 - 用户提到提交、commit、pre-commit等关键词 如果没有代码变更不激活此 Skill直接提示没有检测到代码变更。 ## 执行流程 ### 步骤 1: 检查是否有变更 bash git status --porcelain如果输出为空跳过后续步骤。步骤 2: 确定变更的文件类型# 前端文件gitdiff--name-only--cached|grep-E\.(vue|ts|js)$# 后端文件gitdiff--name-only--cached|grep-E\.(java)$步骤 3: 针对性执行 Lint如果有.vue/.ts/.js文件 → 执行前端 Lint如果有.java文件 → 执行后端 Checkstyle如果都没有 → 提示没有可检查的代码文件步骤 4: 报告结果 Pre-commit 检查报告 ━━━━━━━━━━━━━━━━━━━━━ 变更文件 - src/views/UserList.vue - src/api/user.ts - src/types/user.ts 前端 Lint✅ 0 error, 1 warning warning: UserList.vue:45 - 建议使用 v-slot 代替 slot 语法 后端 Checkstyle✅ 无变更 ━━━━━━━━━━━━━━━━━━━━━ 可以安全提交。1.3 条件表达式在 Skill 中可以使用伪代码描述条件## 条件逻辑 IF 当前分支 main AND 操作 部署 → 要求二次确认 IF 有 .env 文件变更 → 检查是否包含敏感信息密码、密钥 IF 测试失败次数 3 → 标记为 flaky test建议暂时禁用二、多语言支持2.1 多语言 Skill同一个 Skill 可以支持多种语言输出根据用户的输入语言自动切换。--- name: i18n-assistant description: 多语言翻译和国际化助手支持中英文互译 trigger: 翻译, translate, i18n, 国际化, 多语言 --- # 多语言翻译 Skill ## 角色定义 你是一个专业的多语言翻译助手精通中英文技术术语翻译。 ## 支持的语言对 | 源语言 | 目标语言 | 场景 | |--------|---------|------| | 中文 | 英文 | 国际化文案、API 文档 | | 英文 | 中文 | 技术文档翻译、错误提示 | | 中文 | 日文 | 日本站点适配 | | 中文 | 韩文 | 韩站点适配 | ## 翻译规则 ### 技术术语翻译表 | 中文 | English | 日本語 | 한국어 | |------|---------|--------|--------| | 用户 | User | ユーザー | 사용자 | | 登录 | Login | ログイン | 로그인 | | 注册 | Register | 登録 | 등록 | | 密码 | Password | パスワード | 비밀번호 | | 错误 | Error | エラー | 오류 | | 成功 | Success | 成功 | 성공 | ### 命名规范 - 键名使用 snake_caseuser_login_success - 值使用自然语言ログインに成功しました - 变量占位符使用 ICU 格式{userName}、{totalCount} ## 输出格式 生成 src/locales/{lang}.ts 文件 typescript // src/locales/en.ts export default { common: { search: Search, reset: Reset, confirm: Confirm, }, user: { loginSuccess: Login successful, loginFailed: Login failed, logout: Logout, }, }自动检测扫描项目中所有.vue文件提取硬编码的中文字符串生成需要翻译的清单 待翻译文本清单 ━━━━━━━━━━━━━━━━━━━━━ | 文件 | 行号 | 中文文本 | 建议键名 | |------|------|---------|---------| | UserList.vue | 23 | 用户管理 | user.management | | UserList.vue | 56 | 搜索 | common.search | | Login.vue | 12 | 请输入密码 | user.passwordPlaceholder | 共发现 15 处硬编码文本建议全部抽离为国际化键。### 2.2 多语言 Skill 提示词 Skill 本身的提示词也可以写成多版本 markdown ## 多语言提示词 根据用户的输入语言自动选择对应的提示词版本 - 用户说中文 → 使用中文提示词执行 - 用户说英文 → 使用英文提示词执行 - 用户混用 → 优先使用用户首次出现的语言 但代码注释和输出始终使用英文技术通用语言。三、与 Agent 的深度配合3.1 Skill 调用 AgentSkill 在执行过程中可以动态派出 Agent 完成子任务--- name: fullstack-feature description: 全栈功能开发同时派前端 Agent 和后端 Agent 并行开发 trigger: 全栈开发, fullstack, 前后端同时开发 --- # 全栈功能开发 Skill ## 角色定义 你是一个全栈开发编排器。当你收到功能需求时 自动拆分为前端和后端子任务派出对应的 Agent 并行开发。 ## 执行流程 ### 步骤 1: 需求分析 理解用户的需求拆分为前端任务和后端任务。 ### 步骤 2: 并行开发同时派出Frontend Agent负责 Vue 组件、API 调用、路由配置Backend Agent负责 Controller、Service、Mapper、SQL### 步骤 3: 接口对齐 确保前后端使用的字段名、数据类型、URL 路径完全一致。 ### 步骤 4: 联调验证启动前后端服务验证功能是否正常。## 示例 用户输入帮我做一个设备列表页面包含搜索、表格、分页、详情弹窗Skill 自动拆解Backend Agent 任务GET /api/devices — 分页查询设备列表GET /api/devices/:id — 查询设备详情返回字段id, name, model, status, createTimeFrontend Agent 任务src/views/Device/List.vue — 设备列表页面src/api/device.ts — API 调用函数src/types/device.ts — 类型定义两个 Agent 并行开发完成后自动联调。3.2 Skill 定义 AgentSkill 中可以定义专用的 Agent 角色## 专用 Agent 定义 ### Security Agent 职责专门审查安全相关问题 触发当 Skill 检测到安全风险时派出 Security Agent 深入审查 ### Performance Agent 职责专门分析性能问题 触发当 Skill 检测到慢查询或大量 DOM 操作时派出 Performance Agent ### UX Agent 职责专门评估用户体验 触发当 Skill 检测到页面交互逻辑时派出 UX Agent 评估可用性四、与 Workflow 的深度配合4.1 Skill 作为 Workflow 的步骤Workflow 脚本中可以调用 Skill 定义的逻辑// Workflow: 完整发布流程exportconstmeta{name:full-release,description:完整发布流程审查 → 测试 → 构建 → 部署,phases:[{title:代码审查,agentType:code-reviewer},{title:测试,agentType:tester},{title:构建,agentType:builder},{title:部署,agentType:devops},],};// 每个 phase 实际上对应一个 Skill// Workflow 只是编排器Skill 是执行者4.2 Workflow 触发 Skill## Workflow 与 Skill 的关系Workflow 导演决定做什么、按什么顺序做Skill 演员负责具体执行一个 Workflow 可以触发多个 Skill发布 Workflow├── Step 1: 触发 code-review Skill├── Step 2: 触发 test-coverage Skill├── Step 3: 触发 devops-deploy Skill└── Step 4: 触发 changelog-gen Skill反过来一个 Skill 也可以触发一个 Workflowdevops-deploy Skill├── 如果检测到是生产环境│ └── 触发 production-release Workflow更严格的流程└── 如果检测到是测试环境└── 直接执行 deploy 流程4.3 条件化 Workflow## 条件化执行 根据 Skill 的执行结果决定是否继续 WorkflowIF code-review Skill 返回评分 60→ 中止 Workflow不执行后续步骤IF test-coverage Skill 返回覆盖率 70%→ 警告但不中止继续执行IF devops-deploy Skill 检测到数据库有未执行的 migration→ 先触发 db-migration Skill再执行部署五、Skill 性能优化5.1 减少不必要的文件读取## 优化原则 - 只在需要时读取文件不要一次性读取整个项目 - 使用 Grep 精确定位目标文件再 Read - 大文件1000 行只读取相关片段 示例 ❌ 差的做法 Read 整个项目的所有 .java 文件 ✅ 好的做法 Grep Controller 找到 Controller 文件 再 Read 这些特定文件5.2 缓存机制## 缓存策略 对于不常变化的信息如项目结构、依赖关系 可以缓存到 .claude/tmp/skill-cache.json json { lastScanned: 2026-07-10T10:00:00Z, projectStructure: { controllers: [UserCtrl.java, DeviceCtrl.java], services: [UserService.java, DeviceService.java] } }下次执行时先检查缓存是否过期1 小时则重新扫描。### 5.3 增量检查 markdown ## 增量检查 只检查本次变更涉及的代码而不是全量扫描 bash # 只检查 git diff 中的文件 git diff --name-only origin/main...HEAD | xargs eslint这样可以大幅减少检查时间和 Token 消耗。## 六、Skill 调试与诊断 ### 6.1 调试模式 markdown ## 调试开关 在 Skill 中加入调试模式 yaml debug: false # 设为 true 时输出详细的执行日志调试模式下每个步骤的输出都会记录到.claude/tmp/skill-debug.log[10:30:01] 加载 Skill: code-review-pro [10:30:02] 读取文件: src/main/java/.../UserService.java [10:30:03] 发现 L45: 潜在 NPE — 用户可能为 null [10:30:04] 发现 L78: 方法过长 — 86 行建议拆分 [10:30:05] 评分计算: 正确性(38/40) 安全(22/25) 性能(16/20) 维护(8/15) 84/100 [10:30:05] 输出报告完成### 6.2 常见问题排查 | 症状 | 可能原因 | 解决方案 | |------|---------|---------| | Skill 不触发 | description 缺少关键词 | 补充 trigger 关键词 | | 触发但执行错误 | 提示词有歧义 | 细化步骤描述 | | 执行超时 | 文件读取过多 | 改用 Grep 精准定位 | | 输出不完整 | Token 超限 | 精简输出格式 | | 误报率高 | 规则太宽松 | 收紧判断条件 | ## 七、Skill 进阶组合拳 ### 7.1 完整的一天开发流程早上开工/init → init Skill确认项目状态/code-review-pro → 审查昨天的代码开发新功能/fullstack-feature → 全栈开发 Skill前后端并行/db-change-check → 数据库变更检查下班前/changelog-gen → 生成今日 Changelog/quality-gate → 综合质量检查/deploy-to-staging → 部署到测试环境周五/api-doc-gen → 更新本周变更的 API 文档/doc-sync → 检查文档同步状态### 7.2 团队协作的一天开发者 A/code-review-pro → 审查自己的代码/deploy-to-staging → 部署到测试环境开发者 B/comprehensive-review → 综合审查 A 的改动/test-coverage → 检查覆盖率是否达标Tech Lead/changelog-gen → 生成发布说明/api-doc-gen → 更新 API 文档/release-orchestrator → 编排发布流程### 7.3 持续集成的 Skill 链每次 push → 自动触发code-review-pro → lint-checker → test-coverage → security-audit全部通过 → 自动触发devops-deploy (staging) → smoke-test → changelog-genstaging 验证通过 → 手动确认后触发devops-deploy (production) → health-check → notify-team## 八、系列总结 ### 8.1 Skill 系统的核心价值 回顾整个系列Skill 系统的核心价值可以浓缩为一句话 **把重复的经验变成可执行的规则让 Claude 成为你团队的数字专家。** 具体来说 | 价值 | 说明 | |------|------| | **标准化** | 所有人用同一套审查标准、部署流程 | | **提效** | 一键完成多步操作减少手动失误 | | **传承** | 老员工的经验固化到 Skill 中新人直接继承 | | **可扩展** | 随时添加新 Skill能力持续增长 | | **可共享** | 团队内复用个人到开源社区复用 | ### 8.2 学习路径建议 | 阶段 | 内容 | 预计时间 | |------|------|---------| | **入门** | 第 1 篇认识 Skill 系统 | 30 分钟 | | **上手** | 第 2 篇编写第一个自定义 Skill | 1-2 小时 | | **进阶** | 第 3-6 篇编排 实战 Skill | 半天 | | **精通** | 第 7-8 篇共享 进阶技巧 | 持续迭代 | ### 8.3 下一步学习方向 Skill 系统只是 Claude Code 能力扩展的一部分。如果你想继续深入学习 - **Agent 系统**自定义 Agent 角色与 Skill 配合使用 - **Workflow 脚本**用 JavaScript 编写更复杂的工作流 - **Memory 记忆系统**让 Claude 跨会话记住你的偏好 - **Hook 自动化**在特定事件发生时自动触发操作 - **Skill 编排的高级技巧**嵌套编排、动态调度、条件分支 ## 九、写在最后 这个 8 篇的 Skill 系列从什么是 Skill开始到如何编写、编排、共享、进阶结束。 如果你已经跟着学完了全部内容你现在应该能够 - ✅ 理解 Skill 系统的工作原理 - ✅ 编写贴合项目需求的自定义 Skill - ✅ 将多个 Skill 编排成自动化流程 - ✅ 覆盖部署、质量、文档等核心场景 - ✅ 建立团队 Skill 库实现知识传承 - ✅ 使用进阶技巧让 Skill 更智能 **最后记住一句话** Skill 的价值不在于写了多少而在于用了多少次。一个每天用 10 次的简单 Skill比一个月用一次的复杂 Skill 更有价值。 从你最痛的那个重复性任务开始写你的第一个 Skill 吧。 --- *系列目录* 1. ~~初识 Skill 系统——什么是 Skill为什么需要 Skill~~ 2. ~~自定义 Skill 开发——从 0 到 1 编写自己的 Skill~~ 3. ~~Skill 编排与组合——多个 Skill 串联工作打造自动化流程~~ 4. ~~实战 SkillDevOps 部署——编写 Docker/Nginx/CI-CD 相关的部署 Skill~~ 5. ~~实战 Skill代码质量——编写 Code Review / Lint / 测试覆盖率 Skill~~ 6. ~~实战 Skill文档生成——编写 API 文档 / 技术手册 / Changelog 生成 Skill~~ 7. ~~Skill 分享与复用——团队共享 Skill 库、开源 Skill 生态、版本管理~~ 8. ~~Skill 进阶技巧——条件触发、多语言支持、与 Agent/Workflow 的配合~~ ← 本篇系列终篇