Reverse-engineered ChatGPT proxy calls it quits
It reverse-engineers ChatGPT’s web API to bundle authentication, proxy access, and a WebUI into a single self-hosted Rust binary.

What it does
ninja is a Rust reverse proxy that intermediates ChatGPT and OpenAI traffic. It handles Email/password authentication, performs API key acquisition, and serves a ChatGPT WebUI from the same binary. The README also claims support for an IP proxy pool and a very small memory footprint.
The interesting bit
Rather than wrapping official SDKs, the project reverse-engineers ChatGPT’s private web endpoints to expose programmatic access and a browser interface. That it gathered 1,683 stars before the author posted a “Project has ended” notice suggests it filled a real gap—though the README never explains exactly what that gap was.
Key highlights
- Self-hosted proxy for
ChatGPT-APIandOpenAI-APItraffic - Built-in account authentication and API key acquisition
- Bundles a ChatGPT WebUI
- IP proxy pool support for rotating egress
- Explicitly discontinued by the maintainer
Caveats
- The author has ended the project, so expect no fixes or updates
- The README is thin on architecture and security details; it is unclear how credentials or acquired keys are stored and managed
Verdict
Useful as a reference implementation for reverse-engineering ChatGPT’s web client or building Rust proxies, but unsuitable for production given its retired status and vague internals.
Frequently asked
- What is 0x676e67/ninja?
- It reverse-engineers ChatGPT’s web API to bundle authentication, proxy access, and a WebUI into a single self-hosted Rust binary.
- Is ninja open source?
- Yes — 0x676e67/ninja is open source, released under the GPL-3.0 license.
- What language is ninja written in?
- 0x676e67/ninja is primarily written in Rust.
- How popular is ninja?
- 0x676e67/ninja has 1.7k stars on GitHub.
- Where can I find ninja?
- 0x676e67/ninja is on GitHub at https://github.com/0x676e67/ninja.