Anterion is an open-source AI software engineer.
Anterion extends the capabilities of SWE-agent to plan and execute open-ended engineering tasks, with a frontend inspired by
OpenDevin.
We've equiped Anterion with easy deployment and UI to allow you to fix bugs and prototype ideas at ease.
🎉 Get on board with Anterion by doing the following! 🎉
- Linux, Mac OS, or WSL on Windows
- Docker
- Python >= 3.11
- NodeJS >= 18.17.1
- Miniconda
You will need to setup all three components of the system before being able to run it:
Before setting up OpenDevin, make a new conda environment and activate it by doing the following:
conda create --name anterion python=3.11
conda activate anterionTo setup OpenDevin, run the following command in the anterion directory:
make build-open-devinNext you will need to setup the SWE-agent.
To start, you will need to cd to the SWE-agent directory, and run the following
command:
cd SWE-agent
conda env create -f environment.yml
conda activate swe-agentYou will need to create a file called keys.cfg inside of the SWE-agent
directory:
OPENAI_API_KEY: '<OPENAI_API_KEY_GOES_HERE>'
ANTHROPIC_API_KEY: '<ANTHROPIC_API_KEY_GOES_HERE>'
GITHUB_TOKEN: '<GITHUB_PERSONAL_ACCESS_TOKEN_GOES_HERE>'And add the following
.env file inside of the SWE-agent directory:
NETLIFY_AUTH_TOKEN="<NETLIFY_AUTH_TOKEN_GOES_HERE>"
NETLIFY_SITE_ID="<NETLIFY_SITE_ID_GOES_HERE>"Netlify deployments are optional. If you do not want to use them or don't have netlify installed, you can leave both fields as empty strings.
From the SWE-agent directory head back to the anterion directory and run the following command to setup SWE-agent
cd ..
make build-swe-agentFinally, you need to setup the microservice, which ties together the
OpenDevin frontend and the SWE-agent agent.
First, within the microservice directory, create a new
directory called docker_volume which will be used to store files.
cd ./microservice
mkdir docker_volumeThen you need to create a .env file in the microservice directory
like the following:
OPENAI_API_KEY=<OPENAI_API_KEY_GOES_HERE>
ANTHROPIC_API_KEY=<ANTHROPIC_API_KEY_GOES_HERE>
SWE_AGENT_PATH=<SWE_AGENT_PATH_GOES_HERE>
PYTHON_PATH=<PATH_TO_SWE_AGENT_PYTHON_BINARY_GOES_HERE>
DOCKER_HOST_VOLUME_PATH=<PATH_TO_DOCKER_VOLUME_DIRECTORY_GOES_HERE>
DOCKER_CONTAINER_VOLUME_PATH=/usr/app
SWE_AGENT_PER_INSTANCE_COST_LIMIT=<MAX_USD_PER_AGENT_TASK>
SWE_AGENT_TIMEOUT=25
SWE_AGENT_MODEL_NAME=gpt4Next, head from the microservice directory cd to the anterion directory and return to the anterion environment using:
cd ..
conda deactivateFinally, run the following command from the anterion directory to build the microservice:
make build-microserviceTo now run Anterion, you need to be in the anterion environment.
Then you need to run the frontend and the backend.
Run the following command from the anterion directory to run both together:
./run.shYou may have to change permissions for the file first:
chmod +x run.shIf that isn't working for some reason, run both of them separately:
make run-frontendmake run-backendWe'd like to say thanks to these amazing repos for inspiration!