Canvora × nanoclaw

CLI de visuais on-brand para o nanoclaw

O nanoclaw mantém o loop do agente no mínimo — e a Canvora acompanha: uma env var, um comando na entrada, visuais prontos com a sua marca na saída.

Créditos grátis, sem cartão. Garanta que sempre haja um humano no loop.

O setup completo

Terminal
# Instale as skills (ou use a CLI pura - ambos funcionam)
npx skills add canvora/canvora-mcp

# A autenticação é uma env var
export CANVORA_API_KEY=vd_...

# Teste rápido
canvora credits --json

É isso que o seu agente entrega

Uma geração, localizada duas vezes. Mesmo design, recomposto nativamente em espanhol e árabe — escrita da direita para a esquerda do jeito certo, não inglês espelhado.

O mesmo visual on-brand gerado em inglês, espanhol e árabe — design idêntico, composição RTL correta

Gerado com os mesmos comandos mostrados nesta página.

Como funciona

1. Dispare

A primeira linha do stdout é o id puro da geração

Terminal
ID=$(canvora generate \
  --input "Três hábitos de times remotos altamente eficazes..." \
  --format instagram_post --style minimal | head -1)

2. Consulte

Checagens baratas de status até completed

Terminal
while true; do
  S=$(canvora status "$ID" --json | jq -r .status)
  [ "$S" = "completed" ] && break
  [ "$S" = "failed" ] && exit 1
  sleep 10
done

3. Entregue

Arquivos ou URLs de CDN, o que o loop precisar

Terminal
canvora download "$ID" --dir out/
canvora status "$ID" --json | jq -r '.outputs[].fileUrl'

O que é o nanoclaw?

O nanoclaw é a visão minimalista do agente de IA pessoal: um núcleo pequeno e auditável que se apoia em ferramentas externas bem-comportadas em vez de complexidade embutida. A Canvora combina com essa filosofia — o pipeline visual inteiro se resume a quatro comandos.

Superfície mínima

generate, status, download — o loop essencial cabe em três comandos. Tudo imprime JSON com --json; o progresso vai para o stderr, os resultados para o stdout.

Sem estado para gerenciar

Sem sessões, sem SDK, sem arquivos de configuração. A API key vem do ambiente; os ids de geração são strings simples que seu loop passa adiante.

Falha com segurança

O saldo é verificado antes de qualquer dedução, os erros são JSON tipado e gerações que falham são reembolsadas automaticamente — um loop minimalista não consegue drenar nada em silêncio.

A ferramenta do agente inteira, em uma tela

Esta é toda a integração — sem biblioteca wrapper

Terminal
#!/bin/sh
# ferramenta nanoclaw: texto -> post de instagram com sua marca -> URL do arquivo
ID=$(canvora generate --input "$1" \
  --format instagram_post --brand "$BRAND_ID" | head -1)
until [ "$(canvora status "$ID" --json | jq -r .status)" = "completed" ]
do sleep 10; done
canvora status "$ID" --json | jq -r '.outputs[0].fileUrl'

Adicione idiomas sem adicionar código

O mesmo loop minimalista cobre todos os mercados

Terminal
# Um comando extra localiza o visual pronto -
# mesmo design, texto recomposto nativamente:
canvora localize "$ID" --language tr
canvora localize "$ID" --language ar   # RTL correto, não inglês espelhado

Por que nanoclaw + Canvora

  • Loop central de três comandos: generate, status, download
  • stdout é dado, stderr é progresso — pipes compõem de forma limpa
  • Sem SDK, sem sessão, sem configuração: uma env var e strings simples
  • Erros em JSON tipado e checagem de saldo antes da dedução — seguro em loops sem supervisão
  • localize e variations estendem o loop sem código novo de integração

Referência de comandos

Adicione --json a qualquer comando para saída legível por máquina. O progresso vai para o stderr, os resultados para o stdout.

ComandoDescrição
canvora generateCrie visuais a partir de --idea, texto com --input, --url ou --file-url; escolha formatos, marca, estilo e idioma
canvora status <id>Consulte uma geração; --json retorna o status e as URLs dos arquivos de saída
canvora download <id>Salve os arquivos de saída em um diretório
canvora localize <id>Mesmo design, recomposto nativamente em outro idioma (RTL incluído)
canvora variations <id>Versões alternativas de uma geração concluída
canvora edit <outputId>Revise um visual com uma instrução em linguagem natural
canvora formatsListe todos os 100+ ids de formato
canvora brandsListe os kits de marca (cores, fontes, logo, tom)
canvora creditsMostre o saldo de créditos

Mais de 100 formatos, um só motor

Cada formato tem composição e zonas de segurança corretas para a plataforma — seu agente escolhe pelo id.

Carrossel de Instagram

Até 20 slides, do gancho ao CTA

Carrossel de LinkedIn

Posts de documento deslizáveis

Pitch Deck

Conjuntos coesos de vários slides

Post e Story de Instagram

Formatos de feed e vertical

Cartão de Estatística

Um número, desenhado para impactar

Infográfico

Visuais de dados e processos

Header de Blog e Imagem OG

A vitrine do lançamento

Criativos de Anúncio

Anúncios display e sociais

Veja todos os formatos e ferramentas →

Perguntas frequentes

Por que a geração é assíncrona? +

Gerar visuais é trabalho de verdade; uma chamada bloqueante prenderia o loop do agente e estouraria o timeout do shell. Dispare o job, capture o id no stdout e consulte o status. O padrão tem três linhas de sh, mostradas acima, e nunca trava.

Quanto custa cada chamada? +

Créditos fixos: 10 por visual único, 15 por slide de carrossel ou deck. canvora credits --json retorna o saldo; uma requisição que o ultrapasse falha antes de qualquer dedução, com a diferença exata no erro.

E se o loop morrer no meio da geração? +

Nada se perde: a geração continua no servidor e o id permanece consultável. Se falhar, os créditos são reembolsados automaticamente. Rodar o script de novo inicia um job novo e separado — então persista o id se quiser retomar em vez de recomeçar.

Há algo para instalar além da CLI? +

Não. O @canvora/cli é um binário Node simples; o jq dos exemplos é opcional, só facilita. A instalação das skills adiciona workflows prontos por cima, mas a CLI pura já dá conta de tudo.

Também funciona com

A próxima chamada de ferramenta do seu agente é um departamento de design.

Crie uma conta grátis, defina uma chave e deixe o nanoclaw entregar visuais com a sua marca.