Tools Invoke(HTTP)
OpenClaw の Gateway は、単一のツールを直接呼び出すためのシンプルな HTTP エンドポイントを公開しています。これは常に有効ですが、Gateway の認証およびツールポリシーによって制御されます。 常に有効になっていますが、Gatewayの認証とツールポリシーに基づいています。 常に有効になっていますが、Gatewayの認証とツールポリシーに基づいています。POST /tools/invoke- Gateway と同じポート(WS + HTTP の多重化):
http://<gateway-host>:<port>/tools/invoke
認証
ゲートウェイ認証設定を使用します。 ベアラートトークンを送信:Authorization: Bearer <token>
gateway.auth.mode="token"の場合は、gateway.auth.token(またはOPENCLAW_GATEWAY_TOKEN)を使用します。gateway.auth.mode="password"の場合は、gateway.auth.password(またはOPENCLAW_GATEWAY_PASSWORD)を使用します。gateway.auth.rateLimitが設定されており、認証失敗が多発した場合、エンドポイントはRetry-Afterを付与した429を返します。
リクエストボディ
tool(string、必須): 呼び出すツール名。action(string、任意): ツールスキーマがactionをサポートし、args ペイロードで省略された場合に args にマッピングされます。args(object、任意): ツール固有の引数。sessionKey(string, optional): ターゲットセッションキー。sessionKey(string、任意): 対象のセッションキー。省略された場合、または"main"の場合、Gateway は設定されたメインのセッションキーを使用します(session.mainKeyおよびデフォルトエージェントを尊重するか、グローバルスコープではglobalを使用します)。dryRun(boolean、任意): 将来使用のために予約されています。現在は無視されます。
ポリシー + ルーティングの挙動
ツールの可用性は、Gateway エージェントで使用されるのと同じポリシーチェーンを通じてフィルタリングされます。tools.profile/tools.byProvider.profiletools.allow/tools.byProvider.allowagents.<id>.tools.allow/agents.<id>.tools.byProvider.allow- グループポリシー(セッションキーがグループまたはチャンネルにマッピングされている場合)
- サブエージェントポリシー(サブエージェントのセッションキーで呼び出す場合)
sessions_spawnsessions_sendgatewaywhatsapp_login
gateway.tools でカスタマイズできます:
x-openclaw-message-channel: <channel>(例:slack,telegram)x-openclaw-account-id: <accountId>(複数のアカウントが存在する場合)
レスポンス
200→{ ok: true, result }400→{ ok: false, error: { type, message } }(無効なリクエストまたはツールエラー)401→ 未認証429→ 認証がレート制限されています(Retry-Afterが設定されます)404→ ツールが利用不可(未検出、または許可リストに含まれていない)405→ メソッドが許可されていませんsessionKey(string, optional): ターゲットセッションキー。sessionKey(string、任意): 対象のセッションキー。省略された場合、または"main"の場合、Gateway は設定されたメインのセッションキーを使用します(session.mainKeyおよびデフォルトエージェントを尊重するか、グローバルスコープではglobalを使用します)。