CLI operations overview
This is a map of the Volcano building blocks ("elements") the CLI operates on, how they relate, and where the CLI can act on each.
This is a map of the Volcano building blocks ("elements") the CLI operates on,
how they relate, and where the CLI can act on each. Each element has its own
page with concrete command examples. For exact, always-current flags, run
volcano <command> --help.
The model
A project is the container for everything else. You authenticate, select an active project, then operate on the resources inside it:
account (auth)
└── project ................... volcano projects / use
├── functions ............. deployed backend logic → functions.md
│ ├── uses → variables (config & secrets)
│ ├── connects → databases, storage
│ ├── runs on → a runtime
│ ├── invoked via → alias / HTTP / scheduler
├── durable functions ..... long-running, checkpointed logic → durable-functions.md
├── databases ............. managed Postgres → databases.md
│ └── schema changed by → migrations
├── storage ............... buckets → objects, policies → storage.md
├── variables ............. env vars / secrets → variables.md
├── frontends ............. deployed sites, custom domains → frontends.md
├── git connection ........ push-to-deploy from GitHub → git.md
├── access tokens ......... project-scoped CI credentials → access-tokens.md
└── declarative config .... one YAML syncing the above → ../project-configuration.mdCross-cutting concerns:
- Authentication gates all cloud access — see authentication.md.
- Declarative configuration applies settings across every element from one manifest — see project-configuration.md.
- Git connection lets a push deploy the project without a CLI invocation — see git.md.
Local vs. cloud target
The CLI can operate against two targets:
- Local development environment (
volcano start/stop/restart/status/reset), targeted by top-level resource commands. - Cloud project — targeted with the
cloudprefix (e.g.volcano cloud functions list).
Top-level resource commands (volcano functions …, volcano durable …,
volcano databases …, etc.) always target local development. They fail if the
local environment is not running; they do not fall back to cloud. Use the
explicit volcano cloud … prefix for cloud operations.
Output styling
Command output is colorized to share one identity with volcano setup: success
marks and active states in orange, warnings in amber, errors in red, table
headers and titles in lava, and suggested commands in flame. Color is written
only to an interactive terminal. It is disabled automatically when output is
piped or redirected, in CI, or when NO_COLOR is set, so machine-read output
(including --json) stays plain.
volcano databases list # colorized on a terminal
volcano databases list | cat # plain (piped)
NO_COLOR=1 volcano databases listAccount credit notices
Cloud commands can report when your account is running low on credits or has
no credits left. The notice includes the billing page address when available.
Open that page to add credits. These notices do not prompt or open a browser.
Piped, CI, and NO_COLOR output remains plain. Machine output is unchanged.
Element → CLI ability at a glance
| Element | CLI can… | Commands | Details |
|---|---|---|---|
| Account / auth | sign up, log in/out | signup, login, logout | authentication.md |
| Access tokens | create, list, get, revoke project credentials | cloud access-tokens … | access-tokens.md |
| Project | create, list, get, rename, delete, select, get anon keys | projects …, use | below |
| Functions | deploy, invoke, inspect, schedule, alias | functions … | functions.md |
| Durable functions | deploy, start, inspect executions, read logs, schedule | durable …, cloud durable … | durable-functions.md |
| Databases | create, inspect, delete, migrate | databases …, migrations … | databases.md |
| Storage | manage buckets, objects, policies | storage … | storage.md |
| Variables | deploy, list, get, delete | variables … | variables.md |
| Frontends | deploy, inspect, custom domains | cloud frontends … | frontends.md |
| Config (declarative) | deploy/pull one YAML manifest | config deploy, config pull | project-configuration.md |
| Local environment | check prerequisites, start/stop/status/reset | doctor, start, stop, restart, status, reset | above |
| Coding agents | install Volcano skills/plugins, keep them current | setup | setup.md |
| Documentation | search/read the docs | docs … | docs-search.md |
Projects
A project owns all resources. Authentication and an active project are prerequisites for cloud operations.
volcano projects create my-app # create a project
volcano projects list # list your projects
volcano use my-app # set the active project
volcano projects get # details for the active project
volcano projects rename eac37d5a-5f6f-42d8-acf6-0f2ae9c7a550 new-name # rename a project
volcano projects keys # anon (publishable) API keys for the browser/SDK
volcano projects delete my-app # deleteVOLCANO_PROJECT_ID overrides the active project for a single invocation
(useful in CI).
Starting a project
volcano init javascript # scaffold a local project (js/nextjs/python/ruby)
volcano start # start the local dev environment
volcano status # check itvolcano start runs the local stack from a bundled default server image.
Override it with --image or VOLCANO_IMAGE; an explicitly selected image must
already exist locally, since the CLI never pulls an unpublished local-mode image.
volcano start --image kong/volcano:local-nightly
VOLCANO_IMAGE=kong/volcano:local-nightly volcano start