awesome cli.

Cloud & infrastructure

Coolify CLI for coding agents

Coolify cloud and self-hosted servers, projects, apps, databases, services, contexts, JSON output, and token overrides.

Command: coolify

Open the official project ↗

This article follows the official documentation. We haven’t tested this tool for a hands-on review.

Coolify manages deployments on cloud or self-hosted servers. A coding agent with shell access can use Coolify’s command-line interface (CLI), named coolify, to inspect Coolify resources. These include projects and apps, as well as databases and services. The CLI repository documents the install methods and the full command list. The CLI connects through a context, which is a saved connection to one Coolify instance with its URL and API token.

An agent can use the CLI to inspect a deployment before proposing a change. Most read commands follow the pattern coolify <resource> list and coolify <resource> get <uuid>. Other commands change the server, for example coolify deploy name or coolify app delete. Those need a separate instruction from a person.

What the CLI supports

The CLI works with both Coolify Cloud and self-hosted Coolify servers. The README groups its commands by resource. These are the ones an agent needs most for an inspection:

  • coolify context list shows the saved contexts, and coolify context verify checks the connection and the token of the current one.
  • coolify project list and coolify app list list projects and applications.
  • coolify app get <uuid> shows the details of one application. Coolify identifies resources by UUID.
  • coolify database list and coolify service list list databases and one-click services.

All commands accept the global flag --format. The default is table. --format json prints compact JSON that an agent can parse, and --format pretty prints indented JSON. The repository’s llms.txt, a short guide written for AI agents, recommends --format json for automation. The global flag --context <name> picks a saved context for one command, and --token <token> overrides the saved token. The CLI hides sensitive values such as tokens and passwords unless you add -s or --show-sensitive.

Coolify also provides an MCP server, a separate way for AI clients to connect to Coolify over HTTP. Its capabilities do not establish how the CLI works. Use the CLI repository’s own instructions for CLI commands rather than copying MCP setup steps.

Set up the CLI safely

The README documents an install script for Linux and macOS and a PowerShell script for Windows. With Homebrew on macOS or Linux, install the CLI and check the version:

brew install coollabsio/coolify-cli/coolify-cli
coolify version

With Go installed, go install github.com/coollabsio/coolify-cli/coolify@latest works too.

Next, create an API token in the Coolify dashboard. The API token guide says to open Keys & Tokens in the sidebar and select API Tokens. On a self-hosted instance, an administrator first has to turn on API access under Settings > Advanced. For an agent that only inspects, choose the read permission. According to the permissions page, a read token can list and inspect resources, and Coolify keeps sensitive values redacted for it. Container logs need read:sensitive, so coolify app logs does not work with a plain read token.

Then add the token to a context in your own terminal:

# Coolify Cloud
coolify context set-token cloud YOUR_TOKEN

# Self-hosted instance, saved as the default context
coolify context add -d my-coolify https://coolify.example.com YOUR_TOKEN

Replace YOUR_TOKEN and the URL with your own values. The CLI saves contexts in ~/.config/coolify/config.json on Linux and macOS. Keep the token outside the agent prompt. The agent can then use the saved context, and it never needs to see the token or pass --token.

Run a read-only inspection

You can ask an agent to identify the app connected to a project and summarize its current configuration before anyone changes a deployment. These commands only read data:

coolify context verify
coolify project list --format json
coolify app list --format json
coolify app get APP_UUID --format json

Replace APP_UUID with the UUID of the app from the list.

A suitable prompt is:

Use the installed Coolify CLI with the default context. Run coolify context verify, then find the project and app named in my request with coolify project list --format json and coolify app list --format json. Show the details from coolify app get with --format json. Report the values Coolify returns and identify any field you cannot verify. Do not deploy, restart, or edit resources.

The CLI runs these inspection commands in your local shell and contacts the selected Coolify server to retrieve data. Read commands do not change deployment state. Be careful with the lifecycle commands. The command reference lists coolify app start as an alias of coolify app deploy, so starting an app triggers a deployment. Restarts and deletes also change state on the Coolify server and need a separate instruction.

Know the documentation limit

Use the README for setup and the repository’s llms-full.txt for the complete list of commands and flags. If neither documents an action, the agent should stop and report the missing instructions instead of guessing a command from another Coolify interface. A read token adds a second limit, because Coolify refuses write and deploy requests that the token has no permission for. Check especially before allowing writes: a wrong deployment command changes the server, so its consequences extend beyond the agent’s local files.

Developers who give coding agents shell access can find other command-line tools in the Awesome CLI directory. Use Coolify CLI for tasks involving Coolify resources, and get exact commands from its maintained documentation.

Tool details come from awesome-ai-cli.