Brifing

Berth: A Simple PaaS for Hosting Agent-Built Apps on Mac Minis

Open-source platform enables seamless deployment of AI-generated applications on local Apple Silicon hardware.

Stripe CTO Blog2 min

1The Shift to Local Hosting

The creator of Berth transitioned from cloud-based hosting to a local Mac mini setup to manage side projects. After years of using Google Cloud Run, the developer sought to eliminate monthly costs and complex infrastructure management. This return to self-hosting leverages the efficiency of modern Apple Silicon hardware for personal applications.

2Simplifying the Deployment Workflow

Berth functions as a lightweight Platform as a Service, or PaaS, specifically designed for Mac minis. By integrating a Git push workflow, it allows users to deploy applications directly to local virtual machines. The system automates database provisioning and traffic switching, mimicking the convenience of traditional cloud services like Heroku.

3Designed for AI Agents

Unlike traditional platforms built for human interaction, Berth is optimized for AI coding agents. It provides specific features like JSON output, clear exit codes, and an AGENTS.md file to guide automated systems. This allows agents to push code, read logs, and resolve errors independently before a final production deployment.

4Technical Implementation Details

The platform manages deployments without requiring manual router port configuration or complex certificate management. Each push triggers a build process that launches a new release in a dedicated virtual machine. Berth performs automated health checks before switching traffic, ensuring that production environments remain stable even during frequent updates or rollbacks.

5Development and Co-authorship

Berth itself was developed with significant assistance from a coding agent, specifically Claude Code. Over a two-week period starting October 24th, the agent co-authored 50 of the first 58 commits. This process included implementing zero-downtime deployment mechanisms, Google sign-in integration, and automated off-Mac backup systems for the hosted applications.

6Development vs Production Environments

Every application hosted on Berth receives a dedicated development version accessible via a unique subdomain. Developers can use the berth dev:push command to deploy uncommitted changes instantly, keeping the production environment isolated. This workflow allows for rapid experimentation and testing without risking the stability of live, user-facing applications.

7Hardware and Infrastructure Requirements

To utilize Berth, users need an Apple Silicon Mac running macOS 26 or later, a GitHub account, and a domain managed through Cloudflare. The system is designed to be quiet and energy-efficient, with a single M4 Mac mini currently supporting eleven distinct applications and multiple databases with significant remaining capacity.

8Trade-offs and Use Cases

Berth is intended for side projects, internal tools, and prototypes rather than mission-critical enterprise software. Because it relies on a single local machine, it lacks failover capabilities and is susceptible to power outages. This trade-off prioritizes cost-effectiveness and simplicity over the high availability required for revenue-generating production services.

Original article: Stripe CTO Blog — Berth: A Simple PaaS for Hosting Agent-Built Apps on Mac Minis