sapiens_musicator
Musicator: loop completo de música via voz Sapiens, sem precisar da UI (qualquer logado; lyrics 300 / render 3000 Sinapses). Sub-actions: 'create' (cria brief+track draft num passo, custo 0, devolve trackId), 'lyrics' (gera letra PT + stylePrompt EN; passe trackId pra GRAVAR na track e deixar pronta pra render, ou sem trackId pra só receber o texto inline; 300 sinapses), 'list' (suas tracks: id/título/status/áudio), 'get' (detalhe de uma track pra acompanhar render, status/áudio/letra), 'render' (schedula o synth num trackId pronto, assíncrono fire-and-forget, 3/min; model escolhe o motor: 'pro' Lyria 3.5 (default), 'clip' Lyria 3 Clip, 'mureka' Mureka 9.5, 'minimax' MiniMax Music 2.6, 'elevenlabs' ElevenLabs Music com durationSeconds 30/60/120/180; preço fixo por faixa, menos o ElevenLabs, que cobra pela duração: puxe a skill 'musica' pra tabela antes de disparar), 'publish' (publica uma faixa PRONTA do user no Acervo da Comunidade (aba Músicas), com eco no Chat e Fórum; CURADO: só admin/dono, custo 0, idempotente), 'list_public' (lê o Acervo público de músicas da Comunidade, sem custo, sem login). Fluxo cheio: create → lyrics(trackId) → render → get (poll status: rendering → ready/failed) → publish (dono). Tudo escopado por dono (só mexe nas suas tracks).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | action=list_public: página do Acervo público (0-based, default 0). | |
| seed | No | Pra action=render: seed pra reprodutibilidade do synth. | |
| limit | No | action=list: quantas tracks trazer (1-50, default 20). action=list_public: faixas do Acervo (1-48, default 18). | |
| model | No | Pra action=render: motor da faixa. 'pro' = Lyria 3.5 (default, faixa inteira até 3 min, lê imagem de referência). 'clip' = Lyria 3 Clip (rascunho de 30s). 'mureka' = Mureka 9.5 (faixa inteira, letra até 5.000 caracteres). 'minimax' = MiniMax Music 2.6 (faixa inteira até 5 min, letra de 10 a 3.000 caracteres). 'elevenlabs' = ElevenLabs Music (duração escolhida em durationSeconds, letra até 3.500 caracteres). Preço: o mesmo render fixo em todos, menos 'elevenlabs', que cobra pela duração (tabela na skill 'musica'; confirme com a pessoa antes). Só o Lyria lê imagem de referência; negativePrompt e seed são ignorados nos motores de fora do Lyria. | |
| title | No | Título da faixa (create/lyrics). Vai no brief/metadata. Mín 3 chars. | |
| action | Yes | ||
| toChat | No | action=publish: ecoar no Chat da comunidade (card tocável). Default true. | |
| context | No | Tema/argumento (create exige ≥20 chars; lyrics ≥10). 1-2 frases com ângulo/provocação. | |
| toForum | No | action=publish: ecoar no Fórum como tese-raiz. Default true. | |
| trackId | No | musicator_tracks:_id. Obrigatório p/ action=render e action=get. Em action=lyrics, opcional: se passado, grava a letra na track (status=lyrics_ready). | |
| language | No | Default 'pt-BR'. Pode ser 'en', 'es', etc. | |
| direction | No | Gênero/mood (ex: 'synthwave melancólico 1980s', 'lo-fi hip-hop 80 BPM', 'acoustic indie folk'). Default 'livre'. | |
| negativePrompt | No | Pra action=render: negative prompt do synth (provider-dependent). | |
| durationSeconds | No | Pra action=render com model='elevenlabs': duração da faixa em segundos, uma de 30, 60, 120 ou 180 (default 120). Ignorado nos outros motores. | |
| stylePromptOverride | No | Pra action=render: sobrescreve stylePrompt antes do render (não muda track persistido). |