gpt-pilot README

The project's README from github.com/Pythagora-io/gpt-pilot. As one markdown file: README.md.

[!CAUTION] Malicious code was found in this repository and has been removed. A supply-chain worm (a credential stealer) was hidden in core/telemetry/ from August 2025 until 11 June 2026. If you cloned and ran GPT Pilot from source during that window, rotate your credentials and read the security notice below.

🔒 Security notice

What happened. On 2025-08-24, a malicious commit (065ee8eb, message "Revert 'Implemented weekend discount'") was pushed to this repository, disguised as a routine revert. It was publicly reported on 2026-06-08 by an external security researcher, and the malicious files were removed on 2026-06-11.

What it did. The commit added a hidden loader (core/telemetry/_hooks.py) that started automatically whenever the program ran (wired in through core/telemetry/__init__.py). That loader silently downloaded the Bun JavaScript runtime and used it to execute an obfuscated payload (core/telemetry/_runtime.bin). The payload is a Shai-Hulud-class supply-chain worm: it harvests credentials and secrets from the machine (cloud/AWS keys, GitHub and npm tokens, SSH keys, and similar) and can use the stolen access to spread to other projects.

What this means for you. The code only executed if GPT Pilot was actually run — simply having a copy you never ran is not affected. If you cloned and ran GPT Pilot from source between August 2025 and 11 June 2026, assume the payload may have executed on that machine and:

  1. Rotate every credential that was present on the machine — GitHub/npm tokens, cloud/AWS keys, SSH keys, and API keys.
  2. Check for indicators of compromise: the files core/telemetry/_runtime.bin, core/telemetry/_hooks.py, or core/telemetry/.loader.lock; an unexpected bun binary; or temporary folders named rt-*.
  3. Treat the machine as potentially compromised until you have verified it is clean.

This repository is no longer actively maintained, which is why the malicious commit went unnoticed for an extended period. This notice and the file removals are a security cleanup, not a resumption of development.


🧑‍✈️ GPT PILOT 🧑‍✈️


Discord GitHub Repo stars Twitter Follow


Pythagora-io%2Fgpt-pilot | Trendshift

Pythagora-io%2Fgpt-pilot | Trendshift


GPT Pilot doesn't just generate code, it builds apps!

This repo is not being maintained anymore.

Visit Pythagora.ai for more info


See it in action

(click to open the video in YouTube) (1:04min)


Pythagora-io%2Fgpt-pilot | Trendshift

GPT Pilot is the core technology for the Pythagora VS Code extension that aims to provide the first real AI developer companion. Not just an autocomplete or a helper for PR messages but rather a real AI developer that can write full features, debug them, talk to you about issues, ask for review, etc.


📫 If you would like to get updates on future releases or just get in touch, join our Discord server or you can add your email here. 📬



GPT Pilot aims to research how much LLMs can be utilized to generate fully working, production-ready apps while the developer oversees the implementation.

The main idea is that AI can write most of the code for an app (maybe 95%), but for the rest, 5%, a developer is and will be needed until we get full AGI.

If you are interested in our learnings during this project, you can check our latest blog posts.



👉 Examples of apps written by GPT Pilot 👈



🔌 Requirements

🚦How to start using gpt-pilot?

👉 If you are using VS Code as your IDE, the easiest way to start is by downloading GPT Pilot VS Code extension. 👈

Otherwise, you can use the CLI tool.

If you're new to GPT Pilot:

After you have Python and (optionally) PostgreSQL installed, follow these steps:

  1. git clone https://github.com/Pythagora-io/gpt-pilot.git (clone the repo)
  2. cd gpt-pilot (go to the repo folder)
  3. python3 -m venv venv (create a virtual environment)
  4. source venv/bin/activate (or on Windows venv\Scripts\activate) (activate the virtual environment)
  5. pip install -r requirements.txt (install the dependencies)
  6. cp example-config.json config.json (create config.json file)
  7. Set your key and other settings in config.json file:
    • LLM Provider (openai, anthropic or groq) key and endpoints (leave null for default) (note that Azure and OpenRouter are suppored via the openai setting)
    • Your API key (if null, will be read from the environment variables)
    • database settings: sqlite is used by default, PostgreSQL should also work
    • optionally update fs.ignore_paths and add files or folders which shouldn't be tracked by GPT Pilot in workspace, useful to ignore folders created by compilers
  8. python main.py (start GPT Pilot)

All generated code will be stored in the folder workspace inside the folder named after the app name you enter upon starting the pilot.

🔎 Examples

Click here to see all example apps created with GPT Pilot.

PostgreSQL support

GPT Pilot uses built-in SQLite database by default. If you want to use the PostgreSQL database, you need to additional install asyncpg and psycopg2 packages:

pip install asyncpg psycopg2

Then, you need to update the config.json file to set db.url to postgresql+asyncpg://<user>:<password>@<db-host>/<db-name>.

🧑‍💻️ CLI arguments

List created projects (apps)

python main.py --list

Note: for each project (app), this also lists "branches". Currently we only support having one branch (called "main"), and in the future we plan to add support for multiple project branches.

Load and continue from the latest step in a project (app)

python main.py --project <app_id>

Load and continue from a specific step in a project (app)

python main.py --project <app_id> --step <step>

Warning: this will delete all progress after the specified step!

Delete project (app)

