Estudo de caso · S7te Digital

No Ar

Construindo e publicando produtos de voz com IA — do formulário travado ao primeiro "Alexa, abra a skill…"

2
produtos de voz movidos numa só sessão
10
módulos, na ordem em que tudo aconteceu
5
locales aceitos pelo Alexa+ Nomination — nenhum é pt-BR
0
assets de terceiros na vitrine final
Uma lua crescente dourada (Mia Voice) e um carretel de filme dourado (Reel Talk) ligados por uma onda sonora, num céu noturno estrelado.

Este roteiro nasceu de uma sessão de trabalho real, não de um tutorial genérico. O ponto de partida foi burocrático — preencher um formulário da Amazon — e virou uma tarde de decisões técnicas e estratégicas: por que um produto pode ser público e outro nunca pode, como uma vitrine de loja é auditada campo a campo, e o que fazer quando o upload de um vídeo falha sem dizer por quê. Feito para times técnicos e de negócio juntos — cada módulo tem a decisão por trás e o comando que a executou.

00

Por que voz?

Contexto

O pano de fundo do ecossistema AI-First da S7te e o motivo de investir num canal de voz.

  1. 0.1

    O ecossistema por trás da voz

    O agente Hermes já operava por Telegram e API REST; a voz é mais um canal para os mesmos agentes, não um produto isolado.

  2. 0.2

    Duas skills que já existiam

    S7te Voice (briefing, missões e checkpoints do CEO) e Mia Voice (painel de atendimento da cliente Mia Luna) — ambas privadas, em modo desenvolvimento havia meses.

  3. 0.3

    O gatilho da sessão

    Preencher o Alexa+ Skills Nomination Form — o formulário oficial para levar skills já existentes ao novo programa Alexa+.

01

O formulário que não fechava

Descoberta

Cada campo revelou uma regra que não estava documentada em nenhum lugar visível.

  1. 1.1

    Vendor ID não se inventa

    Não é o CNPJ da empresa: mora em Alexa Developer Console → Settings → My IDs, não em "My Account".

  2. 1.2

    O primeiro bloqueio

    O formulário só aceita cinco locales — en-US, en-CA, es-MX, en-GB, it-IT. Rolamos até o fim: pt-BR simplesmente não está na lista.

  3. 1.3

    O segundo bloqueio, mais profundo

    Skills privadas (modo dev + allowlist de userId) nunca passam em certificação — o revisor da Amazon não consegue nem abrir a skill.

  4. 1.4

    Duas certificações diferentes

    "Certificação normal" da Store brasileira existe e aceita pt-BR desde sempre; "Alexa+ Nomination" é um programa novo e separado, só nesses cinco mercados.

02

A decisão: público vs. privado

Decisão

Antes de escrever qualquer código, a pergunta certa era estratégica, não técnica.

Diagrama: a mesma skill, com allowlist ativa, bloqueia o revisor da Amazon e nunca certifica; sem allowlist, qualquer usuário acessa e a skill pode certificar.
O mesmo código, dois destinos — a allowlist decide qual.
  1. 2.1

    Por que dados internos nunca vão à Store

    Briefing executivo, missões, checkpoints e leads de cliente não têm o que fazer numa vitrine pública — mesmo que pudessem certificar.

  2. 2.2

    A saída

    Construir um produto novo, de consumidor, só para percorrer o fluxo de nomeação de verdade. É assim que nasce a Reel Talk.

  3. 2.3

    O framework que sobra disso

    Allowlist é bug numa skill pública; é a própria feature de segurança numa skill B2B.

03

Reel Talk: uma skill pública do zero

Construção

Mesma espinha dorsal das skills privadas — com a allowlist removida de propósito.

→ hoje: em revisão na Amazon

Diagrama do pipeline de deploy: DNS (A record manual) para systemd, para nginx, para certbot TLS.
DNS → systemd → nginx → certbot — o mesmo pipeline de todo o ecossistema.
  1. 3.1

    Arquitetura clonada e adaptada

    FastAPI + verificação de assinatura Amazon (ask-sdk-webservice-support) — o mesmo esqueleto usado nas skills internas.

  2. 3.2

    O cérebro

    Gemini 2.5 Flash com um system prompt de cinema: respostas curtas, sem spoiler, sempre volta pro tema.

  3. 3.3

    Deploy de produção real

    A record de DNS manual → systemdnginxcertbot — o mesmo pipeline de todo o ecossistema S7te.

  4. 3.4

    Validação antes da vitrine

    Testar no simulador da Amazon antes de gastar uma linha sequer em descrição de loja.

04

A vitrine da Skill Store

Vitrine

