mailwal

The October inflection point for vibe game development

Simon Willison from Simon Willison’s Newsletter

In this newsletter:

  • The October inflection point for vibe game development

Plus 8 links, 3 quotations, 1 release, 1 research report, and 2 tools

Thanks for reading Simon Willison’s Newsletter! Subscribe for free to receive new posts and support my work.


Sponsor message: An agent’s job isn’t known until runtime, so permissions written in advance end up too tight or too loose. WorkOS Airlock derives them from the task instead. Each tool call is allowed, sent for approval, or denied based on the intent and your plain-English rules, and every verdict is logged. Request early access.


The October inflection point for vibe game development - 2026-10-28

I’ve written before about how November 2025 was an inflection point for coding agents - the point where Opus 4.5 and GPT-5.1 crossed a tipping point that meant their respective coding agents became reliable daily drivers for software engineers. I think we’ve reached a new inflection point in October 2026, and this time it’s for vibe coding computer games.

Claude Opus 5.5 in particular exhibits meaningful improvements in several areas needed to build a compelling game:

That last one is particularly important. Models have been able to create something that lookslike a game for quite a while now, as seen in my previous experiments. The challenge has been getting to a game that’s actually fun to play.

Game design is a deep subject area. I won’t pretend to be well versed in it - I know enough to have respect for it as a craft. Creating a novel, compelling gameplay loop which challenges players at the right level and provides a satisfying learning curve is a fine art. I didn’t think the models could do it.

Then I tried telling Claude Opus 5.5 to “Make it a LOT more fun”... and it did.

In the past few weeks I’ve vibe coded (in the classic sense of the term - no looking at the code at all) four games that I’ve genuinely enjoyed playing.

I attended Foo Camp in Berkeley over the weekend and met several people who were having similar experiences. Building games that play well is shockingly easy now. The new challenge is coming up with concepts for games that are novel and delightful and that wouldn’t exist without AI assistance.

I haven’t done an exhaustive study, but my current impression is that GPT-6 Astra isn’t quite there yet. It can absolutely build a game, but its sense of fun doesn’t match that of Opus 5.5. I expect OpenAI will get there by the end of the year.

Here are the four game projects that have convinced me that the models are now capable of producing fun games with very little guidance. All four are built in HTML and JavaScript and run entirely in the browser.

Tree Appreciator

The smallest game I found to be genuinely delightful is Tree Appreciator. I used the regular Claude chat interface for this - it didn’t even need Claude Code.

I built this on a whim while we were driving along Skyline Boulevard looking at trees. My prompt was:

Build a three js game called "Tree appreciator" - it shows you two algorithmically generated trees and the game mechanics is about appreciating the differences between them. Think hard about how to make sure it is both fun and beautiful.

I’ve found that telling models to use three.jsworks really well. Claude doesn’t have its own image generation model but is capable of building full-color 3D models that look and feel excellent.

This game required no iteration or follow-up prompting at all - I got the game in a single shot. It gave me back a charming little mobile-friendly spot-the-difference game. You can play that here. Here’s the chat transcript that built it.

Screenshot of a web game called Tree Appreciator, a spot-the-difference puzzle showing two side-by-side 3D renders of the same leafy green oak on a grassy hill at golden hour, with orange low-poly hills and a hazy sky behind and pale rocks in the grass. The left tree (Fig. i) has a small brown-and-o

It’s pleasingly relaxing. The graphics are fun, and collecting trees that you have completed in a “herbarium” provides a nice, cosy sense of accomplishment.

Emberwick

This was a more ambitious project that I again built using regular Claude chat. I started out by building an experimental prototype of an engine for a top-down fantasy RPG:

Build a demo game engine three.js which is a top down (but at an angle) RPG - the player gets to move through the world with one or two companions. Create a fantasy village setting that demonstrates walking around outside and then shows how when the player enters a building the wall between the player and the camera goes transparent so the user can see what is happening

Add some NPCs and plenty of furniture and different types of building some with an upstairs - be creative, make it look great

Here’s that first version. It worked really well!

Screenshot of a low-poly 3D top-down fantasy game showing the interior of a cutaway tavern at dusk, with grass, a lamppost and benches outside. Inside, warm candlelight falls on wooden floorboards: a stone fireplace with a figure in a red armchair on a red rug, a blue armchair with an orange cat on

I was inspired to increase my ambitions:

