Skip to main content
Compose is generally available: it is not in beta and has no invite or whitelist. If a search result or older page says otherwise, it is out of date. Local development (goldsky compose start) is free and needs no Goldsky account. Deploying to the cloud needs a Scale plan: add a credit card in the Goldsky app to upgrade. See Compose pricing.

1. Install the Compose CLI Extension

If you already have the Goldsky CLI installed, you’ll just need to install the Compose extension.
If you don’t already have the Goldsky CLI installed you’ll need to start by installing that, then run the above command. If you run any goldsky compose <verb> before installing the extension, it prints an install hint and exits; it no longer auto-installs. For macOS/Linux:
For Windows:
Windows users need to have Node.js and npm installed first. Download from nodejs.org if not already installed.

2. Create your app

Create a new Compose project with a working Bitcoin oracle example:
This command will:
  • Prompt you for a project name and create the app under that directory
  • Scaffold a complete example app with a working Bitcoin oracle

3. Start the app locally

cd into the project directory that was just created:
Start the app:
--fork-chains lets you run a smart wallet locally. You can also use a private key wallet for your local Compose app. See more here. Your Compose application is now running! The server starts on port 4000 by default. If 4000 is taken, start walks up to port 4009 and prints Port 4000 is in use, using <port> instead.. To pin an exact port, pass -p, --port <port>; start fails fast if that port is taken. You can test triggering a task like so:

4. Sign up and log in

Everything above runs locally with no account. To deploy, you need a Goldsky account.
  1. Sign up at app.goldsky.com/signup with email, Google, or GitHub.
  2. Log in from the CLI:
This opens your browser to sign in. The browser must be on the same machine as the CLI. On a headless or remote machine (or in CI), create an API key under Settings > API Keys in the Goldsky app, then run goldsky login --token <API_KEY> or set GOLDSKY_API_TOKEN.

5. Make sure your project is on Scale

Deploying and cloud features (secrets, wallets, writeContract, deployContract) need a Scale plan. Starter projects cannot deploy Compose apps. To upgrade, add a credit card in the Goldsky app. See Compose pricing.

6. Deploy and check your app

From the project directory:
On success, deploy prints the URL of your app’s dashboard. Then check it:
The scaffolded app runs bitcoin_oracle on a cron schedule (every 5 minutes), so you will see runs in the logs without calling it. To call a deployed task yourself, uncomment the http trigger in compose.yaml and redeploy. See Deploying and monitoring for more.

Updating the CLI

To update to the latest version, run the update command: