> For the complete documentation index, see [llms.txt](https://yeasy.gitbook.io/claude_guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://yeasy.gitbook.io/claude_guide/di-san-bu-fen-jin-jie-pian/06_skills/6.5_combination.md).

# 6.5 Skills 组合与高级用法

在单一 Skill 之外，真正的魔法发生在 **组合** 之中。 就像一个足球队不能只有前锋一样，处理复杂的业务流程（Business Process）往往需要多个不同领域的 Skill 互相配合。

## 6.5.1 Skill Chaining

最简单的组合方式是串行调用。 一个 Skill 的输出，成为下一个 Skill 的输入。

**案例：从构思到发布文章**

1. **Step 1: Research Skill**
   * *Input*: “帮我研究一下最新的 AI Agent 趋势。”
   * *Action*: 联网搜索，阅读白皮书，总结要点。
   * *Output*: 一份结构化的研究简报。
2. **Step 2: Copywriting Skill**
   * *Input*: (主要基于 Step 1 的简报) “把这份简报写成一篇通俗易懂的公众号文章。”
   * *Action*: 运用 Storytelling 技巧，调整语气，起标题。
   * *Output*: 文章草稿。
3. **Step 3: Compliance Skill**
   * *Input*: 文章草稿。
   * *Action*: 检查是否违反广告法，是否有虚假宣传。
   * *Output*: 修改后的合规文章。

这种链式结构可以通过 Workflow 引擎（如 LangChain 或 Claude 自带的 Agent 模式）自动化实现。

## 6.5.2 Dynamic Routing

在更高级的系统中，Router 是智能的。它像一个项目经理，动态决定要把任务派给谁。

```mermaid
graph TD
    UserQuery["用户需求"] --> Router{"项目经理 Agent"}

    Router -->|"涉及数据库"| SQLSkill["SQL 技能"]
    Router -->|"涉及画图"| ChartSkill["图表技能"]
    Router -->|"复杂逻辑"| PythonSkill["Python 技能"]

    SQLSkill -->|"数据"| ChartSkill
    PythonSkill -->|"结果"| ChartSkill

    ChartSkill --> FinalResponse["最终图表"]
```

**实战场景：智能客服**

* 用户问：“我的包裹丢了，怎么赔付？”
  * Router 识别意图 -> 激活 `Refund Policy Skill`。
* 用户接着问：“那我现在账户里还有多少钱？”
  * Router 识别意图 -> 切换到 `Account Info Skill` (调用 MCP 查询余额)。

## 6.5.3 Skill Conflict

当两个 Skill 的指令冲突时怎么办？

* Skill A (Creative): “尽可能发挥想象力，不受拘束。”
* Skill B (Legal): “严谨，字斟句酌，不要过度承诺。”

**解决方案：流水线编排** 通过设计 Skill 的调用顺序来解决冲突：让 Creative Skill 先生成内容，再由 Legal/Security Skill 审核把关。通常 **Legal/Security Skill** 充当“守门员”的角色，放在流水线末端。 即：Create (Skill A) -> Review (Skill B) -> Output。

## 6.5.4 团队协作与共享

在企业内部，Skills 应该像代码库一样被管理。

### Skill Registry

建立一个公司内部的 `git` 仓库 `internal-skills`。

* `/marketing/social-media-expert`
* `/engineering/python-guru`
* `/hr/policy-qa`

### 版本控制

Skill 也会迭代。

* v1.0: 只能写 Java 8 代码。
* v2.0: 升级到 Java 17，增加了 Spring Boot 3 的支持。 确保 Router 能够锁定版本（Pinning），防止 Skill 升级导致原有业务逻辑崩溃。

## 6.5.5 跨平台一致性

理想的 Skill 定义应该尽量平台无关，但“格式可移植”不等于“行为完全一致”。 claude.ai / API、Claude Code 和自建 SDK 集成在网络访问、文件系统、包安装、工具权限、Code-only frontmatter 扩展和运行时依赖上都可能不同。同一个 Skill 应该在每个目标产品面单独验证。

这要求在编写 Skill 时，尽量使用标准的 Markdown 和 JSON Schema；若依赖 `context: fork`、内联 shell、本地二进制、网络访问或 Claude Code 权限扩展，必须在文档里标明适用产品面和回退策略。

***

通过前面的学习，Claude 已经从最初的对话助手，进化为能够熟练操作工具（Tools & MCP）、感知视觉环境（Computer Use），并拥有特定垂直领域专长（Skills）的智能体。

现在的 Claude，已经不是一个简单的 chatbot，而是一个 **全副武装的智能体 (Agent)**。

但所有的这些技术，最终都要回归到一个最本质的用途——**写代码**。因为代码是构建数字世界的基石，也是 AI 发挥生产力杠杆作用最大的领域。

下一章将进入深水区，探讨 Claude 在软件工程领域的终极形态。

➡️ [第七章：Agentic Coding 智能编程](/claude_guide/di-san-bu-fen-jin-jie-pian/07_coding.md)