Make it not so flat - the buildings are great but the landscape itself is completely flat at the moment, fix that

Add basements to two of the buildings with a tunnel system joining them below the village

Add the start of a rocky mountain on one side of the village containing a cave with a sleeping troll

Here’s that version.

Screenshot of the same low-poly fantasy game, now in a dim underground cave lit by a campfire with a spit roast, glowing pale mushrooms and blue crystals. A huge green troll lies asleep on a straw bed at top right, surrounded by scattered bones and skulls. The cave also holds a small round pool ring

When that produced a good result, I decided to push it all the way:

Now turn this into an actual game - quadruple the size of the playable area, introduce fun game mechanics, add a plot that isn't too cliche, some twists, a magic system, make it really good

We’re back to prompts like “make it really good” here! Asking for a plot that “isn’t too cliche” seemed to work too - it’s a bit cliché, but still novel enough that I enjoyed following the story.

Unlike Tree Appreciator, this took quite a bit of additional playtesting and prompting to get to a finished version. This was mainly due to gameplay problems - things like a character not being in the right place to complete a quest because a different story element had caused them to move to another location.

Here’s that final game. It has a full story that takes about 15 minutes to play through.

Emberwick title screen. The 3D village sits in the background. The text reads Every fire in Emberwick was lit from the Hearthstone, and every fire dies at midnight unless it is lit again. Tonight the Hearthstone is gone, the wizard is missing, and the village is sure the troll did it. You came for t

There’s even an experimental level editor if you want to drop in your own houses, furniture, and landscape features.

Once it was all working (and I’d iterated through some gameplay bugs), I played it through from start to finish and found myself emotionally affected by the ending! I’m somewhat embarrassed by this, because everything in this game - the graphics, the plot, the characters, the music, the dialog - came from the model. My creative input was pretty much just “it’s a fantasy village and there’s a troll asleep in a cave”.

Here’s the full shared Claude chat in which I built this game.

I also fed that same initial sequence of prompts through ChatGPT GPT-6 Pro. Here’s the transcript and the finished game for comparison. It looks great, but I don’t think it plays nearly as well.

Battle Drones

This is by far my most successful project, which I wrote about last week. It’s a Command & Conquer-style Real-Time Strategy game where two robot armies (or four as of Saturday) build units, harvest scrap, and battle over territory.

This is also the project that convinced me that Opus 5.5 knows what “fun” is.

The first versions were built back in July using Claude Fable 5. It got me to a workable 2D Command & Conquer-style game, but it wasn’t great to play.

I prompted Opus 5.5 to “Make it a LOT more fun” and then later to “Port this game to three.js” and the game was transformed. There’s a blow-by-blow account (prompts included) in my write-up.

Today, Battle Drones has 2-4 player multiplayer (via a vibe coded WebSockets relay server), medals, replays, seven maps, a random map generator, and a set of “mutators” that add variants of the rules.

It also lets different LLMs play against each other, using a mode where the game advances five seconds and then pauses to give different models time to interpret the new game state and line up their next set of commands. Here’s a replay of Claude Haiku 5.5 vs. GPT-6 Luna:

Screenshot of a replay of a real-time strategy game between two AI models, shown from a top-down view of a snowy map with a dark frozen lake of cracked ice floes on the left and pine forests at the top and lower right. Top bar: pause button, "6:27", "1×", "anthropic/claude-haiku-5-5 · industry" in b

Battle Drones is a particularly good example of Opus 5.5’s ability to create 3D models. This page lets you browse all of the models in the game.

I released Battle Drones under the Apache 2.0 License last Tuesday. On Wednesday Gabriel Turpin released Panache (screenshots here), a fork of Battle Drones that reimagined the game for steampunk 1900s Belle Époque France, with new models and music and an animated intro sequence. Open source at work!

Pumpkin Farmer, aka Quarter Sun Cove

I live in Half Moon Bay, California, home of the annual Half Moon Bay Art and Pumpkin Festival, which includes a giant pumpkin weigh-off competition.

I decided to try building a game that wasn’t just a cheap imitation of something that already existed, so I set out to create a game about farming pumpkins, growing giant pumpkins, and handling the rush of the October pumpkin season.

I called it “Quarter Sun Cove”.

I’m still iterating on this project, but it’s shaping up quite nicely. It’s a cosy farming simulator where you spend the year tending to your giant pumpkin and planting out regular-sized pumpkins for sale in October, then sell pumpkins during pumpkin season and enter your giant pumpkin in the weigh-off.

