OpenClaw は、エージェントにツールの使い方を教えるために AgentSkills 互換のスキルフォルダーを使用します。各スキルは、YAML フロントマターと手順を含むDocumentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
SKILL.md を格納したディレクトリです。OpenClaw は同梱スキルと任意のローカル上書きを読み込み、環境、設定、バイナリの存在に基づいて読み込み時にフィルタリングします。
場所と優先順位
OpenClaw は次のソースからスキルを読み込みます。優先順位が高い順です。| # | ソース | パス |
|---|---|---|
| 1 | ワークスペーススキル | <workspace>/skills |
| 2 | プロジェクトエージェントスキル | <workspace>/.agents/skills |
| 3 | 個人エージェントスキル | ~/.agents/skills |
| 4 | 管理対象/ローカルスキル | ~/.openclaw/skills |
| 5 | 同梱スキル | インストールに同梱 |
| 6 | 追加スキルフォルダー | skills.load.extraDirs (設定) |
$CODEX_HOME/skills ディレクトリは、これらの OpenClaw スキルルートには含まれません。Codex ハーネスモードでは、ローカルのアプリサーバー起動はエージェントごとに分離された Codex ホームを使用するため、個人用の Codex CLI スキルは暗黙的には読み込まれません。openclaw migrate codex --dry-run を使用してそれらを棚卸しし、openclaw migrate codex を使用して、現在の OpenClaw エージェントワークスペースへコピーする前に、対話型のチェックボックスプロンプトでスキルディレクトリを選択します。非対話型の実行では、コピーする正確なスキルごとに --skill <name> を繰り返します。
エージェントごとのスキルと共有スキル
マルチエージェント構成では、各エージェントが独自のワークスペースを持ちます。| スコープ | パス | 表示対象 |
|---|---|---|
| エージェントごと | <workspace>/skills | そのエージェントのみ |
| プロジェクトエージェント | <workspace>/.agents/skills | そのワークスペースのエージェントのみ |
| 個人エージェント | ~/.agents/skills | そのマシン上のすべてのエージェント |
| 共有管理対象/ローカル | ~/.openclaw/skills | そのマシン上のすべてのエージェント |
| 共有追加ディレクトリ | skills.load.extraDirs (最低優先順位) | そのマシン上のすべてのエージェント |
エージェントスキルの許可リスト
スキルの場所とスキルの可視性は別々の制御です。場所/優先順位は、同名スキルのどのコピーが優先されるかを決定します。エージェントの許可リストは、エージェントが実際に使用できるスキルを決定します。許可リストのルール
許可リストのルール
- デフォルトでスキルを制限しない場合は、
agents.defaults.skillsを省略します。 agents.defaults.skillsを継承するには、agents.list[].skillsを省略します。- スキルなしにするには、
agents.list[].skills: []を設定します。 - 空でない
agents.list[].skillsリストは、そのエージェントの最終的なセットです。デフォルトとはマージされません。 - 有効な許可リストは、プロンプト構築、スキルのスラッシュコマンド検出、サンドボックス同期、スキルスナップショット全体に適用されます。
Plugin とスキル
Plugin は、openclaw.plugin.json に skills ディレクトリを列挙することで、独自のスキルを同梱できます (パスは Plugin ルートからの相対パス)。Plugin スキルは、Plugin が有効なときに読み込まれます。これは、ツール説明には長すぎるが、Plugin がインストールされているときには利用可能にすべき、ツール固有の運用ガイドに適した場所です。たとえば、ブラウザー Plugin は、複数ステップのブラウザー制御のために browser-automation スキルを同梱しています。
Plugin スキルディレクトリは skills.load.extraDirs と同じ低優先順位のパスにマージされるため、同名の同梱、管理対象、エージェント、またはワークスペーススキルがそれらを上書きします。Plugin の設定エントリで metadata.openclaw.requires.config を使って、それらをゲートできます。
検出/設定については Plugins を、これらのスキルが教えるツールサーフェスについては ツール を参照してください。
スキルワークショップ
任意の実験的な スキルワークショップ Plugin は、エージェント作業中に観察された再利用可能な手順から、ワークスペーススキルを作成または更新できます。これはデフォルトで無効になっており、plugins.entries.skill-workshop で明示的に有効化する必要があります。
スキルワークショップは <workspace>/skills にのみ書き込み、生成されたコンテンツをスキャンし、保留中の承認または自動的な安全書き込みをサポートし、安全でない提案を隔離し、書き込み成功後にスキルスナップショットを更新して、Gateway の再起動なしで新しいスキルを利用できるようにします。
“次回は GIF の帰属を確認する” のような修正や、メディア QA チェックリストのような苦労して得たワークフローに使用します。保留中の承認から始めてください。自動書き込みは、提案をレビューした後、信頼できるワークスペースでのみ使用してください。完全なガイド: スキルワークショップ Plugin。
ClawHub (インストールと同期)
ClawHub は OpenClaw の公開スキルレジストリです。検出/インストール/更新にはネイティブのopenclaw skills コマンドを使用し、公開/同期ワークフローには別個の clawhub CLI を使用します。完全なガイド: ClawHub。
| アクション | コマンド |
|---|---|
| スキルをワークスペースにインストール | openclaw skills install <skill-slug> |
| インストール済みのすべてのスキルを更新 | openclaw skills update --all |
| 同期 (スキャン + 更新の公開) | clawhub sync --all |
openclaw skills install は、アクティブなワークスペースの skills/ ディレクトリにインストールします。別個の clawhub CLI も、現在の作業ディレクトリ配下の ./skills にインストールします (または、設定された OpenClaw ワークスペースにフォールバックします)。OpenClaw は次のセッションでそれを <workspace>/skills として認識します。
設定済みのスキルルートは、skills/<group>/<skill>/SKILL.md のような 1 段階のグルーピングにも対応しているため、関連するサードパーティ製スキルを、広範な再帰スキャンなしで共有フォルダー配下に保持できます。
プライベートな非 ClawHub 配信が必要な Gateway クライアントは、skills.upload.begin、skills.upload.chunk、skills.upload.commit を使って zip スキルアーカイブをステージングし、その後 skills.install({ source: "upload", uploadId, slug, force?, sha256? }) でコミット済みアップロードをインストールできます。これは信頼済みクライアント向けの明示的な管理者アップロードパスであり、通常の openclaw skills install <slug> や ClawHub インストールフローではありません。デフォルトではオフで、openclaw.json で skills.install.allowUploadedArchives: true が設定されている場合にのみ機能します。アップロードモードでも、デフォルトのエージェントワークスペースの skills/<slug> ディレクトリにインストールされます。アーカイブ内部のフォルダー名は、最終的なインストール先では無視されます。
ClawHub のスキルページは、インストール前に最新のセキュリティスキャン状態を表示し、VirusTotal、ClawScan、静的解析のスキャナー詳細ページも提供します。openclaw skills install <slug> は引き続きインストールパスのみです。公開者は ClawHub ダッシュボードまたは clawhub skill rescan <slug> を通じて誤検知を回復します。
セキュリティ
- ワークスペースおよび追加ディレクトリのスキル検出は、解決された realpath が設定済みルート内に留まるスキルルートと
SKILL.mdファイルのみを受け入れます。 - Gateway のプライベートアーカイブインストールはデフォルトでオフです。明示的に有効化した場合、
SKILL.mdを含むコミット済み zip アップロードが必要で、ClawHub スキルインストールと同じアーカイブ展開、パストラバーサル、シンボリックリンク、強制、ロールバック保護を再利用します。これらはskills.install.allowUploadedArchivesによってゲートされます。通常の ClawHub インストールでは、この設定は不要です。 - Gateway ベースのスキル依存関係インストール (
skills.install、オンボーディング、Skills 設定 UI) は、インストーラーメタデータを実行する前に組み込みの危険コードスキャナーを実行します。criticalの検出は、呼び出し元が危険な上書きを明示的に設定しない限り、デフォルトでブロックされます。不審な検出は引き続き警告のみです。 openclaw skills install <slug>は異なります。これは ClawHub スキルフォルダーをワークスペースにダウンロードし、上記のインストーラーメタデータパスは使用しません。skills.entries.*.envとskills.entries.*.apiKeyは、そのエージェントターンのホストプロセスにシークレットを注入します (サンドボックスではありません)。プロンプトとログにシークレットを含めないでください。
SKILL.md 形式
SKILL.md には少なくとも次を含める必要があります。
metadata は単一行の JSON オブジェクトにしてください。手順内でスキルフォルダーパスを参照するには {baseDir} を使用します。
任意のフロントマターキー
macOS Skills UI で “Website” として表示される URL。
metadata.openclaw.homepage 経由でもサポートされます。true の場合、スキルはユーザーのスラッシュコマンドとして公開されます。true の場合、OpenClaw はスキルの手順をエージェントの通常のプロンプトに含めません。スキルは引き続きインストールされ、user-invocable も true の場合は、スラッシュコマンドとして明示的に実行できます。tool に設定すると、スラッシュコマンドはモデルを迂回し、ツールへ直接ディスパッチします。command-dispatch: tool が設定されている場合に呼び出すツール名です。ツールディスパッチでは、生の args 文字列をツールへ転送します (コアでの解析はありません)。ツールは
{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" } で呼び出されます。ゲート (読み込み時フィルター)
OpenClaw はmetadata (単一行 JSON) を使用して、読み込み時にスキルをフィルタリングします。
metadata.openclaw 配下のフィールド:
true の場合、常にスキルを含めます(他のゲートをスキップします)。macOS Skills UI で使用される任意の絵文字。
macOS Skills UI で「ウェブサイト」として表示される任意の URL。
任意のプラットフォーム一覧。設定した場合、そのスキルはそれらの OS でのみ対象になります。
それぞれが
PATH 上に存在する必要があります。少なくとも 1 つが
PATH 上に存在する必要があります。環境変数が存在するか、設定で指定されている必要があります。
真値でなければならない
openclaw.json パスの一覧。skills.entries.<name>.apiKey に関連付けられた環境変数名。macOS Skills UI で使用される任意のインストーラー仕様(brew/node/go/uv/download)。
metadata.openclaw が存在しない場合、そのスキルは常に対象になります(設定で無効化されている場合や、バンドルスキルに対して skills.allowBundled によってブロックされている場合を除く)。
従来の
metadata.clawdbot ブロックは、metadata.openclaw が存在しない場合には引き続き受け付けられるため、古いインストール済みスキルでも依存関係ゲートとインストーラーのヒントが維持されます。新規および更新されるスキルでは metadata.openclaw を使用してください。サンドボックス化の注意事項
requires.binsはスキル読み込み時に ホスト 上でチェックされます。- エージェントがサンドボックス化されている場合、バイナリは コンテナ内 にも存在する必要があります。
agents.defaults.sandbox.docker.setupCommand(またはカスタムイメージ)でインストールしてください。setupCommandはコンテナ作成後に 1 回実行されます。パッケージのインストールには、ネットワーク送信、書き込み可能な root FS、サンドボックス内の root ユーザーも必要です。 - 例:
summarizeスキル(skills/summarize/SKILL.md)をそこで実行するには、サンドボックスコンテナ内にsummarizeCLI が必要です。
インストーラー仕様
インストーラー選択ルール
インストーラー選択ルール
- 複数のインストーラーが列挙されている場合、Gateway は単一の優先オプションを選択します(利用可能なら brew、それ以外は node)。
- すべてのインストーラーが
downloadの場合、OpenClaw は利用可能なアーティファクトを確認できるように各エントリを一覧表示します。 - インストーラー仕様には、プラットフォームでオプションをフィルタリングするために
os: ["darwin"|"linux"|"win32"]を含めることができます。 - Node インストールは
openclaw.jsonのskills.install.nodeManagerに従います(デフォルト: npm、オプション: npm/pnpm/yarn/bun)。これはスキルのインストールにのみ影響します。Gateway ランタイムは引き続き Node である必要があります。Bun は WhatsApp/Telegram には推奨されません。 - Gateway によるインストーラー選択は優先度に基づきます。インストール仕様に複数の種類が混在する場合、OpenClaw は
skills.install.preferBrewが有効でbrewが存在すれば Homebrew を優先し、次にuv、設定された node マネージャー、最後にgoやdownloadなどのフォールバックを選びます。 - すべてのインストール仕様が
downloadの場合、OpenClaw は 1 つの優先インストーラーに畳み込まず、すべてのダウンロードオプションを表示します。
インストーラーごとの詳細
インストーラーごとの詳細
- Go インストール:
goがなくbrewが利用可能な場合、Gateway はまず Homebrew 経由で Go をインストールし、可能であればGOBINを Homebrew のbinに設定します。 - ダウンロードインストール:
url(必須)、archive(tar.gz|tar.bz2|zip)、extract(デフォルト: アーカイブ検出時は auto)、stripComponents、targetDir(デフォルト:~/.openclaw/tools/<skillKey>)。
設定の上書き
バンドルスキルと管理対象スキルは、~/.openclaw/openclaw.json の skills.entries 配下で切り替えたり、環境変数値を指定したりできます。
false は、スキルがバンドルまたはインストールされていても無効にします。
バンドルされた coding-agent スキルはオプトインです。エージェントに公開する前に
skills.entries.coding-agent.enabled: true を設定し、
その後、claude、codex、opencode、または pi のいずれかがインストール済みで、
それぞれの CLI で認証済みであることを確認してください。metadata.openclaw.primaryEnv を宣言するスキル向けの便利な指定。平文または SecretRef をサポートします。変数がプロセス内でまだ設定されていない場合にのみ注入されます。
スキルごとのカスタムフィールド用の任意の入れ物。カスタムキーはここに置く必要があります。
バンドル スキル専用の任意の許可リスト。設定した場合、リスト内のバンドルスキルのみが対象になります(管理対象/ワークスペーススキルには影響しません)。
metadata.openclaw.skillKey を定義している場合は、skills.entries 配下でそのキーを使用してください。
OpenClaw 内で標準の画像生成/編集を行う場合は、バンドルスキルではなく、
agents.defaults.imageGenerationModel とともにコアの image_generate ツールを使用してください。
ここでのスキル例は、カスタムまたはサードパーティのワークフロー向けです。
ネイティブな画像分析には、agents.defaults.imageModel とともに image ツールを使用してください。
openai/*、google/*、fal/*、または別のプロバイダー固有の画像モデルを選ぶ場合は、そのプロバイダーの認証/API キーも追加してください。環境の注入
エージェント実行が開始されると、OpenClaw は次を行います。- スキルのメタデータを読み取ります。
skills.entries.<key>.envとskills.entries.<key>.apiKeyをprocess.envに適用します。- 対象 スキルを使ってシステムプロンプトを構築します。
- 実行終了後に元の環境を復元します。
claude-cli バックエンドでは、OpenClaw は同じ対象スナップショットを一時的な Claude Code Plugin として実体化し、--plugin-dir で渡します。Claude Code はその後、ネイティブなスキルリゾルバーを使用できますが、OpenClaw は引き続き優先順位、エージェントごとの許可リスト、ゲート処理、skills.entries.* の環境/API キー注入を管理します。他の CLI バックエンドはプロンプトカタログのみを使用します。
スナップショットと更新
OpenClaw は、セッション開始時 に対象スキルのスナップショットを取得し、 同じセッションの後続ターンではその一覧を再利用します。スキルや設定への変更は、次の新しいセッションで有効になります。 次の 2 つの場合、スキルはセッション中に更新できます。- スキルウォッチャーが有効になっている。
- 新しい対象リモートノードが現れる。
Skills ウォッチャー
デフォルトでは、OpenClaw はスキルフォルダーを監視し、SKILL.md ファイルが変更されるとスキルスナップショットを更新します。skills.load 配下で設定します。
allowSymlinkTargets を使用してください。たとえば
~/.agents/skills/manager -> ~/Projects/manager/skills です。ターゲット一覧は realpath 解決後に照合されるため、狭く保つ必要があります。
リモート macOS ノード(Linux Gateway)
Gateway が Linux 上で実行されていても、macOS ノード が接続され、system.run が許可されている場合(Exec 承認セキュリティが deny に設定されていない場合)、
OpenClaw は必要なバイナリがそのノード上に存在すれば、macOS 専用スキルを対象として扱うことができます。エージェントは、host=node を指定した exec ツール経由でこれらのスキルを実行する必要があります。
これは、ノードがコマンド対応状況を報告すること、および system.which または system.run による bin プローブに依存します。オフラインのノードは リモート専用スキルを表示可能にしません。接続済みノードが bin プローブに応答しなくなった場合、OpenClaw はキャッシュされた bin 一致をクリアし、現在実行できないスキルがエージェントに表示されないようにします。
トークンへの影響
スキルが対象になると、OpenClaw は利用可能なスキルのコンパクトな XML 一覧をシステムプロンプトに注入します(pi-coding-agent の formatSkillsForPrompt 経由)。コストは決定的です。
- 基本オーバーヘッド(スキルが 1 つ以上ある場合のみ): 195 文字。
- スキルごと: 97 文字 + XML エスケープ済みの
<name>、<description>、<location>値の長さ。
& < > " ' をエンティティ(&、< など)に展開するため、長さが増えます。トークン数はモデルのトークナイザーによって異なります。OpenAI 風の概算では約 4 文字/トークンなので、97 文字 ≈ 24 トークン がスキルごとにかかり、これに実際のフィールド長が加わります。
管理対象スキルのライフサイクル
OpenClaw は、インストール(npm パッケージまたは OpenClaw.app)に バンドルスキル としてベースラインのスキルセットを同梱します。~/.openclaw/skills はローカル上書き用に存在します。たとえば、バンドルコピーを変更せずにスキルをピン留めまたはパッチする場合です。ワークスペーススキルはユーザー所有であり、名前の競合時には両方を上書きします。