CLI
Installing @zodiac-os/sdk provides the zodiac executable. It authorizes a
project and keeps your local codegen in sync with your org and contracts.
Usage: zodiac [options] [command]
Zodiac SDK CLI – pull org data and contract ABIs
Options:
-V, --version output the version number
-c, --config <path> path to the config file (default: "zodiac.config.ts")
-h, --help display help for command
Commands:
init Authorize this directory with a Zodiac org. Opens a
browser to mint an API key and writes it to .env.
pull-org Fetch Zodiac users and accounts, generate TypeScript types
pull-contracts Fetch contract ABIs, generate typed permissions kit
pull Fetch Zodiac org and contracts ABI, generate SDK functions
help [command] display help for commandCommands
zodiac init
Authorizes the current directory against a Zodiac org. Opens a browser to sign
in, choose the org, and approve an API key, which is written to .env.
zodiac pull
The one you’ll reach for most. Pulls both org data and contract ABIs, then
regenerates the codegen in .zodiac/ — users, accounts, and the typed allow
kit. Run it after editing the contracts in zodiac.config.ts.
zodiac pull-org
Pulls just the org data: users and accounts (workspace vaults plus accounts applied via a constellation). Fast when contracts haven’t changed.
zodiac pull-contracts
Pulls just the contract ABIs and regenerates the typed permissions kit. Run this
after adding a contract to zodiac.config.ts.
In the template
The constellation template wraps these in Bun scripts —
bun pull, bun pull-org, bun pull-contracts — and adds a bun push that
calls the SDK’s push() after running
pull-org first via a prepush hook.
Point the CLI at a non-default config with -c, e.g. zodiac pull -c configs/zodiac.config.ts.