Inspiration
Our inspiration came from a common frustration in agile teams: great ideas from marketing, product, or sales getting stuck in development backlogs. We wanted to empower non-engineers to safely make and test changes to a real codebase without waiting for the next sprint, turning ideas into reality at the speed of thought.
What it does
Cloud Coder provides a web UI where a user can select a project and, with one click, create a new AI-powered task. This action automatically creates a new Git branch and spins up a secure, isolated Daytona sandbox in the cloud. Inside this sandbox is the full codebase and a live instance of the Claude Code AI. The user can then chat with the AI in plain English to read, write, and edit code. Once satisfied, they can commit and push the changes directly from the UI, ready for review or deployment.
How we built it
Cloud Coder is a full-stack application with a clear separation of concerns:
- Frontend: We forked and modified claude-code-webui, a React/Vite application, to add UI elements for branch selection, task creation (New Task), and Git operations (Commit, Close Task).
- Backend Orchestrator: A Hono server running on Node.js acts as the brain. It uses the Daytona SDK to programmatically manage the entire lifecycle of our cloud environments.
- Infrastructure & Execution: We used Daytona.io to handle the heavy lifting. For each task, our backend commands Daytona to:
- Create a new Git branch.
- Provision a new, secure sandbox from a custom snapshot.
- Clone the repository into the sandbox and check out the new branch.
- Run the
claude codeprocess inside the sandbox. - Expose the AI's communication port via a secure preview URL.
- Real-time Communication: Our backend proxies WebSocket traffic between the user's browser and the specific Claude instance running in the corresponding Daytona sandbox, enabling real-time, interactive chat.
Challenges we ran into
- Dynamic WebSocket Proxying: The biggest challenge was creating a robust WebSocket proxy on our backend. It needed to correctly map a user's active branch in the UI to the unique URL of the Claude instance running in the correct Daytona sandbox, and maintain that connection.
- Orchestrating Git Operations: Figuring out the correct, non-conflicting sequence of Git commands (create branch, checkout, add, commit, push) to be executed remotely by the Daytona SDK required careful planning.
- State Synchronization: We needed a reliable way for the UI to know which Git branches had active AI sandboxes. We built a simple in-memory state manager on the backend to track this and are using WebSockets for real-time updates.
Accomplishments that we're proud of
- A True End-to-End Workflow: We successfully built a seamless experience that goes from a user idea, to a new Git branch, to AI-driven code changes in a secure cloud environment, and finally to a committed and pushed result.
- Empowering Non-Developers: We created a powerful abstraction layer. A user who knows nothing about Git, Docker, or cloud infrastructure can now safely propose and finalize a code change.
- Asynchronous Collaboration: Our architecture allows multiple "AI teammates" to work on different branches simultaneously in their own isolated environments, mirroring a real-world, scalable development team.
What we learned
We learned that the true power of AI in development isn't just about code generation, but about the orchestration around it. Combining a powerful AI like Claude with a robust cloud execution environment like Daytona is a game-changer. Abstracting away the complexity of Git, containerization, and cloud infrastructure with a clean UI is key to unlocking productivity for the entire team, not just developers.
What's next for Cloud Coder
- Team Collaboration & Review: Add a feature where the AI's commit creates a pull request and tags a human developer for review, integrating seamlessly into existing workflows.
- Self-Testing AI: Empower the AI to run unit or integration tests within the Daytona sandbox to validate its own changes before committing.
- Multi-File & Complex Task Support: Enhance the AI's planning capabilities to handle more complex tasks that span multiple files or require deeper analysis of the codebase.
- Jira & Asana Integration: Automatically create a Cloud Coder task from a project management ticket.
Built With
- browseruse
- claude
- daytona
Log in or sign up for Devpost to join the conversation.