Communitygithub.com

agent-payment-x402

Adiciona execução de pagamentos x402 a agentes de IA com orçamentos por tarefa, controles de gastos e carteiras não custodiais. Suporta Base através do agentwallet-sdk e X Layer através do OKX Payments / OKX Agent Payments Protocol. Use quando um agente precisar pagar por algo e necessitar de orçamentos por tarefa, controles de gastos e uma carteira não custodial.

O que é agent-payment-x402?

Esta skill capacita agentes de IA a executar pagamentos programáticos usando o protocolo x402 (HTTP 402) e ferramentas MCP, fornecendo controles de gastos integrados com orçamentos por tarefa e por sessão, listas de permissão de destinatários e limites de taxa. Ela suporta duas integrações principais: agentwallet-sdk para a rede Base (ERC-4337) e OKX Agent Payments Protocol para a X Layer (USDT0), permitindo que agentes paguem por APIs, serviços ou outros agentes sem risco de custódia. A skill impõe uma SpendingPolicy configurada pelo orquestrador antes da delegação, garantindo que os agentes nunca possam escalar seus próprios limites. É ideal para cenários como chamadas de API pagas, aquisição de serviços ou liquidação entre agentes, e deve ser emparelhada com habilidades de revisão de segurança e pipelines de LLM conscientes de custos.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/everything-claude-code/tree/main/skills/agent-payment-x402

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Execução de Pagamentos por Agente (x402)

Permite que agentes de IA façam pagamentos com controle de gastos baseado em políticas. Utiliza o protocolo de pagamento HTTP x402 e ferramentas MCP para que agentes possam pagar por serviços externos, APIs ou outros agentes sem risco de custódia.

Quando Usar

Use quando: seu agente precisar pagar por uma chamada de API, adquirir um serviço, liquidar com outro agente, impor limites de gastos por tarefa ou gerenciar uma carteira não custodial. Combina naturalmente com as habilidades cost-aware-llm-pipeline e security-review.

Árvore de Decisão

Escolha o caminho de integração com base em se seu agente está comprando acesso a uma API paga ou cobrando outros por uma:

NecessidadeCaminho recomendado
Agente paga uma API com gate 402 na Base ou outra cadeia suportada pelo agentwalletUse agentwallet-sdk como um servidor de pagamento MCP com política de gastos restrita
Agente paga uma API com gate 402 na X LayerUse OKX Agent Payments Protocol de okx/onchainos-skills; okx-x402-payment é um alias legado obsoleto
API TypeScript cobra agentesUse a documentação do SDK vendedor OKX Payments TypeScript para Express, Hono, Fastify ou Next.js
API Go cobra agentesUse a documentação do SDK vendedor OKX Payments Go para Gin, Echo ou net/http
API Rust cobra agentesUse a documentação do SDK vendedor OKX Payments Rust para Axum
API Java cobra agentesUse a documentação do SDK vendedor OKX Payments Java para Spring Boot 2/3, Java EE ou Jakarta
API Python cobra agentesVerifique o repositório atual do OKX Payments antes da implementação; um guia vendedor Python pode não estar disponível

Redes Suportadas

  • agentwallet-sdk: use a documentação do pacote para confirmar a cobertura de rede atual antes da produção. Base Sepolia é o padrão de desenvolvimento mais seguro; Base mainnet é o caminho de produção indicado pela skill original.
  • OKX Payments / X Layer: a documentação atual do vendedor tem como alvo X Layer (eip155:196) e liquidação USDT0. Busque a documentação atual do SDK antes de gerar código de produção, pois os pacotes de pagamento e o comportamento do facilitador podem mudar rapidamente.

Como Funciona

Protocolo x402

x402 estende o HTTP 402 (Payment Required) em um fluxo negociável por máquina. Quando um servidor retorna 402, a ferramenta de pagamento do agente negocia o preço, verifica o orçamento, assina uma transação e tenta novamente apenas dentro do limite de política e confirmação definido pelo orquestrador.

Controles de Gastos

Cada chamada de ferramenta de pagamento impõe uma SpendingPolicy:

  • Orçamento por tarefa — gasto máximo para uma única ação do agente
  • Orçamento por sessão — limite cumulativo em toda uma sessão
  • Destinatários na lista de permissão — restringe quais endereços/serviços o agente pode pagar
  • Limites de taxa — máximo de transações por minuto/hora

