> koyeb
Expert guidance for Koyeb, the serverless cloud platform for deploying full-stack applications, APIs, and workers globally with automatic scaling, built-in CI/CD, and edge networking. Helps developers deploy applications from Git or Docker with zero-downtime deployments and pay-per-use pricing.
curl "https://skillshub.wtf/TerminalSkills/skills/koyeb?format=md"Koyeb — Global Serverless Platform
Overview
Koyeb, the serverless cloud platform for deploying full-stack applications, APIs, and workers globally with automatic scaling, built-in CI/CD, and edge networking. Helps developers deploy applications from Git or Docker with zero-downtime deployments and pay-per-use pricing.
Instructions
CLI Deployment
# Install Koyeb CLI
curl -fsSL https://raw.githubusercontent.com/koyeb/koyeb-cli/master/install.sh | sh
# Login
koyeb login
# Deploy from a Git repository
koyeb app create my-api
koyeb service create my-api/web \
--git github.com/myorg/my-api \
--git-branch main \
--git-build-command "npm ci && npm run build" \
--git-run-command "node dist/index.js" \
--port 3000:http \
--region fra \
--instance-type nano \
--min-scale 1 \
--max-scale 5 \
--env NODE_ENV=production \
--env DATABASE_URL=@database-url # Reference a secret
# Deploy from Docker image
koyeb service create my-api/web \
--docker ghcr.io/myorg/my-api:latest \
--port 3000:http \
--region fra
# Manage secrets
koyeb secret create database-url --value "postgres://..."
koyeb secret list
# Custom domains
koyeb domain create api.myapp.com --app my-api
Service Configuration (koyeb.yaml)
# koyeb.yaml — Declarative service configuration
name: my-api
type: web
# Build configuration
git:
repository: github.com/myorg/my-api
branch: main
build_command: npm ci && npm run build
run_command: node dist/index.js
# Or Docker-based
# docker:
# image: ghcr.io/myorg/my-api:latest
# Scaling
scaling:
min: 1
max: 10
targets:
- metric: cpu
value: 70 # Scale up at 70% CPU
- metric: requests
value: 100 # Scale up at 100 req/s per instance
# Instance configuration
instance_type: small # nano | small | medium | large | xlarge
regions:
- fra # Frankfurt
- was # Washington DC
- sin # Singapore
# Networking
ports:
- port: 3000
protocol: http
# Health checks
health_checks:
- type: http
port: 3000
path: /health
interval: 30
timeout: 10
healthy_threshold: 2
unhealthy_threshold: 3
# Environment
env:
- key: NODE_ENV
value: production
- key: DATABASE_URL
secret: database-url # Reference a Koyeb secret
- key: REDIS_URL
secret: redis-url
# Volumes (persistent storage)
volumes:
- name: data
path: /app/data
size: 10 # GB
Workers and Cron Jobs
# Deploy a background worker (no public port)
koyeb service create my-app/worker \
--git github.com/myorg/my-api \
--git-branch main \
--git-run-command "node dist/worker.js" \
--type worker \
--env QUEUE_URL=@queue-url
# There's no native cron in Koyeb — use a lightweight scheduler
# or a cron-to-HTTP service that hits your web endpoint
Multi-Region Deployment
# Deploy to multiple regions for global low-latency
koyeb service update my-api/web \
--region fra,was,sin \
--min-scale 1 \
--max-scale 3
# Koyeb's edge network automatically routes users to the nearest region
# DNS-based routing: requests from Europe → Frankfurt, US → Washington, Asia → Singapore
Database Integration
# Koyeb offers managed Postgres (Neon-powered)
koyeb database create main-db \
--engine postgres \
--region fra
# Connection string is available as a secret
# Reference it in service env vars:
koyeb service update my-api/web \
--env DATABASE_URL=@main-db-connection-string
Examples
Example 1: Setting up Koyeb for a microservices project
User request:
I have a Node.js API and a React frontend running in Docker. Set up Koyeb for monitoring/deployment.
The agent creates the necessary configuration files based on patterns like # Install Koyeb CLI, sets up the integration with the existing Docker setup, configures appropriate defaults for a Node.js + React stack, and provides verification commands to confirm everything is working.
Example 2: Troubleshooting service configuration issues
User request:
Koyeb is showing errors in our service configuration. Here are the logs: [error output]
The agent analyzes the error output, identifies the root cause by cross-referencing with common Koyeb issues, applies the fix (updating configuration, adjusting resource limits, or correcting syntax), and verifies the resolution with appropriate health checks.
Guidelines
- Use Git-based deployment — Push to deploy; Koyeb handles builds, caching, and zero-downtime rollouts
- Multi-region for latency — Deploy to regions closest to your users; Koyeb's edge routes traffic automatically
- Secrets for credentials — Never put database URLs or API keys in env vars directly; use
koyeb secret create - Autoscaling with request metrics — Scale on requests-per-second for web services; CPU-based for compute-heavy workers
- Health checks are critical — Define HTTP health checks; without them, Koyeb can't do zero-downtime deployments
- Use nano for staging — Nano instances are cheap; use them for preview/staging environments
- Pin Docker tags — Don't use
:latestin production; pin to specific versions for reproducible deployments - Monitor via dashboard — Koyeb provides built-in logs, metrics, and deployment history in the web console
> related_skills --same-repo
> zustand
You are an expert in Zustand, the small, fast, and scalable state management library for React. You help developers manage global state without boilerplate using Zustand's hook-based stores, selectors for performance, middleware (persist, devtools, immer), computed values, and async actions — replacing Redux complexity with a simple, un-opinionated API in under 1KB.
> zod
You are an expert in Zod, the TypeScript-first schema declaration and validation library. You help developers define schemas that validate data at runtime AND infer TypeScript types at compile time — eliminating the need to write types and validators separately. Used for API input validation, form validation, environment variables, config files, and any data boundary.
> xero-accounting
Integrate with the Xero accounting API to sync invoices, expenses, bank transactions, and contacts — and generate financial reports like P&L and balance sheet. Use when: connecting apps to Xero, automating bookkeeping workflows, syncing accounting data, or pulling financial reports programmatically.
> windsurf-rules
Configure Windsurf AI coding assistant with .windsurfrules and workspace rules. Use when: customizing Windsurf for a project, setting AI coding standards, creating team-shared Windsurf configurations, or tuning Cascade AI behavior.