Source profileQuality 85/100

affaan-m/ECC/docs/ja-JP/skills/agent-payment-x402/SKILL.md

agent-payment-x402

Review agent-payment-x402's use cases, installation, workflow, and original source instructions.

Source repository stars
234,327
Declared platforms
0
Static risk flags
0
Last source update
2026-07-27
Source checked
2026-07-28

Decision brief

What it does—and where it fits

ポリシーゲートによる決済と組み込みの支出コントロールで AI エージェントを有効化します。x402 HTTP 決済プロトコルと MCP ツールを使用して、カストディアルリスクなしに外部サービス、API、または他のエージェントへの支払いを行えます。

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/affaan-m/ECC --skill "docs/ja-JP/skills/agent-payment-x402"
    Safe inspection promptEditorial

    Inspect the Agent Skill "agent-payment-x402" from https://github.com/affaan-m/ECC/blob/4e973d3eaf92d97f8d2e2d8abb39d8bdc8711b38/docs/ja-JP/skills/agent-payment-x402/SKILL.md at commit 4e973d3eaf92d97f8d2e2d8abb39d8bdc8711b38. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      使用タイミング

      使用する場合:エージェントが API 呼び出しへの支払い、サービスの購入、別のエージェントとの決済、タスクごとの支出制限の強制、またはノンカストディアルウォレットの管理を必要とする場合。cost-aware-llm-pipeline および security-review スキルと自然に組み合わせられます。

      使用する場合:エージェントが API 呼び出しへの支払い、サービスの購入、別のエージェントとの決済、タスクごとの支出制限の強制、またはノンカストディアルウォレットの管理を必要とする場合。cost-aware-llm-pipeline および security-review スキルと自然に組み合わせられます。
    2. 02

      決定ツリー

      エージェントが有料 API へのアクセスを購入するか、他者にアクセスを課金するかに基づいて統合パスを選択します:

      エージェントが有料 API へのアクセスを購入するか、他者にアクセスを課金するかに基づいて統合パスを選択します:
    3. 03

      対応ネットワーク

      agentwallet-sdk: 本番使用前に現在のネットワークカバレッジをパッケージドキュメントで確認。Base Sepolia が最も安全な開発デフォルト;Base メインネットがオリジナルスキルで説明されている本番パス。

      agentwallet-sdk: 本番使用前に現在のネットワークカバレッジをパッケージドキュメントで確認。Base Sepolia が最も安全な開発デフォルト;Base メインネットがオリジナルスキルで説明されている本番パス。OKX Payments / X Layer: 現在のセラードキュメントは X Layer(eip155:196)と USDT0 決済を対象。決済パッケージとファシリテーターの動作が迅速に変わる可能性があるため、本番コードを生成する前に現在の SDK ドキュメントを取得すること。- agentwallet-sdk: 本番使用前に現在のネットワークカバレッジをパッケージドキュメントで確認。Base Sepolia が最も安全な開発デフォルト;Base メインネットがオリジナルスキルで説明されている本番パス。 - OKX Payments / X Layer: 現在のセラードキュメントは X Layer(eip155:196)と USDT0 決済を対象。決済パッケージとファシリテーターの動作が迅速に変わる可能性が…
    4. 04

      仕組み

      x402 は HTTP 402(Payment Required)を機械が交渉可能なフローに拡張します。サーバーが 402 を返すと、エージェントの決済ツールが価格を交渉し、バジェットを確認し、トランザクションに署名し、オーケストレーターが設定したポリシーと確認境界内でのみリトライします。

      タスクごとのバジェット — 単一エージェントアクションの最大支出セッションごとのバジェット — セッション全体の累積制限許可リストに登録された受取人 — エージェントが支払える アドレス/サービスを制限
    5. 05

      x402 プロトコル

      x402 は HTTP 402(Payment Required)を機械が交渉可能なフローに拡張します。サーバーが 402 を返すと、エージェントの決済ツールが価格を交渉し、バジェットを確認し、トランザクションに署名し、オーケストレーターが設定したポリシーと確認境界内でのみリトライします。

      x402 は HTTP 402(Payment Required)を機械が交渉可能なフローに拡張します。サーバーが 402 を返すと、エージェントの決済ツールが価格を交渉し、バジェットを確認し、トランザクションに署名し、オーケストレーターが設定したポリシーと確認境界内でのみリトライします。

    Permission review

    Static risk signals and limitations

    No configured static risk pattern was detected

    This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score85/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars234,327SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    affaan-m/ECC
    Skill path
    docs/ja-JP/skills/agent-payment-x402/SKILL.md
    Commit
    4e973d3eaf92d97f8d2e2d8abb39d8bdc8711b38
    License
    MIT
    Collected
    2026-07-28
    Default branch
    main
    View the original SKILL.md

    エージェント決済実行(x402)

    ポリシーゲートによる決済と組み込みの支出コントロールで AI エージェントを有効化します。x402 HTTP 決済プロトコルと MCP ツールを使用して、カストディアルリスクなしに外部サービス、API、または他のエージェントへの支払いを行えます。

    使用タイミング

    使用する場合:エージェントが API 呼び出しへの支払い、サービスの購入、別のエージェントとの決済、タスクごとの支出制限の強制、またはノンカストディアルウォレットの管理を必要とする場合。cost-aware-llm-pipeline および security-review スキルと自然に組み合わせられます。

    決定ツリー

    エージェントが有料 API へのアクセスを購入するか、他者にアクセスを課金するかに基づいて統合パスを選択します:

    ニーズ推奨パス
    エージェントが Base または他の agentwallet 対応チェーンの 402 ゲート API に支払う厳格な支出ポリシーで agentwallet-sdk を MCP 決済サーバーとして使用
    エージェントが X Layer の 402 ゲート API に支払うokx/onchainos-skills の OKX エージェント決済プロトコルを使用;okx-x402-payment は廃止されたレガシーエイリアス
    TypeScript API がエージェントに課金するExpress、Hono、Fastify、または Next.js 向け OKX Payments TypeScript セラー SDK ドキュメントを使用
    Go API がエージェントに課金するGin、Echo、または net/http 向け OKX Payments Go セラー SDK ドキュメントを使用
    Rust API がエージェントに課金するAxum 向け OKX Payments Rust セラー SDK ドキュメントを使用
    Java API がエージェントに課金するSpring Boot 2/3、Java EE、または Jakarta 向け OKX Payments Java セラー SDK ドキュメントを使用
    Python API がエージェントに課金する実装前に現在の OKX Payments リポジトリを確認;Python セラーガイドがない場合がある

    対応ネットワーク

    • agentwallet-sdk: 本番使用前に現在のネットワークカバレッジをパッケージドキュメントで確認。Base Sepolia が最も安全な開発デフォルト;Base メインネットがオリジナルスキルで説明されている本番パス。
    • OKX Payments / X Layer: 現在のセラードキュメントは X Layer(eip155:196)と USDT0 決済を対象。決済パッケージとファシリテーターの動作が迅速に変わる可能性があるため、本番コードを生成する前に現在の SDK ドキュメントを取得すること。

    仕組み

    x402 プロトコル

    x402 は HTTP 402(Payment Required)を機械が交渉可能なフローに拡張します。サーバーが 402 を返すと、エージェントの決済ツールが価格を交渉し、バジェットを確認し、トランザクションに署名し、オーケストレーターが設定したポリシーと確認境界内でのみリトライします。

    支出コントロール

    すべての決済ツール呼び出しは SpendingPolicy を強制します:

    • タスクごとのバジェット — 単一エージェントアクションの最大支出
    • セッションごとのバジェット — セッション全体の累積制限
    • 許可リストに登録された受取人 — エージェントが支払える アドレス/サービスを制限
    • レート制限 — 分/時間あたりの最大トランザクション数

    ノンカストディアルウォレット

    エージェントは ERC-4337 スマートアカウントを通じて独自のキーを保持します。オーケストレーターが委任前にポリシーを設定し、エージェントは境界内でのみ支出できます。プールされた資金なし、カストディアルリスクなし。

    MCP 統合

    決済層は Claude Code またはエージェントハーネスのセットアップに組み込まれる標準 MCP ツールを公開します。

    セキュリティ注意: 常にパッケージバージョンを固定してください。このツールは秘密鍵を管理します — 固定されていない npx インストールはサプライチェーンリスクをもたらします。

    オプション A: agentwallet-sdk(Base / マルチチェーン)

    {
      "mcpServers": {
        "agentpay": {
          "command": "npx",
          "args": ["agentwallet-sdk@6.0.0"]
        }
      }
    }
    

    利用可能なツール(エージェント呼び出し可能)

    ツール目的
    get_balanceエージェントウォレットの残高を確認
    send_paymentアドレスまたは ENS に支払いを送信
    check_spending残りバジェットを照会
    list_transactionsすべての支払いの監査証跡

    注意: 支出ポリシーはエージェントへの委任前にオーケストレーターが設定します — エージェント自体では設定しません。これによりエージェントが独自の支出制限をエスカレーションするのを防ぎます。オーケストレーション層またはタスク前のフックで set_policy 経由でポリシーを設定し、エージェント呼び出し可能ツールとしては設定しないこと。

    オプション B: OKX エージェント決済プロトコル(X Layer)

    X Layer x402、マルチパーティ決済(MPP)、セッション決済、チャージ、A2A チャージフロー向けにこのパスを使用します。

    バイヤー側エージェントフローの場合:

    1. 現在の okx/onchainos-skills リポジトリをインストールまたは参照する。
    2. skills/okx-agent-payments-protocol/SKILL.md をディスパッチャーとして使用する。
    3. skills/okx-x402-payment/SKILL.md は廃止された互換エイリアスとして扱い、正規スキルとしては扱わない。
    4. ウォレット状態の確認または決済アクションの前に明示的なユーザー確認を求める。汎用ツール呼び出しの背後に決済実行を隠さない。

    セラー側 API フローの場合、コードを生成する前に最新の言語固有ガイドを取得する:

    ランタイム現在のガイド
    TypeScripthttps://raw.githubusercontent.com/okx/payments/main/typescript/SELLER.md
    Gohttps://raw.githubusercontent.com/okx/payments/main/go/x402/SELLER.md
    Rusthttps://raw.githubusercontent.com/okx/payments/main/rust/x402/SELLER.md
    Javahttps://raw.githubusercontent.com/okx/payments/main/java/SELLER.md

    現在の OKX リポジトリを確認せずに古いドキュメントの例をコピーしないこと。現在の OKX ガイダンスはディスパッチャーとして okx-agent-payments-protocol を使用しており、Java セラードキュメントが利用可能になっています。

    MCP クライアントでのバジェット強制

    有料ツール呼び出しをディスパッチする前にバジェットを強制するオーケストレーターを構築する場合。

    前提条件: MCP 設定を追加する前にパッケージをインストール — 非インタラクティブ環境では -y なしの npx は確認を求め、サーバーがハングします:npm install -g agentwallet-sdk@6.0.0

    import { Client } from "@modelcontextprotocol/sdk/client/index.js";
    import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
    
    async function main() {
      // 1. トランスポートを構築する前に認証情報を検証する。
      //    キーが欠落している場合は即座に失敗する — 認証なしでサブプロセスを開始させない。
      const walletKey = process.env.WALLET_PRIVATE_KEY;
      if (!walletKey) {
        throw new Error("WALLET_PRIVATE_KEY is not set — refusing to start payment server");
      }
    
      // stdio トランスポートを介して agentpay MCP サーバーに接続する。
      // サーバーが必要とする env 変数のみをホワイトリストに登録する —
      // 秘密鍵を管理するサードパーティのサブプロセスに process.env のすべてを渡さない。
      const transport = new StdioClientTransport({
        command: "npx",
        args: ["agentwallet-sdk@6.0.0"],
        env: {
          PATH: process.env.PATH ?? "",
          NODE_ENV: process.env.NODE_ENV ?? "production",
          WALLET_PRIVATE_KEY: walletKey,
        },
      });
      const agentpay = new Client({ name: "orchestrator", version: "1.0.0" });
      await agentpay.connect(transport);
    
      // 2. エージェントへの委任前に支出ポリシーを設定する。
      //    常に成功を確認する — サイレントな失敗はコントロールがアクティブでないことを意味する。
      const policyResult = await agentpay.callTool({
        name: "set_policy",
        arguments: {
          per_task_budget: 0.50,
          per_session_budget: 5.00,
          allowlisted_recipients: ["api.example.com"],
        },
      });
      if (policyResult.isError) {
        throw new Error(
          `Failed to set spending policy — do not delegate: ${JSON.stringify(policyResult.content)}`
        );
      }
    
      // 3. 有料アクションの前に preToolCheck を使用する
      await preToolCheck(agentpay, 0.01);
    }
    
    // プレツールフック: 4 つの異なるエラーパスを持つフェイルクローズドバジェット強制。
    async function preToolCheck(agentpay: Client, apiCost: number): Promise<void> {
      // パス 1: 無効な入力を拒否する(NaN/Infinity は < 比較をバイパスする)
      if (!Number.isFinite(apiCost) || apiCost < 0) {
        throw new Error(`Invalid apiCost: ${apiCost} — action blocked`);
      }
    
      // パス 2: トランスポート/接続の失敗
      let result;
      try {
        result = await agentpay.callTool({ name: "check_spending" });
      } catch (err) {
        throw new Error(`Payment service unreachable — action blocked: ${err}`);
      }
    
      // パス 3: ツールがエラーを返した(例:認証失敗、ウォレット未初期化)
      if (result.isError) {
        throw new Error(
          `check_spending failed — action blocked: ${JSON.stringify(result.content)}`
        );
      }
    
      // パス 4: レスポンスの形状を解析して検証する
      let remaining: number;
      try {
        const parsed = JSON.parse(
          (result.content as Array<{ text: string }>)[0].text
        );
        if (!Number.isFinite(parsed?.remaining)) {
          throw new TypeError("missing or non-finite 'remaining' field");
        }
        remaining = parsed.remaining;
      } catch (err) {
        throw new Error(
          `check_spending returned unexpected format — action blocked: ${err}`
        );
      }
    
      // パス 5: バジェット超過
      if (remaining < apiCost) {
        throw new Error(
          `Budget exceeded: need $${apiCost} but only $${remaining} remaining`
        );
      }
    }
    
    main().catch((err) => {
      console.error(err);
      process.exitCode = 1;
    });
    

    ベストプラクティス

    • 委任前にバジェットを設定する: サブエージェントを生成する際、オーケストレーション層を通じて SpendingPolicy を添付する。エージェントに無制限の支出を与えない。
    • 依存関係を固定する: MCP 設定に常に正確なバージョンを指定する(例:agentwallet-sdk@6.0.0)。本番デプロイ前にパッケージの整合性を確認する。
    • 監査証跡: タスク後のフックで list_transactions を使用して何が使われたかをログに記録する。
    • フェイルクローズド: 決済ツールに到達できない場合、有料アクションをブロックする — 課金されないアクセスにフォールバックしない。
    • security-review と組み合わせる: 決済ツールは高い権限を持つ。シェルアクセスと同じ精査を適用する。
    • まずテストネットでテストする: 開発には Base Sepolia を使用;本番には Base メインネットに切り替える。

    本番リファレンス

    Alternatives

    Compare before choosing