npm package: @liquidmetal-ai/raindrop
Description: CLI for the Raindrop platform
Author: bosgood
Latest version: 0.20.0

# raindrop

CLI for the Raindrop platform

[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)
[![Version](https://img.shields.io/npm/v/raindrop.svg)](https://npmjs.org/package/raindrop)
[![Downloads/week](https://img.shields.io/npm/dw/raindrop.svg)](https://npmjs.org/package/raindrop)

<!-- toc -->
* [raindrop](#raindrop)
* [Usage](#usage)
* [Commands](#commands)
<!-- tocstop -->

# Usage

<!-- usage -->
```sh-session
$ npm install -g @liquidmetal-ai/raindrop
$ raindrop COMMAND
running command...
$ raindrop (--version)
@liquidmetal-ai/raindrop/0.20.0 darwin-arm64 node-v24.5.0
$ raindrop --help [COMMAND]
USAGE
  $ raindrop COMMAND
...
```
<!-- usagestop -->

# Commands

<!-- commands -->
* [`raindrop annotation get MRN`](#raindrop-annotation-get-mrn)
* [`raindrop annotation list [MRNPREFIX]`](#raindrop-annotation-list-mrnprefix)
* [`raindrop annotation put MRN ANNOTATION`](#raindrop-annotation-put-mrn-annotation)
* [`raindrop auth apikey NAME`](#raindrop-auth-apikey-name)
* [`raindrop auth jwt`](#raindrop-auth-jwt)
* [`raindrop auth list`](#raindrop-auth-list)
* [`raindrop auth login`](#raindrop-auth-login)
* [`raindrop auth logout`](#raindrop-auth-logout)
* [`raindrop auth org`](#raindrop-auth-org)
* [`raindrop auth select`](#raindrop-auth-select)
* [`raindrop bucket create-credential`](#raindrop-bucket-create-credential)
* [`raindrop bucket delete-credential`](#raindrop-bucket-delete-credential)
* [`raindrop bucket get-credential`](#raindrop-bucket-get-credential)
* [`raindrop bucket list-credentials`](#raindrop-bucket-list-credentials)
* [`raindrop build actor setup`](#raindrop-build-actor-setup)
* [`raindrop build branch BRANCH`](#raindrop-build-branch-branch)
* [`raindrop build bucket-events setup`](#raindrop-build-bucket-events-setup)
* [`raindrop build checkout [VERSION]`](#raindrop-build-checkout-version)
* [`raindrop build clone ID [PATH]`](#raindrop-build-clone-id-path)
* [`raindrop build delete [APPLICATION]`](#raindrop-build-delete-application)
* [`raindrop build deploy`](#raindrop-build-deploy)
* [`raindrop build env`](#raindrop-build-env)
* [`raindrop build env get VAR`](#raindrop-build-env-get-var)
* [`raindrop build env list`](#raindrop-build-env-list)
* [`raindrop build env set VAR [VALUE]`](#raindrop-build-env-set-var-value)
* [`raindrop build features`](#raindrop-build-features)
* [`raindrop build find`](#raindrop-build-find)
* [`raindrop build generate`](#raindrop-build-generate)
* [`raindrop build init [PATH]`](#raindrop-build-init-path)
* [`raindrop build init-workspace [PATH]`](#raindrop-build-init-workspace-path)
* [`raindrop build list`](#raindrop-build-list)
* [`raindrop build queue setup`](#raindrop-build-queue-setup)
* [`raindrop build sandbox`](#raindrop-build-sandbox)
* [`raindrop build site add-worker NAME`](#raindrop-build-site-add-worker-name)
* [`raindrop build smartbucket setup`](#raindrop-build-smartbucket-setup)
* [`raindrop build smartmemory setup`](#raindrop-build-smartmemory-setup)
* [`raindrop build smartsql setup`](#raindrop-build-smartsql-setup)
* [`raindrop build sql dump`](#raindrop-build-sql-dump)
* [`raindrop build sql exec [SQL]`](#raindrop-build-sql-exec-sql)
* [`raindrop build sql migrate`](#raindrop-build-sql-migrate)
* [`raindrop build sql status`](#raindrop-build-sql-status)
* [`raindrop build start`](#raindrop-build-start)
* [`raindrop build status`](#raindrop-build-status)
* [`raindrop build stop`](#raindrop-build-stop)
* [`raindrop build stripe dashboard`](#raindrop-build-stripe-dashboard)
* [`raindrop build stripe onboard`](#raindrop-build-stripe-onboard)
* [`raindrop build stripe setup`](#raindrop-build-stripe-setup)
* [`raindrop build stripe start`](#raindrop-build-stripe-start)
* [`raindrop build stripe status`](#raindrop-build-stripe-status)
* [`raindrop build stripe subscription create`](#raindrop-build-stripe-subscription-create)
* [`raindrop build stripe subscription get`](#raindrop-build-stripe-subscription-get)
* [`raindrop build stripe subscription update`](#raindrop-build-stripe-subscription-update)
* [`raindrop build tools check`](#raindrop-build-tools-check)
* [`raindrop build tools fmt`](#raindrop-build-tools-fmt)
* [`raindrop build unsandbox`](#raindrop-build-unsandbox)
* [`raindrop build upload`](#raindrop-build-upload)
* [`raindrop build validate`](#raindrop-build-validate)
* [`raindrop build workos delete`](#raindrop-build-workos-delete)
* [`raindrop build workos env attach [ENVNAME]`](#raindrop-build-workos-env-attach-envname)
* [`raindrop build workos env attached`](#raindrop-build-workos-env-attached)
* [`raindrop build workos env create [ENVNAME]`](#raindrop-build-workos-env-create-envname)
* [`raindrop build workos env delete APPNAME`](#raindrop-build-workos-env-delete-appname)
* [`raindrop build workos env detach`](#raindrop-build-workos-env-detach)
* [`raindrop build workos env dev-login`](#raindrop-build-workos-env-dev-login)
* [`raindrop build workos env get APPNAME`](#raindrop-build-workos-env-get-appname)
* [`raindrop build workos env list`](#raindrop-build-workos-env-list)
* [`raindrop build workos env set APPNAME`](#raindrop-build-workos-env-set-appname)
* [`raindrop build workos invite EMAIL`](#raindrop-build-workos-invite-email)
* [`raindrop build workos jwt`](#raindrop-build-workos-jwt)
* [`raindrop build workos setup`](#raindrop-build-workos-setup)
* [`raindrop build workos status`](#raindrop-build-workos-status)
* [`raindrop datalake ask QUESTION`](#raindrop-datalake-ask-question)
* [`raindrop datalake connect`](#raindrop-datalake-connect)
* [`raindrop datalake query QUERY`](#raindrop-datalake-query-query)
* [`raindrop datalake skills delete PATH`](#raindrop-datalake-skills-delete-path)
* [`raindrop datalake skills get PATH`](#raindrop-datalake-skills-get-path)
* [`raindrop datalake skills list`](#raindrop-datalake-skills-list)
* [`raindrop datalake skills put PATH`](#raindrop-datalake-skills-put-path)
* [`raindrop dns create DOMAIN`](#raindrop-dns-create-domain)
* [`raindrop dns delete DNSNAME`](#raindrop-dns-delete-dnsname)
* [`raindrop dns get DNSNAME`](#raindrop-dns-get-dnsname)
* [`raindrop dns list`](#raindrop-dns-list)
* [`raindrop dns records create ZONEID TYPE NAME CONTENT`](#raindrop-dns-records-create-zoneid-type-name-content)
* [`raindrop dns records delete ZONEID RECORDID`](#raindrop-dns-records-delete-zoneid-recordid)
* [`raindrop dns records get ZONEID RECORDID`](#raindrop-dns-records-get-zoneid-recordid)
* [`raindrop dns records list ZONEID`](#raindrop-dns-records-list-zoneid)
* [`raindrop dns records update ZONEID RECORDID`](#raindrop-dns-records-update-zoneid-recordid)
* [`raindrop doctor`](#raindrop-doctor)
* [`raindrop help [COMMAND]`](#raindrop-help-command)
* [`raindrop logs query`](#raindrop-logs-query)
* [`raindrop logs tail`](#raindrop-logs-tail)
* [`raindrop mcp install-claude`](#raindrop-mcp-install-claude)
* [`raindrop mcp install-gemini`](#raindrop-mcp-install-gemini)
* [`raindrop mcp install-goose`](#raindrop-mcp-install-goose)
* [`raindrop mcp status`](#raindrop-mcp-status)
* [`raindrop object delete KEY`](#raindrop-object-delete-key)
* [`raindrop object get KEY [OUTPUT]`](#raindrop-object-get-key-output)
* [`raindrop object list`](#raindrop-object-list)
* [`raindrop object put FILE KEY`](#raindrop-object-put-file-key)
* [`raindrop plugins`](#raindrop-plugins)
* [`raindrop plugins add PLUGIN`](#raindrop-plugins-add-plugin)
* [`raindrop plugins:inspect PLUGIN...`](#raindrop-pluginsinspect-plugin)
* [`raindrop plugins install PLUGIN`](#raindrop-plugins-install-plugin)
* [`raindrop plugins link PATH`](#raindrop-plugins-link-path)
* [`raindrop plugins remove [PLUGIN]`](#raindrop-plugins-remove-plugin)
* [`raindrop plugins reset`](#raindrop-plugins-reset)
* [`raindrop plugins uninstall [PLUGIN]`](#raindrop-plugins-uninstall-plugin)
* [`raindrop plugins unlink [PLUGIN]`](#raindrop-plugins-unlink-plugin)
* [`raindrop plugins update`](#raindrop-plugins-update)
* [`raindrop query chunk-search QUERY`](#raindrop-query-chunk-search-query)
* [`raindrop query document QUERY`](#raindrop-query-document-query)
* [`raindrop query events`](#raindrop-query-events)
* [`raindrop query reindex`](#raindrop-query-reindex)
* [`raindrop query search [QUERY]`](#raindrop-query-search-query)
* [`raindrop tail`](#raindrop-tail)

## `raindrop annotation get MRN`

Get an annotation by MRN

```
USAGE
  $ raindrop annotation get MRN [-f text|json]

ARGUMENTS
  MRN  MRN (Machine Resource Name) of the annotation to retrieve. Can be partial (e.g., my-module:my-key:) or full
       (e.g., annotation:app:v1:my-module:my-key:)

FLAGS
  -f, --format=<option>  [default: text] output format
                         <options: text|json>

DESCRIPTION
  Get an annotation by MRN

EXAMPLES
  $ raindrop annotation get my-module:my-item^my-key:
  Get annotation by partial MRN (prefilled with app/version from manifest and config)

  $ raindrop annotation get annotation:my-app:v1.0.0:my-module:my-item^my-key:
  Get annotation with the full MRN

  $ raindrop annotation get my-module:my-key: --format json
  Get annotation by partial MRN and output as JSON
```

_See code: [src/commands/annotation/get.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/annotation/get.ts)_

## `raindrop annotation list [MRNPREFIX]`

List annotations by MRN prefix

```
USAGE
  $ raindrop annotation list [MRNPREFIX] [-o table|text|json] [-l <value>]

ARGUMENTS
  MRNPREFIX  MRN prefix to filter annotations (e.g., my-module or annotation:app:v1:my-module). If not provided, uses
             app/version from manifest and config.

FLAGS
  -l, --limit=<value>    [default: 100] maximum number of annotations to return
  -o, --output=<option>  [default: table] output format
                         <options: table|text|json>

DESCRIPTION
  List annotations by MRN prefix

EXAMPLES
  $ raindrop annotation list
  List all annotations for the current app/version from manifest and config

  $ raindrop annotation list my-module
  List annotations for 'my-module' (prefilled with app/version from manifest and config)

  $ raindrop annotation list annotation:my-app:v1.0.0:my-module --format json
  List annotations for a specific module using full MRN prefix in JSON format
```

_See code: [src/commands/annotation/list.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/annotation/list.ts)_

## `raindrop annotation put MRN ANNOTATION`

Create or update an annotation by MRN

```
USAGE
  $ raindrop annotation put MRN ANNOTATION [-o text|json]

ARGUMENTS
  MRN         MRN (Machine Resource Name) of the annotation to create/update. Can be partial (e.g., my-module:my-key:)
              or full (e.g., annotation:app:v1:my-module:my-key:)
  ANNOTATION  annotation content (use "-" to read from stdin)

FLAGS
  -o, --output=<option>  [default: text] output format
                         <options: text|json>

DESCRIPTION
  Create or update an annotation by MRN

EXAMPLES
  $ raindrop annotation put my-module:my-key: "This is my annotation"
  Create an annotation with partial MRN (prefilled with app/version from manifest and config)

  $ raindrop annotation put annotation:my-app:v1.0.0:my-module:my-item^my-key: @file.txt
  Create an annotation from file contents using full MRN

  $ raindrop annotation put my-module:my-key: - < input.txt
  Create an annotation from stdin using partial MRN
```

_See code: [src/commands/annotation/put.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/annotation/put.ts)_

## `raindrop auth apikey NAME`

Create an API key for the current organization

```
USAGE
  $ raindrop auth apikey NAME [-d <value>]

ARGUMENTS
  NAME  Name for the API key

FLAGS
  -d, --description=<value>  Optional description for the API key

DESCRIPTION
  Create an API key for the current organization
```

_See code: [src/commands/auth/apikey.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/auth/apikey.ts)_

## `raindrop auth jwt`

Print a valid JWT for the current user. Refreshes the token if needed, or triggers login if not authenticated.

```
USAGE
  $ raindrop auth jwt

DESCRIPTION
  Print a valid JWT for the current user. Refreshes the token if needed, or triggers login if not authenticated.
```

_See code: [src/commands/auth/jwt.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/auth/jwt.ts)_

## `raindrop auth list`

List authentications

```
USAGE
  $ raindrop auth list [-o text|table|json]

FLAGS
  -o, --output=<option>  [default: table] output format
                         <options: text|table|json>

DESCRIPTION
  List authentications
```

_See code: [src/commands/auth/list.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/auth/list.ts)_

## `raindrop auth login`

Logs a user into the LiquidMetal platform. Supports browser-based authentication.

```
USAGE
  $ raindrop auth login

DESCRIPTION
  Logs a user into the LiquidMetal platform. Supports browser-based authentication.
```

_See code: [src/commands/auth/login.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/auth/login.ts)_

## `raindrop auth logout`

Logout authentications

```
USAGE
  $ raindrop auth logout

DESCRIPTION
  Logout authentications
```

_See code: [src/commands/auth/logout.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/auth/logout.ts)_

## `raindrop auth org`

Get information about the current selected organization

```
USAGE
  $ raindrop auth org [-o text|table|json]

FLAGS
  -o, --output=<option>  [default: table] output format
                         <options: text|table|json>

DESCRIPTION
  Get information about the current selected organization
```

_See code: [src/commands/auth/org.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/auth/org.ts)_

## `raindrop auth select`

Select active organization

```
USAGE
  $ raindrop auth select [--organizationId <value>]

FLAGS
  --organizationId=<value>  organizationId to select as active

DESCRIPTION
  Select active organization
```

_See code: [src/commands/auth/select.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/auth/select.ts)_

## `raindrop bucket create-credential`

Create S3 credentials for a bucket

```
USAGE
  $ raindrop bucket create-credential -n <value> [-b <value> | --api-url <value>] [--expires-at <value>] [-a <value> | ] [-v
    <value> | ] [-o text|json]

FLAGS
  -a, --application=<value>  application name
  -b, --bucket=<value>       bucket name
  -n, --name=<value>         (required) credential name
  -o, --output=<option>      [default: text] output format
                             <options: text|json>
  -v, --version=<value>      application version
      --api-url=<value>      direct API URL (bypasses bucket discovery)
      --expires-at=<value>   expiration date (ISO 8601 format)

DESCRIPTION
  Create S3 credentials for a bucket

EXAMPLES
  $ raindrop bucket create-credential --bucket my-bucket --name "My API Key"
  Create a new S3 credential for my-bucket

  $ raindrop bucket create-credential --bucket my-bucket --name "Temp Key" --expires-at "2024-12-31"
  Create a credential that expires on Dec 31, 2024

  $ raindrop bucket create-credential --api-url https://bucket.example.com --name "Direct API Key"
  Create a credential using a direct API URL
```

_See code: [src/commands/bucket/create-credential.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/bucket/create-credential.ts)_

## `raindrop bucket delete-credential`

Delete an S3 credential

```
USAGE
  $ raindrop bucket delete-credential --access-key <value> [-b <value> | --api-url <value>] [-a <value> | ] [-v <value> | ]
    [-o text|json]

FLAGS
  -a, --application=<value>  application name
  -b, --bucket=<value>       bucket name
  -o, --output=<option>      [default: text] output format
                             <options: text|json>
  -v, --version=<value>      application version
      --access-key=<value>   (required) access key of the credential to delete
      --api-url=<value>      direct API URL (bypasses bucket discovery)

DESCRIPTION
  Delete an S3 credential

EXAMPLES
  $ raindrop bucket delete-credential --bucket my-bucket --access-key AKIAIOSFODNN7EXAMPLE
  Delete a specific credential

  $ raindrop bucket delete-credential --api-url https://bucket.example.com --access-key AKIAIOSFODNN7EXAMPLE
  Delete credential using a direct API URL
```

_See code: [src/commands/bucket/delete-credential.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/bucket/delete-credential.ts)_

## `raindrop bucket get-credential`

Get details of a specific S3 credential

```
USAGE
  $ raindrop bucket get-credential --access-key <value> [-b <value> | --api-url <value>] [-a <value> | ] [-v <value> | ]
    [-o text|json]

FLAGS
  -a, --application=<value>  application name
  -b, --bucket=<value>       bucket name
  -o, --output=<option>      [default: text] output format
                             <options: text|json>
  -v, --version=<value>      application version
      --access-key=<value>   (required) access key of the credential to retrieve
      --api-url=<value>      direct API URL (bypasses bucket discovery)

DESCRIPTION
  Get details of a specific S3 credential

EXAMPLES
  $ raindrop bucket get-credential --bucket my-bucket --access-key AKIAIOSFODNN7EXAMPLE
  Get details of a specific credential

  $ raindrop bucket get-credential --api-url https://bucket.example.com --access-key AKIAIOSFODNN7EXAMPLE
  Get credential details using a direct API URL
```

_See code: [src/commands/bucket/get-credential.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/bucket/get-credential.ts)_

## `raindrop bucket list-credentials`

List S3 credentials for a bucket

```
USAGE
  $ raindrop bucket list-credentials [-b <value> | --api-url <value>] [-a <value> | ] [-v <value> | ] [-o text|json]

FLAGS
  -a, --application=<value>  application name
  -b, --bucket=<value>       bucket name
  -o, --output=<option>      [default: text] output format
                             <options: text|json>
  -v, --version=<value>      application version
      --api-url=<value>      direct API URL (bypasses bucket discovery)

DESCRIPTION
  List S3 credentials for a bucket

EXAMPLES
  $ raindrop bucket list-credentials --bucket my-bucket
  List all credentials for my-bucket

  $ raindrop bucket list-credentials --api-url https://bucket.example.com
  List all credentials using a direct API URL
```

_See code: [src/commands/bucket/list-credentials.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/bucket/list-credentials.ts)_

## `raindrop build actor setup`

Add a stateful actor (Durable Object) to your Raindrop app

```
USAGE
  $ raindrop build actor setup [--name <value>] [--dry-run]

FLAGS
  --dry-run       Preview changes without applying them
  --name=<value>  [default: my-actor] Name for the actor

DESCRIPTION
  Add a stateful actor (Durable Object) to your Raindrop app

EXAMPLES
  $ raindrop build actor setup
  Add actor with default name "my-actor"
  $ raindrop build actor setup --name counter
  Add actor with custom name "counter"
```

_See code: [src/commands/build/actor/setup.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/actor/setup.ts)_

## `raindrop build branch BRANCH`

branch a Raindrop application

```
USAGE
  $ raindrop build branch BRANCH [-r <value>] [--manifest <value>] [-o <value>] [-p <value>] [--start]
    [--no-watch] [--show]

ARGUMENTS
  BRANCH  branch name

FLAGS
  -o, --output=<value>      [default: dist] output directory
  -p, --version-id=<value>  branch from this version ID
  -r, --root=<value>        [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>    [default: raindrop.manifest] project manifest
      --no-watch            skip watching deployment status after branch
      --show                show the current branch
      --start               start the application after deploying

DESCRIPTION
  branch a Raindrop application

EXAMPLES
  $ raindrop build branch .
  Branch a Raindrop application.
```

_See code: [src/commands/build/branch.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/branch.ts)_

## `raindrop build bucket-events setup`

Add bucket event notifications (observer) to your Raindrop app

```
USAGE
  $ raindrop build bucket-events setup [--bucket <value>] [--observer <value>] [--dry-run]

FLAGS
  --bucket=<value>    [default: my-bucket] Name of the bucket to watch
  --dry-run           Preview changes without applying them
  --observer=<value>  [default: bucket-events] Name for the event observer

DESCRIPTION
  Add bucket event notifications (observer) to your Raindrop app

EXAMPLES
  $ raindrop build bucket-events setup
  Add bucket event observer with default names
  $ raindrop build bucket-events setup --bucket uploads --observer file-processor
  Add bucket event observer with custom names
```

_See code: [src/commands/build/bucket-events/setup.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/bucket-events/setup.ts)_

## `raindrop build checkout [VERSION]`

switch the current context to a specific version

```
USAGE
  $ raindrop build checkout [VERSION] [-o <value>] [-m <value>]

ARGUMENTS
  VERSION  version id

FLAGS
  -m, --manifest=<value>  [default: raindrop.manifest] project manifest
  -o, --output=<value>    [default: text] output format

DESCRIPTION
  switch the current context to a specific version

EXAMPLES
  $ raindrop build checkout
  Currently on version: 01jac6p20m4gahn1kaa2mhm2js
  $ raindrop build checkout 01jux6z20m4gbhn5kaa4mcm2jr
  Switched to version: 01jux6z20m4gbhn5kaa4mcm2jr
```

_See code: [src/commands/build/checkout.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/checkout.ts)_

## `raindrop build clone ID [PATH]`

clone a LiquidMetal.AI project

```
USAGE
  $ raindrop build clone ID [PATH] [--overwrite]

ARGUMENTS
  ID    liquidmetal project ID to clone (e.g., liquidmetal/smartbucket)
  PATH  [default: .] Path to initialize the project in

FLAGS
  --overwrite  Overwrite existing files

DESCRIPTION
  clone a LiquidMetal.AI project

EXAMPLES
  $ raindrop build clone .
  Clone a project in the current directory.

  $ raindrop build clone 
  Clone a project in the specified directory.
```

_See code: [src/commands/build/clone.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/clone.ts)_

## `raindrop build delete [APPLICATION]`

delete Raindrop applications

```
USAGE
  $ raindrop build delete [APPLICATION] [-r <value>] [--manifest <value>] [-o text|table|json] [-v <value> | -a]

ARGUMENTS
  APPLICATION  application name

FLAGS
  -a, --all                 delete all application versions
  -o, --output=<option>     [default: table] output format
                            <options: text|table|json>
  -r, --root=<value>        [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>  application version ID to delete
      --manifest=<value>    [default: raindrop.manifest] project manifest

DESCRIPTION
  delete Raindrop applications

EXAMPLES
  $ raindrop build delete .
  Deleted (application) at version (version)
```

_See code: [src/commands/build/delete.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/delete.ts)_

## `raindrop build deploy`

deploy a Raindrop application

```
USAGE
  $ raindrop build deploy [-r <value>] [--manifest <value>] [-o <value>] [-v <value>] [-s] [--no-watch] [--lock
    <value>] [-a] [-f] [--migrate]

FLAGS
  -a, --amend               amend an existing application
  -f, --force               skip safety checks and force deployment (WARNING: can cause data loss)
  -o, --output=<value>      [default: dist] output directory
  -r, --root=<value>        [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -s, --start               start the application after deploying
  -v, --version-id=<value>  version ID
      --lock=<value>        override lock ID to resume deployment
      --manifest=<value>    [default: raindrop.manifest] project manifest
      --migrate             apply pending SQL migrations automatically after deploy
      --no-watch            skip watching deployment status after deploy

DESCRIPTION
  deploy a Raindrop application

EXAMPLES
  $ raindrop build deploy .
  Deploy a Raindrop application version.
```

_See code: [src/commands/build/deploy.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/deploy.ts)_

## `raindrop build env`

Manage environment variables and secrets for Raindrop applications

```
USAGE
  $ raindrop build env [-r <value>] [--manifest <value>]

FLAGS
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>  [default: raindrop.manifest] project manifest

DESCRIPTION
  Manage environment variables and secrets for Raindrop applications

EXAMPLES
  $ raindrop build env list                           # See required variables (secure)

  $ raindrop build env list --show-details            # See variable names

  $ raindrop build env set API_KEY value              # Set a variable

  $ echo "secret" | raindrop build env set API_KEY -  # Secure input

  $ raindrop build env set api:DB_URL value           # Service-specific

  $ raindrop build env get api:DB_URL                 # Get service value

  $ raindrop build env list --show-details            # See what's needed

  $ raindrop build env set API_KEY value              # Set variables

  $ raindrop build deploy                             # Deploy
```

_See code: [src/commands/build/env.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/env.ts)_

## `raindrop build env get VAR`

Get an environment variable or secret value (secrets show hash only)

```
USAGE
  $ raindrop build env get VAR [-o <value>] [--manifest <value>] [-v <value>] [-a <value>]

ARGUMENTS
  VAR  variable name (e.g., API_KEY) or service-scoped (e.g., api:SECRET)

FLAGS
  -a, --application=<value>  application
  -o, --output=<value>       [default: table] output format
  -v, --version-id=<value>   version ID
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  Get an environment variable or secret value (secrets show hash only)

EXAMPLES
  # Get a top-level variable
  $ raindrop build env get API_KEY
  API_KEY=value
  # Get a secret (shows hash, not actual value)
  $ raindrop build env get SECRET_KEY
  SECRET_KEY=[hash: a8f5f167f44f...]
  # Get a service-scoped variable
  $ raindrop build env get api-router:SERVICE_SECRET
  api-router:SERVICE_SECRET=[hash: 7d8a9b...]
```

_See code: [src/commands/build/env/get.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/env/get.ts)_

## `raindrop build env list`

List environment variables (shows status without values for security)

```
USAGE
  $ raindrop build env list [-r <value>] [--manifest <value>] [-d] [-a] [-a <value>]

FLAGS
  -a, --acknowledge-risk     acknowledge security risk before proceeding
  -a, --application=<value>  application
  -d, --show-details         show variable names (POTENTIAL SECURITY RISK)
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  List environment variables (shows status without values for security)

EXAMPLES
  # Secure view (default)
  $ raindrop build env list
  Environment variables: 2 variables (values hidden for security)
  # Detailed view
  $ raindrop build env list --show-details --acknowledge-risk
  1. API_KEY (secret, not set)
  2. DATABASE_URL (config, not set)
  # Workflow
  $ raindrop build env list           # Check what's needed
  $ raindrop build env set VAR value  # Set variables
  $ raindrop build deploy             # Deploy
```

_See code: [src/commands/build/env/list.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/env/list.ts)_

## `raindrop build env set VAR [VALUE]`

Set an environment variable or secret value

```
USAGE
  $ raindrop build env set VAR [VALUE] [-r <value>] [--manifest <value>] [-o <value>] [-v <value>] [-a <value>]

ARGUMENTS
  VAR    variable name (e.g., API_KEY) or service-scoped (e.g., api:SECRET)
  VALUE  variable value (use "-" to read from stdin)

FLAGS
  -a, --application=<value>  application to start
  -o, --output=<value>       [default: table] output format
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   version ID
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  Set an environment variable or secret value

EXAMPLES
  # Set a top-level variable
  $ raindrop build env set API_KEY my-secret-key
  # Set from stdin (recommended for secrets)
  $ echo "secret" | raindrop build env set API_KEY -
  # Set a service-scoped variable
  $ raindrop build env set api-router:SERVICE_SECRET value
  # Interactive input
  $ raindrop build env set API_KEY -
  reading stdin (ctrl+D to finish)...
```

_See code: [src/commands/build/env/set.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/env/set.ts)_

## `raindrop build features`

List available features and integrations for Raindrop apps

```
USAGE
  $ raindrop build features [--available-only] [-o text|json]

FLAGS
  -o, --output=<option>  [default: text] output format
                         <options: text|json>
      --available-only   show only features that are currently available

DESCRIPTION
  List available features and integrations for Raindrop apps

EXAMPLES
  $ raindrop build features
  List all available features grouped by category
  $ raindrop build features --available-only
  Show only features that are currently ready to use
  $ raindrop build features --output json
  Get machine-readable JSON output
```

_See code: [src/commands/build/features.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/features.ts)_

## `raindrop build find`

find resources in Raindrop

```
USAGE
  $ raindrop build find [-r <value>] [--manifest <value>] [-a <value>] [-v <value>] [--moduleType <value>] [-o
    text|full|json|compact] [--all]

FLAGS
  -a, --application=<value>  application
  -o, --output=<option>      [default: full] output format
                             <options: text|full|json|compact>
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   application version ID
      --all                  query modules for all applications
      --manifest=<value>     [default: raindrop.manifest] project manifest
      --moduleType=<value>   filter by module type (e.g. smartbucket)

DESCRIPTION
  find resources in Raindrop

EXAMPLES
  $ raindrop build find
  Find all modules with full details (default).
  $ raindrop build find -o compact
  Find all modules in compact view.
  $ raindrop build find --moduleType service
  Find only service modules with their routes.
  $ raindrop build find --moduleType actor
  Find only actor modules with their routes.
  $ raindrop build find --moduleType smartbucket
  Find only smartbucket modules.
  $ raindrop build find -a myapp -v 1.0.0
  Find modules for a specific application and version.
```

_See code: [src/commands/build/find.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/find.ts)_

## `raindrop build generate`

(re)generate all code for a LiquidMetal.AI project

```
USAGE
  $ raindrop build generate [-r <value>] [-m <value>] [-o <value>]

FLAGS
  -m, --manifest=<value>  [default: raindrop.manifest] project manifest
  -o, --output=<value>    [default: dist] output directory
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory

DESCRIPTION
  (re)generate all code for a LiquidMetal.AI project

EXAMPLES
  $ raindrop build generate
```

_See code: [src/commands/build/generate.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/generate.ts)_

## `raindrop build init [PATH]`

start a new LiquidMetal.AI project

```
USAGE
  $ raindrop build init [PATH] [--overwrite]

ARGUMENTS
  PATH  [default: .] Path to initialize the project in

FLAGS
  --overwrite  Overwrite existing files

DESCRIPTION
  start a new LiquidMetal.AI project

EXAMPLES
  $ raindrop build init .
  Initialize a project in the current directory.
```

_See code: [src/commands/build/init.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/init.ts)_

## `raindrop build init-workspace [PATH]`

initialize a new npm workspace for Raindrop applications

```
USAGE
  $ raindrop build init-workspace [PATH] [--overwrite] [-n <value>] [--download-framework]

ARGUMENTS
  PATH  [default: .] Path to initialize the workspace in

FLAGS
  -n, --name=<value>             Name of the workspace
      --[no-]download-framework  Download raindrop-framework package for reference
      --overwrite                Overwrite existing files (except package.json if it contains workspace configuration)

DESCRIPTION
  initialize a new npm workspace for Raindrop applications

EXAMPLES
  $ raindrop build init-workspace .
  Initialize a workspace in the current directory.

  $ raindrop build init-workspace . --no-download-framework
  Initialize a workspace without downloading the framework package.
```

_See code: [src/commands/build/init-workspace.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/init-workspace.ts)_

## `raindrop build list`

list Raindrop catalog resources

```
USAGE
  $ raindrop build list [-a] [-o text|table|json|log|compact|tree] [--app <value>] [-n <value>] [--active]

FLAGS
  -a, --all              show deleted resources
  -n, --limit=<value>    limit number of versions shown per application
  -o, --output=<option>  [default: compact] output format
                         <options: text|table|json|log|compact|tree>
      --active           show only running/active versions
      --app=<value>      filter by application name

DESCRIPTION
  list Raindrop catalog resources

EXAMPLES
  $ raindrop build list
  List applications in compact view (default).
  $ raindrop build list -o tree
  Show applications in tree view with version hierarchy.
  $ raindrop build list -o log
  Show git-log style view with branch visualization.
  $ raindrop build list --app demo-fts --limit 5
  Show only demo-fts application, limited to 5 versions.
  $ raindrop build list --active
  Show only running/active versions.
```

_See code: [src/commands/build/list.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/list.ts)_

## `raindrop build queue setup`

Add a queue with consumer (observer) to your Raindrop app

```
USAGE
  $ raindrop build queue setup [--name <value>] [--dry-run]

FLAGS
  --dry-run       Preview changes without applying them
  --name=<value>  [default: my-queue] Name for the queue

DESCRIPTION
  Add a queue with consumer (observer) to your Raindrop app

EXAMPLES
  $ raindrop build queue setup
  Add queue with default name "my-queue"
  $ raindrop build queue setup --name tasks
  Add queue with custom name "tasks"
```

_See code: [src/commands/build/queue/setup.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/queue/setup.ts)_

## `raindrop build sandbox`

mark a version as sandboxed in the Raindrop catalog

```
USAGE
  $ raindrop build sandbox [--manifest <value>] [-v <value>]

FLAGS
  -v, --version-id=<value>  application version ID to sandbox
      --manifest=<value>    [default: raindrop.manifest] project manifest

DESCRIPTION
  mark a version as sandboxed in the Raindrop catalog

EXAMPLES
  $ raindrop build sandbox
```

_See code: [src/commands/build/sandbox.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/sandbox.ts)_

## `raindrop build site add-worker NAME`

Scaffold a site Worker entry point for an existing site in your Raindrop app

```
USAGE
  $ raindrop build site add-worker NAME [-r <value>] [-m <value>]

ARGUMENTS
  NAME  Name of the site to add a Worker to (must match a site in raindrop.manifest)

FLAGS
  -m, --manifest=<value>  [default: raindrop.manifest] project manifest
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory

DESCRIPTION
  Scaffold a site Worker entry point for an existing site in your Raindrop app

EXAMPLES
  $ raindrop build site add-worker dashboard
  Scaffold src/dashboard/index.ts with Hono boilerplate and ASSETS.fetch() fallback
```

_See code: [src/commands/build/site/add-worker.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/site/add-worker.ts)_

## `raindrop build smartbucket setup`

Add SmartBucket (file storage with AI-powered search) to your Raindrop app

```
USAGE
  $ raindrop build smartbucket setup [--name <value>] [--dry-run]

FLAGS
  --dry-run       Preview changes without applying them
  --name=<value>  [default: my-bucket] Name for the SmartBucket binding

DESCRIPTION
  Add SmartBucket (file storage with AI-powered search) to your Raindrop app

EXAMPLES
  $ raindrop build smartbucket setup
  Add SmartBucket with default name "my-bucket"
  $ raindrop build smartbucket setup --name documents
  Add SmartBucket with custom name "documents"
```

_See code: [src/commands/build/smartbucket/setup.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/smartbucket/setup.ts)_

## `raindrop build smartmemory setup`

Add SmartMemory (AI conversation memory management) to your Raindrop app

```
USAGE
  $ raindrop build smartmemory setup [--name <value>] [--dry-run]

FLAGS
  --dry-run       Preview changes without applying them
  --name=<value>  [default: memory] Name for the SmartMemory binding

DESCRIPTION
  Add SmartMemory (AI conversation memory management) to your Raindrop app

EXAMPLES
  $ raindrop build smartmemory setup
  Add SmartMemory with default name "memory"
  $ raindrop build smartmemory setup --name chat-memory
  Add SmartMemory with custom name "chat-memory"
```

_See code: [src/commands/build/smartmemory/setup.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/smartmemory/setup.ts)_

## `raindrop build smartsql setup`

Add SmartSQL (PostgreSQL with natural language queries) to your Raindrop app

```
USAGE
  $ raindrop build smartsql setup [--name <value>] [--dry-run]

FLAGS
  --dry-run       Preview changes without applying them
  --name=<value>  [default: my-database] Name for the SmartSQL binding

DESCRIPTION
  Add SmartSQL (PostgreSQL with natural language queries) to your Raindrop app

EXAMPLES
  $ raindrop build smartsql setup
  Add SmartSQL with default name "my-database"
  $ raindrop build smartsql setup --name orders-db
  Add SmartSQL with custom name "orders-db"
```

_See code: [src/commands/build/smartsql/setup.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/smartsql/setup.ts)_

## `raindrop build sql dump`

Export a SQL database to a local file

```
USAGE
  $ raindrop build sql dump [-r <value>] [--manifest <value>] [-d <value>] [-o <value>] [--no-data] [--no-schema]
    [--tables <value>]

FLAGS
  -d, --database=<value>  target a specific sql_database module
  -o, --output=<value>    output file path (default: {database_name}-{date}.sql)
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>  [default: raindrop.manifest] project manifest
      --no-data           export schema only (no row data)
      --no-schema         export data only (no schema definitions)
      --tables=<value>    comma-separated list of tables to export

DESCRIPTION
  Export a SQL database to a local file

EXAMPLES
  $ raindrop build sql dump -o backup.sql
  Export the default database to backup.sql.

  $ raindrop build sql dump --database mydb --no-data -o schema.sql
  Export only the schema from mydb.

  $ raindrop build sql dump --tables users,orders -o subset.sql
  Export only the users and orders tables.
```

_See code: [src/commands/build/sql/dump.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/sql/dump.ts)_

## `raindrop build sql exec [SQL]`

Execute ad-hoc SQL against a deployed database

```
USAGE
  $ raindrop build sql exec [SQL] [-r <value>] [--manifest <value>] [-d <value>] [-f <value>]

ARGUMENTS
  SQL  SQL query to execute (omit to use --file)

FLAGS
  -d, --database=<value>  target a specific sql_database module
  -f, --file=<value>      read SQL from a file (use - for stdin)
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>  [default: raindrop.manifest] project manifest

DESCRIPTION
  Execute ad-hoc SQL against a deployed database

EXAMPLES
  $ raindrop build sql exec "SELECT * FROM users"
  Execute a SQL query against the default database.

  $ raindrop build sql exec --file query.sql --database mydb
  Execute SQL from a file against a specific database.
```

_See code: [src/commands/build/sql/exec.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/sql/exec.ts)_

## `raindrop build sql migrate`

Apply pending SQL migrations to deployed databases

```
USAGE
  $ raindrop build sql migrate [-r <value>] [--manifest <value>] [-d <value>] [--dry-run]

FLAGS
  -d, --database=<value>  target a specific sql_database module
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --dry-run           show what would be applied without executing
      --manifest=<value>  [default: raindrop.manifest] project manifest

DESCRIPTION
  Apply pending SQL migrations to deployed databases

EXAMPLES
  $ raindrop build sql migrate
  Apply all pending migrations to all sql_database modules.

  $ raindrop build sql migrate --database mydb
  Apply migrations only to the "mydb" database.

  $ raindrop build sql migrate --dry-run
  Show what would be applied without executing.
```

_See code: [src/commands/build/sql/migrate.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/sql/migrate.ts)_

## `raindrop build sql status`

Show migration status for deployed databases

```
USAGE
  $ raindrop build sql status [-r <value>] [--manifest <value>] [-d <value>]

FLAGS
  -d, --database=<value>  target a specific sql_database module
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>  [default: raindrop.manifest] project manifest

DESCRIPTION
  Show migration status for deployed databases

EXAMPLES
  $ raindrop build sql status
  Show migration status for all sql_database modules.

  $ raindrop build sql status --database mydb
  Show migration status for a specific database.
```

_See code: [src/commands/build/sql/status.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/sql/status.ts)_

## `raindrop build start`

start a Raindrop application

```
USAGE
  $ raindrop build start [-r <value>] [--manifest <value>] [-a <value>] [-v <value>]

FLAGS
  -a, --application=<value>  application to start
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   application version ID to start
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  start a Raindrop application

EXAMPLES
  $ raindrop build start .
  Start a Raindrop application.
```

_See code: [src/commands/build/start.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/start.ts)_

## `raindrop build status`

show the status of an application in Raindrop

```
USAGE
  $ raindrop build status [-r <value>] [--manifest <value>] [-a <value>] [-v <value>] [-o watch|table|json|compact]

FLAGS
  -a, --application=<value>  application
  -o, --output=<option>      [default: compact] output format
                             <options: watch|table|json|compact>
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   application version ID
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  show the status of an application in Raindrop

EXAMPLES
  $ raindrop build status .
```

_See code: [src/commands/build/status.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/status.ts)_

## `raindrop build stop`

stop a Raindrop application

```
USAGE
  $ raindrop build stop [-r <value>] [--manifest <value>] [-a <value>] [-v <value>]

FLAGS
  -a, --application=<value>  application to stop
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   application version ID to stop
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  stop a Raindrop application

EXAMPLES
  $ raindrop build stop .
  Stop a Raindrop application.
```

_See code: [src/commands/build/stop.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stop.ts)_

## `raindrop build stripe dashboard`

Open Stripe dashboard

```
USAGE
  $ raindrop build stripe dashboard [--mode test|live] [--open] [-o text|json]

FLAGS
  -o, --output=<option>  [default: text] output format
                         <options: text|json>
      --mode=<option>    [default: test] Stripe mode: test (default) or live
                         <options: test|live>
      --[no-]open        open URL in browser

DESCRIPTION
  Open Stripe dashboard

EXAMPLES
  $ raindrop build stripe dashboard

  $ raindrop build stripe dashboard --no-open

  $ raindrop build stripe dashboard --mode live
```

_See code: [src/commands/build/stripe/dashboard.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/dashboard.ts)_

## `raindrop build stripe onboard`

Complete Stripe Connect onboarding

```
USAGE
  $ raindrop build stripe onboard [--mode test|live] [--open] [-o text|json]

FLAGS
  -o, --output=<option>  [default: text] output format
                         <options: text|json>
      --mode=<option>    [default: test] Stripe mode: test (default) or live
                         <options: test|live>
      --[no-]open        open URL in browser

DESCRIPTION
  Complete Stripe Connect onboarding

EXAMPLES
  $ raindrop build stripe onboard

  $ raindrop build stripe onboard --no-open

  $ raindrop build stripe onboard --mode live
```

_See code: [src/commands/build/stripe/onboard.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/onboard.ts)_

## `raindrop build stripe setup`

Create a Stripe seller account (non-interactive)

```
USAGE
  $ raindrop build stripe setup --country <value> --business-type individual|company [--admin-email <value>] [--mode
    test|live] [-o text|json|table]

FLAGS
  -o, --output=<option>         [default: text] output format
                                <options: text|json|table>
      --admin-email=<value>     email address for the account admin (defaults to user email from config)
      --business-type=<option>  (required) business type: individual (freelancer/sole proprietor) or company
                                (LLC/corporation)
                                <options: individual|company>
      --country=<value>         (required) country code for the account (e.g., US, CA, GB)
      --mode=<option>           [default: test] Stripe mode: test (default) or live
                                <options: test|live>

DESCRIPTION
  Create a Stripe seller account (non-interactive)

EXAMPLES
  $ raindrop build stripe setup --country US --business-type individual

  $ raindrop build stripe setup --country US --business-type company

  $ raindrop build stripe setup --country US --business-type individual --admin-email admin@example.com
```

_See code: [src/commands/build/stripe/setup.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/setup.ts)_

## `raindrop build stripe start`

Interactive wizard for humans to set up Stripe (prefer `stripe setup` for automation)

```
USAGE
  $ raindrop build stripe start [-r <value>] [--manifest <value>] [--mode test|live]

FLAGS
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>  [default: raindrop.manifest] project manifest
      --mode=<option>     Stripe mode: test or live (overrides manifest setting)
                          <options: test|live>

DESCRIPTION
  Interactive wizard for humans to set up Stripe (prefer `stripe setup` for automation)

EXAMPLES
  $ raindrop build stripe start

  $ raindrop build stripe start --mode live
```

_See code: [src/commands/build/stripe/start.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/start.ts)_

## `raindrop build stripe status`

Show Stripe seller account status

```
USAGE
  $ raindrop build stripe status [--mode test|live] [-o text|json|table]

FLAGS
  -o, --output=<option>  [default: text] output format
                         <options: text|json|table>
      --mode=<option>    [default: test] Stripe mode: test (default) or live
                         <options: test|live>

DESCRIPTION
  Show Stripe seller account status

EXAMPLES
  $ raindrop build stripe status

  $ raindrop build stripe status --output json

  $ raindrop build stripe status --mode live
```

_See code: [src/commands/build/stripe/status.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/status.ts)_

## `raindrop build stripe subscription create`

Create a subscription product

```
USAGE
  $ raindrop build stripe subscription create --price <value> [-r <value>] [--manifest <value>] [--currency <value>] [--interval
    day|week|month|year] [--interval-count <value>] [-o text|json]

FLAGS
  -o, --output=<option>         [default: text] output format
                                <options: text|json>
  -r, --root=<value>            [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --currency=<value>        [default: usd] currency code
      --interval=<option>       [default: month] billing interval
                                <options: day|week|month|year>
      --interval-count=<value>  [default: 1] number of intervals between billings (e.g., 3 for quarterly with
                                interval=month)
      --manifest=<value>        [default: raindrop.manifest] project manifest
      --price=<value>           (required) price in dollars (e.g., "29.99" for $29.99)

DESCRIPTION
  Create a subscription product

EXAMPLES
  $ raindrop build stripe subscription create --price 29.99

  $ raindrop build stripe subscription create --price 9.99 --interval week

  $ raindrop build stripe subscription create --price 99.99 --interval year

  $ raindrop build stripe subscription create --price 29.99 --interval month --interval-count 3
```

_See code: [src/commands/build/stripe/subscription/create.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/subscription/create.ts)_

## `raindrop build stripe subscription get`

Show the current subscription product

```
USAGE
  $ raindrop build stripe subscription get [-r <value>] [--manifest <value>] [-o text|json]

FLAGS
  -o, --output=<option>   [default: text] output format
                          <options: text|json>
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --manifest=<value>  [default: raindrop.manifest] project manifest

DESCRIPTION
  Show the current subscription product

EXAMPLES
  $ raindrop build stripe subscription get

  $ raindrop build stripe subscription get --output json
```

_See code: [src/commands/build/stripe/subscription/get.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/subscription/get.ts)_

## `raindrop build stripe subscription update`

Update subscription pricing

```
USAGE
  $ raindrop build stripe subscription update --price <value> [-r <value>] [--manifest <value>] [--currency <value>] [--interval
    day|week|month|year] [--interval-count <value>] [-o text|json]

FLAGS
  -o, --output=<option>         [default: text] output format
                                <options: text|json>
  -r, --root=<value>            [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --currency=<value>        [default: usd] currency code
      --interval=<option>       [default: month] billing interval
                                <options: day|week|month|year>
      --interval-count=<value>  [default: 1] number of intervals between billings (e.g., 3 for quarterly with
                                interval=month)
      --manifest=<value>        [default: raindrop.manifest] project manifest
      --price=<value>           (required) new price in dollars (e.g., "39.99" for $39.99)

DESCRIPTION
  Update subscription pricing

EXAMPLES
  $ raindrop build stripe subscription update --price 39.99

  $ raindrop build stripe subscription update --price 19.99 --interval week

  $ raindrop build stripe subscription update --price 119.99 --interval year

  $ raindrop build stripe subscription update --price 29.99 --interval month --interval-count 3
```

_See code: [src/commands/build/stripe/subscription/update.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/stripe/subscription/update.ts)_

## `raindrop build tools check`

validate a LiquidMetal.AI raindrop.manifest

```
USAGE
  $ raindrop build tools check [-r <value>] [-m <value>]

FLAGS
  -m, --manifest=<value>  [default: raindrop.manifest] project manifest
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory

DESCRIPTION
  validate a LiquidMetal.AI raindrop.manifest

EXAMPLES
  $ raindrop build tools check
```

_See code: [src/commands/build/tools/check.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/tools/check.ts)_

## `raindrop build tools fmt`

format a LiquidMetal.AI raindrop.manifest

```
USAGE
  $ raindrop build tools fmt [-r <value>] [-m <value>]

FLAGS
  -m, --manifest=<value>  [default: raindrop.manifest] project manifest
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory

DESCRIPTION
  format a LiquidMetal.AI raindrop.manifest

EXAMPLES
  $ raindrop build tools fmt
```

_See code: [src/commands/build/tools/fmt.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/tools/fmt.ts)_

## `raindrop build unsandbox`

mark a version as unsandboxed in the Raindrop catalog

```
USAGE
  $ raindrop build unsandbox [--manifest <value>] [-v <value>]

FLAGS
  -v, --version-id=<value>  application version ID to unsandbox
      --manifest=<value>    [default: raindrop.manifest] project manifest

DESCRIPTION
  mark a version as unsandboxed in the Raindrop catalog

EXAMPLES
  $ raindrop build unsandbox
```

_See code: [src/commands/build/unsandbox.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/unsandbox.ts)_

## `raindrop build upload`

build and validate a LiquidMetal.AI project

```
USAGE
  $ raindrop build upload -v <value> [-r <value>] [--manifest <value>] [-o <value>]

FLAGS
  -o, --output=<value>      [default: dist] output directory
  -r, --root=<value>        [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>  (required) version ID
      --manifest=<value>    [default: raindrop.manifest] project manifest

DESCRIPTION
  build and validate a LiquidMetal.AI project

EXAMPLES
  $ raindrop build upload
```

_See code: [src/commands/build/upload.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/upload.ts)_

## `raindrop build validate`

build and validate a LiquidMetal.AI project

```
USAGE
  $ raindrop build validate [-r <value>] [-m <value>] [-o <value>] [--quick]

FLAGS
  -m, --manifest=<value>  [default: raindrop.manifest] project manifest
  -o, --output=<value>    [default: dist] output directory
  -r, --root=<value>      [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --quick             Skip dependency checks and run basic validation only

DESCRIPTION
  build and validate a LiquidMetal.AI project

EXAMPLES
  $ raindrop build validate

  $ raindrop build validate --quick  # Skip dependency checks
```

_See code: [src/commands/build/validate.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/validate.ts)_

## `raindrop build workos delete`

Delete all WorkOS integration state from the organization

```
USAGE
  $ raindrop build workos delete [-f]

FLAGS
  -f, --force  Skip confirmation prompt

DESCRIPTION
  Delete all WorkOS integration state from the organization

EXAMPLES
  $ raindrop build workos delete
  Delete all WorkOS state with confirmation prompt
  $ raindrop build workos delete --force
  Delete all WorkOS state without confirmation prompt
```

_See code: [src/commands/build/workos/delete.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/workos/delete.ts)_

## `raindrop build workos env attach [ENVNAME]`

Attach a WorkOS environment to an application version

```
USAGE
  $ raindrop build workos env attach [ENVNAME] [-r <value>] [--manifest <value>] [-a <value>] [-v <value>] [-o
  text|json]

ARGUMENTS
  ENVNAME  WorkOS environment name (defaults to application name)

FLAGS
  -a, --application=<value>  application name
  -o, --output=<option>      [default: text] output format
                             <options: text|json>
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   version ID
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  Attach a WorkOS environment to an application version

EXAMPLES
  $ raindrop build workos env attach
  Attach environment with same name as application
  $ raindrop build workos env attach my-env
  Attach specific environment
  $ raindrop build workos env attach my-env --application my-app --version-id abc123
  Attach to specific application and version
```

_See code: [src/commands/build/workos/env/attach.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/workos/env/attach.ts)_

## `raindrop build workos env attached`

Show the WorkOS environment attached to the current application

```
USAGE
  $ raindrop build workos env attached [-r <value>] [--manifest <value>] [-a <value>] [-v <value>] [-o text|json|table]

FLAGS
  -a, --application=<value>  application name
  -o, --output=<option>      [default: text] output format
                             <options: text|json|table>
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   version ID
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  Show the WorkOS environment attached to the current application

EXAMPLES
  $ raindrop build workos env attached
  Show attached WorkOS environment for current application
  $ raindrop build workos env attached --output json
  Get JSON output
```

_See code: [src/commands/build/workos/env/attached.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/workos/env/attached.ts)_

## `raindrop build workos env create [ENVNAME]`

Create a WorkOS environment for a Raindrop app

```
USAGE
  $ raindrop build workos env create [ENVNAME] [-r <value>] [--manifest <value>] [-a <value>] [-v <value>] [--name <value>]
    [--no-attach] [-o text|json]

ARGUMENTS
  ENVNAME  environment name (defaults to application name)

FLAGS
  -a, --application=<value>  application name
  -o, --output=<option>      [default: text] output format
                             <options: text|json>
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   version ID
      --manifest=<value>     [default: raindrop.manifest] project manifest
      --name=<value>         primary organization name (optional if cached)
      --no-attach            do not attach environment to current version after creation

DESCRIPTION
  Create a WorkOS environment for a Raindrop app

EXAMPLES
  $ raindrop build workos env create
  Create WorkOS environment with application name and auto-attach
  $ raindrop build workos env create my-env
  Create environment with specific name and auto-attach
  $ raindrop build workos env create my-env --noattach
  Create environment without attaching to current version
  $ raindrop build workos env create my-env --name "Acme Inc"
  Create with explicit organization name
  $ raindrop build workos env create my-env --output json
  Get JSON output
```

_See code: [src/commands/build/workos/env/create.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/workos/env/create.ts)_

## `raindrop build workos env delete APPNAME`

Remove WorkOS environment configuration (does NOT delete from WorkOS)

```
USAGE
  $ raindrop build workos env delete APPNAME [-o text|json]

ARGUMENTS
  APPNAME  raindrop app name

FLAGS
  -o, --output=<option>  [default: text] output format
                         <options: text|json>

DESCRIPTION
  Remove WorkOS environment configuration (does NOT delete from WorkOS)

EXAMPLES
  $ raindrop build workos env delete my-app
  Remove WorkOS environment configuration for app
  $ raindrop build workos env delete my-app --output json
  Get JSON output
```

_See code: [src/commands/build/workos/env/delete.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/workos/env/delete.ts)_

## `raindrop build workos env detach`

Detach WorkOS environment from an application version

```
USAGE
  $ raindrop build workos env detach [-r <value>] [--manifest <value>] [-a <value>] [-v <value>] [-o text|json]

FLAGS
  -a, --application=<value>  application name
  -o, --output=<option>      [default: text] output format
                             <options: text|json>
  -r, --root=<value>         [default: /Users/ian/liquidmetal/packages/raindrop] root directory
  -v, --version-id=<value>   version ID
      --manifest=<value>     [default: raindrop.manifest] project manifest

DESCRIPTION
  Detach WorkOS environment from an application version

EXAMPLES
  $ raindrop build workos env detach
  Detach WorkOS environment from current version
  $ raindrop build workos env detach --application my-app --version-id abc123
  Detach from specific application and version
```

_See code: [src/commands/build/workos/env/detach.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/workos/env/detach.ts)_

## `raindrop build workos env dev-login`

Authenticate with WorkOS for local development. Outputs JWT to stdout (all other messages go to stderr).

```
USAGE
  $ raindrop build workos env dev-login [--root <value>] [--manifest <value>] [-a <value>] [-v <value>] [--client-id <value>]
    [-p <value>] [--host <value>] [-r] [-f] [--session-file <value>]

FLAGS
  -a, --application=<value>   application name
  -f, --force                 force interactive login even if session exists
  -p, --port=<value>          [default: 3002] port to listen on
  -r, --refresh               only attempt token refresh (fail if no session or refresh fails)
  -v, --version-id=<value>    version ID
      --client-id=<value>     WorkOS client ID (fetched from attached environment if not provided)
      --host=<value>          [default: localhost] host to bind to
      --manifest=<value>      [default: raindrop.manifest] project manifest
      --root=<value>          [default: /Users/ian/liquidmetal/packages/raindrop] root directory
      --session-file=<value>  path to session file

DESCRIPTION
  Authenticate with WorkOS for local development. Outputs JWT to stdout (all other messages go to stderr).

EXAMPLES
  $ raindrop build workos env dev-login
  Authenticate and print JWT to stdout (auto-refreshes if session exists)
  $ raindrop build workos env dev-login --client-id client_xxx
  Authenticate with explicit client ID
  $ raindrop build workos env dev-login --port 8080
  Use custom port for OAuth callback
  $ raindrop build workos env dev-login --refresh
  Only attempt token refresh (fail if no session or refresh fails)
  $ raindrop build workos env dev-login --force
  Force interactive login even if session exists
  # Use JWT directly in a curl command:
  curl -H "Authorization: Bearer $(raindrop build workos env dev-login)" https://your-api.lmapp.run/endpoint
```

_See code: [src/commands/build/workos/env/dev-login.ts](https://github.com/liquidmetal-ai/liquidmetal/blob/v0.20.0/src/commands/build/workos/env/de