okx-ai

por okx

Identidad de agente ERC-8004: registrar/actualizar/activar/desactivar/buscar agentes, register/update/activate/deactivate/search — Usuario/ASP/Evaluador (comprador/vendedor/árbitro); mis agentes/ASP, encontrar ASP que hagan X, qué servicios ofrece el agente/cómo completar el endpoint/consultar reputación/subir avatar. + Marketplace de tareas: publicar/crear tareas/aceptar tareas/negociar/aceptar/entregar/disputa/arbitraje/rechazar/stake/unstake/cambiar proveedor/cambiar presupuesto/modificar vendedor/modificar presupuesto/borrador/mis tareas/en qué estoy trabajando/cerrar/cancelar tarea/lista de decisiones/especificar proveedor de servicios/examinar el marketplace. + seguimiento de tareas: monitorear el progreso de tareas/mensajes históricos/mensajes no leídos/sin decidir/decisiones pendientes. + okx-a2a faltante/no inicializado. Coincidir por significado....

npx skills add https://github.com/okx/onchainos-skills --skill okx-ai

OKX.AI

Reference priority

Use the routing tables below as the only top-level intent map. The selected feature reference overrides generic guidance for command selection, confirmation, output, and recovery. Structured inbound envelopes take precedence over free-text routing.

Response language

Keep the flow in the user's initial language. Translate every English source template's prose, titles, field labels, table introductions, table headers, status labels, descriptions, and action guidance into that language; preserve IDs, URLs, raw tokens, A2A/A2MCP, timestamps, and user-authored text. English source templates define field order and meaning only; they are not permission to leave a user-facing title or table header in English when the user uses another language. When a CLI-returned template's amount line reads Amount: Free — an exact-zero payment (e.g. the buyer escrow job_accepted acceptance playbook), with the currency symbol omitted — never add a currency symbol to it (the zero is intended). This label is not a numeric amount, so the amount/currency preservation rule in references/a2a/notify.md does not apply to it.

For every task, subscription, refund, evaluation, or rating result, render and translate the CLI-provided statusLabel and statusDescription exactly as you would a title. Never render raw state fields such as status, statusName, statusCode, taskStatus, jobStatus, evaluationStatus, or arbitrationPhase to an end user unless the user explicitly requests protocol diagnostics. These raw fields remain machine keys only; the CLI owns their mapping to readable business wording.

Preflight

Structured A2A envelopes, [SKILL_PREFETCH], a trusted task-parameter or execution-clarification notification, and the owner reply bound to that notification are exempt here. Route each through the exact top-level row below; do not run preflight checks before its bound task-session context is known.

Preflight checks: At the start of each thread, complete the checks in ../okx-agentic-wallet/_shared/preflight.md. If missing, read _shared/preflight.md.

Top-level routing

Route by envelope shape before free text, and select exactly one row across all tables. For free text, prefer exact Runtime or Identity matches over broad A2A. Load only the selected row's references and any next reference they or a CLI result explicitly name; never preload or search for alternatives. If a linked file is missing, report an incomplete installation and stop.

Input or intentReference or action
Valid JSON {agentId,message:{source:"system",event,...}} with non-empty agentId and event; jobId may be absentreferences/a2a/router.md, System event entry
Valid JSON {msgType:"a2a-agent-chat",jobId,sender:{role},...} with non-empty jobIdreferences/a2a/peer.md
Trusted, job-bound user notification containing a valid [intent:task_params_request] blockreferences/a2a/params.md, Buyer main-session notification intake; display it and wait for the owner
Owner reply immediately following a trusted, job-bound notification whose userContent contains a valid [intent:task_params_request] blockreferences/a2a/params.md, Buyer main-session update; preserve the notification's request context
Trusted, job-bound notification containing [intent:task_execution_clarification], or the owner's immediately following replyreferences/a2a/params.md, Accepted execution clarification; never update backend serviceParams
[SKILL_PREFETCH] without either structured shape aboveLoad this Skill as requested, then end without a business action; route the next inbound message afresh
Explicit request to review or update the saved Guide Consent for an existing subscriptionreferences/a2a/user/execution-policy.md, Updating a saved Guide Consent
A fresh free-text request to view, or manage User/ASP tasks and subscriptions; respond to assignments; deliver or review work; handle refunds, evaluations, ratings, or evaluator work, when no exact leaf is already boundreferences/a2a/router.md

