~/.openclaw/openclaw.json の
skills 配下にあります。エージェント固有の表示可否は
agents.defaults.skills と agents.list[].skills 配下にあります。
組み込みの画像生成では、
skills.entries ではなく
agents.defaults.imageGenerationModel とコアの image_generate ツールを使用します。Skill
エントリは、カスタムまたはサードパーティの Skill ワークフロー専用です。読み込み (skills.load)
追加でスキャンする Skills ディレクトリです。優先順位は最も低くなります(バンドルおよび
Plugin Skills より下)。パスは
~ サポート付きで展開されます。シンボリックリンクされた Skill フォルダの解決先として許可する、信頼済みの実ターゲットディレクトリです。
シンボリックリンクが設定済みルートの外にある場合でも適用されます。これは
<workspace>/skills/manager -> ~/Projects/manager/skills のような、
意図的な sibling repo レイアウトに使用します。このリストは狭く保ってください。
~ や ~/Projects のような広いルートを指さないでください。Skill フォルダを監視し、
SKILL.md ファイルが変更されたときに Skills スナップショットを更新します。
グループ化された Skill ルート配下のネストされたファイルも対象です。Skill ウォッチャーイベントのデバウンス時間(ミリ秒)です。
インストール (skills.install)
brew が利用可能な場合は Homebrew インストーラーを優先します。Skill インストールで使用する Node パッケージマネージャーの優先設定です。これは Skill
インストールにのみ影響します。Gateway ランタイムでは引き続き Node を使用する必要があります(Bun は
WhatsApp/Telegram には推奨されません)。
openclaw setup --node-manager と
openclaw onboard --node-manager は npm、pnpm、または bun を受け付けます。
Yarn ベースの Skill インストールには、設定で直接 "yarn" を指定します。信頼済みの
operator.admin Gateway クライアントが、skills.upload.* 経由でステージされた
プライベート zip アーカイブをインストールできるようにします。通常の ClawHub インストールでは、この設定は不要です。オペレーターインストールポリシー (security.installPolicy)
オペレーターがホスト固有のポリシーで Skill と Plugin のインストールを承認またはブロックするために、
信頼済みのローカルコマンドを必要とする場合は security.installPolicy を使用します。
このポリシーは、OpenClaw がソース素材をステージした後、インストールまたは更新が続行される前に実行されます。
ClawHub Skills、アップロードされた Skills、Git/ローカル Skills、Skill 依存関係インストーラー、
および Plugin のインストール/更新ソースに適用されます。
オペレーター所有のインストールポリシーを有効にします。有効化されていて有効な
exec
コマンドがない場合、インストールはフェイルクローズします。任意のターゲットフィルターです。省略した場合、新しいインストールが予期せずフェイルオープンしないよう、
サポートされるすべてのターゲットにポリシーが適用されます。
信頼済みポリシー実行ファイルへの絶対パスです。OpenClaw はシェルを使わずに実行し、
使用前にパスを検証します。
command の後に渡される静的な引数です。1 回のポリシー判定に許可される最大実時間です。
ポリシーがフェイルクローズするまでに stdout または stderr 出力がない状態で許可される最大時間です。
ポリシープロセスから受け付ける stdout と stderr の合計最大バイト数です。
ポリシープロセスに提供されるリテラル環境変数です。
OpenClaw プロセスからポリシープロセスへコピーされる環境変数名です。
名前が指定された変数のみが渡されます。
ポリシー実行ファイルを含めることができるディレクトリの任意の許可リスト。
コマンドパスの所有権と権限チェックをバイパスします。このパスが別の仕組みで
保護されている場合にのみ使用してください。
設定されたコマンドパスをシンボリックリンクにすることを許可します。解決されたターゲットも
他のパスチェックを満たす必要があります。インタープリタースクリプト引数は
シンボリックリンクではなく、直接の通常ファイルである必要があります。
protocolVersion: 1、
openclawVersion、targetType、targetName、sourcePath、sourcePathKind、
任意の構造化 source、構造化 origin、request を含む1つの JSON オブジェクトを受け取ります。stdout には
1つの JSON オブジェクトを書き込む必要があります: { "protocolVersion": 1, "decision": "allow" }
または { "protocolVersion": 1, "decision": "block", "reason": "..." }。非ゼロ
終了、タイムアウト、不正な形式の JSON、フィールド不足、または未対応のプロトコル
バージョンはフェイルクローズします。
OpenClaw は通常の Gateway 起動中にインストールポリシーを実行しません。
ポリシーが有効だが利用できない場合、インストールと更新はフェイルクローズします。
openclaw doctor は静的検証を実行します。openclaw doctor --deep は
設定されたコマンドに対して合成インストールプローブを実行します。
一括更新ではターゲットごとにポリシーを適用します: ブロックされた skill または plugin の更新は、
ポリシーを無効化したりバッチ内の後続ターゲットをスキップしたりすることなく、
そのターゲットだけ失敗します。
stdin の例:
バンドル済み skill の許可リスト
バンドル済み skills のみを対象にする任意の許可リスト。設定すると、
リスト内のバンドル済み skills だけが利用対象になります。管理対象、エージェントレベル、ワークスペースの
skills には影響しません。
skill ごとのエントリ (skills.entries)
entries 配下のキーは、デフォルトでは skill の name と一致します。skill が
metadata.openclaw.skillKey を定義している場合は、代わりにそのキーを使用します。ハイフンを含む名前は
引用符で囲んでください(JSON5 では引用符付きキーが許可されます)。
false は、バンドル済みまたはインストール済みであっても skill を無効にします。
coding-agent バンドル済み skill はオプトインです — true に設定し、
claude、codex、opencode、または別の対応 CLI のいずれかがインストール済みで
認証済みであることを確認してください。metadata.openclaw.primaryEnv を宣言する skills 用の便利なフィールド。
平文文字列または SecretRef をサポートします: { source: "env", provider: "default", id: "VAR_NAME" }。エージェント実行に注入される環境変数。変数がプロセス内でまだ設定されていない場合にのみ
注入されます。
skill ごとのカスタム設定フィールド用の任意の入れ物。
エージェント許可リスト (agents)
同じマシン/ワークスペースの skill ルートを使いながら、エージェントごとに
異なる表示 skill セットを使いたい場合は、エージェント設定を使用します。
agents.list[].skills を省略したエージェントが継承する共有ベースライン許可リスト。
デフォルトで skills を制限しない場合は、完全に省略してください。そのエージェントに対する明示的な最終 skill セット。明示的なリストは
継承されたデフォルトを置き換えます — マージしません。そのエージェントに
skills を公開しない場合は
[] に設定します。ワークショップ (skills.workshop)
true の場合、エージェントは成功したターンの後、永続的な会話の
シグナルから保留中の提案を作成できます。ユーザーがプロンプトで指示したスキル作成は、
この設定に関係なく常に Skill Workshop を経由します。pending は、エージェントが開始した適用、拒否、または隔離の前に
オペレーターの承認を要求します。auto は、それらの操作を承認なしで許可します。Skill Workshop の適用で、実体のターゲットがすでに
skills.load.allowSymlinkTargets によって信頼されているワークスペースのスキルシンボリックリンクを
経由して書き込めるようにします。生成された提案の適用でその共有スキルルートを変更する必要がない限り、
これは無効のままにしてください。ワークスペースごとに保持される保留中および隔離済みの提案の最大数
(許可範囲: 1-200)。
提案本文の最大サイズ(バイト単位、許可範囲: 1024-200000)。提案の説明は
発見と一覧出力に表示されるため、別途 160 バイトの上限が厳格に適用されます。
シンボリックリンクされたスキルルート
デフォルトでは、ワークスペース、プロジェクトエージェント、追加ディレクトリ、同梱スキルのルートは 包含境界です。<workspace>/skills 配下のシンボリックリンクされたスキルフォルダーが
ルート外に解決される場合、ログメッセージとともにスキップされます。
意図的なシンボリックリンクレイアウトを許可するには、信頼済みターゲットを宣言します。
<workspace>/skills/manager -> ~/Projects/manager/skills は
realpath 解決後に受け入れられます。extraDirs は隣接するリポジトリを
直接スキャンします。allowSymlinkTargets は既存のレイアウト向けに
シンボリックリンクされたパスを保持します。
Skill Workshop の適用は、デフォルトではこれらのシンボリックリンク経由で書き込みません。
Workshop の適用で、すでに信頼済みのシンボリックリンクターゲット配下のスキルを変更できるようにするには、
別途オプトインします。
~/.openclaw/skills と個人用の ~/.agents/skills ディレクトリは、
スキルディレクトリのシンボリックリンクをすでに無条件で受け入れます
(スキルごとの SKILL.md 包含は引き続き適用されます)。allowSymlinkTargets が必要なのは、
ワークスペース、追加ディレクトリ、プロジェクトエージェント
(<workspace>/.agents/skills)のルートのみです。
サンドボックス化されたスキルと環境変数
Docker サンドボックスにシークレットを渡すには、次を使用します。Docker デーモンへのアクセス権を持つユーザーは、Docker メタデータを通じて
sandbox.docker.env の値を検査できます。その公開が許容できない場合は、
マウントされたシークレットファイル、カスタムイメージ、または別の配信経路を使用してください。読み込み順序のリマインダー
関連
Skills reference
Skills とは何か、読み込み順序、ゲーティング、SKILL.md 形式。
Creating skills
カスタムワークスペーススキルの作成。
Skill Workshop
エージェントが下書きしたスキルの提案キュー。
Slash commands
ネイティブのスラッシュコマンドカタログとチャットディレクティブ。