Os campos que ninguém lê até o envio travar sozinho.

  1. 4.1

    Os campos obrigatórios

    Public Name, One Sentence e Detailed Description, Example Phrases, Category, Keywords.

  2. 4.2

    As regras escondidas da Detailed Description

    Citar pré-requisitos e "como começar", mencionar toda funcionalidade, manter a palavra "skill" em inglês mesmo num texto em português, nunca nomear marca de terceiro sem prova de autorização.

  3. 4.3

    A gramática exata das Example Phrases

    [palavra de ativação] + [palavra de lançamento] + [invocação] + [palavra de conexão] + a utterance exata do modelo — mudar uma palavra quebra o reconhecimento.

  4. 4.4

    Privacy Policy e Terms of Use

    Por que hospedar as próprias páginas em vez de linkar qualquer coisa genérica.

05

Fazendo os próprios assets

Assets

Sem estoque de terceiros, sem depender de designer — Python e linha de comando resolvem.

  1. 5.1

    Por que um clipe de moda não serve

    A vitrine de uma skill precisa representar o que ela faz, não a marca em geral.

  2. 5.2

    Ícones 108×512 com PIL

    Paleta, forma e silhueta que ainda funcionam em miniatura, gerados por script — não desenhados à mão.

  3. 5.3

    Vídeo de vitrine com ffmpeg

    Crossfade entre frames estáticos, sem gravar nada de câmera.

  4. 5.4

    O bug invisível

    O upload do vídeo falhava sem explicação; a causa só apareceu comparando ffprobe de um vídeo aceito contra o nosso — faltava faixa de áudio, DAR/SAR e o "brand" do container.

06

O processo de certificação por dentro

Certificação

A Amazon quase nunca aponta o campo exato — só a ferramenta certa aponta.

  1. 6.1

    Privacy & Compliance

    A subpágina que fica em branco por padrão e é a causa real do aviso genérico "Check Preview Errors".

  2. 6.2

    Testing Instructions

    Escrever para um revisor humano que não tem nenhum contexto sobre o seu produto.

  3. 6.3

    Validation

    Confiar nela, não no banner do topo: ela aponta o campo exato, sempre.

  4. 6.4

    Submission

    "Certify and publish now" existe — mas a decisão real é saber quando essa tela não deveria nem ser aberta.

07

Mia Voice: distribuindo em privado

Distribuição

A skill do Módulo 00, agora chegando à cliente sem nunca ser publicada.

→ hoje: beta privado

Diagrama da dupla porta de segurança: convite do Beta Test, habilitação no app Alexa, allowlist de userId no backend, e então a skill responde por voz.
Duas portas reais — o convite decide quem pode habilitar, a allowlist decide quem o backend atende.
  1. 7.1

    Beta Test

    Como uma skill "In Dev" chega a terceiros sem certificação: até 500 testers, link ativo por 90 dias.

  2. 7.2

    A dupla porta de segurança

    O convite do Beta Test controla quem pode habilitar; a allowlist de userId no backend controla quem o backend realmente atende.

  3. 7.3

    Onboarding de um tester real

    Capturar o userId no log da skill, liberar no backend, confirmar o uso.

  4. 7.4

    Por que a vitrine ainda importa

    Mesmo uma skill que nunca vai à Store precisa passar pela Validation para o Beta Test ser liberado.

08

Lições que ficam

Retrospectiva

Os erros pequenos que custaram mais tempo do que qualquer decisão grande.

  1. 8.1

    Texto de placeholder grudado

    "Sample Short Descr" emendado no meio da frase real, sem que ninguém percebesse de imediato.

  2. 8.2

    Um hífen reprovado

    "Sci-fi" disparava o corretor ortográfico do próprio console — trocado por uma palavra sem hífen.

  3. 8.3

    A página que reseta sozinha

    Public Name, descrições e ícones voltam ao padrão entre sessões; rodar Validation de novo é sempre mais confiável do que confiar na memória.

  4. 8.4

    O padrão geral

    A mesma causa — Privacy & Compliance em branco — travou as duas skills, em dias diferentes.

09

Encerramento: o playbook fica pronto

Playbook

Tudo o que já pode ser reaproveitado, literalmente, no próximo cliente.

  1. 9.1

    O esqueleto técnico

    FastAPI + verificação de assinatura + deploy (DNS, systemd, nginx, certbot) funciona para qualquer skill nova, pública ou privada.

  2. 9.2

    O gerador de assets

    Os mesmos scripts de PIL e ffmpeg produzem ícones e vídeo para o próximo cliente em minutos.

  3. 9.3

    O roteiro de vitrine e compliance

    Os mesmos campos, na mesma ordem, a cada nova submissão.

  4. 9.4

    O que fica em aberto

    Aprovação da Reel Talk, mais testers na Mia Voice, e a trilha futura do Alexa+ Multi-Agent SDK.

O que fica pronto pra usar

Nenhuma parte deste trabalho foi descartável. O esqueleto de FastAPI e verificação de assinatura, os scripts de geração de ícones e vídeo, o roteiro de campos de certificação — tudo isso é reaproveitável, literalmente, na próxima skill, do próximo cliente.

O que mudou entre a primeira e a segunda skill desta sessão não foi o código. Foi a decisão de quando abrir mão da allowlist — e quando ela é a própria razão de existir do produto.