Building and shipping real products with AI: harnesses, subagents, verification, and the parts that still need a human. Notes from a small publishing operation that runs its drafting on Claude Code.
AI Check the reading before you synthesise: a local Japanese TTS on WSL
Environment: AivisSpeech Engine 1.2.0, Linux x64 build, running inside WSL2 on Windows. Node.js 20, Python 3, ffmpeg. In...
AI OpenAI’s TTS silently drops the tail of long inputs
Environment: gpt-4o-mini-tts and whisper-1 via the OpenAI HTTP API, Node.js 20, ffmpeg. Measured July–August 2026.We pro...
AI The writer never grades its own work
Environment: Claude Code (Opus), Node.js 20. Two subagents defined as Markdown files with YAML front matter.Ask a model ...
AI Split the word list before you generate, not after
Environment: Node.js 20, Claude Code (Opus). The allocation script is 184 lines with no dependencies.A drill book has te...
AI Don’t let the model judge difficulty: a vocabulary allow-list, checked by machine
Environment: Node.js 20, Claude Code (Opus). The checks are plain ES modules in the same repository as the manuscripts —...
AI Four Claude Code subagents that write our exam-prep books
Environment: Claude Code (Opus), Node.js 20, macOS/WSL. Everything below runs from a single git repository.We publish En...