Simon Willison Ships LLM 0.32, Calling It 'The Most Significant New Version Since the Initial Launch of the Project'
On August 4 Willison released LLM 0.32, adding visible reasoning traces piped to stderr (suppressible with -R/--hide-reasoning), out-of-the-box support for the GPT-5.6 family with GPT-5.6 Luna as the new default model, server-side provider tools, a content-addressable Git-like SQLite message store that stops duplicating JSON on every append, and a new `llm openai endpoint` command for one-liner prompts against any OpenAI-compatible endpoint. The Python API also changes: `model.prompt(messages=[])` replaces the old conversation abstraction and `stream_events()` now emits structured event types for reasoning, text, tool calls, and attachments. For builders, the reasoning-to-stderr split is the quietly important part — it makes reasoning models composable in Unix pipelines for the first time without polluting stdout.
↳ Follow the thread