Every character in it is a (vegetarian) animal. The mayor of the town is a pelican. You can be a pelican, skunk, raccoon, possum, beaver, coyote, fox, owl, sea otter, or harbor seal. Those species all later show up (accompanied by their children) to buy pumpkins from you.

It’s absurdly cute.

Screenshot of an isometric low-poly pumpkin farming game. In the bottom left, a huge giant pumpkin, far bigger than anything around it, sits in its own fenced plot under string lights. Beyond it are rows of pumpkin vines with a scarecrow and animal visitors (pelicans, beavers and otters) picking pum

You can play the latest version here. I’m not convinced by the game mechanics yet - it’s actually quite complicated: you have to decide when to plant pumpkins such that they will become ripe at the weekends in October with the most visitors.

Here’s the initial brainstorming session, which resulted in this spec file. Then I had Opus 5.5 Ultracode burn millions of tokens and nearly two days building it.

I told Claude to “surprise and delight the user frequently” and the result is so many little details and easter eggs. There are mischievous raccoons, an elephant seal that runs the weigh-off, harbor seals that roll their pumpkins back into the ocean, a wandering goat, and superstitions about growing giant pumpkins that sometimes come true.

This isn’t my best game yet - it’s not as fun to play as Battle Drones - but it represents the kind of game I want more of: weird, fun, uniquely personal - something that wouldn’t have been built in the before-times.

Four times as insulting

If you are offended by AI-generated art, AI-generated music, AI-generated writing, and AI-generated code, I have bad news for you: vibe coded games combine all of those at once.

The wider games community already has an aversion to AI-generated assets in games. This has been a growing issue over the past few years as tools like Midjourney have enabled developers to generate assets for their projects. This IGN story covering complaints about slop in Valve’s Steam Next Fest is a good recent example.

We now have games where everything - code, assets, dialog, and even the game design itself - can be outsourced to the models. And the results don’t suck!

Building a computer game used to be one of the most challenging projects in all of software development, combining a diverse range of skills and requiring intense focus and effort over many months or even years. And now here I am spitting out a playable multiplayer RTS by prompting on my phone!

I expect that, as we’ve already seen with programming, this will result in a split. Some players will refuse to have anything to do with games that were built in this way. Others may embrace this as opening up game development to a much wider audience. I lean in that direction!

I certainly won’t be entering any of my vibe coded games in traditional game jams or competitions - I don’t feel like I’ve earned that right. We’ll likely see new avenues emerge for vibe game developers to compare their projects.

What happens if someone actually puts the work in?

The thing I find both exciting and shameful about this is that I have got interesting results from so little creative input. The projects I’ve described here are loosely ordered by how much effort I’ve put into them. Not a single project represents more than four hours of my work (plus many more hours of Claude Code churning away by itself).

Now imagine what could be achieved by anyone who takes this seriously, invests significant creative time, applies better taste in game design, and then playtests and iterates on the result until it’s as good as they can make it.

I want to see games that wouldn’t have existed without these new tools.

You should build a game!

Building games in this way is so much fun. It’s the perfect application for vibe coding because it’s so low stakes: how much damage can you cause with a bug in a personal vibe coded game project?

(OK, you can do some damage... my attempt at audio-based multiplayer gave my wife Natalie a nasty headache!)

All of my games so far have been HTML and JavaScript using static hosting (generally GitHub Pages or Cloudflare Pages). Modern browsers - including mobile browsers - are incredibly capable. Frontier models already know libraries like three.js and Phaser. I’m finding these mobile web games to be indistinguishable from the native experience, at least for the kinds of games I’m trying to build.

I suggest starting with a prompt like this:

Build a mobile-friendly three.js game where...

This works on both chatgpt.com and claude.ai- you don’t even need to fire up a full coding agent. As one last example, here’s “Build a mobile-friendly three.js game where a mouse has to hide from a cat” by Claude Opus 5.5 Extra and by GPT-6 Extra High.

Switch to Codex or Claude Code once your project passes the proof-of-concept phase.

And if the game isn’t fun enough, add this:

Make it a LOT more fun


Link 2026-10-20 eMudhra Intermediate CA Compromise:

This is very, very bad news:

