Agentic Experience: o log de erros do agente é o plano da sua CLI

Eu tenho um agente de código —Claude Code— que interage com o Linear, meu gerenciador de incidentes, cerca de 800 vezes por mês: lista tarefas, cria incidentes, altera estados, comenta. Eu revisei 165 de suas sessões e contei mais de 500 erros e mais de 370 tentativas de correção. Nenhum desses casos foi causado por falhas na API do Linear. Todos foram erros de interface: o agente conversava com a linha de comando e a linha de comando não entendia. ...

22 de maio de 2026 · Fernando

Experiência Agêntica: 1.324 chamadas ao meu CLI, 15,9% de erro

O usuário mais frequente do meu CLI não sou eu lql é um CLI em Rust para gerenciar issues do Linear. Escrevi porque nenhuma das alternativas existentes funcionava para meu caso de uso real: um agente de IA que gerencia issues de forma autônoma. Por que tive que escrever meu próprio CLI O MCP do Linear foi a primeira tentativa. A ideia é elegante: um servidor MCP que expõe a API do Linear diretamente ao agente. Na prática, era lento, instável, e o agente tinha que construir queries GraphQL do zero a cada chamada. Cada chamada era uma oportunidade de inventar um campo que não existe. Desinstalei em duas semanas. ...

29 de abril de 2026 · Fernando

Sua CLI tem um novo usuário e não é humano

Você pede ao seu copiloto de IA para capturar uma janela. O copiloto digita peek app "Xcode". A ferramenta procura uma janela cujo nome do proprietário seja exatamente Xcode. Não encontra, porque o processo se chama Xcode-16.3. A ferramenta imprime Erro: aplicativo não encontrado. O copiloto, que é um LLM e tem a memória emocional de um peixe dourado, tenta peek app "Xcode-16.3". Funciona. Mas custou uma interação, tokens de entrada, tokens de saída e a paciência de quem paga a conta. ...

7 de abril de 2026 · Fernando

No Codex, um skill não é um /command (e no Claude Code quase é)

TL;DR: Se você está no Codex, use um command para controlar a sessão ou a aplicação, e use um skill para ensinar ao agente uma maneira de trabalhar. No Claude Code, a documentação atual já trata as skills como algo invocável com /skill-name, então os dois conceitos se misturam muito mais. No Codex, não: types pode existir como skill e /types ainda assim pode não existir. Existe uma confusão bastante comum quando você migra do Claude Code para o Codex. E isso é compreensível. ...

30 de março de 2026 · Fernando

150 linhas de desculpas eliminadas

TL;DR: Meu agente de IA tinha um arquivo de instruções com 246 linhas para gerenciar issues no Linear. Dentre elas, 150 eram gambiarras: UUIDs hardcoded, alternativas com curl, notas explicando “a CLI não suporta X”. Em vez de reescrevê-las, criei uma ferramenta que tornou essas linhas desnecessárias. Agora, essas 150 linhas se reduziram a zero. Você já escreveu um documento de instruções tão longo que a própria extensão dele é prova de que algo está errado? ...

26 de março de 2026 · Fernando

Madness Driven Design: Don Quijote, Sancho Panza e seu copiloto IA

TL;DR: Um modelo LLM é como Don Quijote — você não pode curá-lo, ele é estocástico por natureza. A solução não é corrigir o louco, mas colocar um Sancho Panza determinista ao lado. MDD tem duas camadas: primeiro você estuda os erros que ele comete para projetar ferramentas que os absorvam, e depois o solta com essas ferramentas para garantir que nenhuma brecha foi deixada. Projete para a loucura, não contra ela. ...

26 de março de 2026 · Fernando

Por que a saída da minha CLI não é XML (e como acabei reinventando o TOON sem saber disso)

TL;DR: Quando seu consumidor principal é um LLM, XML e JSON desperdiçam tokens repetindo estrutura em cada elemento. Um formato posicional compacto reduz o consumo em 50%. Descobri que essa ideia já tinha nome: TOON (Token-Oriented Object Notation). Mesma pressão seletiva — tokens caros e chaves repetitivas — mesma solução. Anthropic usa XML para tudo. Seus system prompts são envoltos em <instructions>, seus exemplos em <example>, suas ferramentas em <function>. Quem trabalha com o Claude está cercado por tags. ...

26 de março de 2026 · Fernando

Linear Agent não é o que você precisa. Seu agente já estava no terminal

TL;DR: A Linear lançou um agente de IA integrado. Legal, mas não resolve o problema dos desenvolvedores que trabalham com coding agents no terminal. O que precisamos não é outro agente, mas sim uma CLI robusta que o agente que já temos possa usar. E se for para construir, que seja em Rust — por isso nasceu lql, uma CLI para Linear projetada para agentes. Ontem, a Linear anunciou seu agente de IA. Um chatbot integrado ao app que entende seu roadmap, seus issues e seu código. Você conversa com ele no Slack, o menciona em um comentário, e ele sintetiza contexto, sugere ações e até cria issues para você. ...

25 de março de 2026 · Fernando

Mole: a ferramenta de limpeza para Mac que você não sabia que precisava (mas só dois comandos valem a pena)

Quantos gigabytes de lixo tem no seu Mac neste exato momento sem que você saiba? Não estou falando das fotos duplicadas do churrasco de 2019 nem da pasta de Downloads que mais parece um lixão da cidade. Estou falando de artefatos de compilação. node_modules de projetos que você não toca desde a pandemia. Caches de build de frameworks que você nem lembra ter instalado. Derived Data do Xcode acumulando poeira embaixo da cama. ...

23 de março de 2026 · Fernando

Trabalhar com um agente de IA é como conviver com o protagonista de Memento

Imagine que você tem um colega de trabalho brilhante. Ele resolve problemas complexos, escreve código limpo, entende o que você pede de primeira. Mas toda manhã, quando você diz “abra o projeto do curso”, ele te encara com cara de dúvida e pergunta: “Que curso? Onde está?” Todos os dias. Sem exceção. É exatamente como conviver com Leonard Shelby, o protagonista de Memento. O cara que não consegue formar novas memórias e precisa tatuar as informações importantes no corpo para não esquecê-las. ...

14 de março de 2026 · Fernando