スキル設定

スキル関連のすべての設定は~/.openclaw/openclaw.jsonskills配下にあります。

{
  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ランタイムは引き続きNode。bunは非推奨)
    },
    entries: {
      "nano-banana-pro": {
        enabled: true,
        apiKey: { source: "env", provider: "default", id: "GEMINI_API_KEY" }, // またはプレーンテキスト文字列
        env: {
          GEMINI_API_KEY: "GEMINI_KEY_HERE",
        },
      },
      peekaboo: { enabled: true },
      sag: { enabled: false },
    },
  },
}

フィールド

  • allowBundled: バンドルされたスキルのみのオプション許可リスト。設定された場合、リスト内のバンドルスキルのみが対象となります(マネージド/ワークスペースのスキルには影響なし)。
  • load.extraDirs: 追加のスキルディレクトリをスキャン(優先順位最低)。
  • load.watch: スキルフォルダを監視してスキルスナップショットを更新(デフォルト: true)。
  • load.watchDebounceMs: スキルウォッチャーイベントのデバウンス(ミリ秒、デフォルト: 250)。
  • install.preferBrew: 可能な場合にbrewインストーラーを優先(デフォルト: true)。
  • install.nodeManager: nodeインストーラーの優先設定(npm | pnpm | yarn | bun、デフォルト: npm)。 スキルのインストールにのみ影響します。Gatewayランタイムは引き続きNodeを使用してください (WhatsApp/Telegram向けにBunは非推奨)。
  • entries.<skillKey>: スキルごとのオーバーライド。

スキルごとのフィールド:

  • enabled: falseでバンドル/インストール済みのスキルを無効化。
  • env: エージェント実行時に注入される環境変数(未設定の場合のみ)。
  • apiKey: プライマリ環境変数を宣言するスキル向けの便利設定。 プレーンテキスト文字列またはSecretRefオブジェクト({ source, provider, id })に対応。

注意事項

  • entries配下のキーはデフォルトでスキル名にマッピングされます。スキルが metadata.openclaw.skillKeyを定義している場合は、そのキーを使用してください。
  • スキルへの変更はウォッチャーが有効な場合、次のエージェントターンで反映されます。

サンドボックス化されたスキル+環境変数

セッションがサンドボックス化されている場合、スキルプロセスはDocker内で実行されます。サンドボックスはホストのprocess.env継承しません

以下のいずれかを使用してください:

  • agents.defaults.sandbox.docker.env(またはエージェント単位のagents.list[].sandbox.docker.env
  • カスタムサンドボックスイメージに環境変数を組み込む

グローバルのenvおよびskills.entries.<skill>.env/apiKeyホスト実行にのみ適用されます。