Docs navigation

DocsShared referenceCLI commands

CLI commands

The weev binary defines, versions and deploys job orchestration. The typical first run is init → login → link → generate → push — walked end to end in the quickstart.

Reference

Commands

weev init

Creates .weevrc in the current directory, creates the .weev/ build directory, and adds .weev/ to .gitignore. No-ops with a warning if a .weevrc already exists anywhere up the tree.

weev login

Browser sign-in. Opens the Weev app, waits on a loopback port for the callback, and saves the token to .weevrc. Times out after 5 minutes.

--api-url <url>
API base (default WEEV_API_URL or https://api.weev.dev)
--app-url <url>
App base (default WEEV_APP_URL or https://app.weev.dev)
weev logout

Revokes the CLI session server-side and clears .weevrc credentials. Local credentials are cleared even if the server is unreachable.

weev link

Interactive: choose organization, project and environment; writes the selection to .weevrc so generate and push know their target.

weev generate

Scans your TypeScript project for weev.job() calls, builds the manifest, validates the graph, and writes .weev/build/manifest.json plus a manifest.meta.json with the content hash and any scan warnings.

--tsconfig <path>
Project tsconfig (default tsconfig.json)
--allow-warnings
Proceed even when scan warnings dropped jobs or dependency lists (fatal by default)
weev push

Uploads the generated manifest, shows a dry-run diff of what the deployment would change, asks for confirmation, then creates the deployment. Pushing to a production-type environment prints an extra warning.

-y, --yes
Skip the confirmation prompt. Also skipped automatically when not attached to a TTY (CI)
--no-deploy
Upload the manifest without creating a deployment
--allow-empty
Required to deploy a manifest with zero batches — a deploy is a full snapshot, so an empty one undeploys everything
--force
Push a manifest whose generate step recorded warnings
weev status

Prints the resolved config (token shown as ***configured***), the local manifest summary, and the best-effort remote deployed state.

Configuration

.weevrc

A JSON file discovered by walking up from the current directory. Fields: organizationId, projectId, environmentId, apiUrl and token. Environment variables override the file: WEEV_ORG_ID, WEEV_PROJECT_ID, WEEV_ENV_ID, WEEV_API_URL, WEEV_TOKEN.

Caution

Do not commit .weevrc

It holds your machine token in plaintext. weev init adds .weev/ to .gitignore but not .weevrc itself — add it to your .gitignore.