Clopus-agent: Claude Code in a CI
Complete self-hosted natural language programming (""vibe coding"") platform with Github, ArgoCD, and Claude Code. Essentially, a far better and functional Replit/Lovable.
In my last post, I wrote about Preview Environments, and their immense value when it comes to vibe coding. In this post, I add a monumental addition in the form of a Claude Code agent CI/CD to my repository and end up with a complete, fully self-hosted “vibe coding” platform, which is frankly… quite better than what they are making you pay thousands of dollars on Replit, v0, and Lovable!
I open an issue → tag my agent → it creates a branch, makes a change & opens a pull request. Then my preview environment CI flow creates a new schema in my Supabase → builds & deploys the changes my agent did → leaves a comment on the PR with the subdomain for me to test.
No code. No terminal. No phone app.
Here is the architecture continuation from my previous post about preview environments.
This flow (in my opinion alien-like) becomes possible with a cingle CI: clopus-agent.yml !
The way it works is quite simple. The ci spawns, installs claude code, and sets the authentication credentials I have from my local claude code oAuth, allowing me to use my Claude Code subscription inside my ci. This happens through an environment variable, set as a repository secret inside Github. The CI itself (which you can take a look at, here), has declarations for who can invoke the agent — it is my account, then it feeds the agent with the initial prompt, which is also in the repository and can be found, here. The agent also adds comments about every action update: changes, fails, and so on.
As always, you can find all the changes & code in the repository: https://github.com/kubeden/preview-environments/
I think this is an extremely powerful platform. Especially, considering the recent finding I had that you can.. well.. run Claude Code practically 24/7, and since the loop doesn’t have to be a basic “continue”, but a rather intelligent one (with another Claude Code)… well, I will have to lie if I say I don’t believe this could turn into a very powerful, autonomous, and self-sustainable application development experience. And I’ll also lie if I say I don’t have at least 10 ideas to boot this all into.
Thank you for reading,
— Denis



That's interesting and this is something that I noticed too (even though I have far less experience and knowledge than You do).
I used Replit for personal projects and (as I got better) I tried to just download the zip of the Replit project - Upload it in VS Code and Then using Claude Code for local development.
From there I could see two alternatives:
- Either re-uploading it in Replit (You save a ton of $ in agents' requests)
- or pushing the repo to GitHub and then Connecting it to a service Like RAILWAY.
BTW I still think Replit is great...
Thanks for writing