GitHub Models is now retired I missed this news until today, when the GitHub Actions run for my simonw/research repository failed with this error message: GitHub Models is temporarily unavailable as part of a scheduled retirement brownout. That message is already stale, because the retirement has been completed.
The article announces the release of llm version 0.35, which introduces a new OpenAI model named gpt-6-astra for GPT-6 Astra. It highlights the addition of this model to the llm library and tags the release with openai, llm, and gpt-6-astra.
The release of llm 0.33 introduces several key updates: it upgrades to the OpenAI Python library 3.x and switches the HTTP client from httpx to httpx2, adds comprehensive key handling for embedding functions, allows repeated template usage to combine configurations, and adds a reasoning_summary option for reasoning-capable responses. These changes improve compatibility, flexibility, and usability of the llm tool.
Release: llm-openrouter 0. 7 Now that this plugin is compatible with LLM 0.
Simon Willison released the llm-typesafe 0.1a0 plugin, adding support for TypeSafe AI’s Jev model to the LLM tool. Users install it with `llm install llm-typesafe`, set an API key, and can then ask Jev-model questions such as yes/no, choice, or scoring queries via the `llm -m jev` command. The release includes examples for each question type and references a README for further details.
The release of llm 0.34 introduces a new feature that enhances log output by including response duration in both milliseconds and a human‑readable format. The short log view now contains a dedicated duration_ms field. Additionally, the update incorporates multiple bug fixes and a notable performance boost to llm logs, attributed to waveplate integration.
The release of llm‑anthropic 0.27 updates the Anthropic plugin for LLM to be compatible with the newly released anthropic v1.0.0 Python library, which has switched from httpx to httpx2. This mirrors a similar change made by OpenAI in their v3.0.0 release two weeks prior. The update includes a migration guide and a pull request that ensures tests pass after upgrading to anthropic>=1.
The release of llm-gemini 0.34 introduces the new Gemini 3.8‑Flash model, available in low, medium, and high thinking levels, and fixes an issue where async responses failed to record the resolved model version. The update also notes that Google has released Gemini 3.8‑Flash (and a restricted 3.8 Flash Cyber version) today, with example outputs (pelicans) demonstrating the model’s performance across the different thinking levels. The author highlights Gemini Flash’s speed, low cost, and competence in generating HTML, JavaScript, and Markdown‑SVG content, citing a 13‑second, 1.8‑cent example of an HTML output.
The article recounts a challenging debug session that was significantly aided by an AI assistant. Despite the AI initially claiming the problem was unsolvable and suggesting a report be written instead, it persisted, adding debug code and analyzing it as the author pushed forward. Ultimately, the author credits the AI with writing the commit message for the fix.
Stealing Reasoning Traces from Proprietary LLM APIs A vanity domain name ( stolen-thoughts. com ) for a neat paper : Anthropic, OpenAI, and Google return encrypted chain-of-thought blocks to clients that can be replayed across sessions, users, and models.
The article announces that Claude Code will now support AGENTS.md files starting with version 2.1.277. If a CLAUDE.md file is absent in a folder, Claude will automatically look for and use AGENTS.md, leveraging Claude Code mods to customize the harness. The built‑in mod is available for use, and users can also create their own custom project instructions.
OpenRouter advertises automatic fallback and cost‑effective routing to the best backend provider for a single API endpoint. However, Mohamed Moustafa highlights that different providers use varied serving software, optimizations, and capabilities, leading to inconsistent behavior across the same endpoint. Users can mitigate this by specifying a provider with the provider.only option and checking available providers via the /endpoints method.