Skills 技能系统
Skill 是 OpenClaw 的能力扩展模块,让 Agent 拥有专业技能。
Skill 定义格式
Skill 使用 YAML 格式定义:
# skills/translator.yaml
name: "translator"
version: "1.0.0"
description: "多语言翻译技能"
parameters:
- name: "text"
type: "string"
required: true
description: "待翻译的文本"
- name: "target_lang"
type: "string"
required: true
enum: ["en", "zh", "ja", "ko"]
description: "目标语言"
prompt_template: |
请将以下文本翻译成 {{target_lang}}:
{{text}}
要求:
- 保持原文语气和风格
- 专业术语准确翻译
- 符合目标语言习惯
model:
prefer: "gpt-4-turbo"
fallback: "claude-3-sonnet"
内置 Skills
OpenClaw 提供了一系列内置技能:
skills:
builtin:
- name: "code_review"
enabled: true
- name: "data_analysis"
enabled: true
- name: "text_summarization"
enabled: true
- name: "image_generation"
enabled: true
config:
provider: "dalle-3"
- name: "web_search"
enabled: true
config:
engine: "google"
api_key: "${GOOGLE_API_KEY}"
自定义 Skill 开发
创建自定义技能:
# skills/code_optimizer.yaml
name: "code_optimizer"
version: "1.0.0"
description: "代码性能优化建议"
input_schema:
type: "object"
properties:
code:
type: "string"
language:
type: "string"
enum: ["javascript", "python", "go"]
steps:
- name: "analyze"
action: "llm"
prompt: "分析以下 {{language}} 代码的性能瓶颈"
- name: "optimize"
action: "llm"
prompt: "提供优化建议和重构代码"
- name: "benchmark"
action: "code_execution"
script: "run_benchmark.py"
output_format:
- 性能分析报告
- 优化后的代码
- 性能提升百分比
Skill 组合
将多个技能组合成工作流:
workflows:
- name: "博客文章生成"
description: "从想法到发布的完整流程"
steps:
- skill: "outline_generator"
input:
topic: "{{user_topic}}"
- skill: "content_writer"
input:
outline: "{{step.1.output}}"
- skill: "seo_optimizer"
input:
content: "{{step.2.output}}"
- skill: "image_generator"
input:
prompt: "{{step.1.output.title}}"
- skill: "publisher"
input:
content: "{{step.3.output}}"
image: "{{step.4.output}}"
管理命令
# 安装社区 Skill
openclaw plugin install openclaw-langchain
# 启用 Skill
openclaw plugin enable openclaw-langchain
# 查看已安装 Skills
openclaw plugin list