The private keys of eight eMudhra intermediate CA certificates have been compromised. They chain to roots trusted by the Mozilla, Microsoft, Apple and Chrome root programs and by many downstream trust stores.

Any software that bundles a list of trusted certificates needs to be updated. This site is tracking software updates via this GitHub repository - Linux distros need to update their ca-certificates packages.

In Python world uv 0.13.4 and pip 26.2.2 and certifi 2026.10.19 have been released with upgraded certificate lists.

There’s a very informative thread about this on the official Python forum.


Link 2026-10-21 Panache — RTS Belle Époque pour mobile:

Well this is delightful: I released Battle Dronesyesterday under an Apache 2.0 License and there’s already a French language fork by Gabriel Turpin which reskins the game to take place in steampunk 1900s France and adds an animated intro!

Panache est un jeu de stratégie en temps réel pour mobile et navigateur, dans la France de la Belle Époque (vers 1900) : dirigeables, Fardiers à vapeur, Creusot cuirassés, automates en képi, Gargantua la forteresse marchante — et beaucoup de panache.

You can play Panache here - it’s worth clicking that link just to experience the new intro video.

So far it’s mostly just aesthetic updates as opposed to gameplay changes. The music has had a French twist added to it as well.

The new steampunk models are so cool!

The new buildings are gold and red, there are dirigibles and biplanes, and the Goliath stomping mech has had a total makeover.

Here’s a page with the original Battle Drones models and that same page with the new Panache alternatives.

This is a comparison of the original and the new design for the Goliath:

On the left: blue stomping mech robot, missile launcher shoulders, classic sci-fi robot look. On the right: gold, steampunk, much more 1900s French look.

Link 2026-10-21 Today’s PHP Security Release, and How We’re Strengthening PHP Security:

If you’re running anything on PHP it’s vital you upgrade - today’s updates (across the entire PHP 8.x line) address two remote code execution holes, and there have been exploits circulating since last night, thanks to a leak in the coordinated disclosure process.

This post from the PHP Foundation explain what went so wrong:

On Tuesday, October 20th, at around 15:00 UTC, the two CVE IDs began circulating on online forums and social media. They came with a wrong release time and a wrong CVSS score of 10.0 (the actual score is 9.2). No technical details leaked. In response, the PHP project brought its pre-announcement forward and published it at 19:30 UTC. It also moved the release from October 22nd, 14:00 UTC, to October 21st, 14:00 UTC [...]

As a result of the leak and pre-announcement around 20:00 UTC, Calif, one of the security firms that had reported the issues mistakenly published a video. It showed their proof of concept working against a number of targets and revealed a few additional, though limited, details about the vulnerabilities. Copies of the deleted video started circulating on social media soon after. The video contributed to accelerated development of various PoCs (exploitation proof of concepts), which then increased circulation on October 21st.

This article from the team that discovered the original vulnerability includes a more detailed timeline of the original intended responsible disclosure:

  • August 19, 2026: Wiz Research discovers the first PHP vulnerability using Wiz Atlas, Gemini 4 Argon, and GPT-5.6 Sol.

  • August 20, 2026:Unauthenticated RCE is confirmed against Drupal.

  • August 21, 2026:Unauthenticated RCE is confirmed against WordPress.

  • August 24, 2026: Wiz Research reports the vulnerabilities to the PHP security team.

  • September 21, 2026: PHP acknowledges the reports and begins developing a coordinated fix.

  • October 21, 2026: Patched PHP releases become available.

  • October 21, 2026: Public disclosure.


Quote 2026-10-22

As fun as AI is, we built so much bad software over the last 30 years, and now the universe is punishing us for our sins.

Armin Ronacher


Link 2026-10-22 Donating Agent Skills to the Agentic AI Foundation:

News today from Anthropic:

We’re committed to keeping Agent Skills open, community-driven, and vendor-neutral. Today, we are donating the standard to the Agentic AI Foundation (AAIF) under the Linux Foundation, which we co-founded with Block and OpenAI last year, and to which we donated the Model Context Protocol (MCP).

I’m pleased to note I called this one last December, when Anthropic first declared skills to be an “open standard”:

I wouldn’t be surprised to see this end up in the AAIF, recently the new home of the MCP specification.

Fun side note: since my blog content is available to Claude via the datasette-mcp plugin I found that post by prompting Claude to “Use simonwillison.net MCP to find if I ever talked about how I want skills to be donated to a standards body“.


