Get started

Install wharfy, then hand it to your AI agent. Once a release works, move the run into CI — that’s the whole setup. wharfy is built to be run by your assistant, not memorised by you.

Before you begin

1. Install

macOS (Homebrew):

brew install shirodoromoto/wharfy/wharfy

Windows (Scoop):

scoop bucket add wharfy https://github.com/ShiroDoromoto/scoop-wharfy
scoop install wharfy

Linux:

curl -fsSL https://wharfy.io/install.sh | sh

2. Hand it to your AI

In your project, tell your assistant to run:

wharfy agent

That one command returns every command, its arguments, the order to use them in, and how to read the current state. Your AI reads it once and drives the release from there — build, release, publish, verify.

3. Put it in CI

A release usually belongs in GitHub Actions rather than on a laptop: the artifacts are built in the open, no signing key has to live on anyone’s machine, and build provenance can only be signed there — Actions hands the workflow the OIDC identity that signs it.

wharfy secrets

That prints the credentials to register, the tools the runner needs, and the permissions: / env: blocks to paste into your workflow. wharfy never prompts and never needs a TTY, so the commands you just ran by hand are the same ones the workflow runs.

What stays deliberate is the trigger, not the machine: ship on a tag push or a manual dispatch, never on every merge.

What a release looks like

wharfy status      # where am I? (what's built / released / published, and where)
wharfy build       # cross-compile — or skip it entirely with prebuilt: → next: sign | release
wharfy release     # upload the GitHub release, attest its provenance    → next: publish
wharfy promote     # make a prerelease you verified the latest one       → next: publish
wharfy publish     # write each owned channel; prepare gated ones        → next: verify
wharfy verify      # check every channel from the consumer's side

Every command also takes --json, and ends with a next: block — so neither you nor your AI has to remember the order.