In July 2025, a developer's Claude Code instance hit a recursion loop and burned through 1.67 billion tokens in 5 hours, generating an estimated $16,000 to $50,000 in API charges before anyone noticed. The agent did not crash. It did not throw an error. It just kept calling tools, getting confused, calling more tools, and silently accumulating cost. Old software crashes. LLM agents spend. This is
Modern applications are fragmented by default. A typical stack today might use: SQL for transactions MongoDB for flexible documents Redis for realtime state Pinecone or Weaviate for vectors Firebase for sync Separate tools for analytics, permissions, and operations That works — until the complexity starts to hurt. You end up with duplicated data, inconsistent permissions, fragile pipelines, multip
You're in another app and there's a timer counting down at the top of your phone. You lock the screen and the same timer is sitting there. You swipe down to the Notification Center and it's there too, still ticking. It looks like a notification, but a notification can't tick. That's a Live Activity. It looks like three different surfaces (Dynamic Island, lock-screen banner, Notification Center ent
I'm experimenting with Claude Code, filling the pot with ideas and seeing where it goes. The project started with an empty folder, 'Flight Sim.' So far, I've worked a day on it. It's a voxel based flight sim using OpenGL, StereoKit, and other goodies. I'M NOT TESTING THE SIMULATOR UNTIL IT'S GOT 20,000 LINES OF CODE, OR MORE. I wonder what's to be created, how my prompting styles are, and how
Most API documentation is written for humans. MCP tool descriptions are different. They are read by the model that decides what to call next. That means tool names, descriptions, schemas, and error messages are not just documentation garnish. They are part of the safety boundary. A risky MCP tool often looks like this: name: query input: free-form string description: “Run SQL against the database
At 2:17 AM, my monitoring alert yanked me out of sleep: the customer service bot had suddenly lost its memory. Users were asking “Where is my order?” three times in a row, and it kept asking for their phone number as if they were complete strangers. I opened the logs and saw that ConversationBufferMemory was loading empty message lists. The key was still there in Redis, but somehow deserialization
I finished an English series on the way I think ordinary people can start using AI for real work. The point is not to become an AI expert first. The point is to have one place where you can say what you want, give the tool access to the right folder, and check the result. Anything important still needs a human pause: publishing, deleting, paying, or authorizing. My preferred starting point is simp
If this is useful, a ❤️ helps others find it. All tests run on an 8-year-old MacBook Air. HiyokoLogcat supports Japanese and English. The AI diagnosis needed to respond in whichever language the user chose. The simplest solution: write the system prompt in the target language. Gemini follows it reliably. // Don't do this let prompt = format!("Analyze this log: {}\nRespond in Japanese.", context);