Carteiras Não Custodiais

Os agentes mantêm suas próprias chaves através de contas inteligentes ERC-4337. O orquestrador define a política antes da delegação; o agente só pode gastar dentro dos limites. Sem fundos em pool, sem risco de custódia.

Integração MCP

A camada de pagamento expõe ferramentas MCP padrão que se encaixam em qualquer configuração do Claude Code ou harness de agente.

Nota de segurança: Sempre fixe a versão do pacote. Esta ferramenta gerencia chaves privadas — instalações npx sem fixar a versão introduzem risco de supply-chain.

Opção A: agentwallet-sdk (Base / multi-cadeia)

{
  "mcpServers": {
    "agentpay": {
      "command": "npx",
      "args": ["[email protected]"]
    }
  }
}

Ferramentas Disponíveis (chamáveis pelo agente)

FerramentaPropósito
get_balanceVerificar saldo da carteira do agente
send_paymentEnviar pagamento para endereço ou ENS
check_spendingConsultar orçamento restante
list_transactionsTrilha de auditoria de todos os pagamentos

Nota: A política de gastos é definida pelo orquestrador antes de delegar ao agente — não pelo próprio agente. Isso impede que agentes aumentem seus próprios limites de gastos. Configure a política via set_policy em sua camada de orquestração ou hook pré-tarefa, nunca como uma ferramenta chamável pelo agente.

Opção B: OKX Agent Payments Protocol (X Layer)

Use este caminho para x402 na X Layer, Multi-Party Payment (MPP), pagamento por sessão, cobrança e fluxos de cobrança A2A.

Para fluxos de agente comprador:

  1. Instale ou referencie o repositório atual okx/onchainos-skills.
  2. Use skills/okx-agent-payments-protocol/SKILL.md como o dispatcher.
  3. Trate skills/okx-x402-payment/SKILL.md como um alias de compatibilidade obsoleto, não como a skill canônica.
  4. Exija confirmação explícita do usuário antes de verificações de status da carteira ou ações de pagamento. Não esconda a execução do pagamento por trás de uma chamada de ferramenta genérica.

Para fluxos de API vendedor, busque o guia mais recente específico do idioma antes de gerar código:

RuntimeGuia atual
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

Não copie exemplos de documentações antigas sem verificar o repositório atual do OKX. A orientação atual do OKX usa okx-agent-payments-protocol como dispatcher, e a documentação do vendedor Java agora está disponível.

Exemplos

Imposição de orçamento em um cliente MCP

Ao construir um orquestrador que chama o servidor MCP agentpay, imponha orçamentos antes de despachar chamadas de ferramentas pagas.

Pré-requisitos: Instale o pacote antes de adicionar a configuração MCP — npx sem -y solicitará confirmação em ambientes não interativos, fazendo com que o servidor trave: npm install -g [email protected]

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

