The new Qwen 3.8 27B, running as a 17GB GGUF in LM Studio on my M5 Max MacBook Pro, just drew me the best pelican riding a bicycle I've seen from any model that runs on my laptop It did take nearly 21 minutes to generate, and used 22,276 reasoning tokens to produce 3,223 tokens of output. Here's the full transcript: https:// tools.simonwillison.net/markdo…
Big new release of my LLM CLI tool and Python library for talking to hundreds of different LLMs - reasoning traces, OpenAI Responses support, server-side tools, smarter logging and a whole lot more https:// simonwillison.net/2026/Aug/4/n ew-release-of-llm/
Hugging Face just published a highly detailed technical account of OpenAI's accidental cyberattack on their systems - it's wild how sophisticated this was: https:// huggingface.co/blog/agent-intr usion-technical-timeline Wrote up some of my own notes here: https:// simonwillison.net/2026/Jul/28/ anatomy-of-a-frontier-lab-agent-intrusion/
Ruff 0.16.0 - Astral's fast Python linter - came out a few days ago and increased the number of default-enabled rules from 59 to 413, which highlighted all sorts of problems across my projects (1618 in sqlite-utils alone) https:// simonwillison.net/2026/Jul/25/ ruff/
I wrote about the completely wild incident where OpenAI were testing a new model and it broke out of its sandbox and broke INTO Hugging Face to steal the answers to the benchmark https:// simonwillison.net/2026/Jul/22/ openai-cyberattack/
My notes on Kimi K3, plus some thoughts on what we can still learn from the pelican benchmark even while it becomes further detached from how good the models are at the things that matter (like agentic tool calling across longer conversations) https:// simonwillison.net/2026/Jul/16/ kimi-k3/
New TIL: Using uvx in GitHub Actions in a cache-friendly way I finally found a recipe that I like for running `uvx tool-name` in GitHub Actions without downloading a fresh copy of the package every time https:// til.simonwillison.net/github-a ctions/uvx-github-actions-cache
... and if you want to see some of OpenAI's own pelicans they featured a 3D pelican riding a tricycle, bicycle, pony, and another pelican in their livestream this morning: https://www. youtube.com/live/Wq45rvPGNHs?t =1070s
Notes on GPT-5.6, which includes some interesting new additions to the API (programmatic tool calling and multi-agent in particular) - plus 18 pelicans for the 6 reasoning levels and 3 new models: https:// simonwillison.net/2026/Jul/9/g pt-5-6/
Since this is a slightly backwards-incompatible change here's a detailed upgrade guide - which you can read, or feed into your coding agent and have it apply the upgrades for you https:// sqlite-utils.datasette.io/en/s table/upgrading.html
I released sqlite-utils 4.0, the 124th release but the first major version bump since 3.0 back in 2020 I managed to keep things backwards-compatible all the way up to version 3.39 before the accumulated design mistakes forced me to bump that number! https:// simonwillison.net/2026/Jul/7/s qlite-utils-4/
I've added video support to my "shot-scraper" browser automation tool - you (or your coding agent) can now create a storyboard YAML file and use that to record a video demo of new web application features https:// simonwillison.net/2026/Jun/30/ shot-scraper-video/
My parallel agent side-project today was having Claude Code port the new Moebius image pinpointing model to ONNX in order to run it entirely in the browser https:// simonwillison.net/2026/Jun/22/ porting-moebius/
I just released the first release candidate for sqlite-utils v4, adding a migrations system (previously released independently as sqlite-migrate) and support for nested transactions: https:// simonwillison.net/2026/Jun/21/ sqlite-utils-40rc1/
Lots more information in this post on the Datasette project blog, including details on our live demo and uv one-liners you can use to try this out on your own machine https:// datasette.io/blog/2026/dataset te-apps/
Think of this as Claude Artifacts reimagined for Datasette - you get all the power of artifacts but with a JSON API to a full relational database, allowing your HTML+JS apps to access and store data in all shapes and sizes
Just launched Datasette Apps - a plugin for Datasette that lets you host full HTML+JS apps in an iframe sandbox that can query your database and do interesting things with your data https:// simonwillison.net/2026/Jun/18/ datasette-apps/
It's now possible to compile Python extensions (C, C++, Rust etc) to WebAssembly and distribute them through PyPI such that Pyodide can install them directly https:// simonwillison.net/2026/Jun/13/ publishing-wasm-wheels/
After two days with Claude Fable 5 the best way I can describe it is "relentlessly proactive" - here's an example where I dropped in a screenshot of a bug and it span up custom CORS Python servers and used pyobjc-framework-Quartz to capture screenshots https:// simonwillison.net/2026/Jun/11/ fable-is-relentlessly-proactive/
Since the JSON extras API is a little hard to explain without an example I also had Fable 5 and GPT-5.5 collaborate on this custom API explorer tool for trying out the new feature https:// tools.simonwillison.net/datase tte-extras-explorer#url=https%3A%2F%2Flatest.datasette.io%2Ffixtures%2Ffacetable.json%3F_size%3D1%26_facet%3Dstate&extras=count%2Ccount_sql%2Cexpandable_columns%2Cfacet_results