
Vibe coding no CLI é rápido até o agente esquecer o que vocês combinaram ontem, reler o repositório inteiro com grep e clicar no banner de cookies em vez do botão Salvar. Quatro skills de código aberto — agent-browser, OpenSpec, codebase-memory-mcp e claude-mem — fecham exatamente esses buracos: o browser, o acordo antes do código, o mapa do repo e a memória entre sessões.
O que é uma skill, na prática
No Grok, no Claude Code, no Codex e nos outros agentes de terminal, uma skill é um SKILL.md com instrução de quando usar, mais um CLI ou um servidor MCP. O modelo não “sabe” o seu projeto: ele lê o arquivo, chama a ferramenta e devolve o resultado. Sem skill, o vibe coding vira chat. Com skill, vira procedimento.
Os quatro abaixo se complementam. Nenhum substitui o outro. Juntos, o agente planeja, acha o código certo, lembra da sessão anterior e verifica a interface como um usuário. O mapa maior de assistentes no terminal deste blog: Assistentes de IA no terminal Linux. IA local: Ollama.
OpenSpec: concordar antes de gerar código
OpenSpec (Fission-AI, MIT, v1.12.0 em setembro de 2026) é spec-driven development para agente. A filosofia cabe num cartão: fluido, iterativo, feito para brownfield. Cada mudança ganha uma pasta openspec/changes/<nome>/ com proposal.md, specs/, design.md e tasks.md — Markdown puro, cenário WHEN/THEN, sem DSL.
O fluxo novo é o /opsx::
/opsx:explore— pensar com o agente, sem comprometer artefato/opsx:propose add-dark-mode— criar a change/opsx:apply— implementar a checklist/opsx:archive— arquivar e atualizar as specs vivas
Instalação (Node.js 20.19+):
npm install -g @fission-ai/openspec@latest
cd seu-projeto
openspec init
openspec update # depois de um upgrade, regenera as instruções do agente
O que muda no trabalho: o agente para de “adivinhar o escopo” no meio do diff. Você revisa o plano antes do código. Em time, o mesmo openspec/ vai no git; a beta de Stores permite um repo só de specs compartilhado entre vários códigos. Telemetria anônima (nome do comando e versão) desliga com OPENSPEC_TELEMETRY=0.
Este próprio site usa OpenSpec nas mudanças do blog. Sem a pasta da change, o agente reescrevia post antigo, mexia em slug e quebrava URL indexada. Com a spec, a regra fica no repo, não no chat.
agent-browser: o agente clica de verdade

agent-browser é CLI de automação de browser da Vercel Labs, binário nativo em Rust, Apache-2.0, v0.36.0 (1º de setembro de 2026). Não é Playwright no Node: o daemon fala CDP com o Chrome for Testing. O truque para o modelo é o snapshot — árvore de acessibilidade com refs @e2, @e3. O agente clica no ref, não no seletor que quebrou na sprint passada.
npm install -g agent-browser
agent-browser install --with-deps # Linux: Chrome + libs do sistema
agent-browser open https://www.linuxpro.com.br
agent-browser snapshot -i # só elementos interativos
agent-browser click @e2
agent-browser screenshot /tmp/home.png
agent-browser close
No vibe coding isso fecha o ciclo: o agente sobe o app, abre a página, preenche o form, tira print e compara. screenshot --annotate numera os botões; o mesmo número vale para o clique. Tem MCP (agent-browser mcp), sessões isoladas, cofre de senha criptografado (o LLM não vê o password), allowlist de domínio e, no Linux, doctor para diagnosticar daemon zumbi.
Não use isso contra site de terceiros sem permissão. Para o seu localhost, o staging e o smoke test do tema, é o Selenium que o agente finalmente entende.
codebase-memory-mcp: o mapa do repo, não o grep
codebase-memory-mcp (DeusData, MIT) indexa o código num grafo persistente — funções, classes, rotas HTTP, quem chama quem. Tree-sitter em 162 línguas, LSP híbrido em um punhado delas, 15 tools MCP, binário único, zero API key. O código não sai da máquina. O preprint está no arXiv 2603.27277.
O número que importa no vibe coding: cinco consultas estruturais ~3.400 tokens contra ~412.000 no vai-e-volta de grep/read (99%). Kernel Linux (28M LOC) indexa em cerca de 3 minutos no M3; um repo médio, em milissegundos. UI 3D em http://localhost:9749.
curl -fsSL https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.sh | bash
# reinicie o agente; peça "index this project"
O instalador detecta Claude Code, Codex, Grok, Cursor, Gemini CLI e dezenas de outros. Três tiers de agente (Scout, Verify, Auditor) evitam o modelo afirmar “não existe caller” sem olhar o grafo. Para o dia a dia: “o que chama ProcessOrder?”, “qual o impacto deste diff?”, “cadê código morto?”. Sem isso, o vibe coding alucina um helper que já existe três pastas ao lado.
claude-mem: a sessão seguinte lembra desta

claude-mem (Alex Newman / thedotmack, Apache-2.0, v13.24.1) captura o que o agente fez, comprime com IA e injeta o pedaço certo na sessão seguinte. Em 2026 o produto também se chama Grok Mem; o pacote npm continua claude-mem. Hooks de ciclo de vida (SessionStart, PostToolUse, Stop…), worker local em Bun, SQLite + FTS5 + Chroma. A busca é em camadas: índice barato → timeline → detalhe só dos IDs que importam.
npx claude-mem install
# Grok Bot:
npx claude-mem install --ide grok-bot
O instalador pode pedir login no serviço hospedado (trial). Para ficar 100% local, use --provider host ou CLAUDE_MEM_ONLINE_OPTIN=false. Tags <private> ficam de fora do armazenamento. O que muda no projeto: você não precisa reexplicar “a capa é 1020×620, nunca featured, slug não se mexe”. O agente da manhã seguinte já chega com o resumo.
Não confundir com o codebase-memory: um indexa código; o outro indexa conversa e decisão. Os dois no mesmo agente é o caso feliz.
Como encaixar as quatro no fluxo
Um ciclo típico de feature no Linux:
- OpenSpec —
/opsx:exploree/opsx:propose. Você lê oproposal.mde só então manda aplicar. - codebase-memory — o agente pergunta ao grafo quem toca na rota, em vez de abrir 40 arquivos.
- claude-mem — a sessão seguinte já sabe que a change está em
openspec/changes/…e o que quebrou no teste de ontem. - agent-browser — sobe o app,
open,snapshot, clica, tira print, compara desktop e mobile.
Instale na ordem que dói hoje. Se o agente reescreve a mesma função toda sessão, comece pelo claude-mem. Se ele inventa API que já existe, codebase-memory. Se o PR passa no unit e quebra o botão no Chrome, agent-browser. Se o escopo infla no meio do chat, OpenSpec.
Requisitos de chão: Node 20.19+ (OpenSpec), Chrome for Testing (agent-browser), binário C (codebase-memory). Tudo roda em Linux amd64/arm64. O agente de terminal — Grok, Claude Code, Codex, Gemini CLI — é o orquestrador; as skills são as mãos.
O que ficou
Vibe coding sem spec é improviso. Sem grafo é grep caro. Sem memória é amnésia. Sem browser é “funciona na minha headless”. As quatro skills não deixam o modelo mais inteligente; deixam o trabalho verificável. O git continua sendo a fonte da verdade — a história: A história do Git.
Repositórios: OpenSpec · agent-browser · codebase-memory-mcp · claude-mem. Docs: agent-browser.dev · docs.claude-mem.ai.