⚡ Agentes-IA · CULTIVA IA

Pagos de Agentes IA con x402

Protocolo HTTP de pagos programáticos para agentes autónomos. Presupuestos por tarea, carteras no custodiadas, auditoría completa.

ContentAgent v2.1 — CULTIVA IA
Base Sepolia (dev)
Sesión semanal activa
Premium Avanzado Sistema
Estado de la sesión semanal
Presupuesto restante
$3.82
de $5.00 asignados esta sesión
Transacciones confirmadas
12
$1.18 gastados · 0 bloqueados
Límite por tarea
$0.50
máx. por llamada individual
Pagos bloqueados
0
política: fail-closed activa
Flujo del protocolo x402
🧑‍💻
Orquestador
set_policy()
delega con
SpendingPolicy
🤖
ContentAgent
preToolCheck()
HTTP GET
(sin auth)
🔒
API 402-gated
responde 402
negocia precio
& firma tx
⛓️
Base Mainnet
tx confirmada
HTTP retry
+ receipt
Respuesta API
200 OK + datos
🛡️
SpendingPolicy — ContentAgent
Per-task budget $0.50
Per-session budget $5.00
Rate limit 30 tx/h
Red activa
Base Sepolia
Destinatarios permitidos:
api.imagegen.io
api.seoaudit.io
api.socialscheduler.io
🔌
APIs externas 402-gated — CULTIVA IA
ImageGenAPI api.imagegen.io/generate $0.05/img
SEOAuditAPI api.seoaudit.io/check $0.02/url
SocialScheduler api.socialscheduler.io/post $0.01/post
Cartera no custodiada — ERC-4337 smart account. El orquestador fija la política; el agente no puede escalar sus propios límites de gasto.
{""}
orchestrator.ts — ContentAgent CULTIVA IA
// orchestrator.ts — CULTIVA IA ContentAgent import { Client } from "@modelcontextprotocol/sdk/client"; import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio"; const APIS = { imageGen: { endpoint: "api.imagegen.io", cost: 0.05 }, seoAudit: { endpoint: "api.seoaudit.io", cost: 0.02 }, social: { endpoint: "api.socialscheduler.io", cost: 0.01 }, }; async function runWeeklySession() { const key = process.env.WALLET_PRIVATE_KEY; if (!key) throw new Error("WALLET_PRIVATE_KEY no configurada"); const transport = new StdioClientTransport({ command: "npx", args: ["agentwallet-sdk@6.0.0"], env: { WALLET_PRIVATE_KEY: key, PATH: process.env.PATH ?? "" }, }); const agentpay = new Client({ name: "cultiva-orchestrator", version: "2.1.0" }); await agentpay.connect(transport); // ① Fijar política ANTES de delegar al agente const policy = await agentpay.callTool({ name: "set_policy", arguments: { per_task_budget: 0.50, per_session_budget: 5.00, allowlisted_recipients: Object.values(APIS).map(a => a.endpoint), rate_limit: { max_tx_per_hour: 30 }, }, }); if (policy.isError) throw new Error("Política fallida — no delegar"); // ② Ejecutar tareas con preToolCheck en cada llamada await paidTask(agentpay, APIS.imageGen, "Generar imagen semana 25"); await paidTask(agentpay, APIS.seoAudit, "Auditar cultivaia.es"); await paidTask(agentpay, APIS.social, "Publicar LinkedIn post"); // ③ Auditoría post-sesión const txLog = await agentpay.callTool({ name: "list_transactions" }); console.log("[CULTIVA] Sesión completada:", txLog); }
📋
Log de transacciones — Sesión semana 25
⚠️
Política activa: fail-closed. Cualquier fallo en check_spending bloquea la acción. Sin fallback a acceso no metered.
Hora Servicio Importe Hash Estado
09:02:11 ImageGenAPI × 5 $0.25 0xa3f2...1e09 ● CONFIRMADO
09:04:33 SEOAuditAPI × 8 $0.16 0xb91c...7f44 ● CONFIRMADO
09:07:55 SocialScheduler × 7 $0.07 0xd04a...2b13 ● CONFIRMADO
09:09:18 ImageGenAPI × 8 $0.40 0xc77e...9a02 ● CONFIRMADO
09:10:02 ImageGenAPI × 6 $0.30 ✕ BLOQUEADO
Total gastado: $0.88  ·  Bloqueados: 1  ·  Ahorrado por política: $0.30
BASE SEPOLIA
Guía de implementación para CULTIVA IA
📦
Pin de dependencias
Usar siempre agentwallet-sdk@6.0.0 exacto. Nunca @latest en herramientas que gestionan claves privadas.
🔑
Política antes de delegar
Llamar set_policy() SIEMPRE antes de que el agente ejecute cualquier tarea. Verificar éxito — fallo silencioso = sin controles.
🧾
Auditoría post-sesión
Ejecutar list_transactions() en el hook post-tarea. Log estructurado para facturación a cliente y detección de anomalías.