Simon Willison

Your executable is a SQLite database

Farid Zakaria shows how to create a SQLite database file that can be executed directly as a Linux binary. By setting the SQLite file format’s 4‑byte application ID to "SELF" and arranging ELF components into SQLite tables, a small C interpreter can extract and run the necessary parts. The technique can be registered with the kernel via binfmt_misc so any file matching the pattern is automatically executed.

Simon Willison
Sep 10

Any Nix package, live in your browser

Farid Zakaria’s trynix.dev lets users run any Nix package from the past 13 years inside a browser‑based x86_64 Linux VM powered by QEMU‑WASM. By providing URL‑addressable packages, a user can simply navigate to a link such as https://trynix.dev/?pkg=python3%403.6.2, click "Load," and obtain an interactive shell running that specific package. The platform is also integrated with GitHub Actions, enabling pull‑request reviews that launch the PR’s build directly in the browser via trynix-preview.

Simon Willison
Aug 27

Breaking Claude Code Opus 5 Auto Mode

The article discusses a vulnerability in Anthropic’s Claude Code’s auto mode, which was promoted as a safeguard against prompt injection attacks. Prompt‑injection researcher Johann Rehberger demonstrated that the auto mode can be tricked into executing malicious code, even blocking the agent’s own cleanup attempts. The author concludes that the safest approach is to run coding agents in isolated sandboxes and restrict their access to sensitive resources.

Hugging Face Trending Papers
Jun 2

Agent libOS: A Library-OS-Inspired Runtime for Long-Running, Capability-Controlled LLM Agents

Large language model (LLM) agents are evolving from request-response assistants into long-running software actors: they maintain state across model calls, fork subtasks, wait for external events, request human authority, generate tools, and perform side effects that must be resumed and audited. This paper presents Agent libOS, a library-OS-inspired runtime substrate for LLM agents.

Simon Willison
5d ago

Be alert: targeted attacks on prominent Rustaceans

The article warns of a targeted campaign against prominent Rust developers and crate owners, aiming to compromise their devices and accounts to publish malware. Attackers use seemingly legitimate video calls to trick targets into installing malicious software or executing commands, such as a fake audio codec or clipboard command. A recent supply‑chain attack on the array‑ref crate illustrates the threat, and the author suggests using dependency cooldowns as a defensive measure.

Simon Willison
Aug 25

EVE Online: The Move to Python 3 Begins!

EVE Online is beginning its transition to Python 3, a move that will involve using the futurize script on 2.4 million lines of code and a manual review of about 20,000 differences between Python 2 and Python 3. The company has historically run on Stackless Python since 2003, with the last major upgrade in 2010 to Stackless Python 2.7. While the announcement does not detail how Stackless will be replaced, the team previously showcased a shift away from Stackless in their Carbon engine for EVE Frontier, leveraging the open‑source carbonengine/scheduler library.

arXiv AI
Jun 3

Agent libOS: A Library-OS-Inspired Runtime for Long-Running, Capability-Controlled LLM Agents

arXiv:2606. 03895v1 Announce Type: cross Abstract: Large language model (LLM) agents are evolving from request-response assistants into long-running software actors: they maintain state across model calls, fork subtasks, wait for external events, request human authority, generate tools, and perform side effects that must be resumed and audited.

By Yingqi Zhang