AI Developer is an AI agent powered by OpenAI Assistant API that's using custom E2B Sandbox
The AI developer is an AI agent that perform user's tasks in the user's GitHub repository including:
- reading files
- writing code
- making pull requests
- pulling GitHub repository
- responding to the user's feedback to the agent's previous work.
- running commands in the generated environment
All agent's work is happening inside the E2B sandbox.
The E2B's sandboxes are isolated cloud environments made specifically for AI apps and agents. Inside the sandbox AI agents perform long-running tasks, run code in a secure cloud environment, and use the same tools as a human developer would use.
- Pull GitHub repository
- Read files
- Make needed changes
- Commit work
- Create a pull request
- Run commands in the generated environment
The custom E2B sandbox environment is defined in the e2b.Dockerfile
- Run
npm install
- Copy
.env.example
and save it as.env
file - Add your OpenAI API key to
.env
- Get E2B API Key at https://e2b.dev/docs/getting-started/api-key
- Save it to
.env
- Save it to
- Run
npm run create-ai-assistant
to create the AI assistant using OpenAI's new Assistant API - Grab the assistant ID you just created here https://platform.openai.com/assistants
- Save the assistant ID to
.env
- Save the assistant ID to
- Create classic GitHub token here and give it the
read:org
andrepo
permissions- Save the GitHub token to
.env
- Save the GitHub token to
- Save your GitHub username to
.env
Run the following command in terminal and follow instructions
npm run start
If you make changes to the description in functions.ts
, you can update the AI by running the following command in the terminal:
npm run update-ai-assistant