The following text is extracted from a recent conversation I had with a colleague - perhaps it helps shed some light on how the zip file approach can be easily integrated with the local agent approach, and how the local agent approach can be switched between remotely hosted LLM API services (Openrouter, or any LLM API by OpenAI, Anthropic, etc.), and a locally hosted LLM API. What I should add eventually is a quick discussion about how those approaches can be wired in directly to using Git:
The idea with the zip file approach is that you keep the entire code base, all configuration settings, documentation, supporting files, etc., in one single zip file. When you want to work on it, you upload the zip to ChatGPT, it rips the zip file apart, updates any code files and settings that need to be adjusted, and gives you back another newly packaged zip file that contains everything you and the LLM need to fully understand and deploy the project.
The real benefit to that routine are that Chat GPT basically has unlimited context to work with, because internally it can spawn endless sub agents that complete portions of the required work. Those tools are all build into the hosted Chat GPT system (most other hosted chat systems don't currently accept zip file uploads).
When you're done working on a development task, you just upload the zip file to your server, unpack it, and run it (I use SCP to send zip files to the server). That means you always have every version of the application on the server, and you can roll back, simply by unzipping any of the zip files, and running the app again.
By far the biggest benefit of using Chat GPT is having one of the absolute best frontier models work, without any rate limiting at all (if you're not wasting your ChatGPT account use on generating images and other token-heavy processes).
If you want to work with a local agent like Pi, you just unzip the project zip file directly into a folder on the computer where you're running Pi, and have it do its work in that folder. That workflow involves prompting basically like you would with Chat GPT - Pi just enables the LLM to touch all the files on your hard drive, read, write, run, read debug output, and continue in an unattended loop, doing all those iterations, until your goal is satisfied. When you're done with all that work, you zip up the project folder, upload to your server, and/or later work with that zip file back in ChatGPT.
Since you can use any LLM in Pi - local or hosted - you can switch between working online or offline, anytime you need. Switch back and forth between getting the great intelligence that's in Chat GPT, and all the basically free tokens OpenAI gives you for $20 a month, or switch to using any other LLM, including an offline one, when you travel.
This makes the whole development approach completely modular - you can switch between using any tools and services you want. As long as everything you need for a project is always contained in a zip file, the entire project is always portable between any tooling you want to use. What makes Chat GPT special, is it's the only hosted chat system which has all the tools built in, to let you work with zip files like that - well actually, Minimax can do the same thing, but it's not quite as good as Chat GPT, and in the end it costs much much more to use, even though it's a very inexpensive system compared to everything else. Chat GPT gives me $3,000-$5,000 a month of usage compared to what people are doing with Claude Code.
One thing that might not be apparent about Pi, is that it can unzip your project zip file, install all the environment requirements for you, start and stop the app, and package the project directory back into a zip file again when you're done working - just ask.