Agentic Experience: The Agent's Error Log is the Blueprint for Your CLI

I have a code agent—Claude Code—that interacts with Linear, my task management tool, about 800 times a month: listing tasks, creating issues, changing states, leaving comments. I reviewed 165 of its sessions and counted more than 500 errors and over 370 retries. None of these were caused by issues in Linear’s API. All were interface errors: the agent communicated with the command line, and the command line didn’t understand it. ...

May 22, 2026 · Fernando

Agentic Experience: 1,324 calls to my CLI, 15.9% error rate

My CLI’s most frequent user isn’t me lql is a Rust CLI for managing Linear issues. I wrote it because none of the existing alternatives worked for my actual use case: an AI agent that manages issues autonomously. Why I had to write my own CLI Linear’s MCP was the first attempt. The idea is elegant: an MCP server that exposes Linear’s API directly to the agent. In practice, it was slow, unstable, and the agent had to build GraphQL queries from scratch on every call. Each call was an opportunity to invent a field that doesn’t exist. I uninstalled it after two weeks. ...

April 29, 2026 · Fernando

Linear Agent Isn’t What You Need. Your Agent Was Already in the Terminal

TL;DR: Linear just launched an integrated AI agent. Cool, but it doesn’t address the problem developers face when working with coding agents in the terminal. What we actually need isn’t another AI agent but a rock-solid CLI that our existing agents can use seamlessly. And if we’re going to build one, it should be in Rust — which is why lql exists: a CLI for Linear, purpose-built for agents. Yesterday, Linear launched their AI agent. It’s an integrated chatbot that gets your roadmap, your issues, and even your code. You can chat with it on Slack, mention it in a comment, and it’ll synthesize context, suggest actions, and even create issues for you. ...

March 25, 2026 · Fernando

I've Declared Email Bankruptcy (Again), but This Time I Have a Plan

In 2004, Lawrence Lessig sent out a mass email to his entire contact list saying, more or less: “Sorry, I deleted all your emails without reading them. If it was important, send it again.” He had spent 80 hours that week trying to empty an inbox cluttered with emails dating back to 2002. He was getting 200 emails per day. Lessig wasn’t disorganized. He was a Law Professor at Stanford. And even so, email defeated him. ...

March 11, 2026 · Fernando

Beads Is Dead. Long Live the Linear CLI

Less than a month ago I wrote an entire post explaining how to use three memory layers with Claude Code: Linear for strategy, Beads for tactics, and Tasks for execution. A nice, elegant pyramid. Yeah, no. Today I’m retiring Beads. Not on a whim, but because reality has made it abundantly clear that a tool causing more problems than it solves isn’t a tool. It’s dead weight. What Beads Brought to the Table For those who didn’t read the original post, Beads was a git-backed issue tracker. A Claude Code plugin that stored issues in JSONL files inside your repo. Brilliant idea on paper: ...

February 18, 2026 · Fernando