llm-coding-agent 0.1a0:基于LLM的编码代理
Simon Willison 发布了 llm-coding-agent 0.1a0,一个基于其 LLM 库的简单编码代理。该项目由 Claude Code 协助生成,支持文件读写、命令执行等工具,并提供了 Python API。
Simon Willison 于 2026 年 7 月 2 日发布了 llm-coding-agent 0.1a0,这是一个基于其 LLM 库构建的简单编码代理。该项目是 Fable 5 实验的一部分,旨在探索当 LLM 库演化为更成熟的代理框架时,构建一个编码代理的可能性。
Willison 使用其 python-lib-template-repository GitHub 模板仓库创建了一个新的 Python 库,随后通过两个提示指令借助 Claude Code 完成了开发。首先,他要求编写项目规范(spec.md),指定依赖最新“llm” alpha 版本,并实现类似 Claude Code 的编码代理,包含读写文件和执行命令的工具。接着,他指示提交规范,然后采用红绿 TDD(测试驱动开发)方式在多个合理的提交中构建项目,每个提交均包含通过测试和更新的文档,并偶尔使用环境中的 OpenAI API 密钥进行手动测试。
最终生成的 README 文件记录了项目的使用方法和配置,例如 llm code --yolo 和 llm code --allow "pytest*" --allow "git diff*" 等命令。此外,项目还包含一个 Python API,围绕 CodingAgent 类设计,支持指定模型、根目录和审批模式,例如 CodingAgent(model="gpt-5.5", root="/path", approve=True).run("Fix the failing test in tests/test_parser.py")。Willison 表示这个 API 并非他明确要求的,但很高兴看到它被实现。
该项目已作为“slop-alpha”版本发布到 PyPI,用户可以通过以下命令运行:
uvx --prerelease=allow --with llm-coding-agent llm codellm-coding-agent 实现了一套工具,包括:
- edit_file: 替换文件中的精确字符串,返回差异以验证更改。
- execute_command: 在会话根目录执行 shell 命令,返回标准输出和错误,超时时间可设置。
- list_files: 按 glob 模式列出文件,跳过隐藏目录和 .gitignore 中的内容,最多返回 200 个路径。
- read_file: 读取文本文件,显示行号,支持分页。
- search_files: 搜索文件内容中的正则表达式,返回匹配的行。
- write_file: 创建或覆盖文件,自动创建父目录。
Willison 认为这个初版表现不错,并期待后续发展。该项目托管在 GitHub 上,采用 MIT 许可证。