Выпущен llm-coding-agent 0.1a0, автономный агент для написания кода на базе Claude

Simon Willison выпустил llm-coding-agent 0.1a0, Python-библиотеку, реализующую автономного агента для кодирования на базе Claude (Fable 5). Проект возник как естественное развитие его llm-библиотеки, которая эволюционировала в полноценный фреймворк для построения агентов.

Агент строится на основе двух ключевых промптов: первый генерирует техническую спецификацию проекта с указанием зависимостей и требуемого функционала, второй запускает цикл разработки через красно-зелёное TDD (красное состояние → зелёное с тестами → рефакторинг). Процесс создания включал промптирование через Claude Code (веб-интерфейс с записью сеанса).

Библиотека предоставляет набор инструментов: чтение файлов (с офсетом и лимитом строк), поиск по регулярным выражениям, редактирование текста (замена строк с проверкой уникальности), создание/перезапись файлов, выполнение shell-команд (с таймаутом до 600 секунд) и листинг файлов по glob-паттернам (исключая .gitignore и служебные директории).

API базируется на классе CodingAgent с параметрами model (например, gpt-5.5), root (корневая директория проекта) и approve (автоматическое одобрение). Пример использования: CodingAgent(model="gpt-5.5", root="/path").run("Исправить ошибку в тесте tests/test_parser.py").

Установить можно через uvx --prerelease=allow --with llm-coding-agent llm code. Демонстрационный запуск с флагом --yolo показал, что агент корректно определяет ограничения (например, SwiftUI не подходит для истинного CLI) и строит работающее решение, выводящее ASCII-арт часов при запуске приложения.

Ключевые факты

  • Выпущена первая альфа-версия (0.1a0) полнофункционального агента для кодирования на Claude Fable 5 с реализацией инструментов для работы с файлами и выполнения команд
  • Агент использует красно-зелёное TDD для автономной реализации спецификации в коде с пошаговыми коммитами и тестированием
  • Доступны шесть основных инструментов: чтение файлов с пагинацией, поиск по регулярным выражениям, редактирование текста, создание файлов, выполнение команд и листинг по шаблонам
  • API опирается на простой класс CodingAgent с поддержкой выбора модели, корневой директории и режима автоодобрения
  • Первые тесты показывают, что агент может строить реальные приложения (SwiftUI CLI с ASCII-артом), корректно оценивая возможности инструментов и избегая избыточных попыток

Почему это важно

Автономные агенты для кодирования долго оставались в тени более известных решений вроде GitHub Copilot. llm-coding-agent демонстрирует, что Claude Fable 5 способен не просто подсказывать код, а полностью управлять циклом разработки, от спецификации до работающего приложения с тестами. Это снижает порог входа для экспериментов с агентами и показывает практическую жизнеспособность подхода.

Кому это важно

Разработчикам, использующим Claude API или Claude Code, которые хотят автоматизировать повторяющиеся задачи кодирования. ML-инженерам, исследующим способности LLM в software engineering. Компаниям, строящим внутренние инструменты на базе LLM-агентов. Авторам инструментов вроде Simon Willison (создатель sqlite-utils, llm, datasette), как доказательство концепции расширяемой платформы для агентов.

Как это применить

Установить через uvx с флагом --prerelease=allow. Использовать в CLI через llm code --allow '<паттерн>' для ограничения доступа агента к определённым командам и файлам (например, --allow 'pytest*' --allow 'git diff*'). Для программного API импортировать CodingAgent из llm_coding_agent и инициализировать с выбранной моделью и путём к проекту. Стартовые примеры: llm code --yolo (без ограничений), автоматизация исправлений ошибок в существующих проектах, генерация тестового кода по спецификации.

Можно ли доверять

Проект принадлежит Simon Willison, известному разработчику с проверенной репутацией (sqlite-utils, Datasette, llm). Код выложен на GitHub (ссылка на README, спецификацию и последовательность коммитов видны в оригинальной статье). Альфа-статус (0.1a0) честен, это первая публичная версия с ожиданием доработок. Демонстрационный пример (SwiftUI CLI) работает и подтверждает базовую функциональность.

Риски и подводные камни

Альфа-версия означает нестабильное API и возможные баги. Агент работает на принципе согласия (approve=True), потребуется механизм санкционирования критичных операций (удаление файлов, выполнение опасных команд). Таймаут 600 секунд может быть недостаточен для очень длинных операций. Инструмент обучен на англоязычных примерах кода, что может влиять на качество при нестандартных сценариях. Документация минимальна (README + примеры), полное обучение потребует чтения исходного кода и экспериментов.