Skills
スキルの作成
Skills は、ツールを使用する方法とタイミングをエージェントに教えます。各 skill は、
YAML フロントマターと Markdown の指示を記述した SKILL.md ファイルを含むディレクトリです。
OpenClaw は、定義された優先順位に従って複数のルートから skills を読み込みます。
最初の skill を作成する
Create the skill directory
Skills はワークスペースの skills/ フォルダーに配置します。
mkdir -p ~/.openclaw/workspace/skills/hello-world整理のために skills をサブフォルダーにまとめることもできます。ただし、skill の名前は
フォルダーのパスではなく、SKILL.md のフロントマターによって決まります。
mkdir -p ~/.openclaw/workspace/skills/personal/hello-world# skill name is still "hello-world", invoked as /hello-worldWrite SKILL.md
フロントマターでメタデータを定義し、本文でエージェントへの指示を記述します。
---name: hello-worlddescription: A simple skill that prints a greeting.--- # Hello World When the user asks for a greeting, use the `exec` tool to run: ```bashecho "Hello from your custom skill!" 命名規則:- `name` には小文字、数字、ハイフンを使用します。- ディレクトリ名とフロントマターの `name` を一致させます。- `description` はエージェントとスラッシュコマンドの検出結果に表示されるため、 1 行かつ 160 文字未満にします。 OPENCLAW_DOCS_MARKER:stepClose: OPENCLAW_DOCS_MARKER:stepOpen:IHRpdGxlPSJWZXJpZnkgdGhlIHNraWxsIGxvYWRlZCI ```bashopenclaw skills listOpenClaw はデフォルトで、skills ルート配下の SKILL.md ファイルを監視します。
監視機能が無効になっている場合や、既存のセッションを継続している場合は、
エージェントが更新後の一覧を受け取れるように新しいセッションを開始します。
# From chat — archive current session and start fresh/new # Or restart the gatewayopenclaw gateway restartTest it
openclaw agent --message "give me a greeting"または、チャットを開いてエージェントに直接依頼します。名前を指定して明示的に
呼び出すには、/skill hello-world を使用します。
SKILL.md リファレンス
必須フィールド
| フィールド | 説明 |
|---|---|
name |
小文字、数字、ハイフンを使用した一意のスラッグ |
description |
エージェントと検出結果に表示される 1 行の説明 |
任意のフロントマターキー
| フィールド | デフォルト | 説明 |
|---|---|---|
user-invocable |
true |
skill をユーザー向けスラッシュコマンドとして公開する |
disable-model-invocation |
false |
skill をエージェントのシステムプロンプトから除外する(/skill では引き続き実行可能) |
command-dispatch |
— | tool に設定すると、モデルを経由せずスラッシュコマンドをツールへ直接ルーティングする |
command-tool |
— | command-dispatch: tool が設定されている場合に呼び出すツール名 |
command-arg-mode |
raw |
ツールへのディスパッチ時に、生の引数文字列をツールへ転送する |
homepage |
— | macOS の Skills UI で "Website" として表示される URL |
ゲーティングフィールド(requires.bins、requires.env など)については、
Skills — ゲーティングを参照してください。
{baseDir} の使用
パスをハードコードせずに、skill ディレクトリ内のファイルを参照できます。
エージェントは {baseDir} を、その skill 自身のディレクトリを基準に解決します。
Run the helper script at `{baseDir}/scripts/run.sh`.条件付き有効化を追加する
依存関係が利用可能な場合にのみ読み込まれるよう、skill にゲートを設定します。
---name: gemini-searchdescription: Search using Gemini CLI.metadata: { "openclaw": { "requires": { "bins": ["gemini"] }, "primaryEnv": "GEMINI_API_KEY" } }---Gating options
| キー | 説明 |
|---|---|
requires.bins |
すべてのバイナリが PATH 上に存在する必要がある |
requires.anyBins |
1 つ以上のバイナリが PATH 上に存在する必要がある |
requires.env |
各環境変数がプロセスまたは設定内に存在する必要がある |
requires.config |
openclaw.json の各パスが真と評価される必要がある |
os |
プラットフォームフィルター: ["darwin"]、["linux"]、["win32"] |
always |
true に設定すると、すべてのゲートをスキップして常に skill を含める |
完全なリファレンス: Skills — ゲーティング。
Environment and API keys
openclaw.json 内の skill エントリに API キーを関連付けます。
{ skills: { entries: { "gemini-search": { enabled: true, apiKey: { source: "env", provider: "default", id: "GEMINI_API_KEY" }, }, }, },}キーは、そのエージェントターンの間だけホストプロセスに注入されます。 サンドボックスには渡されません。詳しくは サンドボックス化された環境変数を参照してください。
Skill Workshop で提案する
エージェントが下書きした skills の場合や、skill を公開する前にオペレーターによるレビューが必要な場合は、
SKILL.md を直接作成する代わりに、Skill Workshop の提案を使用します。
# Propose a brand-new skillopenclaw skills workshop propose-create \ --name "hello-world" \ --description "A simple skill that prints a greeting." \ --proposal ./PROPOSAL.md # Propose an update to an existing skillopenclaw skills workshop propose-update hello-world \ --proposal ./PROPOSAL.md \ --description "Updated greeting skill"提案に補助ファイルが含まれる場合は、--proposal-dir を使用します。
openclaw skills workshop propose-create \ --name "hello-world" \ --description "A simple skill that prints a greeting." \ --proposal-dir ./hello-world-proposal/ディレクトリのルートには PROPOSAL.md が必要です。補助ファイルは
assets/、examples/、references/、scripts/、または templates/ の配下に配置します。
レビュー後:
openclaw skills workshop inspect <proposal-id>openclaw skills workshop apply <proposal-id>提案のライフサイクル全体については、Skill Workshop を参照してください。
ClawHub への公開
Ensure your SKILL.md is complete
name、description、および metadata.openclaw のゲーティングフィールドが設定されていることを
確認します。プロジェクトページがある場合は、homepage URL を追加します。
Install the standalone ClawHub CLI and log in
npm i -g clawhubclawhub loginPublish
clawhub skill publish ./path/to/hello-world推測されたバージョンを上書きするには --version <version> を、特定の所有者として公開するには
--owner <owner> を追加します。完全な手順、所有者のスコープ、その他のメンテナンスコマンド
(clawhub sync、clawhub skill rename など)については、
ClawHub — 公開および
ClawHub CLIを参照してください。