A GitHub bot that implements issues by reading repository context, understanding requirements, and creating pull requests with the necessary code changes. The bot is currently triggered through a web interface where users can paste GitHub issue URLs.
- Install Goose
- NodeJS and Yarn
- A dedicated Github account to run the bot (similar to
freepilot-bot)
See docker instructions at the bottom of this file.
NOTE: you are trusting the agent to run in "auto" mode which is potentially dangerous.
See this gist for setting up multiple SSH keys and this gist for setting up multiple git profiles
The WORK_DIR should have a .gitconfig file so that all work done by the bot is using a separate profile.
cd backendSetup your environment variables:
cp backend/.env.example backend/.envRun the app
yarn install
yarn startcd frontend
yarn install
yarn devMake sure the
SSH_PRIVATE_KEY_BASE64env variable is in base64 format:base64 -w 0 id_rsa > id_rsa.b64
$ docker build . -t freepilot-local --progress=plain
$ docker run -v $(pwd)/.data/docker:/data -e WORK_DIR='/data' -e DATABASE_URL='file:/data/freepilot.db' -e GITHUB_TOKEN="ghp_..." -e OPENROUTER_API_KEY="sk-or-v1-..." -e SSH_PRIVATE_KEY_BASE64="XXXXXXX" -e SSH_PUBLIC_KEY="XXXXXXX" -p 3001:3001 freepilot-local