K
Kodama Vault
knowledge hub
Vault
HomeBoardMap of ContentChatConversasAuditoria
Agentes
AgentsIssuesCriar IssueTerminalPreviews
Sistema
MCPSetup MCPSettings
Brain
amazon-arb-scoutcode-standards-auditordesign-master (subagent)erica-nardi-auditorfeature-auditorGlobal agent instructionskodama-hub-auditorAgente: kodama-hub-launch-qalanding-page-architect (subagent spec)meta-campaign-builder (subagent spec)need-context-auditorprospek-blog-auditor — gate editorial do blog do Prospekprospek-blog-author — autor do blog do Prospekprospek-campaign-manager — gerente de campanhas do Prospekprospek-content-director — diretor de conteúdo diário do blogProspek Demo RecorderSubagent — prospek-marketing-creativeprospek-qaprospek-social-producerprospek-social-publisherprospek-social-strategistroblox-sim-buildersageland-auditor (subagent spec)seo-geo-optimizerteam-leadervek1-auditor — subagent specvek1-styleguide-auditor
Análise custos migração — evitar senha no payloadLevantamento fluxo registro + duplicados StripeRelatório segurança + pentes finos (Cláudio)Revisão security concerns e race conditionsMagic link / esqueceu senha via SupabaseCorrigir erros pós-upgrade TypeScriptTestar PRs do agente Vault para mergeAnálise de 3 issues para iniciarErro no terminal do VSCodePR #173 — aguardando aprovação do LeoTestar fluxo ponta a ponta — criação de clients no StripePR #172 — testar e subir correção de funções deprecatedPitch de vendas SaaS — agendar call de conversãoOrganizar issues e bugs rápidos para a semanaMerge PR cadastro-novo — funcionalidades e correçõesCorrigir bugs PR #173 e #172 — image domainsPR mesosóico — página de acesso mobile + segurança OTPRefatoração de códigos — PR #202Ajustes em PRs abertos de ontemEstudo de jornada de compra e técnicas de fechamentoDefinir preço e entregável do produtoProspecção de reuniões para esta semanaAgente anti AI slop — centralização de conhecimento ConnfitPR #179 — resolver conflitos e erros de teste CLIAlinhamento de preços e usos da ConffitFix adicional para PR #183 — perfil do usuárioCorrigir estilização da Connfit para identidade visualSubir modificações no copy da ConnfitCriação de 4 campanhas no Meta AdsRevisão de PRs do GilinesExploração do Roblox EditorRelatório João — devolutiva TikTok ShopReunião presencial Zassi Uniformes — diagnóstico automaçõesCriar repositório de diagnósticos e relatórios de entrevistasDiagnóstico da ZassiGeração de relatórios para reuniões de fechamentoProposta Zassi — apresentação amanhãProspecção — Clínica Odontológica Dr. ButAlinhamento com ADRIANO sobre produtos e simulaçãoCombinar com Lauro os produtos do diagnósticoSolicitar recursos (vbucks) à INEDIA/ObiettoAnálise de issues do Kodama-Hub e início pelo vaultIssue KH03 — estudo de abordagem DockerKH-12 — script de correção e PR no kodama-hubTeste de despacho e agentes da vaultRemover issues 7, 9 e 10 do fluxo de trabalhoKH-15 — testar e preparar para Gilini testar em prod (Kodama Hub)VEK-1 — testar no WhatsAppBot local — testar localmenteEscrever issues para replicação do modelo de LPSwarm — modelar landing pages para tecnologias concorrentes (Google Ads)Configurar Docker no Windows para tarefas do Hub LisaLP de Suplementos — iniciar issue #96 (Vek)PR #93 git — subir para testar em prodPR #94 git — despachar agents pelo vaultTestes e documentação de bugs no site VEKPR #98 de LP — cosméticosRemover issues concluídas do board (#5, #10, #11, #12, #13)PRs de comparação vek1 vs LPs — correções e mergeDocumentação de uso e bugs na Vek1Criação de issues via Vault — bugs VekFix bug redirect botão Produtos na sidebar colapsada (vek)Planejamento de issues e mini sprint no site da Vek1facilitabusca — cron de fetch parado desde 05/08 (RESOLVIDO 11/08)
kodama-watchdog — self-heal + alerta pra todos os projetos da VPS HermesVPS Hermes — acesso e estrutura
Memory namespacing (multi-user)
OpenSpec -- Spec-Driven Development no VaultPlano de Teste — OpenSpec Vault Persistence
CaumzitoNyxzZanini
GOALHEAD — Effect House (2026-06-28) — mecânica ALVOS + tracking NATIVO (Face Binding) + áudioGOALHEAD — game effect de cabeçada (Copa) pro TikTok
Amazon Arb (atacado→varejo BR)
Claude Code — Setup MCP VaultClaude Desktop — Setup MCP Vault (remote)VS Code + Copilot — Setup MCP Vault
Skill — Carousel Designer (Paper Style)carousel-paperPlugin marketing-skills (coreyhaines31/marketingskills)
Standup 2026-05-14Standup 2026-05-15Standup 2026-05-16Standup 2026-05-17Standup 2026-05-18Standup 2026-05-19Standup 2026-05-20Standup 2026-05-21Standup 2026-05-22Standup 2026-05-25Standup 2026-05-26Standup 2026-05-27Standup 2026-05-28Standup 2026-05-29Standup 2026-06-01Standup 2026-06-02Standup 2026-06-03Standup 2026-06-05Standup 2026-06-11Standup 2026-06-15Standup 2026-06-16Standup 2026-06-17Standup 2026-06-18Standup 2026-06-22Standup 2026-06-23Standup 2026-06-29Standup 2026-06-30Standup 2026-07-01Standup 2026-07-02Standup 2026-07-03Standup 2026-07-06Standup 2026-07-07Standup 2026-07-08Standup 2026-07-09Standup 2026-07-10Standup 2026-07-13Standup 2026-07-14Standup 2026-07-15Standup 2026-07-16Standup 2026-07-17Standup 2026-07-21Standup 2026-07-22Standup 2026-07-23Standup 2026-07-28Standup 2026-07-29Standup 2026-07-30Standup 2026-07-31Standup 2026-08-03Standup 2026-08-06Standup 2026-08-07Standup 2026-08-10Standup 2026-08-11Standup 2026-08-12Standups
MOCStandup 2026 07 23Welcome
v0.3
K
Kodama Vault
brain / projects / goalhead

