Skip to content
AI News HubLIVE
Original source2 min read

llm-coding-agent 0.1a0

Summary

Simon Willison releases llm-coding-agent 0.1a0, a simple coding agent built on his LLM library. Developed with Claude Code, it includes tools for file editing, command execution, and a Python API.

llm-coding-agent 0.1a0
Report an error

The correction channel is not available yet. You can copy the article reference below for later.

Correction instructions
Read article

Release: llm-coding-agent 0.1a0

Simon Willison’s Weblog

Subscribe

2nd July 2026

Release

llm-coding-agent 0.1a0 — A coding agent built on LLM

Another Fable 5 experiment. Now that my LLM library has evolved into more of an agent framework it's time to see what a simple coding agent would look like built on it.

I started a new Python library using my python-lib-template-repository GitHub template repository, then ran these two prompts (here's the Claude Code for web transcript):

Write a spec.md for this project - it will depend on the latest “llm” alpha from PyPI and implement a Claude code style coding agent complete with tools for reading and editing files and executing commands

Then:

Commit the spec, then build it using red/green TDD in a series of sensible commits (each with passing tests and updated docs) - occasionally manually test it using the OpenAI API key in your environment

Here's the resulting README file and the sequence of commits.

I've shipped a slop-alpha to PyPI, so you can run the new agent like this:

uvx --prerelease=allow --with llm-coding-agent llm code

It's pretty good for a first attempt! Here's the (Fable-authored) README, which lists recipes like llm code --yolo and llm code --allow "pytest*" --allow "git diff*".

It also presents a Python API based around a CodingAgent(model="gpt-5.5", root="/path", approve=True).run("Fix the failing test in tests/test_parser.py") class which I didn't ask for but I'm delighted to see implemented.

Here's the suite of tools it implemented, listed using uvx ... llm tools:

CodingTools_edit_file(path: str, old_string: str, new_string: str, replace_all: bool = False) -> str

Replace an exact string in a file.

old_string must match the file contents exactly (including whitespace) and must identify a unique location unless replace_all is true. Returns a diff of the change so it can be verified.

CodingTools_execute_command(command: str, timeout: int = 120) -> str

Run a shell command in the session root directory.

Returns combined stdout and stderr followed by an Exit code line. timeout is in seconds (maximum 600); on timeout the whole process tree is killed.

CodingTools_list_files(pattern: str = '**/*', path: str = '.') -> str

List files matching a glob pattern, newest first.

Skips hidden directories, node_modules, pycache and (in a git repository) anything covered by .gitignore. Returns at most 200 paths relative to the searched directory.

CodingTools_read_file(path: str, offset: int = 0, limit: int = 2000) -> str

Read a text file, returning numbered lines like cat -n.

Paths are relative to the session root. Use offset (0-based first line) and limit (max lines) to page through files too large to read in one call.

CodingTools_search_files(pattern: str, path: str = '.', glob: str = None, max_results: int = 100) -> str

Search file contents for a regular expression.

Returns matches as path:line_number:line, capped at max_results. Use glob (e.g. "*.py") to restrict which files are searched.

CodingTools_write_file(path: str, content: str) -> str

Create or overwrite a file with the given content.

Parent directories are created as needed. Prefer edit_file for modifying existing files.

Recent articles

Have your agent record video demos of its work with shot-scraper video - 30th June 2026

Porting the Moebius 0.2B image inpainting model to run in the browser with Claude Code - 22nd June 2026

sqlite-utils 4.0rc1 adds migrations and nested transactions - 21st June 2026

This is a beat by Simon Willison, posted on 2nd July 2026.

projects 542

ai 2,098

generative-ai 1,855

llm 607

llm-tool-use 71

coding-agents 216

claude-code 119

claude-mythos 20

Monthly briefing

Sponsor me for $10/month and get a curated email digest of the month's most important LLM developments.

Pay me to send you less!

Sponsor & subscribe

Disclosures

Colophon

©

2002

2003

2004

2005

2006

2007

2008

2009

2010

2011

2012

2013

2014

2015

2016

2017

2018

2019

2020

2021

2022

2023

2024

2025

2026

Key points and analysis

Article intelligence

EngineersAdvanced

Key points

  • llm-coding-agent 0.1a0 is an experimental coding agent from Simon Willison based on the LLM library.
  • Developed using Claude Code with red/green TDD approach.
  • Provides tools for file editing, command execution, file searching, and a Python API.
  • Run via `uvx --prerelease=allow --with llm-coding-agent llm code`.

Highlights and analysis are generated automatically and may contain errors. Check the original source.