Lucas Souza
{AI Engineer} — apaixonado por Laravel, arquitetura de software e construir produtos com impacto. Compartilho aqui tutoriais, descobertas e reflexões sobre o dia a dia de engenharia.
RAG não é só vector search: combinando busca semântica, SQL e tools no mesmo agente
Vector-only, hybrid (BM25 + vetor + RRF) e o stack completo com SQL e reranker como tools separadas: comparação prática com benchmarks reais e código de produção.
Subagentes na prática: dividindo contexto entre Claudes para não estourar o token budget
Padrão pesquisador, executor e validador na prática. Por que três Claudes especializados batem um agente gigante em qualidade e travam menos no limite de contexto. Com números reais publicados pela Anthropic.
Do legado ao SDD: refatorando um módulo bagunçado a partir de uma specification reversa
SDD nasceu pensando em greenfield. A maioria dos tutoriais começa em mkdir projeto-novo e ignora quem está em projeto maduro. Reverse-spec resolve isso: o agente lê o código existente, gera a specification, humano revisa, e a partir daí o ciclo SDD clássico roda. Vou mostrar 4 passos práticos pra aplicar a técnica num módulo legado real, sem reescrever do zero e sem precisar esperar comando oficial em ferramenta nenhuma.
BMAD-Method para quem já usa SDD: onde acerta e onde adiciona ruído
BMAD promete um time agil de IA com personas para cada papel. Em termos de SDD, e Spec-Driven com mais cerimonia. Mapeio onde isso vale o overhead e onde so vira cerimonia que atrasa entrega.
Prompts resilientes: 50 casos adversariais para descobrir onde seu prompt quebra
Funciona no happy path, mas e quando o usuário manda emoji, idioma misto e SQL injection? Em vez de rezar, monte um dataset com cinquenta casos adversariais, rode evals automatizadas e meça pass rate, custo e latência a cada iteração. É assim que prompt vira engenharia.
Como escrever uma spec que o agente realmente entende (e não inventa em cima)
A maior parte dos bugs de agente em 2026 não é o modelo errando, é a spec mentindo. Três anti-padrões reais (ambiguidade, contexto inútil e regra implícita) com exemplos antes/depois e checklist de sete pontos pra validar a spec antes de mandar pro Claude Code.
Construindo seu primeiro harness em Laravel: do prompt isolado ao loop autônomo
Construa do zero um harness em Laravel mais Claude API: um service PHP que recebe a tarefa, escolhe qual tool chamar, executa em loop ate concluir e reporta. Inclui handling de erros com is_error, limite de iteracoes e logging real. Codigo executavel, sem framework de agente.
SDD do zero em Laravel: transformando uma feature real em specification executável
Vibe coding com agente em Laravel funciona até a feature ter regra de negócio. Aí o agente inventa. Spec-Driven Development resolve isso virando a especificação na fonte da verdade. Neste post a gente percorre o ciclo PRD, spec, plan, tasks, código e testes em uma feature aparentemente boba: exportar relatório de vendas em PDF. Stack PHP, Claude Code e Spec Kit, do zero.
Agente que pesquisa antes de agir: multi-tool + RAG em Laravel com pgvector
Como construir um agente em Laravel que decide quando buscar e quando responder direto. Arquitetura completa com Prism PHP, pgvector e a lógica de orquestração que separa demo de produto.
5 sinais de que sua especificação virou burocracia (e como voltar à base bem feita)
Spec-driven virou padrão em 2026, e com ele veio o risco do pêndulo: spec gigante, aprovada em comitê, ignorada pelo time e filtrada pelo agente. Cinco sintomas concretos e o ajuste prático para cada um.
Programmatic Tool Calling: por que executar suas ferramentas em código é o futuro do agente
Function calling clássico vai virar legado. Programmatic tool calling do Claude troca o loop turno-a-turno por código Python no sandbox: 37% menos tokens, paralelismo nativo via asyncio.gather e composição em um único script. A gente compara latência, tokens, debug, e fecha com um agente que escreve o próprio orquestrador.
Especificação mínima viável: o framework de 1 página que evita construir a Catedral antes da Cabana
Template proprietário de 1 página com objetivo, contexto, restrições, critérios de aceite e anti-escopo. Mostra quando expandir e quando NÃO expandir, e por que esse formato vira o melhor harness pra agente de IA executar sem alucinar feature paralela.