Shelley's new compaction algorithm: a tool that the model calls to "squish" and "trim" prior messages. Joint work with @maisem.com. Read all about it at blog.exe.dev/compaction.
Philip Z
CI is the eternal battle between isolation and caching? This post brought to you by leaked processes, overflowing /tmp tmpfs, ephemeral port exhaustion, mismatched build flags, GitHub latency, and on and on and on. Also, blog.philz.dev/blog/what-is...
Some notes on mapping the topology of agents up at blog.exe.dev/topology. No epsilon proofs, continuity, open or closed sets here; just straight up what's running where and what's talking to what.
CI, ideally, is a deterministic function from your source tree to a boolean: are the tests passing or not? To make it fast, parallelize, isolate, visualize, analyze. It need only be as slow as your slowest test. My notes here— blog.philz.dev/blog/what-is...
My dev process for iOS apps: shake it like a Polaroid picture. blog.philz.dev/blog/shake-t...
If I were to (as the story goes) get a job at Google, fix one bug, and quit, this is the bug: a given calendar event should only be shown once! I went through the motions; Calendear for iOS is on the App Store: apps.apple.com/app/id681658...
I’m giggling at Luna (in Shelley) playing Tetris over my shoulder. The pattern is handy for ops work wbere you want an agent to double-check the logs. Not just any agent… the one you usually use. blog.exe.dev/agent-over-y...
"Is your product legible to coding agents as users?" I can just smell Christensen's Innovator's Dilemma as I switch from better, more polished, established products to ones that let me point an agent at them. Of the nine points at blog.exe.dev/revisiting-j..., this is the most important one.
Experimenting with Pliable apps. apps.philz.dev has a download if you want to try it.
New prompting technique in Shelley: talk at your computer while it records your screen. I grossly underestimated how effective this would be. Here's a recording from a boring bug I fixed. It’s that easy. blog.exe.dev/show-and-tel...
I recently reverted to old habit and wrote a "Jenkins job" (it was Buildkite, but pot-ay-to pot-ah-to) to nag me about Fireworks model updates. Eventually, I came to my senses, and used a VM with a timer and an agent instead. So much better.
TIL from @commaok.xyz: git plumbing to synthesize a commit equivalent to resetting to main and cherry-picking a single commit c. git commit-tree -p main \ $(git merge-tree --write-tree --merge-base c^ main c) c^ as "merge-base" "subtracts" the delta b/w main and c^. philz.dev/blog/git-vir...
> Cache reads now cost $0.25 per million tokens, 75% less than Fable 5 This is a *huge* price drop, given that cache reads inevitably end up most of your costs, because of the quadratic nature of LLM conversations. blog.exe.dev/expensively-...
The Joel Test was 26 (!) years ago. I revisited it at blog.exe.dev/revisiting-j.... What questions did I leave out?
fzakaria.com/2026/08/24/a... code is data. Love me some binfmt_misc and SQLite hijinks.
Gave Shelley (gpt-5.6-sol, in this case) a pointer to www.texttocad.dev and English instructions of a keyboard tilt thingamajig, and it one-shot it. (Keyboard is NocFree&; not my favorite.)
Ian's solution at blog.exe.dev/we-taught-sq... is clever. Associate cache entries with the WHERE clause they were produced by and invalidate when updates hit the same WHERE clause. Made possible by some code-generation and a single-writer database.
Philip Z reposted
I wrote up what I meant by this jeremymorrell.dev/blog/extensi...
Hot take: as it starts to sink in that your users can now magic code into existence just by asking for it, your app should become more like Salesforce
blog.exe.dev/athena-deplo... 💯 Never going without this again. Build an agent to babysit your deployment. Give it only the code, the git log, the metrics, the logs, a way to send you messages, a way to pause the deploy. This is the way.
Friends don't let friends complicate their deploys with Spinnaker. Build the 5% you need; having your own deployment console and CD system is fantastic. It's been a game-changer for our deploys at @exe.dev. turbopuffer has one too: turbopuffer.com/blog/control...
A month in the lab can save a day in the library. But what if it’s the agent in the lab (vm)? And it doesn’t take a month? blog.exe.dev/planning
Your agents need computers. Giving the agents computers without persistent disks would be like having to pick up a freshly blank laptop everyday. (See also blog.exe.dev/persistent .)
I am adamant about keeping bots out of human spaces. Also, about linking bot messages back to their code and runtime environment. blog.exe.dev/botiquette
An embeddable terminal library is such a boon. To get scrollback to work across a handful of terminal surfaces, we built it into the session manager. Read all about it! blog.exe.dev/exe-scroll
ssh -R and -L are so powerful. Needed to let agent on my VM connect to iOS sim on Mac, far behind a NAT. 1. ssh exe.dev ssh-key add --vm vm ... 2. mac: cat >> authorized_keys 3. mac: ssh -R 1111:localhost:22 vm.exe.xyz 4. vm: ssh -p 1111 user@localhost 5. Shelley happily driving the simulator
Four quick prompts to make a custom feed bsky.app/profile/did:... for myself on an @exe.dev VM.
Once you've got a stable of agents right in your pocket, you can't go back! www.youtube.com/watch?v=BhBF...
Philip Z reposted
A rapidly increasing share of the software I use on a daily basis is bespoke. It makes bugs and papercuts in other software ever more exasperating. Once you've experienced mutable software there's no going back. I think blog.exe.dev/customizing-... may be most important thing ever on the exe blog.
"The solution was fairly straightforward" blog.exe.dev/a-tale-of-tw... by Maisem is very cool. Learning cool stuff at work is fun.
Philip Z reposted
We 🐡🐡🐡 exe.dev -- simple, effective, fast. If you've noticed improvements in our user experience over the last 6 months, they were accelerated by how simple exe.dev made things.
"I just realized what I wanted was, like, a computer." How @antithesis.com uses exe to give agents real machines, safely: blog.exe.dev/how-antithes...
Plugin architectures are awful, right? Either it’s a versioning dependency mess or you’re coding in config files. I’m tickled by how well blog.exe.dev/customizing-... works. The upgrade button does an agentic rebase.
Philip Z reposted
Replying to @justingarrison.com
The part about using the exe.dev iOS app to create a VM from a short idea as a replacement for just jotting down a note was a major 💡 moment for me
Always such a delight when folks use your product for cool stuff. bsky.app/profile/exe....
We're going to be sharing more about how people use exe to build cool stuff. First up—a conservationist who turned 40 terabytes of public data into a video game: blog.exe.dev/meet-the-con...