v0.4.0 — images and speech, on the subscription
Everything new here runs on the Claude Code / ChatGPT logins you already have. No API key is read, and nothing is billed per token. Still zero dependencies.
Draw
imagine a lighthouse keeper reading a letter by lamplight # draws it, then opens it
imagine --raw a single red triangle on white # your words, verbatimRuns as the image_generation tool on the same Codex endpoint as chat.
By default the model rewrites your prompt before drawing — that's what prompt used: reports, and it genuinely helps a terse prompt. --raw pins your text character for character; --enhance asks for the rewrite explicitly.
Speak
tts the lighthouse keeper found a letter in the sand
tts --voice cedar שלום, זה מבחן קצר בעברית
apiplan voicesTen voices — alloy ash ballad coral echo sage shimmer verse marin cedar — over OpenAI's realtime socket (gpt-realtime), which accepts the ChatGPT login and returns PCM16 that needs a 44-byte wav header and no codec. Any language; Hebrew verified.
The plan was a WebRTC stack. It turned out one retired header (OpenAI-Beta: realtime=v1) was the only thing standing between "needs ICE/DTLS/SRTP/Opus" and "a WebSocket". Dependency count stays at zero.
tts --aloud is a second, older engine: ChatGPT's product read-aloud in the app's own voices (maple juniper orbit fathom breeze ember glimmer vale cove). It can only speak a message already in your history, which is why it's a flag rather than a command.
Also
--openon images;imagineopens what it drawsapiplan voicesshows every voice and where it comes fromapiplan installnow tops up defaults added since your machine was set up — without this,imagineandttswould never have reached an existing install- README rebuilt: banner, architecture diagram, receipts
Honest limits
Speaking fresh text in a ChatGPT product voice isn't possible: it would mean creating a conversation first, and that endpoint sits behind a Cloudflare CAPTCHA (turnstile.required = true). Left uncleared. DARWIN.md rounds 14–19 log every route tried, including the ones that 404'd.
Windows users: v0.4.0 also fixes tests that couldn't locate their own source on Windows — caught by the CI matrix, invisible on macOS.
118 tests · 7/7 budgets · CI green on ubuntu, macos and windows.