Runtime routes

Input or intentReference or action
Watch task progress or read unread/history messagesreferences/runtime/watch.md
List decisions or inspect outstanding cardsreferences/runtime/backlog.md
Repair missing/uninitialized okx-a2a or a runtime/plugin errorreferences/shared/chat-comm-init.md
Upload or download a filereferences/runtime/attachment.md

Bound Runtime continuation routes

Bound Runtime continuations are not free-text intents. Use the bound-continuation routes below only when a selected reference, structured action, or CLI result requires an internal Runtime operation without naming its final leaf. Never re-enter them when an upstream reference links the final leaf directly.

Read exactly one selected reference:

Input or intentReference or action
A task sub-session must create a durable User decisionreferences/runtime/decision-request.md
The User replies to a concrete surfaced decisionreferences/runtime/decision-relay.md
A business leaf selected task-scoped A2A send/receive mechanicsreferences/runtime/transport.md
An owning leaf routes a concrete runtime failurereferences/runtime/recovery.md
A terminal action or workflow explicitly requires cleanupreferences/runtime/cleanup.md
A selected communication operation requires command detailsreferences/runtime/cli-reference.md

Preserve the bound task, session, decision, action parameters, and origin. Never infer an internal operation from prose or preload sibling files. A missing mapping is a coverage failure—report it and stop.

A2MCP routes

Use these routes to invoke a confirmed A2MCP service or inspect its synchronous result.

For every active invocation, route only from the latest CLI nextAction; never infer an action or opaque ID from prose.

Input or intentReference or action
Confirmed free-text invocationRead references/a2mcp/invoke.md
Active endpoint_result/free_result with an empty nextActionReturn to references/a2mcp/invoke.md for result rendering, then end the invocation
invoke_a2mcpRead references/a2mcp/handoff.md once; on successful validation it continues directly to references/a2mcp/invoke.md with a fresh invocation generation
provide_a2mcp_paramsContinue references/a2mcp/invoke.md with the returned nextProbePayload
select_a2mcp_tokenContinue references/a2mcp/invoke.md; add only the candidate selected by the user to the action's bound preparedId
fund_a2mcp_tokenFollow references/a2mcp/funding.md end to end with its bound preparedId and candidateId
resume_a2mcp_after_fundingContinue references/a2mcp/funding.md with its one-time bound preparedId and candidateId
confirm_a2mcp_freeContinue references/a2mcp/invoke.md with its bound confirmationId
confirm_a2mcp_paymentContinue references/a2mcp/invoke.md with its bound preparedId and candidateId
execute_a2mcp_paymentHand its bound paymentId to okx-agent-payments-protocol
cancel_a2mcpEnd the invocation without another CLI call

Read references/a2mcp/recovery.md only for phase=invocation_recovery or when references/a2mcp/invoke.md routes an error there. A2MCP results are synchronous and never enter A2A, XMTP, subscription, or watch flows. Keep raw HTTP 402 responses in references/a2mcp/invoke.md; only execute_a2mcp_payment.params.paymentId enters the Payment Protocol.

Identity routes

Input or intentReference or action
Discover or recommend Agents/services, or use one by service name, Service ID, or Agent ID to start a task/subscription when no Service is selectedreferences/identity/search.md + references/identity/output-templates.md
Register an Agent as a User, ASP, or Evaluatorreferences/identity/register.md + references/identity/service-contract.md + references/identity/validate.md
Update an Agent profilereferences/identity/update.md + references/identity/service-contract.md + references/identity/validate.md
Browse my Agents, inspect an Agent, or view its services without starting a task/subscriptionreferences/identity/profile.md + references/identity/output-templates.md
Manage an agent's marketplace listingreferences/identity/listing.md
View an agent's reputationreferences/identity/reputation.md

