上一章 目录 下一章

第38章:Skills技能体系

学习目标

  • 理解Skills的核心定位:MCP之上的能力封装
  • 掌握Skill的组成部分:Tools、Prompts、知识库
  • 了解Skill的发现、加载、执行机制
  • 学会从测试视角评估Skill质量

前置要求

  • 已完成第36-37章MCP的学习
  • 理解AI Agent的基本概念
  • 了解Prompt Engineering基础

一句话定义

Skill(技能)

Skill是封装好的AI能力包,包含Tools(工具)、Prompts(提示词模板)、知识库(Knowledge),让AI可以像"调用函数"一样执行复杂任务。

生活类比:技能证书

为什么叫Skill?

就像人考取技能证书:会计证代表你有记账能力、驾照代表你能开车。Skill就是AI的"技能证书"——封装了执行某类任务所需的全部能力。

例如:"测试报告生成"Skill包含读取测试数据的工具、生成报告的Prompt模板、报告规范的知识库。

Skill与MCP的关系

Skill技能包架构图
图38-1 Skill技能包结构:每个Skill封装Tools(工具调用)、Prompts(提示词模板)、Knowledge(知识库)三部分,通过MCP协议与外部服务交互
Skill层级关系
┌──────────────────────────────────────────────────────────────────┐
│                   Skill 与 MCP 的关系                              │
│                                                                  │
│   ┌───────────────────────┐                                     │
│   │  Skill(技能包)        │ ← 最高层:完整的任务能力封装          │
│   │                       │                                     │
│   │  包含:                 │                                     │
│   │  - Tools(工具)        │                                     │
│   │  - Prompts(提示词)    │                                     │
│   │  - Knowledge(知识库)  │                                     │
│   │  - Workflows(工作流)  │                                     │
│   └──────────┬────────────┘                                     │
│              │                                                   │
│   ┌──────────▼────────────┐                                     │
│   │  MCP Server(工具服务) │ ← 中间层:工具实现                    │
│   │                       │                                     │
│   │  提供:                 │                                     │
│   │  - 工具定义和执行       │                                     │
│   │  - 数据访问            │                                     │
│   │  - 基础Prompt模板       │                                     │
│   └──────────┬────────────┘                                     │
│              │                                                   │
│   ┌──────────▼────────────┐                                     │
│   │  MCP Protocol          │ ← 基础层:通信协议                    │
│   │  (JSON-RPC通信)       │                                     │
│   └───────────────────────┘                                     │
│                                                                  │
│   关系:                                                         │
│   Skill调用MCP Server的工具 → MCP通过协议传输 → AI得到结果        │
│                                                                  │
└──────────────────────────────────────────────────────────────────┘

Skill的核心组成

组成部分 说明 作用 示例
Tools 具体执行功能的工具集 让Skill能"做事" 查询测试结果、生成报告、发送通知
Prompts 预设的提示词模板 让Skill"知道怎么做" 报告生成模板、缺陷分析模板
Knowledge 领域知识库文档 让Skill"懂领域知识" 测试规范文档、常见问题FAQ
Workflows 预设的执行流程 让Skill"有序执行" 测试执行流程、报告审批流程

Skill的典型结构

Markdown - Skill目录结构
test-report-generator/
├── SKILL.md            # Skill定义文件(元信息)
├── tools/
│   ├── query_results.py    # 查询测试结果工具
│   ├── generate_html.py    # 生成HTML报告工具
│   └── send_email.py       # 发送邮件通知工具
├── prompts/
│   ├── report_summary.md   # 报告摘要生成Prompt
│   ├── bug_analysis.md     # 缺陷分析Prompt
│   └── executive_summary.md # 管理层摘要Prompt
├── knowledge/
│   ├── test_standards.md   # 测试规范文档
│   ├── report_templates.md # 报告模板说明
│   └── common_issues.md     # 常见问题FAQ
└── workflows/
    └── daily_report.yaml   # 每日报告生成流程

SKILL.md定义示例

Markdown - SKILL.md示例
---
name: test-report-generator
version: 1.0.0
description: 自动生成测试报告的技能包
author: 测试团队
tools:
  - query_results
  - generate_html
  - send_email
prompts:
  - report_summary
  - bug_analysis
  - executive_summary
knowledge:
  - test_standards
  - report_templates
---

# 测试报告生成器 Skill

## 功能说明
自动从测试平台拉取执行结果,生成HTML格式的测试报告,并发送给相关人员。

## 适用场景
- 每日测试汇总报告
- 版本发布测试报告
- 缺陷分析报告

## 使用示例
用户输入:"生成今天的测试报告"
Skill会:
1. 查询今日测试结果
2. 分析缺陷分布
3. 生成HTML报告
4. 发送给团队

## 输入参数
- date: 报告日期(可选,默认今天)
- project: 项目名称(可选)
- format: 报告格式(html/pdf,默认html)

Skill的发现与加载机制

AI如何找到并使用Skill?
  1. 发现:AI扫描Skills目录,解析每个SKILL.md的元信息
  2. 匹配:用户提问时,AI根据description匹配最合适的Skill
  3. 加载:加载Skill的Tools、Prompts、Knowledge到上下文
  4. 执行:AI按Skill定义的流程调用工具完成任务

企业测试Skills示例

Skill名称 功能 包含能力
test-case-generator 自动生成测试用例 需求解析工具、用例模板Prompt、测试规范Knowledge
defect-analyzer 缺陷根因分析 日志分析工具、根因分析Prompt、常见缺陷Knowledge
test-planner 制定测试计划 风险评估工具、计划模板Prompt、测试策略Knowledge
regression-checker 回归测试执行 版本比对工具、执行流程Workflow、回归范围Knowledge
performance-monitor 性能监控分析 指标采集工具、分析Prompt、性能阈值Knowledge

测试视角:Skill质量评估要点

评估维度 检查项 验证方法
定义完整性 SKILL.md元信息完整、描述清晰 检查必需字段(name、description、tools)
工具可用性 所有Tools可正常调用 逐个调用工具,验证返回格式
Prompt有效性 模板能生成符合预期的输出 使用模板生成内容,人工评审质量
知识库准确性 知识内容正确、更新及时 抽查关键知识点,验证准确性
匹配准确性 AI能正确识别何时使用该Skill 测试多种提问方式,验证Skill选择
执行成功率 Skill完整执行且结果正确 端到端测试Skill执行流程

本章小结

  • Skill是封装好的AI能力包,包含Tools、Prompts、Knowledge、Workflows四个核心部分
  • Skill位于MCP之上,是更高层的能力封装——MCP提供工具,Skill组合工具完成任务
  • Skill的典型结构:SKILL.md定义文件 + tools目录 + prompts目录 + knowledge目录
  • AI通过发现、匹配、加载、执行四个步骤使用Skill
  • 测试团队可构建测试报告生成、用例生成、缺陷分析等专属Skills
  • Skill质量需评估定义完整性、工具可用性、Prompt有效性、知识准确性、匹配准确性、执行成功率

扩展阅读

上一章 目录 下一章