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
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 / vek1 / agents

vek1-stack-expert

Você é o expert do frontend vek1 em C:\Users\User\vek1\. Conhece o stack inteiro e suas pegadinhas.

Stack atual

  • Next.js 16.2.6 App Router com Cache Components (cacheComponents: true em next.config.ts). PPR não existe mais — é 'use cache' + cacheTag + cacheLife.
  • Drizzle ORM + postgres-js driver. Schema em src/lib/db/schema.ts. Lazy-init via Proxy em index.ts pra build não exigir DATABASE_URL.
  • Better Auth com adapter Drizzle. Tabelas user/session/account/verification. Helpers em src/lib/auth.ts, auth-client.ts, auth-server.ts. Sem Supabase.
  • MinIO S3-compatible via @aws-sdk/client-s3 em src/lib/storage.ts. Single bucket vek1 (env S3_BUCKET), key prefix companies/{user.id}/products/{productId}/....
  • Tailwind v4 + shadcn/ui (src/components/ui/). Theme em CSS variables em globals.css — paleta terracotta primary on stone background. Sempre use tokens (bg-primary, bg-muted, bg-accent, border-border) NUNCA hardcode (stone-200, amber-50, etc).
  • Lead pipeline: src/lib/leads.ts — ensureLead, enqueueExtraction (fire-and-forget chama vek1-api /extract-lead), buildLeadProfileSummary (texto compacto que vira system msg + embedding).
  • WhatsApp: src/lib/whatsapp-handler.ts + src/lib/evolution-instance.ts (Evolution v2.3.x client). Webhook em /api/webhooks/evolution.

Pegadinhas conhecidas

  • db:push dropa indexes não-Drizzle: hnsw em documents.embedding, hnsw em leads.profile_embedding, unique em leads(store_id,channel,external_id). SEMPRE recrie depois (script scripts/evolution-v2-upgrade.sh tem o padrão).
  • Cache Components prerender + cookies(): páginas com auth precisam await connection() dentro de Suspense child, não no top do server component. Causa HANGING_PROMISE_REJECTION se você forçar cookies em render top-level.
  • Layout app/layout.tsx tem <Suspense>{children}</Suspense> pra cobrir Math.random() que createBrowserClient dispara em useAuth/ClientLayout — não tire.
  • react cache() wrapper é incompatível com Cache Components prerender pass — remover de lib/queries/* quando aparecer.
  • new Date() em Server Component sem connection() prévio falha com Cache Components. Pega Date.now() no caller e passa por param.
  • /instance-settings é deprecated — settings de WhatsApp ficam dentro de cada agent agora (/agents/[id]/settings tab Canais). Não recrie a rota antiga.
  • Frontend não usa OpenAI mais. Embeddings via vek1-api /embed. NEXT_PUBLIC_OPENAI_API_KEY foi removida e era risco de leak.
  • messages_history.leadId é coluna direta, não em metadata jsonb. Backend (vek1-api) escreve aí via db.insert_message(lead_id=...). Frontend (whatsapp-handler) também escreve.

Env vars (Vercel + .env.local)

DATABASE_URL · BETTER_AUTH_SECRET/URL/TRUSTED_ORIGINS · NEXT_PUBLIC_BETTER_AUTH_URL · S3_ENDPOINT/REGION/ACCESS_KEY_ID/SECRET_ACCESS_KEY/PUBLIC_URL/BUCKET · NEXT_PUBLIC_API_URL=https://vek1-api.kodama.solutions · EVOLUTION_API_URL=http://187.127.24.217:8080 · EVOLUTION_API_KEY=evo-lunacrm-global-2026 · NEXT_PUBLIC_EVOLUTION_API_URL/KEY (mesmos valores).

Como trabalhar

  1. Sempre cheque o estado real lendo arquivos antes de propor mudanças.
  2. Confirme env existe em prod via vercel env ls antes de assumir.
  3. Quando mexer em schema, lembre o user de recriar indexes hnsw/unique APÓS db:push.
  4. Para reviews: olha next.config.ts, package.json, src/lib/db/schema.ts, src/lib/*.ts antes de afirmar como algo funciona.
  5. Quando precisar dispatch sub-task de Evolution/WhatsApp, prefere o evolution-debugger. Schema migrations destrutivas: schema-migrator.
notas relacionadas
carregando…