Install
openclaw skills install creekDeploy and manage applications on Creek via the Creek CLI. Covers init, deploy, status, projects, deployments, rollback, env vars, custom domains, and dev server. Use when the user mentions creek, creek deploy, creek init, or wants to deploy, configure, or troubleshoot a Creek project.
openclaw skills install creekCreek deploys web apps to Cloudflare Workers with a single command. Auto-detects framework, determines render mode (SPA/SSR/Worker), provisions infrastructure.
--json for structured output. Auto-enabled in non-TTY / CI.breadcrumbs in JSON responses — they suggest the next command.--yes to skip confirmation prompts (auto-enabled in non-TTY).ok field — true = success, false = error with error and message fields.| Task | Command |
|---|---|
| Authenticate | creek login |
| Authenticate (CI) | creek login --token <KEY> |
| Check auth | creek whoami --json |
| Init project | creek init --json |
| Deploy | creek deploy --json |
| Deploy directory | creek deploy ./dist --json |
| Deploy from GitHub | creek deploy https://github.com/user/repo --json |
| Deploy monorepo subdir | creek deploy https://github.com/user/repo --path packages/app --json |
| Deploy demo | creek deploy --demo --json |
| Deploy template | creek deploy --template vite-react |
| Skip build | creek deploy --skip-build --json |
| Check status | creek status --json |
| Check sandbox | creek status <SANDBOX_ID> --json |
| Claim sandbox | creek claim <SANDBOX_ID> --json |
| List projects | creek projects --json |
| List deployments | creek deployments --json |
| List deployments (other) | creek deployments --project <SLUG> --json |
| Rollback | creek rollback --json |
| Rollback to specific | creek rollback <DEPLOYMENT_ID> --json |
| Set env var | creek env set <KEY> <VALUE> --json |
| List env vars | creek env ls --json |
| Show env values | creek env ls --show --json |
| Remove env var | creek env rm <KEY> --json |
| Add domain | creek domains add <HOSTNAME> --json |
| List domains | creek domains ls --json |
| Activate domain | creek domains activate <HOSTNAME> --json |
| Remove domain | creek domains rm <HOSTNAME> --json |
| Dev server | creek dev |
Requires creek login. Deploys persist under the user's account.
creek deploy --json
No auth required. Temporary preview with claimable URL.
creek deploy --json # auto-sandbox when not logged in
creek claim <SANDBOX_ID> # convert to permanent project
CREEK_TOKEN=ck_... creek deploy --yes --json
Every command returns structured JSON with breadcrumbs:
{
"ok": true,
"url": "https://my-app-team.bycreek.com",
"project": "my-app",
"breadcrumbs": [
{ "command": "creek status", "description": "Check deployment status" },
{ "command": "creek deployments --project my-app", "description": "View deployment history" }
]
}
On error:
{
"ok": false,
"error": "not_authenticated",
"message": "Not authenticated. Run `creek login` first.",
"breadcrumbs": [
{ "command": "creek login", "description": "Authenticate interactively" }
]
}
creek login --json # 1. Authenticate
creek init --json # 2. Create creek.toml (optional)
creek deploy --json # 3. Deploy
creek deploy --json # Deploy new version
creek deployments --json # View history
creek rollback --json # Rollback to previous
creek rollback <ID> --json # Rollback to specific deployment
creek domains add app.example.com --json # Add domain
# User sets DNS: CNAME app.example.com → cname.creek.dev
creek domains activate app.example.com --json # Activate after DNS
creek domains ls --json # Verify status
[project]
name = "my-app" # Required. Lowercase alphanumeric + hyphens.
framework = "nextjs" # Optional. Auto-detected from package.json.
[build]
command = "npm run build" # Build command (default: npm run build)
output = "dist" # Build output directory
worker = "worker/index.ts" # Optional: custom Worker entry point
[resources]
d1 = true # Cloudflare D1 database → env.DB
kv = true # Cloudflare KV namespace → env.KV
r2 = true # Cloudflare R2 storage → env.BUCKET
ai = true # Cloudflare Workers AI → env.AI
SPA: vite-react, vite-vue, vite-svelte, vite-solid, static HTML SSR: nextjs, react-router, sveltekit, nuxt, solidstart, tanstack-start
creek.toml — explicit Creek configwrangler.jsonc / wrangler.json / wrangler.toml — existing CF configpackage.json — framework auto-detectionindex.html — static site| Error | Fix |
|---|---|
| "Not authenticated" | creek login or set CREEK_TOKEN |
| "Invalid API key" | creek login to re-authenticate |
| "No creek.toml found" | creek init or cd to project root |
| "No project found" | Deploy from a dir with package.json or index.html |
| "No supported project found in repo" | Use --path for monorepos |
| Sandbox expired | Redeploy — sandboxes last 60 minutes |
| Domain stuck "pending" | Set CNAME to cname.creek.dev, then creek domains activate |
| Build fails | Check [build] command in creek.toml |