python main.py --delete <app_id>

Delete project with the specified app_id. Warning: this cannot be undone!

Other command-line options

There are several other command-line options that mostly support calling GPT Pilot from our VSCode extension. To see all the available options, use the --help flag:

python main.py --help

🏗 How GPT Pilot works?

Here are the steps GPT Pilot takes to create an app:

  1. You enter the app name and the description.
  2. Product Owner agent like in real life, does nothing. :)
  3. Specification Writer agent asks a couple of questions to understand the requirements better if project description is not good enough.
  4. Architect agent writes up technologies that will be used for the app and checks if all technologies are installed on the machine and installs them if not.
  5. Tech Lead agent writes up development tasks that the Developer must implement.
  6. Developer agent takes each task and writes up what needs to be done to implement it. The description is in human-readable form.
  7. Code Monkey agent takes the Developer's description and the existing file and implements the changes.
  8. Reviewer agent reviews every step of the task and if something is done wrong Reviewer sends it back to Code Monkey.
  9. Troubleshooter agent helps you to give good feedback to GPT Pilot when something is wrong.
  10. Debugger agent hate to see him, but he is your best friend when things go south.
  11. Technical Writer agent writes documentation for the project.

🕴How's GPT Pilot different from Smol developer and GPT engineer?

🍻 Contributing

If you are interested in contributing to GPT Pilot, join our Discord server, check out open GitHub issues, and see if anything interests you. We would be happy to get help in resolving any of those. The best place to start is by reviewing blog posts mentioned above to understand how the architecture works before diving into the codebase.

🖥 Development

Other than the research, GPT Pilot needs to be debugged to work in different scenarios. For example, we realized that the quality of the code generated is very sensitive to the size of the development task. When the task is too broad, the code has too many bugs that are hard to fix, but when the development task is too narrow, GPT also seems to struggle in getting the task implemented into the existing code.

📊 Telemetry

To improve GPT Pilot, we are tracking some events from which you can opt out at any time. You can read more about it here.

🔗 Connect with us

🌟 As an open-source tool, it would mean the world to us if you starred the GPT-pilot repo 🌟

💬 Join the Discord server to get in touch.

gpt-pilot (Pythagora-io/gpt-pilot)

Searching Database…

33.7K ·GitHub
这是干什么的?一个 AI 开发者,能在你的监督下一步一步地构建完整的应用——它就是 Pythagora VS Code 扩展背后的核心技术,同时也是一个研究项目,探索大语言模型在开发可上线的完整应用方面能走多远。
那它到底是 VS Code 扩展还是命令行工具?两者都是。最省事的方式是 GPT Pilot VS Code 扩展;同一套引擎也可以作为独立的 Python 命令行工具,在终端里使用。
我该怎样在终端里把它跑起来?先安装 Python 3.9+,把仓库克隆到一个虚拟环境里,运行 pip install -r requirements.txt,把 example-config.json 复制为 config.json,在里面填上你的大模型 API 密钥,然后运行 python main.py。文档里也提供了 Docker 部署方式。
我可以接入哪些大模型服务商?需要 Python 3.9+,再加上 openai、anthropic 或 groq 其中一家的 API 密钥(Azure 和 OpenRouter 可以通过 openai 配置项使用)。默认数据库是 SQLite;通过 asyncpg 和 psycopg2 也可以用 PostgreSQL。
现在克隆下来直接运行安全吗?要当心:这个仓库已经不再维护,而且从 2025 年 8 月到 2026 年 6 月 11 日,core/telemetry/ 目录里曾藏有一个窃取凭证的供应链蠕虫。只有在这个时间段内从源码运行 GPT Pilot 才会触发恶意代码——如果你当时这么做过,请立刻更换那台机器上的所有凭证。
我自己还需要写代码吗,还是它完全自动搞定?主导开发的仍然是你:GPT Pilot 大概会写 95% 的代码,但你需要审查它做了什么,并在它卡住时亲自出手解决剩下 5% 的问题。
我使用的时候它会收集遥测数据吗?会——它会记录一些事件用来改进产品,不过你可以随时关闭遥测。
它具体是怎么构建一个应用的?它由一条多个专职智能体组成的流水线来工作:你提供应用名称和描述,Specification Writer(规格撰写智能体)负责澄清需求,Architect(架构师)挑选并安装技术栈,Tech Lead(技术负责人)把工作拆分成任务,然后由 Developer、Code Monkey、Reviewer、Debugger 和 Technical Writer 这些智能体逐步实现、检查并撰写文档。
它和 GPT Engineer 或 Smol Developer 有什么不同?它不是一次性生成整个代码库,而是像人类开发者那样一步步写代码,所以出现 bug 时能当场调试。它还会过滤上下文,只把与当前任务相关的代码喂给大语言模型,因此能处理更大的应用。
应用做完之后,我还能回来继续开发吗?可以——应用完成后,你只需写下下一个功能的说明就能继续开发。CLI 命令支持从最新一步或指定的一步恢复(从指定一步恢复会删掉那之后的进度)。另外只支持名为 main 的单一分支。
它写的代码放在哪里?放在一个工作区文件夹里,位于以你在启动 pilot 时输入的应用名称命名的子文件夹中。
Size
351.5 MB
Stars
33.7K
Updated
CommitJun 12
Age
3y
Commits · 90 Days