All Articles
Stabilizing Claude API Structured Responses in Production — Notes on tool_use, JSON Schema, and Layered Validation
Getting Claude to return JSON takes a few lines. Keeping that JSON usable in production is a different problem. Here is the layered design I landed on after running a wallpaper classification pipeline through Claude API, built around tool_use, JSON Schema, and domain validation.
Fixing Garbled Japanese Files in Claude Code — Identifying Shift-JIS vs UTF-8 and Converting Safely
When the Read tool spits out characters like 縺ゅ>縺ゅ> instead of Japanese, the file is almost always Shift-JIS or EUC-JP being misread as UTF-8. Here is a practical workflow to detect the real encoding and convert it for Claude Code, drawn from running a Japanese wallpaper app since 2014.
Three Weeks of Letting Claude in Chrome Run My Android Vitals Weekly Review
I moved my Monday-morning Android Vitals review for a portfolio of wallpaper and relaxation apps over to Claude in Chrome three weeks ago. Notes on what I delegated, what I kept for myself, and how the rhythm has settled in for an indie developer in year twelve.
Designing Graceful Degradation for the Claude API — A Four-Tier Fallback Architecture That Keeps AI Features Quietly Alive
Once Claude API features hit real production traffic, model-level fallback alone stops being enough. This article walks through an SLI-driven four-tier degradation design, with Python and TypeScript code, SLO burn-rate alerting, and the operational trade-offs an indie developer actually runs into.
A Two-Tier Setup — Haiku 4.5 Orchestrator with Opus 4.6 Worker for Balancing Cost and Quality
An indie developer's two-tier setup — Haiku 4.5 as orchestrator, Opus 4.6 as worker — costed line by line against published rates, plus the price increase I planned around that never arrived and the tokenizer split that quietly moves every token-denominated threshold.
Wiring Chrome DevTools for agents 1.0 into Claude Code: a setup memo
Google shipped Chrome DevTools for agents 1.0 as a stable release. Here is how I wired it into Claude Code, why I picked the MCP path over the CLI, and how it compares to the version bundled in Antigravity 2.0.
How I Stopped Claude Code's 'File has been modified since read' Error From Recurring
If Claude Code keeps tripping over 'File has been modified since read it' partway through a long session, the cause usually narrows down to three settings. Here is what actually worked in my own setup.
Notes from Seven Months of Running a Four-Site Auto-Publishing Pipeline with Claude Code and GitHub Actions
Lessons from running Claude Code scheduled tasks to auto-publish 16 articles a day across four Lab sites, including the Helpful Content System index collapse that forced a redesign of the quality gate, with the full Python gate code, token management, and rollback procedure.
Catching AdMob Fill-Rate Drops in the Morning with Claude in Chrome — Two-Week Notes
I kept noticing fill-rate drops only by late afternoon. So I switched to having Claude in Chrome read the AdMob report each morning. Here are my two-week notes, with the numbers and the friction I ran into.
Three State-Passing Patterns for Claude Code Subagents — Lessons from 4 Months of Automated Blog Pipelines
JSON files, environment variables, and context bundles — three ways to hand state between Claude Code subagents, compared with four months of production data and clear guidance on when to pick each.
Putting an Autonomous Librarian on Top of Claude Code × Obsidian — Operating Notes From Running Four Sites Through a Three-Layer Knowledge OS
Starting from Andrej Karpathy's LLM Wiki idea, I redesign a Claude Code × Obsidian autonomous knowledge OS against the actual shape of running four AI tech blogs in parallel. The article covers the three-layer storage, ingest/compile Skills, Dataview monitoring, and a weekly audit job — all sized for real production use.
Five Filters I Use Before Wiring a Claude Code Skill Into My Daily Workflow
Public Claude Code Skills keep multiplying. As an indie developer running a few tech blogs through Claude Code, I share the filters that decide which Skills stay in my daily workflow — and which ones I quietly remove after a few days.