# GPTEngineer **Repository Path**: tzthomas/GPTEngineer ## Basic Information - **Project Name**: GPTEngineer - **Description**: GPT-Engineer 是根据指示生成代码的 AI 工具 - **Primary Language**: Python - **License**: MIT - **Default Branch**: main - **Homepage**: https://www.oschina.net/p/gpt-engineer - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2023-06-20 - **Last Updated**: 2023-06-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GPT Engineer **Specify what you want it to build, the AI asks for clarification, and then builds it.** GPT Engineer is made to be easy to adapt, extend, and make your agent learn how you want your code to look. It generates an entire codebase based on a prompt. [Demo](https://twitter.com/antonosika/status/1667641038104674306) 👶🤖 ## Project philosophy - Simple to get value - Flexible and easy to add new own "AI steps". See `steps.py`. - Incrementally build towards a user experience of: 1. high level prompting 2. giving feedback to the AI that it will remember over time - Fast handovers back and forth between AI and human - Simplicity, all computation is "resumable" and persisted to the filesystem ## Usage Choose either **stable** or **development**. For **stable** release: - `pip install gpt-engineer` For **development**: - `git clone git@github.com:AntonOsika/gpt-engineer.git` - `cd gpt-engineer` - `make install` - `source venv/bin/activate` **Setup** With an api key that has GPT4 access run: - `export OPENAI_API_KEY=[your api key]` **Run**: - Create an empty folder. If inside the repo, you can run: - `cp -r projects/example/ projects/my-new-project` - Fill in the `main_prompt` file in your new folder - Run: `gpt-engineer projects/my-new-project` **Results** - Check the generated files in `projects/my-new-project/workspace` ### Limitations Implementing additional chain of thought prompting, e.g. [Reflexion](https://github.com/noahshinn024/reflexion), should be able to make it more reliable and not miss requested functionality in the main prompt. Contributors welcome! If you are unsure what to add, check out the ideas listed in the Projects tab in the GitHub repo. ## Features You can specify the "identity" of the AI agent by editing the files in the `identity` folder. Editing the identity, and evolving the `main_prompt`, is currently how you make the agent remember things between projects. Each step in `steps.py` will have its communication history with GPT4 stored in the logs folder, and can be rerun with `scripts/rerun_edited_message_logs.py`. ## Contributing If you want to contribute, please check out the [projects](https://github.com/AntonOsika/gpt-engineer/projects?query=is%3Aopen) or [issues tab](https://github.com/AntonOsika/gpt-engineer/issues) in the GitHub repo and please read the [contributing document](.github/CONTRIBUTING.md) on how to contribute. ## High resolution example https://github.com/AntonOsika/gpt-engineer/assets/4467025/6e362e45-4a94-4b0d-973d-393a31d92d9b