GOALHEAD — Effect House (2026-06-28) — mecânica ALVOS + tracking NATIVO (Face Binding) + áudio

Montagem no Effect House — 2026-06-28

Sessão via Claude Eyes. Efeito jogável, compilando limpo, salvo. Tracking da cabeça AGORA é nativo
(Face Binding) — abandonado o mapeamento manual de coordenadas.

Projeto

  • ~/Desktop/goalhead/ (effect.ehproj). Desafio Sports effect challenge → Game sub challenge.
  • Código também em ~/goalhead/scripts/GoalheadGame.ts (sincronizado via cp; ambos GoalheadGame).
  • Áudios-fonte em ~/Desktop/goalhead-audio/.

🎮 MECÂNICA — ALVOS (não é embaixadinha; sem nomes de time / sem bandeiras)

  • Cabeça = superfície de colisão (círculo) com física real (dá p/ equilibrar). Mover a cabeça
    transfere velocidade à bola (mira). Alvos (emoji 🎯, objeto "Target") aparecem ACIMA da cabeça;
    acertar = +1 e novo alvo. Bola cai abaixo do chão = fim. Som: bola ao quicar, torcida ao acertar.
  • Física: gravidade em sub-passos, colisão círculo-círculo (restituição + correção de posição +
    transferência da velocidade da cabeça), quica em paredes/teto.

🎯 TRACKING DA CABEÇA — NATIVO via FACE BINDING (a solução que funcionou)