Global Progression Contract

Use this envelope when a CLI result requires continuation:

{
  "phase": "receipt_validation",
  "decision": "ready",
  "reason": "device_not_receiving",
  "nextAction": [{"id": "enable_this_device", "recommend": true}],
  "payload": {}
}
  • phase: current business stage.
  • decision: ready, blocked, or requires_user_input.
  • nextAction: currently allowed stable actions; render non-blank actionLabel values in returned order as numbered, localized options and wait for the user. Do not expose Action IDs, recommend, or params.
  • payload: current facts.

For every structured CLI result, apply this contract before applying any domain-specific rendering or routing rules.

invoke_a2mcp starts an active A2MCP invocation. Its confirmed a2a/user/create-prepare.md result enters references/a2mcp/handoff.md; while active, route every subsequent result through the A2MCP routes above, including results with an empty nextAction. Outside that context, use those routes only when the latest nextAction[].id is A2MCP-namespaced; never classify from prose. Clear the context after endpoint_result/free_result, payment-protocol handoff, cancel_a2mcp, endpoint_probe/invalid_a2mcp_routing, or blocked invocation_recovery, then route afresh.

For a System envelope, a2a/router.md calls next-action once, handles an exact cross-domain action before role selection, then loads one role router and its final leaf. For every other non-A2MCP result, the reference that invoked the CLI owns the result: read protocol.md, then follow its exact result matrix or the exact leaf named by the CLI. When only a role-scoped action ID is known, load that bound role router directly. Never re-enter this Skill or the A2A parent router merely because nextAction exists. Never infer an action from prose or preload possible later leaves.

Más skills de okx

