EXECUÇÃO • DIAGNÓSTICO • VALIDAÇÃO • IA REAL
Deploy sem medo de falhar.
Plataforma operacional de execução, diagnóstico e validação para desenvolvedores — agora com IA real no chat.
Projetos novos podem falhar no deploy ou pós-deploy. O VISION CORE foi desenhado para manter uma base GOLD ativa, validar alterações e acionar auto-rollback quando uma mudança não atinge o padrão esperado. Na V2.9.10, o chat conecta você a Groq, Gemini e OpenRouter para diagnóstico técnico real em português.
O erro pode acontecer. A falha visível, não.
Como funciona
Você define uma missão. O sistema interpreta o contexto, identifica a causa raiz com Hermes + IA real (Groq/Gemini), planeja a correção e executa mudanças controladas. Nada é promovido sem validação PASS GOLD.
Sem PASS GOLD, nada existe. Sem aprovação humana, nada vai para produção.
Chat com IA real integrada
O chat VISION AI COMMAND agora está conectado a um fallback chain de IAs gratuitas. Você envia uma mensagem — ou faz upload de um arquivo de código — e recebe diagnóstico técnico real em português.
gratuito, rápido
gratuito
gratuito
fallback
Cada provider tem timeout de 15s. Se um falha, o próximo entra automaticamente. A resposta sempre inclui provider e model para rastreabilidade.
Cole um erro, faça upload de um arquivo, descreva o bug — a IA diagnostica e propõe o fix.
Segurança no deploy e pós-deploy
O deploy não encerra o risco. Algumas funcionalidades só podem ser analisadas online, sob carga real, com APIs externas, usuários reais e condições de rede reais.
Por isso, o VISION CORE mantém uma camada de runtime validation: observa funcionalidades recém-ativadas, detecta anomalias, compara comportamento esperado e reverte para o último estado GOLD se houver desvio crítico.
Na V2.9.10, o AEGIS security gate bloqueia automaticamente secrets reais em código (AEGIS_SECRET_005) com score de segurança 0–100. Apenas score=100 libera PASS GOLD.
Validação antes do deploy. Proteção durante o deploy. Segurança contínua após o deploy.
Auto-rollback com estado GOLD
Cada alteração é tratada como uma transação: snapshot do estado atual, aplicação controlada, validação obrigatória e promoção somente após PASS GOLD.
Se falhar, o sistema descarta a alteração e volta automaticamente para o último estado estável, preservando continuidade operacional.
A cadeia RTP-0 a RTP-6 (Real Truth Probe) garante 7 estágios de verificação supervisionada antes de qualquer promoção. O PR #737 (RTP-6) foi o último gate desta versão — mergeado manualmente com autorização humana explícita.
Endpoints em produção verificados
Todos os endpoints foram testados via worker Cloudflare → EB prod. Resultado: 29/29 PASS documentado em FUNCTIONAL_TEST_REPORT.md.
Refatoração assistida de código legado
Sistemas legados acumulam acoplamento, duplicidade, configurações esquecidas e decisões antigas. O VISION CORE auxilia a modernização com etapas menores, análise de impacto, validação por fase e rollback disponível em cada mudança.
Não é reescrita cega. É evolução controlada.
Na prática: faça upload do arquivo com bug no chat, descreva o problema, e a IA diagnostica a causa raiz com o fix exato — como foi feito com o bug de imagem do TechNetGame durante os testes desta versão.
POR QUE O VISION CORE EXISTE
IAs criam. VISION CORE corrige.
Este software foi desenvolvido para resolver o problema mais frustrante de quem desenvolve com IAs: os projetos gerados por inteligência artificial quebram — e você passa horas, às vezes dias, rodando comandos manuais no terminal tentando consertar.
Com o sistema de diagnóstico inteligente e segurança PASS GOLD, você nunca mais vai subir um deploy quebrado. Com apenas um pedido, o VISION CORE assume como missão padrão e recruta uma equipe de agentes para trabalhar simultaneamente no problema — executando todos os comandos necessários, descobrindo a causa raiz e resolvendo até consolidar o PASS GOLD para um deploy saudável e seguro.
Na V2.9.10: o chat está conectado a IA real. Você pode fazer upload de arquivos de código, colar erros, descrever bugs — e receber diagnóstico técnico profundo em português, com causa raiz e fix com código.
Pare de perder horas corrigindo erros manualmente. Deixa o VISION CORE fazer isso.
Software que corrige sistemas automaticamente
VISION CORE não é um software de validação. É um sistema que resolve problemas de software de forma autônoma.
❌ Abordagem antiga
Validação = mercado saturado. Testes, CI/CD e validação já são resolvidos por milhares de ferramentas.
🚀 Nova abordagem
Correção automática = mercado novo. Sistemas que detectam, entendem e corrigem erros automaticamente — com IA real e PASS GOLD.
⚠️ Posicionamento define o sucesso
Onde estamos no mercado
O VISION CORE não compete com ferramentas de teste comuns:
❌ O que não somos
- Jest / Vitest — testes unitários
- GitHub Actions — CI/CD genérico
- Sentry — monitoramento de erros
- Copilot / Cursor — autocomplete de código
✅ O que somos
- Sistema operacional para bugs
- IA que diagnostica + propõe + aplica fix
- PASS GOLD como porta de promoção
- Governança declarativa com REGRA ABSOLUTA
Planos disponíveis
Billing Stripe integrado com Price IDs reais em produção. Webhook configurado e testado.
🚀 Pro — R$49/mês
Acesso completo ao VISION AI COMMAND, chat com IA real, upload de arquivos, missões SDDF e PASS GOLD supervisionado.
price_1TcImIHNPx1MfVELFNHZ16Vw🏢 Enterprise — R$149/mês
Pro + Software Factory completa, multi-projeto, agentes orquestradores, OpenClaw/OpenSquad e suporte prioritário.
price_1TcImJHNPx1MfVELSMiAAasSArquitetura visual
O Vision Core em imagens: do decágono de agentes ao loop de erros que quebramos.
🏆 Produto Testado.
Validado. Pronto para Produção.
O Vision Core passou por 6 suítes de stress test automatizado com 80 cenários reais — incluindo segurança da Software Factory e prova de que não inventa bugs onde não existem. Cada diagnóstico foi validado por PASS GOLD antes de ser considerado aprovado.
HISTÓRICO DE EVOLUÇÃO
O QUE OS TESTES REVELARAM
.platform/nginx/conf.d/proxy_timeout.conf (120s, método correto para Amazon Linux 2023) + health check antes dos testes para evitar rodar contra instância em redeploy. Resultado: 80/80 consistente."gate_no_security_findings. Apenas findings de severidade ERROR bloqueiam a promoção. O scan do próprio backend confirmou 0 ERROR / 3 WARNING (todos intencionais). A parte que pode ser determinística, é — sem depender de a IA 'lembrar' de checar."ALL_PROVIDERS_EXHAUSTED e lista quais providers foram tentados. Antes disso, o cliente esperava 60 segundos por um timeout mudo, sem saber qual provider tinha falhado. O client-side timeout também foi estendido de 60s para 90s para acomodar cascatas lentas sem falhar prematuramente."mission, mas o agent sempre esperou input. Curl direto no agent com o campo certo confirmou ok=true, 50 arquivos encontrados, leitura completa. O bug nunca existiu no produto — só no teste que o validava."_agentModesStore gravava o modo OFF/AUTO/ON de 15 agentes especializados desde a §80 — mas nada no /api/copilot nunca lia esse valor. O usuário ligava o Agente Database para ON e nada mudava na conversa. A fix não foi reescrever a feature, foi conectar o fio que faltava: detectActiveAgent() faz keyword match e injeta o agente certo no system prompt do LLM, com badge visual no chat."vcRegisterTutorial/vcStartSectionTutorial — em vez de seis sistemas isolados. Resultado: um item de menu na sidebar, accordion inline, zero duplicação de código entre os tutoriais."renderValidationPanel() — o painel com os botões 'Aprovar e fazer Push' / 'Reverter' — existia no bundle desde antes desta sessão. Auditoria de código confirmou: zero call sites. Não era uma feature em uso que quebrou, era uma feature que nunca tinha sido ligada a nada. A causa raiz do item #1 do roadmap não era código faltando — era um fio que faltava conectar três peças que já existiam."vision-agent.js real apontados um pro outro, um arquivo com bug de verdade num repo git temporário. O agent aplicou o patch, validou a sintaxe, comitou — e quando o patch seguinte quebrava a sintaxe de propósito, o Aegis reprovou e o git checkout -- reverteu o arquivo bit a bit, sem deixar nenhum commit espúrio."renderApplyFixPanel: checar status do agent, enfileirar, fazer polling, renderizar resultado. Duplicar esse bloco em renderStandardMethodPanel teria criado dois sistemas paralelos difíceis de manter. A refatoração correta era extrair para vcQueueApplyPatchViaAgent(hermesObj, statusEl, onReset, onDone) — função compartilhada com callbacks — e reusar nos dois painéis. Zero mudança de backend. 9 asserts estáticos confirmaram a wiring antes do commit."classifyMissionDifficulty(). Antes de escrever uma linha, abrimos a spec (SDDF_SPEC §66) — estava marcada como FECHADA com 80/80 testes PASS GOLD. O problema de qualidade que motivou a etapa já tinha sido resolvido de outra forma. A Etapa B foi retirada do roadmap. O que foi implementado no lugar foi o memory layer real: o Hermes agora consulta escalações passadas (Jaccard sobre tokens), desprioriza providers que já falharam em casos similares, e registra keywords para matching futuro. Sem embeddings, sem rede — só aritmética de conjuntos."if (!gotAny) return preserva o fallback estático exatamente como estava."apply_patch_multi: resolve todos os caminhos antes de escrever qualquer arquivo, aplica os patches em ordem, valida Aegis em todos — qualquer falha reverte TODOS via git checkout, e no caminho feliz é um único commit cobrindo N arquivos. O E2E real confirma nos 3 cenários: commit único com 2 arquivos, rollback quando o 2º patch não casa, rollback quando o Aegis falha no 2º arquivo depois do 1º já ter passado."apply_patch_multi estava testado de ponta a ponta desde o §109 — 12/12 unitário, E2E real com rollback atômico confirmado — e tinha zero referências no chat. Uma busca no bundle confirmou: a capability existia, funcionava, e ninguém conseguia chegar até ela. A causa raiz não era no agente, era no prompt: o LLM só sabia devolver 1 arquivo por resposta, mesmo quando já diagnosticava vários em prosa. O fix deu ao modelo um formato files[] alternativo pra usar quando — e só quando — o fix genuinamente precisa de mais de 1 arquivo. No caminho, achamos outro bug: os dois pontos que aplicam patch via agent local mostravam o painel de '✅ commitado, aprove o push' mesmo quando a missão tinha falhado e revertido tudo. Corrigido junto — falha agora mostra falha."diagnosis, presente nos dois formatos. Mas o código que vinha depois só sabia procurar o patch na raiz do objeto; no formato multi-arquivo, cada patch mora dentro de um item da lista files[], não na raiz. O resultado, silencioso: um diagnóstico cobrindo 2 arquivos virava, sem erro nenhum, só uma análise em prosa, sem diff. O fix deu ao dry-run o mesmo tratamento por arquivo que o apply_patch_multi já tem pra aplicação de verdade — simula cada um em memória, e se qualquer um falhar, a leva inteira é descartada, nunca expondo um diff parcial como se fosse válido."onEnter a cada passo que exige navegação, um _scrollInto para elementos abaixo da viewport, e expôs showSoftwareFactoryPage/setSoftwareFactoryModule no window para que o tutorial T3 pudesse navegar para cada módulo real. Prova numérica: spotlight.top ≈ target.top − 14px em cada passo verificado."window._vcSetActiveTutorial nunca era definida — e ela é exatamente o que os menus de seção precisam para funcionar. O fix foi mover o guard para dentro do bloco de auto-start do T1 (as 4 linhas do setTimeout), deixando toda a infraestrutura ser inicializada independente do histórico do localStorage. Em paralelo, a persistência por tutorial de seção estava igualmente quebrada: fechar qualquer tutorial de seção com 'não exibir novamente' marcado gravava na chave do tutorial geral (vc_tutorial_done) em vez da chave específica da seção — corrigido pela mesma refatoração."positionBalloon() e passou 13/13 testes — mas em produção real o problema continuou idêntico. A causa não era na lógica em JavaScript: era uma regra CSS criada em §95 para posicionar o mascote dentro do balão (.vc-tutorial-balloon{position:relative!important}) que sobrescrevia position:fixed com !important. Com position:relative, os valores de top/left que o JS calculava e setava via style.* se comportavam como offset do fluxo normal do HTML (dentro do overlay), não como coordenadas na viewport — então o balão era desenhado num lugar completamente diferente do calculado. Os testes do §120 liam getBoundingClientRect() (a posição real na tela após o CSS aplicar os offsets), e coincidentemente, essa posição final não colidia com o spotlight no viewport de teste (1280x900) — mas colidia em produção. A solução foi remover a regra do §95: position:fixed já cria um containing block válido para filhos position:absolute — a regra do §95 nunca foi necessária. A prova do bug ficou registrada: o teste novo que verifica getComputedStyle(balloon).position === 'fixed' teria detectado isso imediatamente no §120."STEPS): cada tutorial de seção reatribuía essa variável via window._vcSetActiveTutorial(), mas o botão 'Geral' nunca a restaurava ao array original — herdava silenciosamente o conteúdo de qualquer seção visitada antes. Um bug secundário pareado: a chave de persistência também não era restaurada, então marcar 'não exibir novamente' no tutorial Geral gravaria na chave de localStorage da seção errada. O fix guarda uma referência imutável ao array original (STEPS_GERAL) logo após sua declaração e restaura ambas as variáveis ao abrir o tutorial Geral — 11 linhas inseridas, zero removidas."/api/openclaw/orchestrate existia há sessões, roteava corretamente, e o campo orchestration_real: true já estava presente — mas o plano era sempre null. O fix: quando o input é uma missão em linguagem natural (message/prompt), o handler chama callLLM com system prompt de 'Patch Strategist' e devolve um plano JSON estruturado com subtarefas concretas (scan/patch/validate/rollback), nível de risco e flag pass_gold_required. Se o LLM falhar, cai em fallback local sem quebrar o fluxo. O roteamento para zip/patch/mission_id foi mantido sem LLM — nesses casos o plano vem do agente seguinte."/api/github/create-pr existia, criava branch, commitava arquivos e abria PR via GitHub REST API, mas o GITHUB_TOKEN nunca foi enviado como variável de ambiente pro EB. O /api/github/status retornava configured: false em produção mesmo com o código completo. Zero linha de código nova nesta sessão — só configuração de ambiente. Smoke test confirmou PR criado de verdade no repositório real (PR #738, branch vision-core-test-s127), depois fechado e branch deletada via gh pr close --delete-branch."/api/memory/save e /api/memory/search) desde o §64, mas era uma memória que ninguém consultava — nenhum agente de decisão buscava no Archivist antes de responder. A memória existia em isolamento. Nesta sessão, dois helpers internos foram criados (archivistSearch e archivistSave) que acessam o FS diretamente, sem HTTP. O Hermes (/api/chat) e o OpenClaw (/api/openclaw/orchestrate) agora buscam contexto de missões anteriores antes de responder e salvam um resumo após cada missão. O Archivist é sempre best-effort — nunca quebra o fluxo principal. Smoke test confirmou entradas openclaw-* sendo salvas automaticamente em produção imediatamente após o deploy."vision-core.exe (Windows) existia localmente; (2) missionRoot em server.js usava path.resolve(ROOT, '..'), apontando para o Desktop inteiro em vez da raiz do projeto — causava timeout de 30s no binário Go; (3) goRunner.js passava --dry-run ao subcomando mission, que não suporta esse flag e travava indefinidamente. Após os três fixes: Go Core executou localmente (mission_id real + evidence_receipt.source=go-core), D0-D4 foram executados pelo PI Harness, e o binário Linux foi compilado e deployado no EB. V3.0.0 alcançado."backend_not_stub — o harness nunca chamava /api/run-live sem o flag --runtime-probe. Ao ativar o probe, o Go Core retornou pass_gold:false por causa de um violation AEGIS blocking: _patch102_mission_timeline.py:469 tinha password: 'stress123' — senha de teste hardcoded, 9 chars, disparando a regra AEGIS_SECRET_009. Fix cirúrgico: split de string literal ('stress' + '123'). Com o Go Core retornando pass_gold:true, foi necessário corrigir 4 outros comportamentos do harness: (1) D4 não propagava evidence_receipt.id para goRuntimeEvidenceId (D3 usa --dry-run que não existe no binary); (2) launcher bloqueava port busy sem tentar health check — mas o backend iniciado por D4 precisa sobreviver para o E2E probe; (3) contract _isStubBody detectava 'stub' no field name backend_stub; (4) Gate 5 bloqueava promotion_allowed:true incondicionalmente, mesmo com evidência real do Go Core. Resultado: D0-D7 executados, 20 gates + 3 condições extras passando, pass_gold_candidate:true pela primeira vez."_fixture_stress ao dirSkip do AEGIS + classificado como test_fixture; (2) Go binary recompilado; (3) tryStartBackend não setava s.backendAlive = true após sucesso — harness bloqueava mesmo quando backend subia corretamente; (4) E2E probe timeout de run-live: Math.min(30000, 10000) = 10s vs Go Core que leva 12-13s — cap aumentado para 25s; (5) forbidden diff bloqueava porque bin/vision-core.exe modificado não estava commitado. Com todos os fixes: D0-D7 executados, pass_gold_candidate:true, PR #739 aberto pelo GitHub Agent automaticamente (fechado logo após como teste). Pipeline bug→PASS GOLD→PR confirmado de ponta a ponta."scanned 0 files em projetos Python — as violations L3 (API key, MD5, SQL injection) nunca eram detectadas, gerando security_score:100 e pass_secure:true em bases não varridas. Falso negativo silencioso. Duas causas raiz: (1) jsExts no scanner só incluía .js/.go — fix: expandido para .py, .java, .yaml, .json, .sh e mais; (2) dirSkip aplicava ao root da varredura quando o nome do root estava na lista — Scan('_fixture_stress') pulava si mesmo porque '_fixture_stress' estava no dirSkip — fix: path != root guard em secrets.go, api.go e containers.go. Resultado: fixture L3 detecta AEGIS_SECRET_010 em level3_security.py:6 (bloqueante). Projeto principal inalterado: security_score:100, scanned 1924 files."/api/security/suggest-fixes está disponível para integrações externas. Antes desta sessão: violations eram detectadas pelo AEGIS mas nenhuma sugestão de correção era gerada — o AEGIS sabia o problema mas ficava em silêncio sobre como resolver. Agora cada violation volta com fix.after (código corrigido) ou fix.suggestion (descrição do fix) e fix.env_var com a linha para o .env.example."/api/security/apply-fix, que lê o arquivo real do filesystem, faz backup automático (.bak-s135-*), substitui a linha violadora pelo código corrigido, e mostra o diff inline (- API_KEY = 'sk-prod-abc123xyz789' → + API_KEY = os.environ.get('API_KEY')). Path traversal bloqueado (403). Arquivo inexistente retorna 404. Loop detect→suggest→apply completo em 3 sessões (§133→§134→§135)."✅ Violation corrigida — re-scan confirmou que AEGIS_SECRET_010 não está mais presente'. Anel animado SVG gira em volta do decágono enquanto os agentes trabalham — arco roxo→índigo (stroke-dasharray: 200 1156, transform-box: fill-box) integrado ao SVG existente, sem quebrar a animação dos agentes. Histórico de eventos (scan/fix/rescan) persiste via /api/security/history + Archivist."::before em #mcCore — sem SVG extra, sem IIFE de injeção. Ao terminar com sucesso, mostra 'OK' em verde por 2s e volta para 'CORE'. Ao terminar com erro, volta direto para 'CORE'. Removido o texto 'FECHADO / CONTROLLED CLOSURE' que sobrescrevia o estado do núcleo e confundia o usuário."/api/sf/mission-composer (SF02), worker-handoff (SF03), context-snapshot (SF04), patch-validator (SF05), risk-assessor (SF06), rollback-planner (SF07), gold-gate (SF08), deploy-blueprint (SF09). Mapeamento frontend SF_ENDPOINT_MAP cobre todos os 8 moduleKeys dos botões GERAR. Smoke test real em produção confirma ok:true + anti_stub:true para cada módulo."TÉCNICAS ANTI-ALUCINAÇÃO CERTIFICADAS
[DIFF] exato do bug. Eliminou alucinação: 20% → 100%.Veja o Vision Core em ação
Cole um erro, faça upload de um arquivo com bug, descreva o problema.
O Vision Core diagnostica, propõe o fix e aguarda sua aprovação.
Arquitetura Real —
O que já funciona e para onde vai
Uma leitura honesta do estado atual — o que está implementado e validado hoje, e onde a arquitetura aponta para o futuro.
VISION AI COMMAND — o que ele realmente faz hoje
O chat (/api/chat) não é um wrapper simples de LLM. Ele já tem uma cadeia de capacidades bem montada:
.vision-memory/hermes_low_confidence.jsonl.
/api/unzip-context e /api/chat/apply-patch, mais o compress-context.js (§44, "MPEG de contexto") e windowContent (§55) que trunca arquivos grandes para ±120 linhas ao redor do bug, evitando timeout em arquivos de 200KB+. O patch-engine.js tem 5 estratégias de match (exact → normalized → regex → âncora de primeira linha → candidatos só-diagnóstico) para aplicar o patch sugerido pelo LLM de volta no código real — e o pass-gold-engine.js valida esse patch em 6 dimensões, incluindo Semgrep (§68) como segunda fonte de verdade não-LLM.
/api/agent/mission/pending, escaneia o projeto local por palavras-chave, e devolve o resultado via /api/agent/mission/result. Isso é o embrião de "Vision Core trabalhando no seu PC" sem precisar subir o código.
Estado atual: o VISION AI COMMAND já é um diagnosticador real com fallback resiliente, leitura de contexto externo, patch aplicável e validação multi-camada — não é só "chat conectado a uma IA".
SOFTWARE FACTORY — o que ela é hoje
.mjs que modelam processos de engenharia (contratos, gates, ledgers, barreiras de fase) com flags release_allowed, deploy_allowed, real_pr_creation_allowed etc. sempre false. As fases V201–V244 cobrem desde fundação até "preparação de criação de PR controlada" — mas a execução real fica bloqueada até autorização explícita.
ANTHROPIC_API_KEY real num pacote).
AGENTE ARQUITETO — Software Factory V2.9.10+
GET /api/spec?module=SF-01
POST /api/architect/interpret
✅ 19/19 PASS — certificação completa (16 testes API + 3 E2E Playwright)
POTENCIAIS DE EVOLUÇÃO — ONDE ISSO PODE IR
Você não corrige mais sistemas.
Você supervisiona um sistema que corrige sistemas.