Notes
Decisions, lessons and craft — from building real systems with AI agents.
- Two directories, two worlds. Zakupomat in Claude the same evening, in ChatGPT after two weeksA package from Codex, a mistake repeated by Claude, a model that wanted to pay with my card, and an argument over what counts as "irreversible". What submitting an MCP server to the OpenAI and Anthropic directories looks like.
- An API key setting that doesn't exist. An MCP server for Zakupomat in one eveningWhy AI didn't go inside Zakupomat, but Zakupomat went into AI. OAuth without accounts, the MCP protocol written by hand, five PRs from the bathtub and a bug the official test client didn't catch.
- I rewrote a working app. And lost a feature nobody knew existedThe PWA was no longer enough, so Zakupomat got new code for Android and iOS. Fast and clean - except for one feature that quietly disappeared.
- "Loading indefinitely". How Apple rejected my appApple's reviewer wrote that the app hangs. The problem wasn't where I was looking for it - and that's exactly why this lesson lives in the project memory today.
- Not by Prompt Alone. What this series is aboutBuilding an app with a single prompt is no big deal these days. The real craft starts the day after - and that's what this series is about.