Skills-Konfiguration

Alle Skills-bezogenen Einstellungen befinden sich unter skills in ~/.openclaw/openclaw.json.

{
  skills: {
    allowBundled: ["gemini", "peekaboo"],
    load: {
      extraDirs: ["~/Projects/agent-scripts/skills", "~/Projects/oss/some-skill-pack/skills"],
      watch: true,
      watchDebounceMs: 250,
    },
    install: {
      preferBrew: true,
      nodeManager: "npm", // npm | pnpm | yarn | bun (Gateway-Runtime bleibt Node; bun nicht empfohlen)
    },
    entries: {
      "nano-banana-pro": {
        enabled: true,
        apiKey: { source: "env", provider: "default", id: "GEMINI_API_KEY" }, // oder Plaintext-String
        env: {
          GEMINI_API_KEY: "GEMINI_KEY_HERE",
        },
      },
      peekaboo: { enabled: true },
      sag: { enabled: false },
    },
  },
}

Felder

  • allowBundled: optionale Allowlist nur für gebündelte Skills. Wenn gesetzt, sind nur gebündelte Skills in der Liste berechtigt (verwaltete/Workspace-Skills unberührt).
  • load.extraDirs: zusätzliche Skill-Verzeichnisse zum Scannen (niedrigste Priorität).
  • load.watch: Skill-Ordner überwachen und den Skills-Snapshot aktualisieren (Standard: true).
  • load.watchDebounceMs: Debounce für Skill-Watcher-Events in Millisekunden (Standard: 250).
  • install.preferBrew: Brew-Installer bevorzugen, wenn verfügbar (Standard: true).
  • install.nodeManager: Node-Installer-Präferenz (npm | pnpm | yarn | bun, Standard: npm). Das betrifft nur Skill-Installationen; die Gateway-Runtime sollte weiterhin Node sein (Bun nicht empfohlen für WhatsApp/Telegram).
  • entries.<skillKey>: pro-Skill-Overrides.

Pro-Skill-Felder:

  • enabled: auf false setzen, um einen Skill zu deaktivieren, auch wenn er gebündelt/installiert ist.
  • env: Umgebungsvariablen, die für den Agent-Run injiziert werden (nur wenn nicht bereits gesetzt).
  • apiKey: optionale Bequemlichkeit für Skills, die eine primäre Env-Variable deklarieren. Unterstützt Plaintext-String oder SecretRef-Objekt ({ source, provider, id }).

Hinweise

  • Keys unter entries entsprechen standardmäßig dem Skill-Namen. Wenn ein Skill metadata.openclaw.skillKey definiert, verwende diesen Key stattdessen.
  • Änderungen an Skills werden beim nächsten Agent-Turn aufgegriffen, wenn der Watcher aktiviert ist.

Gesandboxte Skills + Env-Variablen

Wenn eine Session gesandboxt ist, laufen Skill-Prozesse in Docker. Die Sandbox erbt nicht die Host-process.env.

Verwende eines von:

  • agents.defaults.sandbox.docker.env (oder pro Agent agents.list[].sandbox.docker.env)
  • Die Env-Variablen in dein eigenes Sandbox-Image einbacken

Globale env- und skills.entries.<skill>.env/apiKey-Einstellungen gelten nur für Host-Runs.