O mapeamento manual rosto-normalizado→canvas era device-específico e SEMPRE quebrava no celular
(bola "extremamente acima"), apesar de perfeito no desktop. Trocado por tracking nativo do EH:

  • Face Sticker (botão da barra) cria grupo "Face Binding" → "Image" = imagem grudada no rosto
    pelo tracking nativo do EH (funciona igual em qualquer aparelho). Renomear falhou na GUI; usei o
    nome padrão "Image" e liguei no script via @serializeProperty headAnchorObj + dropdown do
    Inspector (Scene picker → busca "Image" → Ok). Placeholder cinza escondido por aimg.opacity = 0.
  • Script lê a posição 3D da âncora e PROJETA pela câmera → posição de tela correta em qualquer
    device, SEM cálculo manual:
    wp = headAnchorObj.getComponent("Transform").getWorldPosition()   // Vector3f world
    vp = cameraComp.worldToViewportPoint(wp)                           // [0,1], origem embaixo-esq
    headX = (vp.x-0.5)*720 ; headY = (vp.y-0.5)*1280 + ANCHOR_OFFY_K*HEAD_R
    
    • cameraComp = scn.findSceneObject("Camera").getComponent("Camera") (a câmera 3D "Camera").
    • Confirmado que RASTREIA: trocar o preview p/ entrada "Nodding (Person 1)" (dropdown de
      entrada x1145,y181 → categoria Face) mostra a cabeça mexendo e a âncora seguindo (wp muda).
    • ANCHOR_OFFY_K (frações do RAIO; negativo = desce) ajusta o centro de colisão. A projeção da
      âncora cai no alto da testa → ANCHOR_OFFY_K=-1.0 baixa ~1 raio p/ a bola "bater na cabeça".
      Como é proporcional ao raio (que escala com distância), fica consistente entre aparelhos.
  • Tamanho (HEAD_R) AO VIVO: HEAD_R_FACTOR(0.55) * altura do rosto (AlgorithmManager ...getFaceBaseInfo(0).rect.height*1280), clamp [90,320], suavizado. Fator 0.95 deixava ~2x a cabeça;
    0.55 → diâmetro ~1.1x o rosto.
  • Marcador 🟢 de DEBUG (objeto "HeadMarker", 2D) é posicionado em headX/headY e escala p/ mostrar
    o diâmetro da colisão. REMOVER quando aprovado (cobre o rosto no jogo).
  • Calibração agora é só contagem "CALIBRANDO 2..1" + captura do repouso (headBaseX/Y = headX/Y já
    projetado) e do tamanho; NÃO usa mais mapFace/SX_REST por fórmula. mapFace fica só de fallback.

🔑 ÁUDIO POR SCRIPT

  • IAudioComponent da API é vazio, MAS o runtime AudioComponent (DynamicComponent) tem
    play()/stop() userPublicAPI: obj.getComponent("AudioComponent").play() (cast any).
    Audio Players com Autoplay=OFF; script dispara. ❌ toggle de enabled NÃO redispara Autoplay.
    3 players: StadiumSound (torcida, loop, autoplay ON), BallSound (bola, once), CheerSound (cheer, once).
    bola amplificada via ffmpeg (volume=12dB+alimiter).

⚠️ GOTCHAs de automação no EH

  • Valores @serializeProperty ficam "presos" no main.scene e sobrescrevem o código → geometria/física
    são campos private simples (sem @serializeProperty); só os OBJETOS são serializeProperty.
  • Objetos por NOME via scene.findSceneObject(...). findSceneObject acha aninhados (recursivo).
  • Renomear/cor na GUI é instável (double-click no nome do Inspector, HEX da cor) — falhou várias
    vezes. Atribuir serializeProperty é mais confiável via o dropdown/Scene picker do Inspector.
  • Cmd+S é interceptado pela janela do Claude Eyes → usar menu File → Save (x168,y11 → x172,y118).
    EH some da frente: osascript -e 'tell application "Effect House" to activate'. Clicar perto da janela
    Claude Eyes a ativa e fecha popovers do EH → minimizar (botão amarelo) quando atrapalhar.
  • Compile: /tmp/eh.log → [%%USER$$COMPILE]ts project compiled success vs error TSxxxx.
    console.log NÃO vai pro eh.log → debugar escrevendo em Text/hint e lendo no screenshot (foi assim que
    li wp/vp p/ achar o offset). API: /Applications/Effect House.app/.../UserAPI/APJS.d.ts.
  • Preview: "Preview in TikTok" (x1472,y49) → "Resend link" (x1473,y186). Entrada do preview no
    dropdown x1145,y181 (tem "Idle/Nodding/Mouth Open Person 1..4" p/ testar tracking no desktop).

Falta

  1. Confirmar no celular: bola gruda/acompanha (✅ esperado agora) e posição vertical
    (ANCHOR_OFFY_K, hoje -1.0). Ajustar fino se preciso.
  2. Remover o marcador verde "HeadMarker" quando a colisão estiver aprovada.
  3. Publicar/Submit (Avatar & Transformation) até 2026-07-09 — só com OK explícito.

Relacionado: projects/goalhead/overview

notas relacionadas
carregando…