The OG code genereation experimentation platform!
If you are looking for the evolution that is an opinionated, managed service – check out gptengineer.app.
If you are looking for a well maintained hackable CLI for – check out aider.
gpt-engineer lets you:
For stable release:
python -m pip install gpt-engineer
For development:
git clone https://github.com/gpt-engineer-org/gpt-engineer.git
cd gpt-engineer
poetry install
poetry shell
to activate the virtual environmentWe actively support Python 3.10 - 3.12. The last version to support Python 3.8 - 3.9 was 0.2.6.
Choose one of:
export OPENAI_API_KEY=[your api key]
.env.template
named .env
Check the Windows README for Windows usage.
Other ways to run:
prompt
(no extension) inside your new folder and fill it with instructionsgpte <project_dir>
with a relative path to your folder
gpte projects/my-new-project
from the gpt-engineer directory root with your new folder in projects/
prompt
(no extension) inside your new folder and fill it with instructions for how you want to improve the codegpte <project_dir> -i
with a relative path to your folder
gpte projects/my-old-project -i
from the gpt-engineer directory root with your folder in projects/
The community has started work with different benchmarking initiatives, as described in this Loom video.
Some of our community members have worked on different research briefs that could be taken further. See this document if you are interested.
By running gpt-engineer, you agree to our terms.
gptengineer.app is a commercial project for the automatic generation of web apps. It features a UI for non-technical users connected to a git-controlled codebase. The gptengineer.app team is actively supporting the open source community.
You can specify the "identity" of the AI agent by overriding the preprompts
folder with your own version of the preprompts
. You can do so via the --use-custom-preprompts
argument.
Editing the preprompts
is how you make the agent remember things between projects.
By default, gpt-engineer expects text input via a prompt
file. It can also accept image inputs for vision-capable models. This can be useful for adding UX or architecture diagrams as additional context for GPT Engineer. You can do this by specifying an image directory with the —-image_directory
flag and setting a vision-capable model in the second CLI argument.
E.g. gpte projects/example-vision gpt-4-vision-preview --prompt_file prompt/text --image_directory prompt/images -i
By default, gpt-engineer supports OpenAI Models via the OpenAI API or Azure OpenAI API, as well as Anthropic models.
With a little extra setup, you can also run with open source models like WizardCoder. See the documentation for example instructions.
The gpt-engineer community mission is to maintain tools that coding agent builders can use and facilitate collaboration in the open source community.
If you are interested in contributing to this, we are interested in having you.
If you want to see our broader ambitions, check out the roadmap, and join discord to learn how you can contribute to it.
gpt-engineer is governed by a board of long-term contributors. If you contribute routinely and have an interest in shaping the future of gpt-engineer, you will be considered for the board.