Millwrightby Drydock Labs

Build and run
complete products
with AI.

From web apps to connected products, Millwright builds, ships, and operates production systems on real infrastructure.

Run on your Mac, Drydock Cloud, or your own servers. Build firmware and an API alongside signed iPhone + Apple Watch apps with TestFlight delivery.

freeMac app + web + CLI
Mac app: Apple silicon + macOS 14 or later
Google, GitHub, email, or passkey

The local loop

Build. Test. Publish.

Start new, bring a repo, or connect a live host. Millwright handles the build, release, and infrastructure around it.

Components + releases

Easily manage components and releases.

Keep firmware, APIs, iPhone, and Watch builds together. Review a version, test each component, then publish the release set.

VERSIONED BUILDSRELEASE SETSROLLBACK
Ship workspace showing the build plan and staging for web, iPhone and Watch, Mac, and firmware components together
Millwright for Mac building an EV towing planner locally with Claude and publishing it through Homeport alongside cloud and Linux hosts
Millwright for Mac One project, every place it runs. Build locally with Claude or Codex, preview on your Mac, and publish through Homeport — inside the same control plane as your cloud and Linux hosts. THIS MACHOMEPORTYOUR HOSTS
Step 1 · Build

Start fresh — or bring what exists

Describe it, import a GitHub repo, or connect an existing server. Keep Cursor, VS Code, Claude Code, or Codex; Millwright discovers the components and takes it from there.

CLAUDE CODECODEXOPENCODE + QWEN · SOON
Step 2 · Test

Run it where you can see it

Local Preview runs the real app on your Mac. Browser, behavior, security, and performance checks land as readable reports. Siege checks security and dependencies, Regatta compares performance, and Shakedown checks behavior against the spec.

LOCAL PREVIEWBEHAVIOR CHECKSNUCLEI · DEP + SECRET SCANS
Step 3 · Publish

Your Mac, our cloud, or your servers

Homeport publishes what runs on your Mac. One click moves it to an always-on Drydock Cloud VM. Easily add existing servers to your Millwright fleet.

HOMEPORTDRYDOCK CLOUD VMYOUR SERVERSCUSTOM DOMAINSTLS + DNSEDGE · SOON
PRODUCT STUDIO

Review the runtime, framework, database, hosting, and topology before the agents build. See the alternatives and shape the engineering plan alongside the design.

CONNECTED PRODUCTS

Bring ESP32 firmware, iPhone + Watch apps, backend, and infrastructure together. Flash boards, enroll devices, and promote firmware updates over the air.

After the build

Then keep it running

Provision a new VM or connect an existing host. Millwright keeps releases, checks, TLS, DNS, usage, and live topology together.

Drydock Cloud

Instant Linux VMs

Full root and SSH, public IPv4 + IPv6, and 45+ locations. Ordinary Linux processes run on loopback ports behind Caddy, with preview hostnames and a stable live URL.

Drydock Cloud region picker showing global VM regions
Release

Ship a known-good set

Every build gets its own preview URL. Pin component versions into a release set, review their checks, and promote a known product state. Retained, checked deployments give you a path back.

PREVIEW URLSRELEASE SETSEXPLICIT PROMOTETESTFLIGHTREADABLE REPORTS
Topology

See the architecture, live

Every service, port, route, and datastore in the project, drawn as it actually runs — from Local Preview on your Mac to the multi-region deployment.

LIVE MAPSERVICES · ROUTES · DATA
Operations

One surface for the fleet

Hosts, Homeport routes, usage meters, and check reports, side by side. Add cloud VMs, on-prem GPU servers, or spare Mac minis to one fleet.

HOSTSYOUR SERVERSROUTES · USAGE
Ops shell

Talk to your infrastructure

ddsh is an AI shell for every node: say what you need and it runs the right commands on the right machine. Plain bash still works.

DDSHEVERY HOSTPLAIN BASH TOO
Teams

Iterate together

