Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/MiscellaneousStuff/anterion

Open-source software engineer
https://github.com/MiscellaneousStuff/anterion

agent llm programming

Last synced: about 2 months ago
JSON representation

Open-source software engineer

Lists

README

        

# Anterion Web Beta



Anterion AI Agent Demo

[![](https://dcbadge.vercel.app/api/server/nbY6njCuxh)](https://discord.gg/nbY6njCuxh)

# 🤖 Anterion Agent

## 📖 What is Anterion?

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.

## 🎥 Install Tutorial (Windows/WSL)



Anterion AI Install Tutorial (Windows/WSL)

## 🏁 Getting Started

🎉 Get on board with Anterion by doing the following! 🎉

### Prerequisites
* Linux, Mac OS, or [WSL on Windows](https://learn.microsoft.com/en-us/windows/wsl/install)
* [Docker](https://docs.docker.com/engine/install/)
* [Python](https://www.python.org/downloads/) >= 3.11
* [NodeJS](https://nodejs.org/en/download/package-manager) >= 18.17.1
* [Miniconda](https://docs.anaconda.com/free/miniconda/miniconda-install/)

You will need to setup all three components of the system before being able to run it:

### 1. `OpenDevin` Setup

Before setting up OpenDevin, make a new conda environment and activate
it by doing the following:

```bash
conda create --name anterion python=3.11
conda activate anterion
```

To setup OpenDevin, run the following command in the `anterion` directory:

```bash
make build-open-devin
```

### 2. `SWE-agent` Setup

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:

```bash
cd SWE-agent
conda env create -f environment.yml
conda activate swe-agent
```

You will need to create a file called `keys.cfg` inside of the `SWE-agent`
directory:

```bash
OPENAI_API_KEY: ''
ANTHROPIC_API_KEY: ''
GITHUB_TOKEN: ''
```

And add the following
`.env` file inside of the `SWE-agent` directory:

```bash
NETLIFY_AUTH_TOKEN=""
NETLIFY_SITE_ID=""
```

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`

```bash
cd ..
make build-swe-agent
```

### 3. `microservice` Setup

Finally, 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.

```bash
cd ./microservice
mkdir docker_volume
```

Then you need to create a `.env` file in the `microservice` directory
like the following:

```bash
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
SWE_AGENT_PATH=
PYTHON_PATH=

DOCKER_HOST_VOLUME_PATH=
DOCKER_CONTAINER_VOLUME_PATH=/usr/app

SWE_AGENT_PER_INSTANCE_COST_LIMIT=
SWE_AGENT_TIMEOUT=25
SWE_AGENT_MODEL_NAME=gpt4
```

#### Ollama Support

If you want to use an `Ollama` model, change `SWE_AGENT_MODEL_NAME` to look like the following:

```bash
SWE_AGENT_MODEL_NAME=ollama:
```

For example, if you want to try the new LLama 3 model, use the following line:

```bash
SWE_AGENT_MODEL_NAME=ollama:llama3
```

Next, head from the `microservice` directory `cd` to the `anterion` directory and return to the `anterion` environment using:

```bash
cd ..
conda deactivate
```

Finally, run the following command from the `anterion` directory to build the microservice:

```bash
make build-microservice
```

### Usage

To 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:

```bash
./run.sh
```

You may have to change permissions for the file first:
```bash
chmod +x run.sh
```

If that isn't working for some reason, run both of them separately:

```bash
make run-frontend
```

```bash
make run-backend
```

## 🙏 Special Thanks!

We'd like to say thanks to these amazing repos for inspiration!
- [OpenDevin](https://github.com/OpenDevin/OpenDevin)
- [SWE-agent](https://github.com/princeton-nlp/SWE-agent)