Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/semanser/codel
✨ Fully autonomous AI Agent that can perform complicated tasks and projects using terminal, browser, and editor.
https://github.com/semanser/codel
agent ai autonomous-agents bot devin llama2 llms ollama openai
Last synced: 1 day ago
JSON representation
✨ Fully autonomous AI Agent that can perform complicated tasks and projects using terminal, browser, and editor.
- Host: GitHub
- URL: https://github.com/semanser/codel
- Owner: semanser
- License: agpl-3.0
- Created: 2024-03-18T17:21:32.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-04-29T17:53:58.000Z (8 months ago)
- Last Synced: 2024-12-13T13:05:09.337Z (8 days ago)
- Topics: agent, ai, autonomous-agents, bot, devin, llama2, llms, ollama, openai
- Language: TypeScript
- Homepage: https://discord.gg/uMaGSHNjzc
- Size: 15.5 MB
- Stars: 2,172
- Watchers: 27
- Forks: 161
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-agents - Codel
- awesome-langchain-zh - Codel
- awesome-langchain - Codel
- StarryDivineSky - semanser/codel
- AiTreasureBox - semanser/codel - 12-20_2181_0](https://img.shields.io/github/stars/semanser/codel.svg)|✨ Fully autonomous AI Agent that can perform complicated tasks and projects using terminal, browser, and editor.| (Repos)
README
Fully autonomous AI Agent that can perform complicated tasks and projects using terminal, browser, and editor.**Discord: https://discord.gg/uMaGSHNjzc**
# Features
- 🔓 Secure. Everything is running in a sandboxed Docker environment.
- 🤖 Autonomous. Automatically detects the next step and performs it.
- 🔍 Built-in browser. Fetches latest information from the web (tutorials, docs, etc.) if needed.
- 📙 Built-in text editor. View all the modified files right in your browser.
- 🧠 All the history commands and outputs are saved in the PostgreSQL database.
- 📦 Automatic Docker-image picker based on the user task.
- 🤳 Self-hosted
- 💅 Modern UI# Getting started
The simplest way to run Codel is to use a pre-built Docker image. You can find the latest image on the [Github Container Registry](https://github.com/semanser/codel/pkgs/container/codel).> [!IMPORTANT]
> You need to use a corresponding environment variable in order to use any of the supported language models.You can run the Docker image with the following command. Remove or change the environment variables according to your needs.
```bash
docker run \
-e OPEN_AI_KEY=your_open_ai_key \
-e OPEN_AI_MODEL=gpt-4-0125-preview \
-e OLLAMA_MODEL=llama2 \
-p 3000:8080 \
-v /var/run/docker.sock:/var/run/docker.sock \
ghcr.io/semanser/codel:latest
```Alternatively, you can create a `.env` file and run the Docker image with the `--env-file` flag. More information can be found [here](https://docs.docker.com/reference/cli/docker/container/run/#env)
Now you can visit [localhost:3000](localhost:3000) in your browser and start using Codel.
Supported environment variables
* `OPEN_AI_KEY` - OpenAI API key. You can get the key [here](https://platform.openai.com/account/api-keys).
* `OPEN_AI_MODEL` - OpenAI model (default: gpt-4-0125-preview). The list of supported OpenAI models can be found [here](https://pkg.go.dev/github.com/sashabaranov/go-openai#pkg-constants).
* `OPEN_AI_SERVER_URL` - OpenAI server URL (default: https://api.openai.com/v1). Change this URL if you are using an OpenAI compatible server.
* `OLLAMA_MODEL` - locally hosted Ollama model (default: https://ollama.com/model). The list of supported Ollama models can be found [here](https://ollama.com/models).
* `OLLAMA_SERVER_URL` - Ollama server URL (default: https://host.docker.internal:11434). Change this URL if you are using an Ollama compatible server.
See backend [.env.example](./backend/.env.example) for more details.# Development
Check out the [DEVELOPMENT.md](./DEVELOPMENT.md) for more information.
# Roadmap
You can find the project's roadmap [here](https://github.com/semanser/codel/milestones).
# Credits
This project wouldn't be possible without:
- https://arxiv.org/abs/2308.00352
- https://arxiv.org/abs/2403.08299
- https://www.cognition-labs.com/introducing-devin
- https://github.com/go-rod/rod
- https://github.com/semanser/JsonGenius