CLI tool for LLM-based code editing experiments on large codebases
Top 61.4% on sourcepulse
This project provides tools for using Large Language Models (LLMs) to edit code in large codebases, focusing on building robust tooling for prompt context and response handling rather than relying solely on agent reasoning. It's targeted at researchers and developers experimenting with LLM-powered software engineering tasks, offering a framework for evaluating LLM performance on code modification benchmarks.
How It Works
The core approach involves creating a structured environment for LLMs to interact with code. It leverages a CodeIndex
for semantic code search and a FileContext
to manage code changes. The AgenticLoop
orchestrates the interaction between an LLM (CodingAgent
) and the codebase, iterating through problem-solving steps. This method aims to improve LLM accuracy by providing precise context and handling LLM outputs effectively, particularly for complex code editing tasks.
Quick Start & Requirements
pip install moatless
(base), pip install "moatless[streamlit]"
(with UI), pip install "moatless[api]"
(with API server), or pip install "moatless[all]"
(all features). Alternatively, install from source using Poetry..env
file or direct export) must be configured for API keys and directories. A specific litellm
dependency is needed for Claude 3.5 Sonnet.Highlighted Details
CodingAgent
and AgenticLoop
with specific LLMs.Maintenance & Community
This appears to be a hobby project with a single primary contributor. Community engagement channels are not explicitly mentioned.
Licensing & Compatibility
The repository does not explicitly state a license in the README. This requires clarification for commercial use or integration into closed-source projects.
Limitations & Caveats
The README notes that the current version of litellm
lacks support for computer use tools required by Claude 3.5 Sonnet, necessitating a specific dependency fork. Some models may not have been extensively tested.
1 month ago
1 day