📦 第三章:Skills 技能系统

深入理解 Skills 概念,创建和使用可复用的技能模块

📖 3.1 什么是 Skills?

Skills(技能)是 OpenCode 中的预定义工具集,可以被加载和执行。 Skills 本质上是包含指令和代码的 YAML 文件,定义了特定任务的执行方式。

💡 核心概念: Skills = 预定义的工具集 = 可复用的自动化模块

🔧 3.2 使用 Skills

在对话中使用 skill 工具加载技能:

// 加载并执行 skill @skill playwright 请帮我创建一个登录测试脚本 @skill web-crawler 抓取这个小说的所有章节 @skill notebooklm 创建关于 AI 的学习笔记

🛠️ 3.3 创建自定义 Skill

在项目目录或 ~/.config/opencode/skills/ 下创建 skill.yaml 文件:

// my-custom-skill/skill.yaml name: my-custom-skill description: A custom skill for data processing version: 1.0.0 author: Your Name instructions: | 你是一个数据处理专家。 你的任务是帮助用户处理和分析数据。 请使用清晰的语言解释你的处理步骤。 parameters: - type: input_data description: 要处理的数据 required: true - type: output_format description: 输出格式 default: json examples: | 用户: 请帮我处理这个 CSV 文件 助手: 好的,我来帮你处理数据... allowed_tools: - read - write - grep

📂 3.4 Skills 目录结构

标准的 Skill 目录结构:

// Skill 目录结构 my-skill/ ├── skill.yaml # Skill 配置文件(必需) ├── README.md # 使用说明 ├── src/ # 源代码目录│ ├── main.py │ └── utils.py ├── static/ # 静态资源 ├── templates/ # 模板文件 └── requirements.txt # 依赖配置

📊 3.5 实际案例

你的 codebase 中的 Skills:

🎬 playwright

浏览器自动化测试和网页交互。

🕷️ web-crawler

网页内容抓取和数据采集。

📓 notebooklm

NotebookLM 自动化集成。

🎨 baoyu-xhs-images

小红书图片生成技能。

✅ 本章小结

  • 理解 Skills 的概念和用途
  • 学会在对话中使用 Skills
  • 掌握创建自定义 Skill 的方法
  • 了解 Skills 目录结构
← 返回首页 下一章:SDK 编程接口 →