async function main() {
  // 1. Valide as credenciais antes de construir o transporte.
  //    Uma chave ausente deve falhar imediatamente — nunca deixe o subprocesso iniciar sem autenticação.
  const walletKey = process.env.WALLET_PRIVATE_KEY;
  if (!walletKey) {
    throw new Error("WALLET_PRIVATE_KEY não está definida — recusando iniciar servidor de pagamento");
  }

  // Conecte-se ao servidor MCP agentpay via transporte stdio.
  // Permita apenas as variáveis de ambiente que o servidor precisa — nunca encaminhe todo process.env
  // para um subprocesso de terceiros que gerencia chaves privadas.
  const transport = new StdioClientTransport({
    command: "npx",
    args: ["[email protected]"],
    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. Defina a política de gastos antes de delegar ao agente.
  //    Sempre verifique o sucesso — uma falha silenciosa significa que nenhum controle está ativo.
  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(
      `Falha ao definir política de gastos — não delegue: ${JSON.stringify(policyResult.content)}`
    );
  }

  // 3. Use preToolCheck antes de qualquer ação paga
  await preToolCheck(agentpay, 0.01);
}

// Hook pré-ferramenta: imposição de orçamento fail-closed com quatro caminhos de erro distintos.
async function preToolCheck(agentpay: Client, apiCost: number): Promise<void> {
  // Caminho 1: Rejeitar entrada inválida (NaN/Infinity contornam a comparação <)
  if (!Number.isFinite(apiCost) || apiCost < 0) {
    throw new Error(`apiCost inválido: ${apiCost} — ação bloqueada`);
  }

  // Caminho 2: Falha de transporte/conectividade
  let result;
  try {
    result = await agentpay.callTool({ name: "check_spending" });
  } catch (err) {
    throw new Error(`Serviço de pagamento inacessível — ação bloqueada: ${err}`);
  }

  // Caminho 3: Ferramenta retornou um erro (ex.: falha de autenticação, carteira não inicializada)
  if (result.isError) {
    throw new Error(
      `check_spending falhou — ação bloqueada: ${JSON.stringify(result.content)}`
    );
  }

  // Caminho 4: Analisar e validar a forma da resposta
  let remaining: number;
  try {
    const parsed = JSON.parse(
      (result.content as Array<{ text: string }>)[0].text
    );
    if (!Number.isFinite(parsed?.remaining)) {
      throw new TypeError("campo 'remaining' ausente ou não finito");
    }
    remaining = parsed.remaining;
  } catch (err) {
    throw new Error(
      `check_spending retornou formato inesperado — ação bloqueada: ${err}`
    );
  }

  // Caminho 5: Orçamento excedido
  if (remaining < apiCost) {
    throw new Error(
      `Orçamento excedido: preciso de $${apiCost} mas tenho apenas $${remaining} restantes`
    );
  }
}

main().catch((err) => {
  console.error(err);
  process.exitCode = 1;
});

Melhores Práticas

  • Defina orçamentos antes da delegação: Ao gerar subagentes, anexe uma SpendingPolicy através de sua camada de orquestração. Nunca dê a um agente gasto ilimitado.
  • Fixe suas dependências: Sempre especifique uma versão exata em sua configuração MCP (ex.: [email protected]). Verifique a integridade do pacote antes de implantar em produção.
  • Trilhas de auditoria: Use list_transactions em hooks pós-tarefa para registrar o que foi gasto e por quê.
  • Fail closed: Se a ferramenta de pagamento estiver inacessível, bloqueie a ação paga — não recorra ao acesso não medido.
  • Combine com security-review: Ferramentas de pagamento são de alto privilégio. Aplique o mesmo escrutínio que o acesso ao shell.
  • Teste com testnets primeiro: Use Base Sepolia para desenvolvimento; mude para Base mainnet para produção.

Referência de Produção

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/claude-api

Anthropic Claude API patterns for Python and TypeScript. Covers Messages API, streaming, tool use, vision, extended thinking, batches, prompt caching, and Claude Agent SDK. Use when building applications with the Claude API or Anthropic SDKs.

affaan-m/everything-claude-code

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/everything-claude-code

End-to-end marketing campaign planning and execution. Covers audience research, positioning, campaign angle definition, landing page copy, email sequences, social posts, ad copy, short-form video scripts, and content calendars. Use as the orchestration layer for multi-channel product launches. Use when planning or executing a multi-channel product launch, or producing landing page, email, social, or ad copy.

affaan-m/everything-claude-code-conventions

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build web components, pages, or applications and the visual direction matters as much as the code quality.

affaan-m/gget

gget CLI and Python workflow for quick genomic database queries, sequence lookup, BLAST-style searches, enrichment checks, and reproducible bioinformatics evidence logs.

affaan-m/literature-review

Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.

affaan-m/motion-ui

Production-ready UI motion system for React/Next.js. Use when implementing animations, transitions, or motion patterns.

affaan-m/project-guidelines-example

Example project-specific skill template based on a real production application.

affaan-m/pubmed-database

Direct PubMed and NCBI E-utilities search workflows for biomedical literature, MeSH queries, PMID lookup, citation retrieval, and API-backed literature monitoring.

affaan-m/scholar-evaluation

Structured scholarly-work evaluation for papers, proposals, literature reviews, methods sections, evidence quality, citation support, and research-writing feedback.

affaan-m/uspto-database

USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-self-evaluation

Use after completing any non-trivial task. The agent self-rates its output on 5 axes — accuracy, completeness, clarity, actionability, conciseness — with concrete evidence per criterion. Produces a structured 1-5 scorecard with specific improvement suggestions.

Habilidades Relacionadas