Skills 基本结构
本文解析了Skill的基本结构,包含5个核心部分:元数据(定义基本信息)、触发机制(激活条件)、知识体系(领域专业知识)、工作流/逻辑(执行步骤)和工具集成(外部能力调用)。通过示例展示了Skill的具体组成,并阐述了其生命周期(定义、注册、激活、执行、反馈)和设计原则(单一职责、明确触发等)。Skill结构实现了从感知用户需求到执行任务的闭环,为使用和创建自定义Skill提供了系统化框架。
·
以下是关于 Skills 基本结构的学习笔记,解析一个完整的 Skill 是如何构建和组织的:
Skills 基本结构学习笔记
一、Skill 的核心组成要素
一个标准的 Skill 通常包含以下 5 个核心部分:
Skill 结构
├── 1. 元数据 (Metadata)
├── 2. 触发机制 (Triggers)
├── 3. 知识体系 (Knowledge Base)
├── 4. 工作流/逻辑 (Workflow/Logic)
└── 5. 工具集成 (Tool Integration)
二、详细结构解析
1. 元数据 (Metadata)
定义 Skill 的基本身份信息,用于系统识别和管理。
| 字段 | 说明 | 示例 |
|---|---|---|
| Name | Skill 的唯一标识符 | codefree-code-audit |
| Description | 简短的功能描述 | “提供结构化的代码安全审计思维框架” |
| Version | 版本号,用于更新管理 | 1.0.0 |
| Author | 创建者信息 | “CodeFree Team” |
| Tags | 分类标签,便于检索 | ["security", "audit", "ctf"] |
2. 触发机制 (Triggers)
定义 Skill 在什么情况下被激活。这是连接用户意图与 Skill 的桥梁。
- 关键词触发 (Keyword Matching):
- 检测用户输入中是否包含特定词汇。
- 例:包含 “代码审计”、“漏洞挖掘”、“CTF” 时激活。
- 意图识别 (Intent Classification):
- 基于 NLP 模型判断用户意图类别。
- 例:用户问 “如何修复这个 SQL 注入?” → 识别为
security-audit意图。
- 上下文感知 (Context Awareness):
- 根据当前对话上下文或文件类型自动激活。
- 例:检测到用户正在上传
.docx文件 → 自动激活docxSkill。
3. 知识体系 (Knowledge Base)
Skill 的“大脑”,包含该领域的专业知识、方法论和规则。
- 领域知识 (Domain Knowledge):
- 该领域的核心概念、术语、原理。
- 例:OWASP Top 10、常见漏洞原理、CTF 解题思路。
- 方法论 (Methodology):
- 结构化的解决问题的步骤和框架。
- 例:Source-Sink 分析模型、红队攻击链规划、代码审计流程。
- 最佳实践 (Best Practices):
- 行业公认的标准操作规范。
- 例:安全编码规范、文档编写标准、测试用例设计原则。
- 约束条件 (Constraints):
- 明确什么不能做,或必须遵守的规则。
- 例:禁止生成恶意代码、必须遵循 GDPR 合规要求。
4. 工作流/逻辑 (Workflow/Logic)
定义执行任务的具体步骤和逻辑判断,是 Skill 的“行动指南”。
- 输入处理 (Input Processing):
- 解析用户请求,提取关键参数。
- 例:从 “审计 D:/app/main.js 中的登录模块” 中提取文件路径和模块名。
- 执行步骤 (Execution Steps):
- 按顺序执行的操作流程。
- 例:
- 读取文件内容。
- 识别敏感函数调用。
- 分析数据流向 (Source -> Sink)。
- 生成审计报告。
- 条件分支 (Conditional Logic):
- 根据中间结果决定下一步操作。
- 例:如果检测到 SQL 注入风险 → 提供修复建议;否则 → 提示无风险。
- 输出格式化 (Output Formatting):
- 将结果整理成用户友好的格式(表格、代码块、Markdown 等)。
5. 工具集成 (Tool Integration)
Skill 调用外部能力来执行实际操作,是 Skill 的“手脚”。
- 内置工具:
- Skill 自带的功能函数。
- 例:文本分析、正则匹配、代码解析。
- 外部 API/工具:
- 调用 LSP、文件系统、网络请求等。
- 例:
lsp:查找定义、诊断错误。codebase:语义搜索代码。read/write:文件操作。mcp-builder:构建 MCP 服务器。
- 工具调用逻辑:
- 决定何时调用哪个工具,如何处理返回结果。
三、Skill 结构示例:codefree-code-audit
name: codefree-code-audit
description: 提供结构化的代码安全审计思维框架和实践指导
version: 1.0.0
triggers:
keywords: ["代码审计", "漏洞挖掘", "CTF", "红队", "Source-Sink"]
intents: ["security_analysis", "vulnerability_assessment"]
knowledge_base:
methodology:
- "Source-Sink 分析模型"
- "攻击链规划 (Kill Chain)"
- "OWASP Top 10 分类"
best_practices:
- "优先使用只读工具收集上下文"
- "禁止生成恶意利用代码"
- "提供修复建议而非仅指出问题"
workflow:
steps:
- name: "识别目标"
action: "解析用户输入,确定审计范围"
- name: "收集上下文"
action: "调用 lsp/documentSymbol 或 codebase 搜索"
- name: "分析漏洞"
action: "应用 Source-Sink 模型,识别危险函数调用"
- name: "生成报告"
action: "输出漏洞位置、原理、修复方案"
tools:
- name: "lsp"
usage: "查找定义、诊断错误"
- name: "codebase"
usage: "语义搜索相关代码"
- name: "read"
usage: "读取文件内容"
四、Skill 的生命周期
- 定义 (Definition):编写 Skill 的元数据、知识和逻辑。
- 注册 (Registration):将 Skill 注册到系统中,配置触发条件。
- 激活 (Activation):用户触发条件满足,系统加载 Skill。
- 执行 (Execution):按照工作流调用工具,处理任务。
- 反馈 (Feedback):根据用户反馈优化知识和逻辑。
五、设计 Skill 的关键原则
| 原则 | 说明 |
|---|---|
| 单一职责 | 每个 Skill 只专注一个领域,避免功能臃肿。 |
| 明确触发 | 触发条件要精准,避免误激活或漏激活。 |
| 结构化知识 | 知识要条理清晰,便于 AI 理解和调用。 |
| 可组合性 | 多个 Skill 应能协同工作,处理复杂任务。 |
| 可维护性 | 结构清晰,便于后续更新和扩展。 |
六、总结
Skills 的基本结构是一个从“感知”到“行动”的完整闭环:
- 感知:通过触发机制识别用户需求。
- 思考:利用知识体系进行推理和决策。
- 行动:通过工作流调用工具执行任务。
- 反馈:输出结果并持续优化。
理解这一结构,有助于我们更好地使用现有 Skills,也能指导我们创建自定义 Skills,将 AI 的能力扩展到更多专业领域。
更多推荐




所有评论(0)