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:
To setup OpenDevin, run the following command:
make build-open-devin
Next 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-agent
cd ..
You 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>'
(Optionally) If you want to be able to use Netlify deployments, 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>"
Finally, run the following command to setup SWE-agent
make build-swe-agent
Finally you need to setup the microservice
, which ties together the
OpenDevin
frontend and the SWE-agent
agent.
First 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=gpt4
Then, run the following command to build the microservice:
make build-microservice
Finally, within the microservice
directory, create a new
directory called docker_volume
which will be used to contain
the agents Docker container will store files within.
cd ./microservice
mkdir docker_volume
cd ..
To run Anterior, you need to run the frontend and the backend. Run the following command to run both together:
./run.sh
You may have to change permissions for the file first:
chmod +x run.sh
If that isn't working for some reason, run both of them separately:
make run-frontend
make run-backend
We'd like to say thanks to these amazing repos for inspiration!