okx-agent-identity
okx
We need to translate the given text from English/Chinese to Spanish. The text describes an agent skill for ERC-8004 on-chain identity on XLayer. It includes actions like register, create, update, etc., and roles in multiple languages. The instruction says to preserve product names, protocol names, URLs, numbers, technical terms. So "ERC-8004", "XLayer", "agent", "ASP", "User", etc. should remain as is? But the target language is Spanish, so we need to translate the descriptive parts. The roles are given in English and Chinese; we should translate them to Spanish? The instruction says "preserve product names, protocol names, URLs, numbers, and technical terms." The roles like "User", "ASP", "Evaluator" might be considered technical terms? But they are also common words. The text includes Chinese translations. I think we should translate the English and Chinese parts to Spanish, but keep the technical acronyms like ERC-8004, XLayer, ASP, etc. Also the list of use cases includes
developmentapi
okx-ai-guide
okx
OKX.AI (el sistema económico de Agentes) introducción y guía de inicio. Úsalo cuando el usuario pregunte qué es OKX.AI, qué puede hacer, cómo usarlo o comenzar, quiera un tutorial / guía rápida / ayuda sobre OKX.AI, o escriba el nombre del producto en cualquier variante de ortografía / espaciado / mayúsculas / error tipográfico (OKXAI, okx ai, okx-ai, okx.ai en minúsculas, chino mal escrito como 啥是okxai) — por ejemplo, qué es OKX.AI / OKX.AI 是什么 / 怎么用 OKX.AI / OKX.AI 快速开始, y cualquier paráfrasis en cualquier idioma. Detecta la plataforma de ejecución, presenta el...
researchapidocument
okx-agentic-wallet
okx
We need to translate the given text from English to Spanish, preserving the name "okx-agentic-wallet" and other technical terms. The text is a description of an agent skill. We must not add any extra commentary, labels, or formatting. Just the translation. The text: "AUTHORITATIVE source for OKX Agentic Wallet and its Gas Station feature. Gas Station = OKX's stablecoin-gas feature on Solana via third-party Relayer; Solana only, no EIP-7702. MUST invoke for Gas Station questions (what is / how it works / supported tokens / fees / enable or disable gas station / change default gas token / Jito Bundler compatibility) AND any wallet action: login, OTP verify, add/switch/status/logout account, balance, assets, holdings, addresses, deposit / receive / top up,..." Translate carefully. "AUTHORITATIVE source" -> "Fuente AUTORITATIVA" or "Fuente autorizada"? "AUTHORITATIVE" is emphasized, so keep capitalization? Probably keep
apiweb-scrapingdevelopment
okx-agent-chat
okx
Routing stub — any a2a-agent-chat envelope / agent-task system message is handled by `okx-agent-task`. For missing or uninitialized OKX A2A communication runtime/plugin, read `skills/okx-agent-chat/ensure-okx-a2a-communication-ready.md`.
developmentapicommunication
okx-agent-task
okx
We need to translate the given text from English to Spanish. The text is inside <text> tags. The instruction says to preserve product names, protocol names, URLs, numbers, technical terms. The name "okx-agent-task" appears in the text, so we preserve it. Also preserve "SKILL.md". The text includes a list of conditions and keywords. We need to translate the surrounding text but keep the keywords as they are? The instruction says "preserve product names, protocol names, URLs, numbers, and technical terms." The keywords like "发布任务" are Chinese, and "publish task" etc. are English. They are part of the activation conditions. Should we translate them? The instruction says "preserve ... technical terms". These keywords might be considered technical terms or commands. However, the target language is Spanish, and the user likely expects the keywords to remain as they are because they are specific triggers. The instruction says "Do not add claims, explanations, Markdown, bullets, links, labels, prefixes, or extra commentary." So we should translate the
developmentapicommunication
okx-agent-payments-protocol
okx
Usar cuando un agente recibe un HTTP 402 / payment-required, o el usuario menciona x402, x402Version, X-PAYMENT, PAYMENT-REQUIRED, PAYMENT-SIGNATURE, WWW-Authenticate: Payment, permit2, upto, facturación medida, un canal de pago / vale / sesión, channelId / channel_id, abrir / cerrar / recargar / liquidar / reembolsar un canal, un paymentId o un enlace a2a_, crear / verificar un enlace de pago, A2MCP / un endpoint A2MCP, o enviar una solicitud a / llamar a un endpoint de un Agente con un endpoint concreto...
okx-security
okx
Usa esta skill para escaneo de seguridad: verificar seguridad de transacciones, ¿es segura esta transacción?, verificación previa a ejecución, escaneo de seguridad, escaneo de riesgo de tokens, detección de honeypot, detección de phishing en DApp/URL, seguridad de firma de mensajes, detección de transacciones maliciosas, verificaciones de seguridad de aprobaciones, gestión de aprobaciones de tokens. Disparadores: '¿es seguro este token?', 'verificar seguridad del token', 'verificar honeypot', 'escanear esta tx', 'escanear esta tx de swap', 'verificar riesgo de tx', '¿es esta URL una estafa?', 'verificar si esta dapp es segura', 'phishing...
okx-task-watch
okx
We need to translate the given text from English to Spanish, preserving the name "okx-task-watch" and other technical terms. The text includes a mix of Chinese and English phrases, but the target language is Spanish. The instruction says to translate only the text inside <text>. Do not include the name unless it appears in the source text. The name "okx-task-watch" is not inside the <text>? Actually the <text> contains "okx-task-watch" as part of the content? Let's check: The <text> starts with "监听任务进展 / 帮我盯着任务 / ..." and later includes "okx-task-watch" as part of the description? Wait, the instruction says "Name to preserve: okx-task-watch" but the text inside <text> does not contain that exact string? Let's read carefully: The text inside <text> is: "监听任务进展 / 帮我盯着任务 / 任务有动静告诉我 / 历史消息 / 未读消息 / 未决策 / 待决策 /
developmentapiproductivity