Manifest
The Compose App’s manifest is a YAML file with the following schema. The manifest holds all the relevant information about the Compose App and its tasks. All compose commands will reference your manifest and pick up the configuration there. See full manifest configuration docs here.Example
App targeting
Commands that operate on a deployed app accept either-n, --name <app> to target by name directly, or -m, --manifest <path> (default compose.yaml) to read the name from a manifest. If neither is provided and no compose.yaml is present, the command errors.
Commands
init
Prompts you to choose a project name and generates a folder of that name with a fully working compose app in it.start
Starts your app locally. Preserves execution state from previous runs, useful for testing retry behavior and other production scenarios.-m, --manifest <path>Path to manifest file (default:compose.yaml)--fork-chainsFork all chains referenced in contract interactions locally for testing — see forking
deploy
Deploys the app to the cloud. From there you can monitor it athttps://app.goldsky.com/dashboard/compose/{appName}.
See monitoring for more info.
-m, --manifest <path>Path to manifest file (default:compose.yaml)-t, --token <token>Authentication token for deployment-f, --forceSkip version compatibility prompts--sync-envUpload secrets from your local.envto the cloud before deploying, in one step. See Secrets.
Your manifest must include an
api_version field to deploy. All secrets referenced in the manifest must be set before deploying (see Secrets).callTask
Trigger a task on your locally-running app by name with an optional JSON payload. Useful for testing tasks during development.The payload must be valid JSON. For example,
{foo: "bar"} is invalid — use {"foo": "bar"} instead.codegen
Parse ABIs in thesrc/contracts/ folder and generate TypeScript classes for them.
See contracts for more details.
clean
Deletes your local stage database (.compose/stage.db), wiping all local execution state and collection data. Prompts for confirmation unless -f is passed.
-f, --forceSkip the confirmation prompt-c, --config <path>Path to manifest file (default:compose.yaml)
update
Update the Compose CLI to the latest version.--previewInstall the latest preview build frommaininstead of the current stable release
stable and preview.
App lifecycle
For full examples, see App lifecycle.status
Show the status of a deployed app.-n, --name <name>App name (alternative to-m)-m, --manifest <path>Path to manifest file (default:compose.yaml)-t, --token <token>Authentication token--jsonEmit JSON output (for scripts and agents)
list
List all deployed apps in your project.-t, --token <token>Authentication token--jsonEmit JSON output
pause
Pause a deployed app. Cron triggers stop firing and HTTP triggers return an error until the app is resumed.-n, --name <name>/-m, --manifest <path>-t, --token <token>--json
resume
Resume a paused app.pause.
delete
Delete a deployed app. Prompts you to type the app name to confirm. Also asks whether to delete the app’s hosted Postgres database unless you pass--delete-database or --force.
-n, --name <name>/-m, --manifest <path>-t, --token <token>-f, --forceSkip confirmation prompts (required for non-interactive use, e.g. CI)--delete-databaseAlso delete the app’s hosted Postgres database--json
logs
View or tail logs from a deployed app.-n, --name <name>/-m, --manifest <path>-t, --token <token>-f, --followStream logs live--tail <lines>Number of lines to fetch (default:100)--level <levels>Comma-separated log levels (e.g.error,warn)--search <text>Filter log lines by text--since <duration>Only show logs since a relative time (e.g.1h,30m,7d)--max-lines <count>Exit after N lines (useful with-f)--timeout <duration>Exit after a duration (useful with-f)--jsonEmit newline-delimited JSON
Wallet management
wallet create
Create a named wallet for this app and print its address. Useful for pre-creating wallets so you can fund them before your tasks first run.-n, --name <app>/-m, --manifest <path>App to attach the wallet to--env <local|cloud>Where to create the wallet (default:cloud)-t, --token <token>
wallet list
List wallets that have been created for this app.-n, --name <app>/-m, --manifest <path>--env <local|cloud>(default:cloud)-t, --token <token>
Secrets
See Secrets for the full workflow.secret set
Set or update a secret. See Secrets for full details.--value <value>Secret value (required)--env <local|cloud>Where to store the secret (default:cloud)--redeployAfter setting, redeploy the app so the new value takes effect-n, --name <app>/-m, --manifest <path>-t, --token <token>
Secret names must be SCREAMING_SNAKE_CASE. A running app only picks up secret changes after a redeploy — pass
--redeploy or run goldsky compose deploy yourself.secret delete
Delete a secret.--env <local|cloud>Where to delete from (default:cloud)-n, --name <app>/-m, --manifest <path>-t, --token <token>
secret list
List all cloud secrets set for this app.-n, --name <app>/-m, --manifest <path>-t, --token <token>