Nome de capacidade é vocabulário interno. usdt_to_pix só significa alguma coisa para quem já conhece a Lunium — então cada capacidade declara o que faz, em campos que dá para filtrar.
| Campo | Para quê |
|---|---|
intent | Vocabulário de intenção: offramp, sell_crypto, cash_out… Casa por token. Há um índice invertido em como_escolher_capacidade.por_intencao. |
can_solve | Frases em linguagem natural do que a capacidade resolve. Casa por semelhança semântica — que é como um modelo procura. |
input_assets · input_networks | O que ela aceita. * significa “qualquer coisa do catálogo”. |
output_currencies | O que ela devolve. |
payment_rails | Por qual trilho. Hoje: PIX. |
endpoint | Onde se executa. Você não precisa conhecê-lo de antemão — ele vem daqui. |
settlement_speed | seconds no trilho instantâneo, minutes no caminho convert. |
// "tenho USDT e quero reais via PIX"
const serve = (c) =>
(c.input_assets.includes("USDT") || c.input_assets.includes("*")) &&
c.output_currencies.includes("BRL") &&
c.payment_rails.includes("PIX");
Isso devolve usdt_to_pix e crypto_to_pix. Entre as duas, settlement_speed desempata.
execucao[<capacidade>] traz o endpoint exato, os campos obrigatórios e um exemplo pronto. Deduzir schema por palavra-chave é onde integração autônoma quebra em silêncio.— capacidades, — intenções indexadas:
| Capacidade | Intenções | Entra → sai | Endpoint |
|---|---|---|---|
| carregando… | |||
curl https://api.luniumpay.com/mesh | jq .capacidades