Skills 配置

详细配置和管理 ClawdBot 技能

概述

Skills 是 ClawdBot 的扩展能力模块。每个 Skill 可能需要特定的配置, 比如 API 密钥、权限设置或自定义参数。本页将详细介绍如何配置和管理这些技能。

灵活配置

YAML 配置文件,简单直观

安全存储

API 密钥加密存储

权限控制

精细的权限管理

配置文件

Skills 配置位于 ClawdBot 主配置文件中:

配置文件位置

~/.clawdbot/config.yaml

基本结构

# ~/.clawdbot/config.yaml

skills:
  # 技能列表
  - name: gmail
    enabled: true
    config:
      # Gmail 特定配置
      auto_reply: false
      max_emails: 10

  - name: github
    enabled: true
    config:
      default_repo: "username/repo"
      auto_create_issues: true

  - name: browser
    enabled: true
    config:
      headless: true
      timeout: 30000

查看当前配置

# 查看所有技能配置
clawdbot skills config

# 查看特定技能配置
clawdbot skills config gmail

权限管理

Skills 可能需要不同级别的系统权限:

权限级别

级别说明示例技能
read只读访问Weather, Wikipedia
write读写访问Gmail, Notion
execute执行系统命令Shell, Docker
network网络访问Browser, API calls

配置权限

skills:
  - name: shell
    enabled: true
    permissions:
      execute: true
      allowed_commands:
        - "ls"
        - "cat"
        - "grep"
      denied_commands:
        - "rm"
        - "sudo"

  - name: browser
    permissions:
      network: true
      allowed_domains:
        - "*.google.com"
        - "github.com"

审批模式

skills:
  - name: gmail
    permissions:
      require_approval: true  # 每次操作都需要确认

  - name: github
    permissions:
      require_approval: false  # 自动执行

API 密钥配置

许多 Skills 需要第三方 API 密钥:

方法 1: 配置向导(推荐)

# 交互式配置
clawdbot skills configure gmail
clawdbot skills configure github

方法 2: 环境变量

# ~/.bashrc 或 ~/.zshrc
export GITHUB_TOKEN="ghp_xxx..."
export GOOGLE_API_KEY="xxx..."
export NOTION_TOKEN="secret_xxx..."

方法 3: 配置文件

skills:
  - name: github
    config:
      token: "ghp_xxx..."  # 不推荐明文存储

  # 推荐:引用环境变量
  - name: github
    config:
      token: "${GITHUB_TOKEN}"

方法 4: 密钥管理器

# 使用 ClawdBot 内置密钥管理
clawdbot secrets set GITHUB_TOKEN "ghp_xxx..."
clawdbot secrets set GOOGLE_API_KEY "xxx..."

# 查看已存储的密钥(不显示值)
clawdbot secrets list

常见 Skills API 密钥

Skill需要的密钥获取地址
GmailOAuth 授权Google Cloud Console
GitHubPersonal Access TokenGitHub Settings
NotionIntegration TokenNotion Integrations
SpotifyOAuth ClientSpotify Developer

自定义配置

每个 Skill 有其特定的配置选项:

Gmail 配置

skills:
  - name: gmail
    config:
      # 自动回复设置
      auto_reply: false
      auto_reply_template: "收到,稍后回复"

      # 邮件获取设置
      max_emails: 20
      include_attachments: true

      # 标签过滤
      allowed_labels:
        - "INBOX"
        - "IMPORTANT"

GitHub 配置

skills:
  - name: github
    config:
      # 默认仓库
      default_repo: "username/repo"
      default_branch: "main"

      # 功能开关
      can_create_issues: true
      can_create_pr: true
      can_merge: false

      # 通知设置
      watch_repos:
        - "org/repo1"
        - "org/repo2"

Browser 配置

skills:
  - name: browser
    config:
      # 浏览器设置
      headless: true
      timeout: 30000
      viewport:
        width: 1920
        height: 1080

      # 安全设置
      block_ads: true
      allowed_domains:
        - "*.google.com"
        - "github.com"

Shell 配置

skills:
  - name: shell
    config:
      # 工作目录
      working_directory: "~/projects"

      # 超时设置
      timeout: 60000

      # 命令限制
      max_output_lines: 1000

      # 安全设置
      sandbox: true

启用/禁用技能

命令行方式

# 启用技能
clawdbot skills enable gmail
clawdbot skills enable github

# 禁用技能
clawdbot skills disable browser

# 查看所有技能状态
clawdbot skills list

配置文件方式

skills:
  - name: gmail
    enabled: true   # 启用

  - name: shell
    enabled: false  # 禁用

临时禁用

# 在对话中临时禁用
/skills disable browser

# 重新启用
/skills enable browser

高级配置

技能优先级

skills:
  - name: web-search
    priority: 1  # 优先使用

  - name: wikipedia
    priority: 2  # 备选

条件触发

skills:
  - name: weather
    triggers:
      keywords:
        - "天气"
        - "weather"
      regex: "今天.*温度"

技能链

skills:
  - name: email-summary
    chain:
      - gmail.fetch
      - summarize
      - notify

日志配置

skills:
  - name: shell
    logging:
      level: debug
      log_commands: true
      log_output: true

故障排查

技能未生效

# 检查技能状态
clawdbot skills list

# 验证配置
clawdbot skills validate

# 重新加载配置
clawdbot skills reload

API 密钥错误

  • 确认密钥格式正确
  • 检查密钥是否过期
  • 验证权限范围是否足够
# 测试特定技能
clawdbot skills test gmail
clawdbot skills test github

权限不足

# 查看技能需要的权限
clawdbot skills info shell

# 授予权限
clawdbot skills grant shell execute

配置语法错误

# 验证配置文件语法
clawdbot config validate

# 查看详细错误
clawdbot config validate --verbose

获取更多帮助

# 查看技能文档
clawdbot skills help gmail

# 运行诊断
clawdbot doctor --skills

# 导出诊断信息
clawdbot skills debug --export