Deploy websites from your terminal. Powered by opzero.sh
Deploy HTML, React components, and full websites to Cloudflare Pages, Netlify, or Vercel — in seconds.
# Install globally
npm install -g opzero
# Or use directly with npx
npx opzero deploy ./my-site --name my-projectopzero loginGet your API key from opzero.sh/dashboard/api-keys.
# Deploy a directory
opzero deploy ./my-site --name my-project
# Deploy a React component
opzero deploy --artifact ./App.tsx --name my-app
# Deploy markdown as a styled page
opzero deploy --markdown ./README.md --name docs
# Deploy with OpZero theme
opzero deploy --themed ./content.html --name landingThat's it. Your site is live.
| Command | Description |
|---|---|
opzero login |
Authenticate (API key or browser OAuth) |
opzero logout |
Clear stored credentials |
opzero whoami |
Show current user and plan info |
| Command | Description |
|---|---|
opzero deploy [dir] |
Deploy a directory |
opzero deploy --artifact <file> |
Deploy a React component |
opzero deploy --markdown <file> |
Deploy markdown as a page |
opzero deploy --themed <file> |
Deploy with OpZero brand theme |
| Command | Description |
|---|---|
opzero projects |
List all projects |
opzero projects create <name> |
Create a new project |
opzero projects delete <name> |
Delete a project |
opzero projects archive <name> |
Archive a project |
opzero projects cleanup |
Find stale/duplicate projects |
| Command | Description |
|---|---|
opzero deployments [project] |
List deployment history |
opzero rollback <deployment-id> |
Rollback to a previous version |
opzero redeploy <project> |
Redeploy latest version |
opzero logs <id> |
View build logs |
| Command | Description |
|---|---|
opzero domains set <project> <domain> |
Set custom domain |
opzero init [dir] |
Scaffold from template |
opzero templates |
List available templates |
opzero status |
Platform status and usage |
opzero open <project> |
Open project in browser |
opzero mcp |
Start MCP server for AI tools |
--help, -h— Show help--version, -v— Show version--json— Output as JSON--target <provider>— cloudflare, netlify, or vercel
The OpZero MCP server lets AI assistants (Claude Code, Cursor, Windsurf, etc.) deploy websites directly.
Add to your MCP settings:
{
"mcpServers": {
"opzero": {
"command": "opzero",
"args": ["mcp"]
}
}
}Or use the standalone package:
{
"mcpServers": {
"opzero": {
"command": "npx",
"args": ["@opzero/mcp"]
}
}
}Deploy: quick_deploy, deploy_website, deploy_artifact, deploy_themed, deploy_markdown, update_deployment
Projects: list_projects, create_project, project_delete, project_archive, project_cleanup
Deployments: get_deployment, list_deployments, redeploy, rollback_deployment, get_build_logs, delete_deployment
Templates & Domains: get_template, set_custom_domain
System: help, ask_agent, get_system_status
Local-only: deploy_local_dir, init_project, open_project, whoami
Use @opzero/core to build your own integrations:
npm install @opzero/coreimport { OpZeroClient } from '@opzero/core'
const client = new OpZeroClient({ apiKey: 'your-api-key' })
// Deploy a website
const result = await client.deploy({
name: 'my-site',
files: {
'index.html': '<h1>Hello World</h1>',
},
})
console.log(`Live at: ${result.url}`)| Package | npm | Description |
|---|---|---|
opzero |
CLI tool | |
@opzero/mcp |
MCP server for AI tools | |
@opzero/core |
API client library |
# Clone the repo
git clone https://github.com/opzero-sh/cli.git
cd cli
# Install dependencies
bun install
# Build all packages
bun run build
# Run the CLI locally
bun run packages/cli/src/index.tsxMIT — see LICENSE