The wl CLI
CLI commands
The `wl` CLI binds a directory to a workspace, pulls and syncs rendered files, checks drift, publishes packages, applies home profiles and manages your organization’s API keys and webhooks. One page per command.
Generated from the CLI’s own command definitions and checked against them in CI. Every command also takes the global --registry-url <url> option, which overrides registry_url in ~/.config/workloom/config.toml. Run `wl <command> --help` for the same information in your terminal.
Account
Workspace binding
- wl init
Initialize workspace binding interactively.
- wl bind
Bind to a workspace (non-interactive)
- wl unbind
Remove workspace binding.
- wl status
Show workspace binding status.
- wl migrate
Migrate from .loom/ to workloom.workspace.json + .workloom/state/.
Rendering and sync
- wl pull
Pull workspace manifest, render provider files, and sync to disk.
- wl validate
Validate workspace render plans without writing files.
- wl sync
Render and apply workspace files using the sync engine.
Drift
- wl diff
Show drift between local files and expected render plan state.
- wl restore
Restore managed files to their expected content.
- wl doctor
Check workspace health: binding, state, connectivity, file integrity.
- wl keep-local <path>
Mark a file as user-overridden (excluded from sync and drift reporting)
Publishing
- wl push <path>
Push a local asset directory as a new package version.
- wl review <package>
Run an advisory AI review of a package version (findings never block publishing)
Home profiles
- wl home status
Show which home files this workspace owns.
- wl home diff
Preview home-profile changes without writing.
- wl home apply
Apply the home profile to your home directory.
- wl home remove [package]
Remove one home package, or every file the workspace owns in $HOME.
- wl home doctor
Report home-profile health: owned files, conflicts, pending changes.
- wl home install <package>
Install a published package into $HOME à-la-carte (requires wl login)
- wl home list
List registry packages with installed/available status (anonymous)
- wl home update [package]
Update installed home package(s) to the latest published version (requires login)
- wl home keep-local <path>
Mark a home file keep-local so future applies skip it.
Workspace overrides
- wl override add <package>
Add a workspace override for a package.
- wl override remove <package>
Remove a workspace override.
- wl override list
List active workspace overrides.
Organization
- wl apikey create <name>
Mint a new API key (token shown once)
- wl apikey list
List API keys (never shows tokens)
- wl apikey revoke <id>
Revoke an API key.
- wl webhook create <url>
Register a webhook endpoint (secret shown once)
- wl webhook list
List webhook endpoints.
- wl webhook rotate-secret <id>
Rotate an endpoint signing secret (shown once)
- wl webhook disable <id>
Disable a webhook endpoint.
- wl webhook delete <id>
Delete a webhook endpoint.
- wl webhook deliveries <id>
List delivery attempts for an endpoint.
- wl webhook redeliver <deliveryId>
Requeue a dead/failed delivery.
Telemetry
- wl telemetry status
Show current telemetry opt-in/opt-out state.
- wl telemetry opt-out
Disable telemetry.
- wl telemetry opt-in
Re-enable telemetry.