Files
CyberStrikeAI/skills
2026-01-16 00:18:16 +08:00
..
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-15 22:00:10 +08:00
2026-01-16 00:18:16 +08:00

Skills 系统使用指南

概述

Skills系统允许你为角色配置专业知识和技能文档。当角色执行任务时系统会将技能名称添加到系统提示词中作为推荐提示AI智能体可以通过 read_skill 工具按需获取技能的详细内容。

Skills结构

每个skill是一个目录包含一个SKILL.md文件:

skills/
├── sql-injection-testing/
│   └── SKILL.md
├── xss-testing/
│   └── SKILL.md
└── ...

SKILL.md格式

SKILL.md文件支持YAML front matter格式可选

---
name: skill-name
description: Skill的简短描述
version: 1.0.0
---

# Skill标题

这里是skill的详细内容可以包含
- 测试方法
- 工具使用
- 最佳实践
- 示例代码
- 等等...

如果不使用front matter整个文件内容都会被作为skill内容。

在角色中配置Skills

在角色配置文件中添加skills字段:

name: 渗透测试
description: 专业渗透测试专家
user_prompt: 你是一个专业的网络安全渗透测试专家...
tools:
  - nmap
  - sqlmap
  - burpsuite
skills:
  - sql-injection-testing
  - xss-testing
enabled: true

skills字段是一个字符串数组每个字符串是skill目录的名称。

工作原理

  1. 加载阶段:系统启动时,会扫描skills_dir目录下的所有skill目录

  2. 执行阶段:当使用某个角色执行任务时:

    • 系统会将角色配置的skill名称添加到系统提示词中作为推荐提示
    • 注意skill的详细内容不会自动注入到系统提示词中
    • AI智能体需要根据任务需要主动调用 read_skill 工具获取技能的详细内容
  3. 按需调用AI可以通过以下工具访问skills

    • list_skills: 获取所有可用的skills列表
    • read_skill: 读取指定skill的详细内容

    这样AI可以在执行任务过程中根据实际需要自主调用相关skills获取专业知识。即使角色没有配置skillsAI也可以通过这些工具按需访问任何可用的skill。

示例Skills

sql-injection-testing

包含SQL注入测试的专业方法、工具使用、绕过技术等。

xss-testing

包含XSS测试的各种类型、payload、绕过技术等。

创建自定义Skill

  1. skills目录下创建新目录,例如my-skill
  2. 在该目录下创建SKILL.md文件
  3. 编写skill内容
  4. 在角色配置中添加该skill名称
mkdir -p skills/my-skill
cat > skills/my-skill/SKILL.md << 'EOF'
---
name: my-skill
description: 我的自定义技能
---

# 我的自定义技能

这里是技能内容...
EOF

注意事项

  • 重要Skill的详细内容不会自动注入到系统提示词中只有技能名称会作为提示添加
  • AI智能体需要通过 read_skill 工具主动获取技能内容这样可以节省token并提高灵活性
  • Skill内容应该清晰、结构化便于AI理解
  • 可以包含代码示例、命令示例等
  • 建议每个skill专注于一个特定领域或技能
  • 建议在skill的YAML front matter中提供清晰的 description帮助AI判断是否需要读取该skill

配置

config.yaml中配置skills目录

skills_dir: skills  # 相对于配置文件所在目录

如果未配置,默认使用skills目录。