Organizations bring the whole team into one project — shared context, owner approvals on pending checkpoints, and scoped GitHub integrations and scoped MCP instead of shared credentials. What the agent learns in one project carries to the next through the shared memory layer.

ORGANIZATIONSOWNER APPROVALSMCP-NATIVESHARED MEMORYUNIFIED SIGN-IN
Ownership

No lock-in layer.

Your code stays in your GitHub repo, and Drydock Cloud VMs stay ordinary Linux machines you can inspect and operate directly — no proprietary runtime between you and the product.

YOUR REPOROOT + SSHORDINARY LINUX
Pricing

Start free, on your own Mac

The local workflow is free, and Homeport publishing includes 100K requests / mo and 100 GB / mo of relay bandwidth. Pay when you add cloud.

Your model
Local, subscription, or API

Connect Claude Pro or Max or ChatGPT Plus or Pro, or use an Anthropic or OpenAI API key — billed direct, nothing on top. A local model option (OpenCode + Qwen) is coming soon.

Drydock Cloud
from $5/mo

An always-on VM when the project outgrows your Mac — 1 vCPU · 1 GB · 25 GB. Larger VM sizes are available; pricing and inventory vary by region.

Inference credits PLANNED
Coming soon

Hosted model access with metering, balances, and spend controls. Until then: your subscription, your key, or a local model.

Edge compute PLANNED
Coming soon

Managed edge compute, storage, cron, and managed backends — pricing arrives with the release.

Roadmap

What ships next

Next
Planned

Parallel development + operations

Private branch drafts, parallel release lines, merge queues, analytics, structured logs, and audit records.

Agents + integrations

Expanded MCP integration, cross-project activity, and scheduled agents.

More ways to run + deliver

Managed compute and data services, multi-region hosting, and Android with Google Play delivery.

Local + hosted models

Expanded local models and offline workflows, plus hosted inference with usage visibility and spend controls.

FAQ

Frequently asked questions

Is Millwright free?

The local workflow — build, run, preview, publish — is free, and Homeport includes 100K requests and 100 GB of relay bandwidth per month. Cloud VMs start at $5/mo when you want one.

Do I need a Claude or ChatGPT subscription?

No. If you have Claude Pro/Max or ChatGPT Plus/Pro, connect it and Millwright uses Claude Code or Codex — or bring an Anthropic or OpenAI API key. A local model option (OpenCode + Qwen) is coming soon.

What if I have an Intel Mac — or I’m not on a Mac?

Millwright for Mac requires Apple silicon and macOS 14 or later. Local model support is coming soon and will want at least 32 GB of RAM. On an Intel Mac, Windows, or Linux, use Millwright Web to build on Drydock Cloud with Claude Code, Codex, or an API key. Hosted inference credits are planned.

Does my Mac have to stay online for Homeport?

Yes — Homeport gives a public URL to the app running on your Mac, so it serves while the Mac is online. Move the project to an always-on VM when it shouldn’t depend on your laptop lid.

Can I keep my own editor?

Yes — keep vibe coding in Cursor, VS Code, or your own Claude Code. Millwright runs the infra, and every push rebuilds.

Can I bring an existing repo or running system?

Yes — import a GitHub repo or connect an existing server without rebuilding the system from scratch.

Where does my code live?

In a GitHub repo you own. Cloud VMs — and dedicated bare metal by request — come with full root and SSH, with no lock-in layer between you and your product.

What can one project include?

A web app, API, standalone CLI, and an iPhone app with a Watch companion — native SwiftUI with a live Simulator preview, installed on your own iPhone over USB, then delivered through TestFlight and the App Store with App Review pre-flighted and screenshots and privacy pages prepared. Connected devices and robotics belong in the same project, with ESP32 flashing, enrollment, and OTA delivery.

Do I have to use the Mac app?

No — the same project opens from the web app and the standalone CLI. The Mac app is the closest seat to a local build.

Start building

Download the Mac app, or start in the browser — it’s the same project either way.

Mac app requires Apple silicon and macOS 14 or later.

Want an invite code for a free cloud VM? Ask us on Discord →