coolifyManage Coolify deployments, applications, databases, and services via the Coolify API. Use when the user wants to deploy, start, stop, restart, or manage applications hosted on Coolify.
Install via ClawdBot CLI:
clawdbot install visiongeist/coolifyComprehensive management of Coolify deployments, applications, databases, services, and infrastructure via the Coolify API.
Use this skill when the user needs to:
read, write, deploy)COOLIFY_TOKEN environment variableapp.coolify.io) or self-hosted instance# List all applications
{baseDir}/scripts/coolify applications list
# Get application details
{baseDir}/scripts/coolify applications get --uuid abc-123
# Deploy an application
{baseDir}/scripts/coolify deploy --uuid abc-123 --force
# View application logs
{baseDir}/scripts/coolify applications logs --uuid abc-123
# Restart an application
{baseDir}/scripts/coolify applications restart --uuid abc-123
{baseDir}/scripts/coolify applications list
Output:
{
"success": true,
"data": [
{
"uuid": "abc-123",
"name": "my-app",
"status": "running",
"fqdn": "https://app.example.com"
}
],
"count": 1
}
{baseDir}/scripts/coolify applications get --uuid abc-123
# Start
{baseDir}/scripts/coolify applications start --uuid abc-123
# Stop
{baseDir}/scripts/coolify applications stop --uuid abc-123
# Restart
{baseDir}/scripts/coolify applications restart --uuid abc-123
{baseDir}/scripts/coolify applications logs --uuid abc-123
# List environment variables
{baseDir}/scripts/coolify applications envs list --uuid abc-123
# Create environment variable
{baseDir}/scripts/coolify applications envs create \
--uuid abc-123 \
--key DATABASE_URL \
--value "postgres://user:pass@host:5432/db" \
--is-runtime true \
--is-buildtime false
# Update environment variable
{baseDir}/scripts/coolify applications envs update \
--uuid abc-123 \
--env-uuid env-456 \
--value "new-value"
# Bulk update environment variables
{baseDir}/scripts/coolify applications envs bulk-update \
--uuid abc-123 \
--json '{"DATABASE_URL":"postgres://...","API_KEY":"..."}'
# Delete environment variable
{baseDir}/scripts/coolify applications envs delete \
--uuid abc-123 \
--env-uuid env-456
# Public Git repository
{baseDir}/scripts/coolify applications create-public \
--project-uuid proj-123 \
--server-uuid server-456 \
--git-repository "https://github.com/user/repo" \
--git-branch main \
--name "My App"
# Private GitHub App
{baseDir}/scripts/coolify applications create-private-github-app \
--project-uuid proj-123 \
--server-uuid server-456 \
--github-app-uuid gh-789 \
--git-repository "user/repo" \
--git-branch main
# Dockerfile
{baseDir}/scripts/coolify applications create-dockerfile \
--project-uuid proj-123 \
--server-uuid server-456 \
--dockerfile-location "./Dockerfile" \
--name "My Docker App"
# Docker Image
{baseDir}/scripts/coolify applications create-dockerimage \
--project-uuid proj-123 \
--server-uuid server-456 \
--docker-image "nginx:latest" \
--name "Nginx"
# Docker Compose
{baseDir}/scripts/coolify applications create-dockercompose \
--project-uuid proj-123 \
--server-uuid server-456 \
--docker-compose-location "./docker-compose.yml"
{baseDir}/scripts/coolify databases list
{baseDir}/scripts/coolify databases get --uuid db-123
# Start
{baseDir}/scripts/coolify databases start --uuid db-123
# Stop
{baseDir}/scripts/coolify databases stop --uuid db-123
# Restart
{baseDir}/scripts/coolify databases restart --uuid db-123
# Delete
{baseDir}/scripts/coolify databases delete --uuid db-123
# PostgreSQL
{baseDir}/scripts/coolify databases create-postgresql \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-postgres" \
--postgres-user admin \
--postgres-password secret \
--postgres-db myapp
# MySQL
{baseDir}/scripts/coolify databases create-mysql \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-mysql"
# MariaDB
{baseDir}/scripts/coolify databases create-mariadb \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-mariadb"
# MongoDB
{baseDir}/scripts/coolify databases create-mongodb \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-mongo"
# Redis
{baseDir}/scripts/coolify databases create-redis \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-redis"
# KeyDB
{baseDir}/scripts/coolify databases create-keydb \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-keydb"
# ClickHouse
{baseDir}/scripts/coolify databases create-clickhouse \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-clickhouse"
# Dragonfly
{baseDir}/scripts/coolify databases create-dragonfly \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "my-dragonfly"
# List backup configurations
{baseDir}/scripts/coolify databases backups list --uuid db-123
# Create backup configuration
{baseDir}/scripts/coolify databases backups create \
--uuid db-123 \
--frequency "0 2 * * *" \
--enabled true
# Get backup details
{baseDir}/scripts/coolify databases backups get \
--uuid db-123 \
--backup-uuid backup-456
# Update backup
{baseDir}/scripts/coolify databases backups update \
--uuid db-123 \
--backup-uuid backup-456 \
--frequency "0 3 * * *"
# Trigger manual backup
{baseDir}/scripts/coolify databases backups trigger \
--uuid db-123 \
--backup-uuid backup-456
# List backup executions
{baseDir}/scripts/coolify databases backups executions \
--uuid db-123 \
--backup-uuid backup-456
# Delete backup configuration
{baseDir}/scripts/coolify databases backups delete \
--uuid db-123 \
--backup-uuid backup-456
{baseDir}/scripts/coolify services list
{baseDir}/scripts/coolify services get --uuid service-123
# Start
{baseDir}/scripts/coolify services start --uuid service-123
# Stop
{baseDir}/scripts/coolify services stop --uuid service-123
# Restart
{baseDir}/scripts/coolify services restart --uuid service-123
# Delete
{baseDir}/scripts/coolify services delete --uuid service-123
{baseDir}/scripts/coolify services create \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "My Service" \
--docker-compose '{"version":"3.8","services":{"web":{"image":"nginx"}}}'
# List
{baseDir}/scripts/coolify services envs list --uuid service-123
# Create
{baseDir}/scripts/coolify services envs create \
--uuid service-123 \
--key API_KEY \
--value "secret"
# Update
{baseDir}/scripts/coolify services envs update \
--uuid service-123 \
--env-uuid env-456 \
--value "new-secret"
# Bulk update
{baseDir}/scripts/coolify services envs bulk-update \
--uuid service-123 \
--json '{"API_KEY":"secret","DB_HOST":"localhost"}'
# Delete
{baseDir}/scripts/coolify services envs delete \
--uuid service-123 \
--env-uuid env-456
# Deploy by UUID
{baseDir}/scripts/coolify deploy --uuid abc-123
# Force rebuild
{baseDir}/scripts/coolify deploy --uuid abc-123 --force
# Deploy by tag
{baseDir}/scripts/coolify deploy --tag production
# Instant deploy (skip queue)
{baseDir}/scripts/coolify deploy --uuid abc-123 --instant-deploy
# List all running deployments
{baseDir}/scripts/coolify deployments list
# List deployments for specific application
{baseDir}/scripts/coolify deployments list-for-app --uuid abc-123
{baseDir}/scripts/coolify deployments get --uuid deploy-456
{baseDir}/scripts/coolify deployments cancel --uuid deploy-456
{baseDir}/scripts/coolify servers list
{baseDir}/scripts/coolify servers get --uuid server-123
{baseDir}/scripts/coolify servers create \
--name "Production Server" \
--ip "192.168.1.100" \
--port 22 \
--user root \
--private-key-uuid key-456
{baseDir}/scripts/coolify servers update \
--uuid server-123 \
--name "Updated Name" \
--description "Production environment"
{baseDir}/scripts/coolify servers validate --uuid server-123
# List all resources on server
{baseDir}/scripts/coolify servers resources --uuid server-123
# Get domains configured on server
{baseDir}/scripts/coolify servers domains --uuid server-123
{baseDir}/scripts/coolify servers delete --uuid server-123
{baseDir}/scripts/coolify projects list
{baseDir}/scripts/coolify projects get --uuid proj-123
{baseDir}/scripts/coolify projects create \
--name "My Project" \
--description "Production project"
{baseDir}/scripts/coolify projects update \
--uuid proj-123 \
--name "Updated Name"
{baseDir}/scripts/coolify projects delete --uuid proj-123
# List environments
{baseDir}/scripts/coolify projects environments list --uuid proj-123
# Create environment
{baseDir}/scripts/coolify projects environments create \
--uuid proj-123 \
--name "staging"
# Get environment details
{baseDir}/scripts/coolify projects environments get \
--uuid proj-123 \
--environment staging
# Delete environment
{baseDir}/scripts/coolify projects environments delete \
--uuid proj-123 \
--environment staging
{baseDir}/scripts/coolify teams list
{baseDir}/scripts/coolify teams current
{baseDir}/scripts/coolify teams members
{baseDir}/scripts/coolify teams get --id 1
{baseDir}/scripts/coolify security keys list
{baseDir}/scripts/coolify security keys get --uuid key-123
{baseDir}/scripts/coolify security keys create \
--name "Production Key" \
--description "SSH key for production servers" \
--private-key "$(cat ~/.ssh/id_rsa)"
{baseDir}/scripts/coolify security keys update \
--uuid key-123 \
--name "Updated Key Name"
{baseDir}/scripts/coolify security keys delete --uuid key-123
{baseDir}/scripts/coolify github-apps list
{baseDir}/scripts/coolify github-apps get --uuid gh-123
{baseDir}/scripts/coolify github-apps create \
--name "My GitHub App" \
--app-id 123456 \
--installation-id 789012 \
--private-key "$(cat github-app-key.pem)"
{baseDir}/scripts/coolify github-apps update \
--uuid gh-123 \
--name "Updated App Name"
{baseDir}/scripts/coolify github-apps delete --uuid gh-123
{baseDir}/scripts/coolify github-apps repos --uuid gh-123
{baseDir}/scripts/coolify github-apps branches \
--uuid gh-123 \
--owner myorg \
--repo myrepo
{baseDir}/scripts/coolify servers list
{baseDir}/scripts/coolify applications create-public \
--project-uuid proj-123 \
--server-uuid server-456 \
--git-repository "https://github.com/user/repo" \
--git-branch main \
--name "My App"
{baseDir}/scripts/coolify applications envs create \
--uuid <new-app-uuid> \
--key DATABASE_URL \
--value "postgres://..." \
--is-runtime true
{baseDir}/scripts/coolify deploy --uuid <new-app-uuid>
{baseDir}/scripts/coolify databases create-postgresql \
--project-uuid proj-123 \
--server-uuid server-456 \
--name "production-db"
{baseDir}/scripts/coolify databases backups create \
--uuid <db-uuid> \
--frequency "0 2 * * *" \
--enabled true
{baseDir}/scripts/coolify databases backups trigger \
--uuid <db-uuid> \
--backup-uuid <backup-uuid>
{baseDir}/scripts/coolify applications get --uuid abc-123
{baseDir}/scripts/coolify applications logs --uuid abc-123
{baseDir}/scripts/coolify deployments list-for-app --uuid abc-123
Cause: COOLIFY_TOKEN environment variable not set.
Solution:
export COOLIFY_TOKEN="your-token-here"
Or configure in OpenClaw config at ~/.openclaw/openclaw.json:
{
"skills": {
"entries": {
"coolify": {
"apiKey": "your-token-here"
}
}
}
}
Cause: Too many API requests in a short time.
Solution: The client automatically retries with exponential backoff. Wait for the retry or reduce request frequency.
Cause: Invalid or non-existent UUID.
Solution:
# List all applications to find correct UUID
{baseDir}/scripts/coolify applications list
Cause: Cannot connect to Coolify API.
Solution for self-hosted:
# Set custom API URL
export COOLIFY_API_URL="https://your-coolify.example.com/api/v1"
Solution for cloud: Verify internet connection and that app.coolify.io is accessible.
Cause: Build or deployment error.
Solution:
{baseDir}/scripts/coolify deployments get --uuid deploy-456
{baseDir}/scripts/coolify applications logs --uuid abc-123
{baseDir}/scripts/coolify applications envs list --uuid abc-123
Cause: Node.js not installed or not in PATH.
Solution:
# macOS (via Homebrew)
brew install node
# Verify installation
node --version
All commands return structured JSON:
{
"success": true,
"data": { ... },
"count": 42
}
{
"success": false,
"error": {
"type": "APIError",
"message": "Application not found",
"hint": "Use 'applications list' to find valid UUIDs"
}
}
| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| COOLIFY_TOKEN | Yes | — | API token from Coolify dashboard |
| COOLIFY_API_URL | No | https://app.coolify.io/api/v1 | API base URL (for self-hosted) |
For self-hosted instances, set the API URL:
export COOLIFY_API_URL="https://coolify.example.com/api/v1"
export COOLIFY_TOKEN="your-token-here"
{baseDir}/references/API.mdMost commands require UUIDs, not names. Always use list commands first to find UUIDs:
# Bad: Using name (will fail)
{baseDir}/scripts/coolify applications get --uuid "my-app"
# Good: Using UUID
{baseDir}/scripts/coolify applications list # Find UUID first
{baseDir}/scripts/coolify applications get --uuid abc-123
Use --force flag carefully as it rebuilds from scratch:
# Normal deployment (uses cache)
{baseDir}/scripts/coolify deploy --uuid abc-123
# Force rebuild (slower, but ensures clean build)
{baseDir}/scripts/coolify deploy --uuid abc-123 --force
After updating environment variables, restart the application:
# Update env var
{baseDir}/scripts/coolify applications envs update \
--uuid abc-123 \
--env-uuid env-456 \
--value "new-value"
# Restart to apply changes
{baseDir}/scripts/coolify applications restart --uuid abc-123
Use cron expressions for backup schedules:
| Expression | Description |
|------------|-------------|
| 0 2 * | Daily at 2 AM |
| 0 /6 | Every 6 hours |
| 0 0 0 | Weekly on Sunday at midnight |
| 0 0 1 | Monthly on 1st at midnight |
This skill provides complete access to Coolify's API across:
All operations return structured JSON for easy agent consumption.
Generated Mar 1, 2026
A tech startup uses Coolify to deploy and manage their web application across multiple environments (development, staging, production). They automate deployments via the API, manage environment variables for different stages, and monitor logs to ensure uptime and troubleshoot issues quickly.
An e-commerce company leverages Coolify to host their online store and associated databases (PostgreSQL for orders, Redis for caching). They use the skill to restart services during peak traffic, update environment variables for promotions, and deploy new features without downtime.
A DevOps team integrates Coolify into their CI/CD pipeline to automate application deployments and database provisioning. They use the API to trigger deployments from GitHub actions, manage Docker Compose services, and ensure consistent infrastructure across development and production servers.
An educational institution uses Coolify to host learning management systems and student databases (MySQL for user data, MongoDB for content). They manage application lifecycles to scale resources during exam periods and use logs to debug performance issues in real-time.
A freelance developer manages multiple client projects on Coolify, deploying custom applications and databases (e.g., PostgreSQL for client CMS, Redis for session storage). They use the skill to quickly start/stop projects based on client needs and update environment variables for different configurations.
Offer managed Coolify hosting services to clients for a monthly fee, handling deployments, monitoring, and maintenance. Revenue comes from tiered plans based on resource usage (e.g., number of applications, database size), with upsells for premium support and automated backups.
Provide consulting services to help businesses set up and optimize their Coolify infrastructure, including API integration, automation scripts, and best practices. Revenue is generated through project-based fees or retainer agreements for ongoing management and troubleshooting.
Run a digital agency that uses Coolify to deploy and manage client websites and applications, charging per project or on a retainer basis. Revenue streams include setup fees, monthly maintenance charges, and additional services like database management and performance tuning.
💬 Integration Tip
Ensure the COOLIFY_TOKEN environment variable is securely set and use jq for parsing JSON outputs in scripts to automate workflows effectively.
Automatically update Clawdbot and all installed skills once daily. Runs via cron, checks for updates, applies them, and messages the user with a summary of what changed.
Full desktop computer use for headless Linux servers. Xvfb + XFCE virtual desktop with xdotool automation. 17 actions (click, type, scroll, screenshot, drag,...
Essential Docker commands and workflows for container management, image operations, and debugging.
Tool discovery and shell one-liner reference for sysadmin, DevOps, and security tasks. AUTO-CONSULT this skill when the user is: troubleshooting network issues, debugging processes, analyzing logs, working with SSL/TLS, managing DNS, testing HTTP endpoints, auditing security, working with containers, writing shell scripts, or asks 'what tool should I use for X'. Source: github.com/trimstray/the-book-of-secret-knowledge
Deploy applications and manage projects with complete CLI reference. Commands for deployments, projects, domains, environment variables, and live documentation access.
Monitor topics of interest and proactively alert when important developments occur. Use when user wants automated monitoring of specific subjects (e.g., product releases, price changes, news topics, technology updates). Supports scheduled web searches, AI-powered importance scoring, smart alerts vs weekly digests, and memory-aware contextual summaries.