GoLive: An Agent Skill That Takes Your App from Code to Live Infrastructure
Getting an AI agent to build an application is increasingly easy. Getting that application from a working codebase into production is where much of the manual work remains. You still need to move API keys between dashboards, configure DNS records, set environment variables, connect Stripe webhooks with the correct signing secrets, and make sure every service is using credentials from the right environment.
These steps are repetitive, but they are also easy to get wrong. A misplaced secret or incorrect webhook configuration can leave part of the application silently broken until someone encounters the problem in production.
GoLive is an open-source agent skill from Mike Hasa designed to automate this deployment and configuration work. Instead of stopping once the code is ready, an AI coding agent can use GoLive to handle more of the infrastructure and third-party service setup required to get the application running.
It works with Claude Code, Codex, and other agents that support the skills system, with integrations for Vercel, Netlify, Supabase, Neon, Stripe, Resend, Cloudflare DNS, GoDaddy, and Porkbun. GoLive does not require an account and sends no telemetry. The current release is version 0.1.0-alpha.6 and is available under the MIT license.
The failure mode GoLive is designed to prevent
The canonical example: you've deployed your app successfully. You accidentally pasted the test Stripe webhook secret into the production environment. A customer makes a real payment. Stripe processes it and calls your webhook. Your app rejects the webhook because the signing secret doesn't match. The customer never receives their confirmation or access to what they bought. Everything looked fine from the outside.
The error is small and easy to make. The consequences are real and user-facing. And it only surfaces when a customer hits it.
The six moving parts of a modern deployment
A typical web application deployment touches: a hosting platform (Vercel, Netlify) that needs repository access and build configuration; a database (Supabase, Neon) that needs provisioning and a connection string injected as an environment variable; an authentication provider with OAuth client IDs and secrets; DNS records pointing your domain at the hosting platform; an email sending domain with DKIM and SPF records verified; and a payment provider (Stripe) with separate test and live API keys plus a webhook endpoint secured with a signing secret.
You have to get every one of these right. GoLive handles the orchestration.
The five-step process
Detect: GoLive scans your codebase and identifies frameworks, services, and dependencies. It finds that you're using Next.js, Stripe, Supabase, and Resend before generating any plan.
Plan: Based on detection, GoLive generates a human-readable document describing every resource it will create and every configuration it will apply, with cost information (it always uses free tiers and will not spend money on your behalf) and a unique Plan ID.
Approve: GoLive does nothing until you explicitly confirm the plan by its Plan ID. This is not a yes/no prompt. You must use the --confirm-live flag with the specific Plan ID. Without that exact confirmation, execution does not proceed.
Apply: GoLive creates the Vercel project, provisions the Supabase database, generates API keys, registers the Stripe webhook and captures its signing secret, then injects all credentials as environment variables into the hosting environment and deploys.
Check: GoLive runs verification. For Stripe, it sends an unsigned request to the webhook endpoint (which should fail with a 401, proving the security check is working), then sends a correctly signed test event (which should succeed with a 200, proving the end-to-end connection is functional).
What GoLive refuses to do
GoLive's constraints are explicit and enforced in the CLI:
- It will not upgrade service plans, buy domain names, or take any action that incurs a cost
- It will not create accounts on your behalf; it works with accounts you're already logged into via their CLIs
- It will not delete databases; when tearing down a test deployment, it only removes resources it can prove it created, and Supabase and Neon database projects are never deleted
Installation
GoLive requires Node.js 20+ and npx. Install the skill globally for Claude Code:
For Codex:
The --global flag installs to ~/.claude/skills/golive (or the equivalent for your agent) so the skill is available across all projects. Without it, GoLive installs into the current project directory only.
Alternatively, via npm without the Skills CLI:
Authentication model
GoLive uses borrowed authority. It doesn't store credentials of its own. When it needs to create a Vercel project, it calls the Vercel CLI, which uses the token from your vercel login session. The same applies to Supabase, Netlify, and Neon. If you log out of the Vercel CLI, GoLive loses access to your Vercel account.
Stripe is the exception. Stripe doesn't have a standard CLI login flow. GoLive prompts you for a test key once and stores it in a local configuration file. It won't use a live key until you explicitly provide one during the production deployment approval.
Running a deployment
With GoLive installed and your CLIs authenticated, tell your agent to start:
The agent scans the codebase, asks about your preferences where there are choices (Vercel vs. Netlify, Supabase vs. Neon), then generates the deployment plan.
The plan names every resource it will create, confirms which free tiers it will use, and shows a Plan ID at the top. To approve:
GoLive then applies the plan and runs verification. For a Stripe integration, the webhook test passes when the unsigned request gets a 401 and the signed request gets a 200. After verification, GoLive outputs a live URL and a launch report summarizing everything created.
To confirm the deployment end to end, buy the product using Stripe's test card (4242 4242 4242 4242, any future date, any CVC):
Architecture
GoLive has two components. SKILL.md is the instruction file the agent reads to understand what GoLive can do and how to invoke it. scripts/golive.mjs is a zero-dependency Node.js CLI that handles all provider API calls, state management, and verification logic. The agent handles natural language understanding; the deterministic CLI handles infrastructure interactions. The separation means the CLI can also be run directly for individual operations outside the agent context.
GoLive maintains a state file (.golive/state.json) that tracks which resources it created, which is what allows it to safely tear down only its own resources and never touch anything it didn't create.
The alpha status is real. The skill is under active development with releases roughly weekly. The verification coverage varies by provider and the documentation notes which integrations have been live-validated versus mock-covered only. For production use, test the full workflow in a staging environment first.
The GitHub repository at github.com/mikehasa/golive-skill has the full provider support matrix, known limitations, and the changelog for each alpha release.