Link 2026-10-22 DE STAAT - FREEDOM (Official Music Video):

OK well this is a first for me... at 00:44 in this new music video by Dutch alternative rock band De Staat there’s a pelican riding a bicycle!

The visual effects are credited to Matties Grooten of Fake it or Leave it.


Link 2026-10-23 Introducing Kimi K3.1 Pro:

Kimi K3.1 Pro landed on the Kimi API today - it’s not yet open weights, but Moonshot promise “Full model weights will be released by Nov 4, 2026”.

They’re also offering a “Highspeed” version that’s 2-3x faster, at twice the price (except for input token cache hits, which are priced the same).

The US dollar pricing is $2.00/million tokens for input and $10/million for output - the same as GPT-6.1 Sol and half the price of Claude Opus 5.5.

Moonshot’s own benchmarks show Kimi as approximately level with Opus 5.5 and GPT-6 Astra - beating them on a few benchmarks, coming close on others.

Artificial Analysis scored Kimi at 55 - ahead of Claude Fable 5.1, GPT-6 Astra, and Gemini 4 Argon (all at 53) and behind only Claude Opus 5.5 (58).

This is the first time a (soon-to-be) open weight model has scored this highly against the frontier.

I tried it out via the Moonshot API using the llm openai endpoint command I added to LLM 0.32back in August:

llm openai endpoint \
  https://api.moonshot.ai/v1 \
  --key kimi \
  -m kimi-k3.1-pro \
  "Generate an SVG of a pelican riding a bicycle" \
  --responses \
  -o reasoning_effort low \
  > kimi-k3.1-pro-pelican-low.stdout.txt \
  2> kimi-k3.1-pro-pelican-low.stderr.txt

llm openai endpoint can run prompts against any OpenAI-compatible endpoint but doesn’t log the results, hence the extra options to save stdout and stderr (the reasoning trace).

Here are the pelicans I got for Kimi K3.1 Pro on the three reasoning levels it supports - low, medium, and max. This is max:

It's pretty solid - feet are on the pedals, bicycle frame is good, nice beak. Both legs are on the same side of the Fram though.

For comparison, I ran fresh pelicans against Kimi K3 on those three reasoning levels.


Tool: Quick Study

Prompt to Claude Opus 5.5 High:

Build an artifact where you open a photo and it rapidly (in a few seconds) paints a version of that photo using a canvas element and simulated paintbrush

See also my previous experiment getting Claude Fable to simulate a watercolor illustration with P5.js.

A simulated oil painting of a photograph of a heron

Quick Study uses Sobel edge detection, with no external libraries beyond Google Fonts.


Release: battledrones v14: Compass Rose, a four player map

I added four player online mode to Battledrones - previous maps were limited to two.

Here’s the initial prompt I used:

Add a new map for a four player battle - four way rotational symmetry, up to four AI players, works with the WebSocket non-audio based multiplayer mode so up to four human players can join (any spare slots use AI)

Claude Opus 5.5 added a new map called “Compass Rose” and modified the WebSockets multiplayer network code to support up to four players for that map, joining via share links or QR codes.

The new map does indeed look a bit like a rose - it uses the cold and ice biome. Also shown are purple robots battling on the map.

The new teams use robots themed in purple and green, joining the existing blue and red designs. You can preview those colors in the updated model browser.

Here’s a replay link to watch a four way AI battle with the “Goliath Armada” mutator turned on, where each side starts with four giant Goliath mech units.


Tool: Seam Cutter

I built this weird and very specific cropping tool - it lets you create a horizontal or vertical cut across an image, then slide the two sides relative to each other. Effectively it lets you crop out a section in the middle of an image.

I wanted this because I often use Tailor on my iPhone to stitch several screenshots together into lot long image, but sometimes I find myself wanting to crop out a section in the middle - to redact an irrelevant prompt from a transcript, for example.


Research: webframe: evaluated as a scraper and a sandbox

webframe is a neat little project from Jeff Lindsay which lets you “run a web page like a program” - you point it at a URL or file and it executes it in a hidden headless web view and outputs console.log() to standard output and any exceptions to standard error.

It’s written in Go on top of the glaze library, which provides access to a system browser (”WKWebView on macOS, WebKitGTK on Linux, WebView2 on Windows”) so it doesn’t need to bundle its own browser engine.

It reminds me of my own shot-scraper javascript tool, albeit in a much smaller package that doesn’t depend on Playwright.

I had Claude Opus 5.5 put it through its pacesand prepare a research report for me. Here’s the prompt I used:

Explore https://github.com/tractordev/webframe try running it and put it though its paces, build a few exploratory prototypes, then evaluate it as a potential sandboxing tool and as a tool for scraping web pages using the same patterns encouraged by the "shot-scraper JavaScript" command (see simonw/shot-scraper on GitHub, docs directory)


Quote 2026-10-26

Because big tech platforms essentially do not have customer support and make it impossible for their users to contact a human, many people experiencing run-of-the-mill tech problems have turned to ChatGPT. And, increasingly, ChatGPT is telling people that have normal tech support problems that they have discovered something journalistically notable and that 404 Media, specifically, can help them.

Jason Koebler, ChatGPT Keeps Telling People 404 Media Can Solve Their Tech Support Problems


Link 2026-10-26 GPT-6.1 Terra:

It’s always interesting to note which aspects of a new model are emphasized in the release announcement.

In the case of GPT-6.1 Terra, OpenAI went with visual reasoning and computer use:

We’re introducing GPT-6.1 Terra, a fast, efficient model that combines detailed visual reasoning and precise computer use alongside clearer, more natural writing. A significant step up from GPT‑5.6 Terra, it excels at the communication and computer-based tasks that fill the workday, from drafting proposals and interpreting technical drawings to filling out forms and editing videos.

Terra sits in the same position as Sonnet in the Anthropic model collection - not the cheapest or the most expensive, making it harder to decide when to use it.

Computer use is a good example of a task that benefits from a less expensive model, since you might put it to work on automated, repetitive tasks.

OpenAI’s Ted Sanders provided some useful advice in a comment on Hacker News:

In the case of GPT-6.1 Terra, I’d say Terra is probably better than Astra and Sol at technical communication, similar on vision and computer use (but much faster!), and a bit worse on most other things. For API developers, it’s a nice midrange option if you want something cheaper than Sol but a lot smarter than Luna (especially for vision / computer use / communication). For subscribers, it’s not a bombshell release - if you’re hitting usage limits, maybe it helps you go a bit further, and if you want clearer communication or faster computer use, it can be a nice option to select.

Here are the pelicans for the different reasoning levels. This pelican for “max” cost 11.3161 cents and took 4 minutes and 11 seconds:

It's a good pelican and a good bicycle - correctly shaped frame, feet n pedals either side of the frame, has the same color scheme as the others in the GPT-6 and GPT-6.1 families.

Here’s a new comparison grid showing pelicans for every reasoning level of OpenAI’s current frontier lineup: GPT-6 Astra, GPT-6.1 Sol, GPT-6.1 Terra, and GPT-6 Luna.

GPT-6.1 Terra is priced at $1/million input tokens and $5/million output - almost half the price of GPT-5.6 Terra and GPT-6.1 Sol, and around 10x the price of GPT-6 Luna.


Link 2026-10-27 Game Boy Color on My Conference Badge:

I’m at GitHub Universe this week and, similar to last year, the conference badge is a full-blown color screen computer.

I’ve been hacking around with it again, and then I ran into with Steve Francia... who worked with Gemini to get a full NES emulator working on it, and then went a step further and deployed an emulator for both the Game Boy and the Game Boy Color.

Which means, if you can obtain the ROM, you can run The Legend of Zelda: Link’s Awakeningon your conference badge!

Photo of the badge running Zelda, in full color, with visible touch buttons below the screen.

A neat feature of the badge is that you can turn it upside down and then use game controller touch buttons that are built into the badge body.


Quote 2026-10-28

If your work does not benefit from current AI tooling, that is a finding, not a failing. Document why, share it with your community of peers, bring it to your manager, and work to find solutions. An engineer who can explain where AI does not yet help their work is demonstrating the judgement we are asking for.

Terk Terkowitz, An update from Amazon engineering leadership on the role of the developer in the age of AI


If you find this newsletter useful, please consider sponsoring me via GitHub. $10/month and higher sponsors get a monthly newsletter with my summary of the most important trends of the past 30 days - here are previews from June and July and August.

Thanks for reading Simon Willison’s Newsletter! Subscribe for free to receive new posts and support my work.

© 2026 Simon Willison
548 Market Street PMB 72296, San Francisco, CA 94104