# Complete reference (/cli/reference)





Every command on one page, generated from the CLI itself. Start at the
[overview](/cli/commands) to browse; this page is for searching and for tools.

Append `.mdx` to any page for its raw Markdown —
[`/cli/reference.mdx`](/cli/reference.mdx) is this page as plain text. The docs
are also published as [`/llms.txt`](/llms.txt) and
[`/llms-full.txt`](/llms-full.txt).

## Global options [#global-options]

These apply to every command, and may be written before or after it.

| Option                 | Description                                                                       |
| ---------------------- | --------------------------------------------------------------------------------- |
| `-P, --profile <name>` | Profile to use (env: STUDIO\_PROFILE).                                            |
| `--endpoint <url>`     | Studio deployment to talk to (env: STUDIO\_ENDPOINT).                             |
| `-w, --workspace <id>` | Workspace to target (env: STUDIO\_WORKSPACE).                                     |
| `--output <format>`    | Output format for this command. Accepted values: `table`, `json`, `yaml`, `text`. |

## studio login [#studio-login]

Sign in through the browser and store the login for the profile

```bash
studio login [options]
```

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                           |
  | ------------------------ | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--method <method>`      | No       | Credential to obtain: oauth requires OAuth support; api-key creates a permanent key through pairing (auto-selects when omitted). Accepted values: `oauth`, `api-key`. |
  | `--no-browser`           | No       | Print the approval URL without opening it (either login method).                                                                                                      |
  | `--read-only`            | No       | Ask only for permission to read, never to change anything.                                                                                                            |
  | `--callback-port <port>` | No       | Pin the local port the browser returns to.                                                                                                                            |
  | `-y, --yes`              | No       | Overwrite an existing API-key profile without prompting.                                                                                                              |
</CommandTable>

## studio logout [#studio-logout]

Sign out and remove the profile's stored login

```bash
studio logout [options]
```

**Options**

<CommandTable>
  | Option  | Required | Description                                          |
  | ------- | -------- | ---------------------------------------------------- |
  | `--all` | No       | Remove the profile entirely, including its settings. |
</CommandTable>

## studio whoami [#studio-whoami]

Show the resolved profile, where each setting came from, and whether it works

```bash
studio whoami [options]
```

**Options**

<CommandTable>
  | Option        | Required | Description                                              |
  | ------------- | -------- | -------------------------------------------------------- |
  | `--no-verify` | No       | Skip the API check and only print the resolved settings. |
</CommandTable>

## studio configure [#studio-configure]

Set a profile's endpoint, default workspace, or output format

```bash
studio configure [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                            |
  | ----------------------- | -------- | ------------------------------------------------------ |
  | `--set-endpoint <url>`  | No       | Studio deployment to talk to.                          |
  | `--set-workspace <id>`  | No       | Default workspace for workspace-scoped commands.       |
  | `--set-output <format>` | No       | Default output format (table \| json \| yaml \| text). |
  | `--unset <key...>`      | No       | Remove settings (endpoint, workspace, output).         |
</CommandTable>

## studio update [#studio-update]

Update this global CLI installation to the newest release on its channel

```bash
studio update [options]
```

**Options**

<CommandTable>
  | Option                        | Required | Description                                                                              |
  | ----------------------------- | -------- | ---------------------------------------------------------------------------------------- |
  | `--package-manager <manager>` | No       | Package manager that installed this copy. Accepted values: `npm`, `pnpm`, `bun`, `yarn`. |
</CommandTable>

## studio chat [#studio-chat]

Ask Studio and print the reply

```bash
studio chat <message> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description        |
  | --------- | -------- | ------------------ |
  | `message` | Yes      | What to ask Studio |
</CommandTable>

**Options**

<CommandTable>
  | Option                    | Required | Description                             |
  | ------------------------- | -------- | --------------------------------------- |
  | `-c, --conversation <id>` | No       | Continue the conversation with this ID. |
</CommandTable>

## studio profiles [#studio-profiles]

Also spelled `studio profile`.

### studio profiles list [#studio-profiles-list]

List configured profiles

```bash
studio profiles list
```

### studio profiles add [#studio-profiles-add]

Add a workspace profile that shares the active stored login

```bash
studio profiles add <name> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description              |
  | -------- | -------- | ------------------------ |
  | `name`   | Yes      | Name for the new profile |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                |
  | ---------------------- | -------- | ---------------------------------------------------------- |
  | `-w, --workspace <id>` | No       | Existing workspace to use; omit for an interactive picker. |
</CommandTable>

## studio telemetry [#studio-telemetry]

### studio telemetry status [#studio-telemetry-status]

Show whether usage reporting is on, and why not if it is off

```bash
studio telemetry status
```

### studio telemetry enable [#studio-telemetry-enable]

Turn usage reporting on for this machine

```bash
studio telemetry enable
```

### studio telemetry disable [#studio-telemetry-disable]

Turn usage reporting off for this machine

```bash
studio telemetry disable
```

## studio audit-logs [#studio-audit-logs]

Also spelled `studio audit-log`.

### studio audit-logs get [#studio-audit-logs-get]

Get Audit Log (OAuth login or personal API key required)

```bash
studio audit-logs get <auditLogId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `auditLogId` | Yes      | Audit-log entry identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                 |
  | ------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--organization <value>` | No       | Organization ID; defaults to your only organization, and is required when your account belongs to more than one (OAuth login or personal API key required). |
</CommandTable>

### studio audit-logs list [#studio-audit-logs-list]

List Audit Logs (OAuth login or personal API key required)

```bash
studio audit-logs list [options]
```

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                                                                                                                                                   |
  | ------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--action <value>`        | No       | Filter by exact action name.                                                                                                                                                                                                                  |
  | `--resource-type <value>` | No       | Filter by resource type. Accepts a comma-separated set; members are trimmed and deduplicated, and member order affects neither the result nor the cursor.                                                                                     |
  | `--resource-id <value>`   | No       | Filter by exact resource identifier.                                                                                                                                                                                                          |
  | `--start-date <value>`    | No       | Only include runs started at or after this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant.  |
  | `--end-date <value>`      | No       | Only include runs started at or before this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant. |
  | `--include-departed`      | No       | Include actions by users who have left the organization.                                                                                                                                                                                      |
  | `--no-include-departed`   | No       | Send --include-departed as false.                                                                                                                                                                                                             |
  | `--limit <n>`             | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                                                |
  | `--cursor <value>`        | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                                                       |
  | `--organization <value>`  | No       | Organization ID; defaults to your only organization, and is required when your account belongs to more than one (OAuth login or personal API key required).                                                                                   |
  | `--actor-email <value>`   | No       | Filter by actor email address.                                                                                                                                                                                                                |
  | `--all-workspaces`        | No       | Do not filter to the configured workspace (OAuth login or personal API key required for account-wide access).                                                                                                                                 |
</CommandTable>

## studio billing [#studio-billing]

### studio billing status [#studio-billing-status]

Show billing status and current-period credit usage (credits and storage require an OAuth login or personal API key)

```bash
studio billing status [options]
```

**Options**

<CommandTable>
  | Option             | Required | Description                                                                                                   |
  | ------------------ | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `--all-workspaces` | No       | Do not filter to the configured workspace (OAuth login or personal API key required for account-wide access). |
</CommandTable>

### studio billing logs [#studio-billing-logs]

List credit usage events (an OAuth login or personal API key reports only your events; a workspace API key reports every member's in aggregate, unattributed)

```bash
studio billing logs [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                                |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--source <value>`     | No       | Filter by usage source; studio-chat combines Copilot and workspace chat. Accepted values: `workflow`, `wand`, `studio-chat`, `mcp_copilot`, `mothership_block`, `knowledge-base`, `voice-input`, `enrichment`, `voice-output`, `api-tool`. |
  | `--period <value>`     | No       | Billing period. Accepted values: `1d`, `7d`, `30d`, `all`, `custom`.                                                                                                                                                                       |
  | `--start-date <value>` | No       | Custom period start (ISO 8601).                                                                                                                                                                                                            |
  | `--end-date <value>`   | No       | Custom period end (ISO 8601).                                                                                                                                                                                                              |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                                             |
  | `--cursor <value>`     | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                                                    |
  | `--all-workspaces`     | No       | Do not filter to the configured workspace (OAuth login or personal API key required for account-wide access).                                                                                                                              |
</CommandTable>

## studio blocks [#studio-blocks]

### studio blocks get [#studio-blocks-get]

Get Block

```bash
studio blocks get <blockId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                                                                              |
  | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------ |
  | `blockId` | Yes      | Block type identifier. An unversioned base type resolves to the newest version, and the response echoes the resolved id. |
</CommandTable>

### studio blocks list [#studio-blocks-list]

List Blocks

```bash
studio blocks list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                  |
  | ---------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--search <value>`     | No       | Case-insensitive substring match against the block id, name, and description.                                                                                                                |
  | `--category <value>`   | No       | Restrict to one toolbar category. Accepted values: `blocks`, `tools`, `triggers`.                                                                                                            |
  | `--capability <value>` | No       | Restrict to blocks that can start a workflow — the `triggers` category, blocks declaring `triggerAllowed`, and blocks with trigger-mode fields. Accepted values: `trigger`.                  |
  | `--source <value>`     | No       | Restrict to built-in blocks or this workspace's deployed custom blocks. Accepted values: `builtin`, `custom`.                                                                                |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `id`, `name`, `category`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                              |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                 |
</CommandTable>

## studio chat-deployments [#studio-chat-deployments]

### studio chat-deployments list [#studio-chat-deployments-list]

List Chat Deployments

```bash
studio chat-deployments list [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                             |
  | ----------------------- | -------- | --------------------------------------------------------------------------------------- |
  | `--workflow-id <value>` | No       | Restrict to deployments of one workflow.                                                |
  | `--is-active`           | No       | Restrict to active or inactive deployments.                                             |
  | `--no-is-active`        | No       | Send --is-active as false.                                                              |
  | `--sort-by <value>`     | No       | Field used to sort the result. Accepted values: `identifier`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>`  | No       | Sort direction. Accepted values: `asc`, `desc`.                                         |
  | `--limit <n>`           | No       | Maximum items to return (0 for everything). Defaults to `0`.                            |
</CommandTable>

## studio connector-types [#studio-connector-types]

### studio connector-types list [#studio-connector-types-list]

List Connector Types

```bash
studio connector-types list [options]
```

**Options**

<CommandTable>
  | Option             | Required | Description                                                  |
  | ------------------ | -------- | ------------------------------------------------------------ |
  | `--search <value>` | No       | Case-insensitive substring match against the connector name. |
</CommandTable>

## studio credentials [#studio-credentials]

Also spelled `studio credential`.

### studio credentials delete [#studio-credentials-delete]

Disconnect Credential (OAuth login or personal API key required)

```bash
studio credentials delete <credentialId> [options]
```

**Arguments**

<CommandTable>
  | Argument       | Required | Description               |
  | -------------- | -------- | ------------------------- |
  | `credentialId` | Yes      | Credential to disconnect. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio credentials providers list [#studio-credentials-providers-list]

List Credential Providers

```bash
studio credentials providers list [options]
```

**Options**

<CommandTable>
  | Option             | Required | Description                                                            |
  | ------------------ | -------- | ---------------------------------------------------------------------- |
  | `--search <value>` | No       | Case-insensitive substring match against the credential provider name. |
</CommandTable>

### studio credentials list [#studio-credentials-list]

List Credentials

```bash
studio credentials list [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                              |
  | ----------------------- | -------- | ---------------------------------------------------------------------------------------- |
  | `--type <value>`        | No       | Restrict results to this credential type. Accepted values: `oauth`, `service_account`.   |
  | `--provider-id <value>` | No       | Restrict results to credentials for this integration provider.                           |
  | `--search <value>`      | No       | Case-insensitive substring match against the credential display name.                    |
  | `--sort-by <value>`     | No       | Field used to sort the result. Accepted values: `displayName`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>`  | No       | Sort direction. Accepted values: `asc`, `desc`.                                          |
  | `--limit <n>`           | No       | Maximum items to return (0 for everything). Defaults to `0`.                             |
</CommandTable>

### studio credentials update [#studio-credentials-update]

Update Credential (OAuth login or personal API key required)

```bash
studio credentials update <credentialId> [options]
```

**Arguments**

<CommandTable>
  | Argument       | Required | Description           |
  | -------------- | -------- | --------------------- |
  | `credentialId` | Yes      | Credential to update. |
</CommandTable>

**Options**

<CommandTable>
  | Option                           | Required | Description                                                                                                                                  |
  | -------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--display-name <value>`         | No       | New name shown for the credential in Studio.                                                                                                 |
  | `--description <value>`          | No       | New credential description. Send null to clear the stored one. (--description null sends the word, not JSON null).                           |
  | `--service-account-json <value>` | No       | Write-only Google service-account JSON key.                                                                                                  |
  | `--api-token <value>`            | No       | Write-only provider API token.                                                                                                               |
  | `--domain <value>`               | No       | Provider account domain.                                                                                                                     |
  | `--atlassian-product <value>`    | No       | Atlassian product to verify; defaults to Jira on create and preserves the saved product on reconnect. Accepted values: `jira`, `confluence`. |
  | `--signing-secret <value>`       | No       | Write-only webhook signing secret.                                                                                                           |
  | `--bot-token <value>`            | No       | Write-only bot token.                                                                                                                        |
  | `--client-id <value>`            | No       | OAuth client identifier.                                                                                                                     |
  | `--client-secret <value>`        | No       | Write-only OAuth client secret.                                                                                                              |
  | `--certificate-id <value>`       | No       | Provider certificate mapping identifier.                                                                                                     |
  | `--org-id <value>`               | No       | Provider organization ID.                                                                                                                    |
  | `--data-center <value>`          | No       | Provider data center.                                                                                                                        |
  | `--auth-method <value>`          | No       | Provider authentication method.                                                                                                              |
  | `--private-key <value>`          | No       | Write-only PEM private key.                                                                                                                  |
  | `--username <value>`             | No       | Provider run-as username.                                                                                                                    |
  | `--name <displayName>`           | No       | Alias for --display-name.                                                                                                                    |
</CommandTable>

### studio credentials create [#studio-credentials-create]

Create a service-account credential using its discovered provider schema (OAuth login or personal API key required)

```bash
studio credentials create <providerId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                                         |
  | ------------ | -------- | --------------------------------------------------- |
  | `providerId` | Yes      | Service-account provider to create a credential for |
</CommandTable>

**Options**

<CommandTable>
  | Option                        | Required | Description                                                           |
  | ----------------------------- | -------- | --------------------------------------------------------------------- |
  | `--name <displayName>`        | Yes      | Name shown for the credential in Studio.                              |
  | `--credentials <json\|@file>` | Yes      | Provider credentials as JSON (or @path / @- to read a file or stdin). |
  | `--description <description>` | No       | Optional credential description.                                      |
  | `--id <credentialId>`         | No       | Client-generated credential ID when provider discovery requires it.   |
</CommandTable>

### studio credentials connect [#studio-credentials-connect]

Create a short-lived link for connecting an OAuth provider (OAuth login or personal API key required)

```bash
studio credentials connect <providerId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description               |
  | ------------ | -------- | ------------------------- |
  | `providerId` | Yes      | OAuth provider to connect |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                  |
  | ---------------------- | -------- | -------------------------------------------- |
  | `--name <displayName>` | Yes      | Name shown for the new credential in Studio. |
</CommandTable>

### studio credentials reconnect [#studio-credentials-reconnect]

Create a short-lived link for reconnecting an OAuth credential (OAuth login or personal API key required)

```bash
studio credentials reconnect <credentialId>
```

**Arguments**

<CommandTable>
  | Argument       | Required | Description                               |
  | -------------- | -------- | ----------------------------------------- |
  | `credentialId` | Yes      | Existing OAuth credential to re-authorize |
</CommandTable>

## studio custom-tools [#studio-custom-tools]

Also spelled `studio custom-tool`.

### studio custom-tools create [#studio-custom-tools-create]

Create Custom Tool

```bash
studio custom-tools create [options]
```

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                             |
  | ------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--title <value>`        | Yes      | Display title, unique within the workspace.                                                                                                                             |
  | `--schema <json\|@file>` | Yes      | OpenAI function schema: \{"type":"function","function":\{"name":"...","parameters":\{"type":"object","properties":\{}}}} (JSON, or @path / @- to read a file or stdin). |
  | `--code <value>`         | Yes      | Tool implementation executed in the sandboxed function runtime.                                                                                                         |
</CommandTable>

### studio custom-tools delete [#studio-custom-tools-delete]

Delete Custom Tool

```bash
studio custom-tools delete <customToolId> [options]
```

**Arguments**

<CommandTable>
  | Argument       | Required | Description                    |
  | -------------- | -------- | ------------------------------ |
  | `customToolId` | Yes      | Unique custom tool identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio custom-tools get [#studio-custom-tools-get]

Get Custom Tool

```bash
studio custom-tools get <customToolId>
```

**Arguments**

<CommandTable>
  | Argument       | Required | Description                    |
  | -------------- | -------- | ------------------------------ |
  | `customToolId` | Yes      | Unique custom tool identifier. |
</CommandTable>

### studio custom-tools list [#studio-custom-tools-list]

List Custom Tools

```bash
studio custom-tools list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                        |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------- |
  | `--search <value>`     | No       | Case-insensitive substring match against the tool title.                           |
  | `--sort-by <value>`    | No       | Field used to sort the result. Accepted values: `title`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                    |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                       |
</CommandTable>

### studio custom-tools update [#studio-custom-tools-update]

Update Custom Tool

```bash
studio custom-tools update <customToolId> [options]
```

**Arguments**

<CommandTable>
  | Argument       | Required | Description                    |
  | -------------- | -------- | ------------------------------ |
  | `customToolId` | Yes      | Unique custom tool identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                             |
  | ------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--title <value>`        | No       | New display title for the tool.                                                                                                                                         |
  | `--schema <json\|@file>` | No       | OpenAI function schema: \{"type":"function","function":\{"name":"...","parameters":\{"type":"object","properties":\{}}}} (JSON, or @path / @- to read a file or stdin). |
  | `--code <value>`         | No       | Replacement tool implementation.                                                                                                                                        |
</CommandTable>

## studio files [#studio-files]

Also spelled `studio file`.

### studio files batch-delete [#studio-files-batch-delete]

Delete several files at once

```bash
studio files batch-delete [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                                            |
  | ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------- |
  | `--file-ids <value...>` | Yes      | File identifiers to update. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `-y, --yes`             | Yes      | Confirm this operation.                                                                                                |
</CommandTable>

### studio files create [#studio-files-create]

Create File

```bash
studio files create [options]
```

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                                                                                |
  | ------------------------ | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`         | Yes      | File name, including its extension. Path separators and dot segments are rejected.                                                                                                                                                                                         |
  | `--content-type <value>` | No       | MIME type. When omitted, it is inferred from the file extension.                                                                                                                                                                                                           |
  | `--folder <value>`       | No       | Folder path as shown in the app; the leading / is optional.                                                                                                                                                                                                                |
  | `--content <value>`      | No       | Initial file content. Omit or send an empty string for a zero-byte file. The 70,000,000-character bound guards the JSON envelope; the decoded bytes must be at most 50 MiB, and a longer base64 payload is rejected with `413`. Use an upload session for anything larger. |
  | `--encoding <value>`     | No       | Encoding of the content field. Accepted values: `utf-8`, `base64`.                                                                                                                                                                                                         |
</CommandTable>

### studio files folders create [#studio-files-folders-create]

Create a file folder at a path

```bash
studio files folders create <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio files folders delete [#studio-files-folders-delete]

Delete Folder

```bash
studio files folders delete <path> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

**Options**

<CommandTable>
  | Option        | Required | Description                            |
  | ------------- | -------- | -------------------------------------- |
  | `--recursive` | No       | Delete the folder and its descendants. |
  | `-y, --yes`   | Yes      | Confirm this operation.                |
</CommandTable>

### studio files folders list [#studio-files-folders-list]

List folders

```bash
studio files folders list [options]
```

Also available as `studio files folders ls`.

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                                                                          |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--parent <value>`     | No       | Direct parent folder path.                                                                                                                                                                                                                                                           |
  | `--search <value>`     | No       | Case-insensitive substring match against the folder name.                                                                                                                                                                                                                            |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`.                                                                                 |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                                                                                                      |
  | `--scope <value>`      | No       | Which lifecycle set to list: `active` (default) returns live folders only; `archived` returns folders a recursive delete soft-deleted, which is how a caller finds a path to hand to the folder restore. Authorization is identical for both. Accepted values: `active`, `archived`. |
  | `--recursive <value>`  | No       | Whether parentPath includes every descendant instead of direct children only. Accepted values: `true`, `1`, `yes`, `on`, `y`, `enabled`, `false`, `0`, `no`, `off`, `n`, `disabled`.                                                                                                 |
  | `--depth <value>`      | No       | Deepest level below parentPath to include when recursive is true.                                                                                                                                                                                                                    |
</CommandTable>

### studio files folders move [#studio-files-folders-move]

Rename or move a file folder

```bash
studio files folders move <path> <destination>
```

Also available as `studio files folders mv`.

**Arguments**

<CommandTable>
  | Argument      | Required | Description                                                |
  | ------------- | -------- | ---------------------------------------------------------- |
  | `path`        | Yes      | Folder path as shown in the app; the leading / is optional |
  | `destination` | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio files folders restore [#studio-files-folders-restore]

Restore an archived file folder

```bash
studio files folders restore <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio files delete [#studio-files-delete]

Delete File

```bash
studio files delete <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio files edit [#studio-files-edit]

Apply one exact or anchor-based edit to a text file

```bash
studio files edit <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--edit <json\|@file>` | Yes      | One edit object: \{"mode":"search\_replace","search":"old","content":"new","replaceAll":false}, \{"mode":"replace\_between","beforeAnchor":"start line","afterAnchor":"end line","content":"new"}, \{"mode":"insert\_after","anchor":"line","content":"new"}, or \{"mode":"delete\_between","startAnchor":"first line deleted","endAnchor":"ending line kept"}. Anchored modes also accept occurrence starting at 1 (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio files describe [#studio-files-describe]

Show file metadata and sharing status

```bash
studio files describe <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                                                                                                                                                                                                                                                                                        |
  | ----------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--scope <value>` | No       | Which lifecycle set to read from: `active` (default) resolves live files only and returns `404` for a file a delete soft-deleted; `archived` also resolves soft-deleted files, so metadata stays readable before the file is restored. Authorization is identical for both. Accepted values: `active`, `archived`. |
</CommandTable>

### studio files share get [#studio-files-share-get]

Show a file’s share settings

```bash
studio files share get <fileId>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

### studio files share set [#studio-files-share-set]

Enable or disable sharing for a file (OAuth login or personal API key required)

```bash
studio files share set <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                        | Required | Description                                                                                                                                                                                                                                                                               |
  | ----------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--is-active <true\|false>`   | Yes      | Whether the share should resolve. Disabling preserves the token and the whole access configuration, so re-enabling restores the share as it was; enabling rewrites the credentials the resulting mode does not use. Accepted values: `true`, `false`.                                     |
  | `--auth-type <value>`         | No       | How access to the share is gated. The stored mode is kept when omitted. Enabling `public` clears the stored password and empties `allowedEmails`; `password` empties `allowedEmails`; `email` and `sso` clear the stored password. Accepted values: `public`, `password`, `email`, `sso`. |
  | `--password <value>`          | No       | Password for a password-gated share. Kept when omitted; enabling `password` with neither a supplied nor a stored password is a 400.                                                                                                                                                       |
  | `--allowed-emails <value...>` | No       | Allowed addresses or `@domain` patterns for email and SSO shares. Kept when omitted; enabling `email` or `sso` with an empty resulting list is a 400. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                          |
</CommandTable>

### studio files list [#studio-files-list]

List Files

```bash
studio files list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                                                                                                  |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--folder <value>`     | No       | Folder path as shown in the app; the leading / is optional.                                                                                                                                                                                                                                                  |
  | `--recursive`          | No       | Include subfolders in the folder filter. Defaults to true when searching and false otherwise. Ignored without a folder filter.                                                                                                                                                                               |
  | `--no-recursive`       | No       | Send --recursive as false.                                                                                                                                                                                                                                                                                   |
  | `--scope <value>`      | No       | Which lifecycle set to list: `active` (default) for live files, `archived` for files a delete soft-deleted. `folderPath` resolves against active folders only, so pairing it with `scope=archived` returns an empty page when the containing folder was archived too. Accepted values: `active`, `archived`. |
  | `--search <value>`     | No       | Case-insensitive substring match against the file name.                                                                                                                                                                                                                                                      |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `size`, `uploadedAt`, `updatedAt`.                                                                                                |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                                                                                                                              |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                                                                                                                                 |
</CommandTable>

### studio files move [#studio-files-move]

Move files into another folder

```bash
studio files move [options]
```

Also available as `studio files mv`.

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                                            |
  | ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------- |
  | `--file-ids <value...>` | Yes      | File identifiers to update. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--to <value>`          | No       | Destination folder path; omit for root.                                                                                |
</CommandTable>

### studio files read [#studio-files-read]

Read a file’s text content

```bash
studio files read <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                | Required | Description                                                                                          |
  | --------------------- | -------- | ---------------------------------------------------------------------------------------------------- |
  | `--max-bytes <value>` | No       | Optional ceiling on the source bytes fed to the parser, lowering but never raising the server limit. |
  | `--offset <value>`    | No       | First line to return, 1-based. Absent starts at the first line.                                      |
  | `--limit <value>`     | No       | How many lines to return from `offset`. Absent reads to the end.                                     |
</CommandTable>

### studio files rename [#studio-files-rename]

Rename a file

```bash
studio files rename <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option           | Required | Description                             |
  | ---------------- | -------- | --------------------------------------- |
  | `--name <value>` | Yes      | New file name, including its extension. |
</CommandTable>

### studio files restore [#studio-files-restore]

Restore an archived file

```bash
studio files restore <fileId>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

### studio files search [#studio-files-search]

Search File Content

```bash
studio files search [options]
```

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                                                                                   |
  | ------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--query <value>`         | Yes      | Regular expression, or exact text when `mode` is `exact`.                                                                                                                     |
  | `--mode <value>`          | No       | How `query` is read. Accepted values: `exact`, `regex`.                                                                                                                       |
  | `--max-results <value>`   | No       | Maximum matching lines to return.                                                                                                                                             |
  | `--folder <value...>`     | No       | Folders to search, by path as shown in the app; omit to search the whole workspace (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--include-subfolders`    | No       | Whether each folder scope includes nested folders; on by default.                                                                                                             |
  | `--no-include-subfolders` | No       | Send --include-subfolders as false.                                                                                                                                           |
</CommandTable>

### studio files unzip [#studio-files-unzip]

Unzip an archive into a new folder beside it

```bash
studio files unzip <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio files set-content [#studio-files-set-content]

Replace a file’s contents

```bash
studio files set-content <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description      |
  | -------- | -------- | ---------------- |
  | `fileId` | Yes      | File identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option               | Required | Description                                                                                                                                                                                       |
  | -------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--content <value>`  | Yes      | Complete replacement content for the file. The 70,000,000-character bound guards the JSON envelope; the decoded bytes must be at most 50 MiB, and a longer base64 payload is rejected with `413`. |
  | `--encoding <value>` | No       | Content encoding. Accepted values: `utf-8`, `base64`.                                                                                                                                             |
</CommandTable>

### studio files upload [#studio-files-upload]

Upload a file to the workspace

```bash
studio files upload <path> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description          |
  | -------- | -------- | -------------------- |
  | `path`   | Yes      | Local file to upload |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                                   |
  | ----------------- | -------- | ------------------------------------------------------------- |
  | `--folder <path>` | No       | Folder path as shown in the app; defaults to the root folder. |
  | `--name <name>`   | No       | Store it under a different name.                              |
</CommandTable>

### studio files get [#studio-files-get]

Get a file’s content

```bash
studio files get <fileId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                |
  | -------- | -------- | -------------------------- |
  | `fileId` | Yes      | File whose content to read |
</CommandTable>

**Options**

<CommandTable>
  | Option                     | Required | Description                                   |
  | -------------------------- | -------- | --------------------------------------------- |
  | `-o, --output-file <path>` | No       | Write content to a file instead of stdout.    |
  | `--force`                  | No       | Overwrite --output-file if it already exists. |
</CommandTable>

### studio files ls [#studio-files-ls]

List file resources and child folders together

```bash
studio files ls [path] [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | No       | Folder path to list; defaults to the root folder |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                                           |
  | ----------------- | -------- | --------------------------------------------------------------------- |
  | `--search <text>` | No       | Filter folders and resources by name.                                 |
  | `--limit <n>`     | No       | Maximum combined items to return (0 for everything). Defaults to `0`. |
</CommandTable>

### studio files mkdir [#studio-files-mkdir]

Create a file directory at a path

```bash
studio files mkdir <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | Yes      | Folder path to create; the leading / is optional |
</CommandTable>

## studio knowledge [#studio-knowledge]

Also spelled `studio kb`.

### studio knowledge from-workspace-files create [#studio-knowledge-from-workspace-files-create]

Index files the workspace already stores (OAuth login or personal API key required)

```bash
studio knowledge from-workspace-files create <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option              | Required | Description                                                                                                                      |
  | ------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------- |
  | `--file <value...>` | Yes      | Workspace file ID or key (repeatable) (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
</CommandTable>

### studio knowledge tags save [#studio-knowledge-tags-save]

Declare the tag definitions a knowledge base needs (OAuth login or personal API key required)

```bash
studio knowledge tags save <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                        | Required | Description                                                                                                                        |
  | ----------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
  | `--definitions <json\|@file>` | Yes      | Tag definitions: \[\{"tagSlot":"tag1","displayName":"category","fieldType":"text"}] (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio knowledge tags create [#studio-knowledge-tags-create]

Create Tag (OAuth login or personal API key required)

```bash
studio knowledge tags create <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                                                                                                                                                            |
  | ------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--display-name <value>` | Yes      | Name tag filters and document reads use for this tag.                                                                                                                                                                                                                                                                                                  |
  | `--field-type <value>`   | No       | Value type stored in the slot; it decides which slots are usable and which filter operators apply. Defaults to text, so a number, date, or boolean slot must name its type here. Slot capacity per type: text 7, number 5, date 2, boolean 3. Accepted values: `text`, `number`, `date`, `boolean`.                                                    |
  | `--tag-slot <value>`     | No       | Slot to store the tag in. Omit to take the next free slot for the field type; a slot that does not belong to the field type, or one already in use, is rejected. Accepted values: `tag1`, `tag2`, `tag3`, `tag4`, `tag5`, `tag6`, `tag7`, `number1`, `number2`, `number3`, `number4`, `number5`, `date1`, `date2`, `boolean1`, `boolean2`, `boolean3`. |
</CommandTable>

### studio knowledge tags delete [#studio-knowledge-tags-delete]

Delete Tag (OAuth login or personal API key required)

```bash
studio knowledge tags delete <knowledgeBaseId> <tagId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
  | `tagId`           | Yes      | Unique tag definition identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio knowledge tags cleanup [#studio-knowledge-tags-cleanup]

Remove tag definitions no document still uses (OAuth login or personal API key required)

```bash
studio knowledge tags cleanup <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option        | Required | Description                                                                                                                                                                                                                                                                 |
  | ------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--unused`    | No       | Whether to remove only the tag definitions no document in the knowledge base still carries a value for. Defaults to true. Pass --no-unused to delete every definition on the knowledge base, which also clears its slot on every document and chunk and is not recoverable. |
  | `--no-unused` | No       | Send --unused as false.                                                                                                                                                                                                                                                     |
  | `-y, --yes`   | Yes      | Confirm this operation.                                                                                                                                                                                                                                                     |
</CommandTable>

### studio knowledge tags next-slot [#studio-knowledge-tags-next-slot]

Show which tag slot a create would take for a field type (OAuth login or personal API key required)

```bash
studio knowledge tags next-slot <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                           |
  | ---------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--field-type <value>` | Yes      | Value type stored in the slot; it decides which slots are usable and which filter operators apply. Slot capacity per type: text 7, number 5, date 2, boolean 3. Accepted values: `text`, `number`, `date`, `boolean`. |
</CommandTable>

### studio knowledge tags list [#studio-knowledge-tags-list]

List Tags

```bash
studio knowledge tags list <knowledgeBaseId>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

### studio knowledge tags usage [#studio-knowledge-tags-usage]

Show how many documents and chunks carry each tag (OAuth login or personal API key required)

```bash
studio knowledge tags usage <knowledgeBaseId>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

### studio knowledge tags update [#studio-knowledge-tags-update]

Update Tag (OAuth login or personal API key required)

```bash
studio knowledge tags update <knowledgeBaseId> <tagId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
  | `tagId`           | Yes      | Unique tag definition identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                       |
  | ------------------------ | -------- | --------------------------------------------------------------------------------- |
  | `--display-name <value>` | No       | New tag display name.                                                             |
  | `--field-type <value>`   | No       | New value type for the tag. Accepted values: `text`, `number`, `date`, `boolean`. |
</CommandTable>

### studio knowledge chunks batch-update [#studio-knowledge-chunks-batch-update]

Enable, disable, or delete many chunks at once (OAuth login or personal API key required)

```bash
studio knowledge chunks batch-update <knowledgeBaseId> <documentId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                | Required | Description                                                                                                                                                                                                                |
  | --------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--operation <value>` | Yes      | What to do with the selected chunks. Accepted values: `enable`, `disable`, `delete`.                                                                                                                                       |
  | `--chunk <value...>`  | Yes      | Chunks to operate on, by identifier. An id naming no chunk in the document is reported in errors and does not fail the request. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `-y, --yes`           | Yes      | Confirm this operation.                                                                                                                                                                                                    |
</CommandTable>

### studio knowledge chunks create [#studio-knowledge-chunks-create]

Create Chunk (OAuth login or personal API key required)

```bash
studio knowledge chunks create <knowledgeBaseId> <documentId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option              | Required | Description                                                                     |
  | ------------------- | -------- | ------------------------------------------------------------------------------- |
  | `--content <value>` | Yes      | Text to embed. It is embedded on write, so the chunk is searchable immediately. |
  | `--enabled`         | No       | Whether the new chunk participates in search.                                   |
  | `--no-enabled`      | No       | Send --enabled as false.                                                        |
</CommandTable>

### studio knowledge chunks delete [#studio-knowledge-chunks-delete]

Delete Chunk (OAuth login or personal API key required)

```bash
studio knowledge chunks delete <knowledgeBaseId> <documentId> <chunkId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
  | `chunkId`         | Yes      | Unique chunk identifier.              |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio knowledge chunks get [#studio-knowledge-chunks-get]

Get Chunk (OAuth login or personal API key required)

```bash
studio knowledge chunks get <knowledgeBaseId> <documentId> <chunkId>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
  | `chunkId`         | Yes      | Unique chunk identifier.              |
</CommandTable>

### studio knowledge chunks list [#studio-knowledge-chunks-list]

List Chunks (OAuth login or personal API key required)

```bash
studio knowledge chunks list <knowledgeBaseId> <documentId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------- |
  | `--search <value>`     | No       | Case-insensitive substring match against chunk content.                                              |
  | `--enabled <value>`    | No       | Restrict to enabled or disabled chunks. `all` returns both. Accepted values: `true`, `false`, `all`. |
  | `--sort-by <value>`    | No       | Field used to sort the result. Accepted values: `chunkIndex`, `tokenCount`, `enabled`.               |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `100`.                                       |
  | `--cursor <value>`     | No       | Continue from nextCursor returned by a previous result.                                              |
</CommandTable>

### studio knowledge chunks update [#studio-knowledge-chunks-update]

Update Chunk (OAuth login or personal API key required)

```bash
studio knowledge chunks update <knowledgeBaseId> <documentId> <chunkId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
  | `chunkId`         | Yes      | Unique chunk identifier.              |
</CommandTable>

**Options**

<CommandTable>
  | Option              | Required | Description                                                                                      |
  | ------------------- | -------- | ------------------------------------------------------------------------------------------------ |
  | `--content <value>` | No       | Replacement text. Changing it re-embeds the chunk and re-derives its token and character counts. |
  | `--enabled`         | No       | Whether the chunk participates in search. Disabling keeps it indexed.                            |
  | `--no-enabled`      | No       | Send --enabled as false.                                                                         |
</CommandTable>

### studio knowledge documents batch-update [#studio-knowledge-documents-batch-update]

Enable or disable every matching document (OAuth login or personal API key required)

```bash
studio knowledge documents batch-update <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                     | Required | Description                                                                                                                    |
  | -------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------ |
  | `--operation <value>`      | Yes      | Whether the selected documents become enabled or disabled for search. Accepted values: `enable`, `disable`.                    |
  | `--document <value...>`    | No       | Documents to update, by identifier. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--select-all`             | No       | Apply to every document in the knowledge base.                                                                                 |
  | `--enabled-filter <value>` | No       | With `selectAll`, restrict the update to documents in this state. Accepted values: `all`, `enabled`, `disabled`.               |
</CommandTable>

### studio knowledge documents delete [#studio-knowledge-documents-delete]

Delete Document

```bash
studio knowledge documents delete <knowledgeBaseId> <documentId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio knowledge documents get [#studio-knowledge-documents-get]

Get Document

```bash
studio knowledge documents get <knowledgeBaseId> <documentId>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
</CommandTable>

### studio knowledge documents list [#studio-knowledge-documents-list]

List Documents

```bash
studio knowledge documents list <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                     | Required | Description                                                                                                                                                                                                                                                                                                                |
  | -------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--limit <n>`              | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                                                                                                                             |
  | `--search <value>`         | No       | Case-insensitive substring match against the document filename.                                                                                                                                                                                                                                                            |
  | `--enabled-filter <value>` | No       | Filter by whether documents are enabled for search. Accepted values: `all`, `enabled`, `disabled`.                                                                                                                                                                                                                         |
  | `--sort-by <value>`        | No       | Field used to sort the result. Sorting by `filename` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `filename`, `fileSize`, `tokenCount`, `chunkCount`, `uploadedAt`, `processingStatus`, `enabled`.                                                    |
  | `--sort-order <value>`     | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                                                                                                                                            |
  | `--cursor <value>`         | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                                                                                                                                    |
  | `--tag-filters <value>`    | No       | A JSON-encoded array of at most 10 tag filters, using the same display-name shape as knowledge search: `[&#123;"tagName":"category","operator":"eq","value":"billing"&#125;]`. Every filter must hold, including two that name the same tag. A name that is not defined in this knowledge base is rejected, never ignored. |
</CommandTable>

### studio knowledge documents update [#studio-knowledge-documents-update]

Update Document (OAuth login or personal API key required)

```bash
studio knowledge documents update <knowledgeBaseId> <documentId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                           |
  | ----------------- | -------- | ------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.     |
  | `documentId`      | Yes      | Unique knowledge document identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option               | Required | Description                                                                                                                                                                |
  | -------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--filename <value>` | No       | New filename for the document.                                                                                                                                             |
  | `--enabled`          | No       | Whether the document participates in search. Disabling keeps it indexed.                                                                                                   |
  | `--no-enabled`       | No       | Send --enabled as false.                                                                                                                                                   |
  | `--tag1 <value>`     | No       | New value for tag slot 1.                                                                                                                                                  |
  | `--tag2 <value>`     | No       | New value for tag slot 2.                                                                                                                                                  |
  | `--tag3 <value>`     | No       | New value for tag slot 3.                                                                                                                                                  |
  | `--tag4 <value>`     | No       | New value for tag slot 4.                                                                                                                                                  |
  | `--tag5 <value>`     | No       | New value for tag slot 5.                                                                                                                                                  |
  | `--tag6 <value>`     | No       | New value for tag slot 6.                                                                                                                                                  |
  | `--tag7 <value>`     | No       | New value for tag slot 7.                                                                                                                                                  |
  | `--number1 <value>`  | No       | New value for number tag slot 1.                                                                                                                                           |
  | `--number2 <value>`  | No       | New value for number tag slot 2.                                                                                                                                           |
  | `--number3 <value>`  | No       | New value for number tag slot 3.                                                                                                                                           |
  | `--number4 <value>`  | No       | New value for number tag slot 4.                                                                                                                                           |
  | `--number5 <value>`  | No       | New value for number tag slot 5.                                                                                                                                           |
  | `--date1 <value>`    | No       | New value for date tag slot 1, formatted YYYY-MM-DD.                                                                                                                       |
  | `--date2 <value>`    | No       | New value for date tag slot 2, formatted YYYY-MM-DD.                                                                                                                       |
  | `--boolean1`         | No       | New value for boolean tag slot 1.                                                                                                                                          |
  | `--no-boolean1`      | No       | Send --boolean1 as false.                                                                                                                                                  |
  | `--boolean2`         | No       | New value for boolean tag slot 2.                                                                                                                                          |
  | `--no-boolean2`      | No       | Send --boolean2 as false.                                                                                                                                                  |
  | `--boolean3`         | No       | New value for boolean tag slot 3.                                                                                                                                          |
  | `--no-boolean3`      | No       | Send --boolean3 as false.                                                                                                                                                  |
  | `--retry-processing` | No       | Requeue a failed or stuck document for processing. Send it alone — no other field may accompany it — and it answers with a queue acknowledgement rather than the document. |
</CommandTable>

### studio knowledge documents upload [#studio-knowledge-documents-upload]

Upload a document to a knowledge base

```bash
studio knowledge documents upload <knowledgeBaseId> <path> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                   |
  | ----------------- | -------- | ----------------------------- |
  | `knowledgeBaseId` | Yes      | Knowledge base to upload into |
  | `path`            | Yes      | Local file to upload          |
</CommandTable>

**Options**

<CommandTable>
  | Option             | Required | Description                                                                                |
  | ------------------ | -------- | ------------------------------------------------------------------------------------------ |
  | `--name <name>`    | No       | Store it under a different name.                                                           |
  | `--tag <value...>` | No       | Document tags, in tag1 through tag7 order.                                                 |
  | `--recipe <name>`  | No       | Document processing recipe. Accepted values: `default`, `plain`, `markdown`, `code`.       |
  | `--lang <code>`    | No       | Document language tag: hyphen-separated letter and digit subtags, for example en or en-US. |
</CommandTable>

### studio knowledge create [#studio-knowledge-create]

Create Knowledge Base

```bash
studio knowledge create [options]
```

**Options**

<CommandTable>
  | Option                            | Required | Description                                                                                               |
  | --------------------------------- | -------- | --------------------------------------------------------------------------------------------------------- |
  | `--name <value>`                  | Yes      | Human-readable knowledge base name.                                                                       |
  | `--description <value>`           | No       | Optional knowledge base description.                                                                      |
  | `--chunking-config <json\|@file>` | No       | Chunking configuration; defaults are applied when omitted. (JSON, or @path / @- to read a file or stdin). |
  | `--folder <value>`                | No       | Folder path as shown in the app; the leading / is optional.                                               |
</CommandTable>

### studio knowledge connectors create [#studio-knowledge-connectors-create]

Create Knowledge Connector (OAuth login or personal API key required)

```bash
studio knowledge connectors create <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                            | Required | Description                                                                                                     |
  | --------------------------------- | -------- | --------------------------------------------------------------------------------------------------------------- |
  | `--connector-type <value>`        | Yes      | Registered connector type.                                                                                      |
  | `--credential-id <value>`         | No       | OAuth credential identifier for connectors that require OAuth.                                                  |
  | `--api-key <value>`               | No       | Write-only API key for connectors that use API-key authentication.                                              |
  | `--source-config <json\|@file>`   | Yes      | Connector-specific source selection and filtering configuration. (JSON, or @path / @- to read a file or stdin). |
  | `--sync-interval-minutes <value>` | No       | Scheduled synchronization interval in minutes; zero disables scheduling.                                        |
</CommandTable>

### studio knowledge connectors delete [#studio-knowledge-connectors-delete]

Delete Knowledge Connector (OAuth login or personal API key required)

```bash
studio knowledge connectors delete <knowledgeBaseId> <connectorId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                             |
  | ----------------- | -------- | --------------------------------------- |
  | `knowledgeBaseId` | Yes      | Knowledge base that owns the connector. |
  | `connectorId`     | Yes      | Connector selected for the operation.   |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                                   |
  | ----------------------- | -------- | ------------------------------------------------------------- |
  | `--delete-documents`    | No       | Also permanently delete documents produced by this connector. |
  | `--no-delete-documents` | No       | Send --delete-documents as false.                             |
  | `-y, --yes`             | Yes      | Confirm this operation.                                       |
</CommandTable>

### studio knowledge connectors get [#studio-knowledge-connectors-get]

Get Knowledge Connector (OAuth login or personal API key required)

```bash
studio knowledge connectors get <knowledgeBaseId> <connectorId>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                             |
  | ----------------- | -------- | --------------------------------------- |
  | `knowledgeBaseId` | Yes      | Knowledge base that owns the connector. |
  | `connectorId`     | Yes      | Connector selected for the operation.   |
</CommandTable>

### studio knowledge connectors documents list [#studio-knowledge-connectors-documents-list]

List Knowledge Connector Documents (OAuth login or personal API key required)

```bash
studio knowledge connectors documents list <knowledgeBaseId> <connectorId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                             |
  | ----------------- | -------- | --------------------------------------- |
  | `knowledgeBaseId` | Yes      | Knowledge base that owns the connector. |
  | `connectorId`     | Yes      | Connector selected for the operation.   |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                                    |
  | ----------------------- | -------- | -------------------------------------------------------------- |
  | `--include-excluded`    | No       | Include documents explicitly excluded by a user.               |
  | `--no-include-excluded` | No       | Send --include-excluded as false.                              |
  | `--limit <n>`           | No       | Maximum items to return (0 for everything). Defaults to `100`. |
  | `--cursor <value>`      | No       | Continue from nextCursor returned by a previous result.        |
</CommandTable>

### studio knowledge connectors documents update [#studio-knowledge-connectors-documents-update]

Update Knowledge Connector Documents (OAuth login or personal API key required)

```bash
studio knowledge connectors documents update <knowledgeBaseId> <connectorId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                             |
  | ----------------- | -------- | --------------------------------------- |
  | `knowledgeBaseId` | Yes      | Knowledge base that owns the connector. |
  | `connectorId`     | Yes      | Connector selected for the operation.   |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                                                          |
  | ----------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------ |
  | `--operation <value>`   | Yes      | Whether to restore or exclude the selected documents. Accepted values: `restore`, `exclude`.                                         |
  | `--document <value...>` | Yes      | Connector document identifiers to update. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
</CommandTable>

### studio knowledge connectors list [#studio-knowledge-connectors-list]

List Knowledge Connectors (OAuth login or personal API key required)

```bash
studio knowledge connectors list <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------ |
  | `--sort-by <value>`    | No       | Field used to sort the result. Accepted values: `connectorType`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                            |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                               |
</CommandTable>

### studio knowledge connectors sync [#studio-knowledge-connectors-sync]

Queue a knowledge connector synchronization (OAuth login or personal API key required)

```bash
studio knowledge connectors sync <knowledgeBaseId> <connectorId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                             |
  | ----------------- | -------- | --------------------------------------- |
  | `knowledgeBaseId` | Yes      | Knowledge base that owns the connector. |
  | `connectorId`     | Yes      | Connector selected for the operation.   |
</CommandTable>

**Options**

<CommandTable>
  | Option           | Required | Description                                              |
  | ---------------- | -------- | -------------------------------------------------------- |
  | `--rehydrate`    | No       | Re-fetch and re-index every existing connector document. |
  | `--no-rehydrate` | No       | Send --rehydrate as false.                               |
</CommandTable>

### studio knowledge connectors update [#studio-knowledge-connectors-update]

Update Knowledge Connector (OAuth login or personal API key required)

```bash
studio knowledge connectors update <knowledgeBaseId> <connectorId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                             |
  | ----------------- | -------- | --------------------------------------- |
  | `knowledgeBaseId` | Yes      | Knowledge base that owns the connector. |
  | `connectorId`     | Yes      | Connector selected for the operation.   |
</CommandTable>

**Options**

<CommandTable>
  | Option                            | Required | Description                                                                                                                                                                                     |
  | --------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--source-config <json\|@file>`   | No       | Replacement source selection and filtering configuration. Updating a runnable connector queues synchronization; paused connectors remain paused. (JSON, or @path / @- to read a file or stdin). |
  | `--sync-interval-minutes <value>` | No       | New scheduled synchronization interval in minutes.                                                                                                                                              |
  | `--status <value>`                | No       | New connector state. Accepted values: `active`, `paused`.                                                                                                                                       |
</CommandTable>

### studio knowledge folders create [#studio-knowledge-folders-create]

Create a knowledge folder at a path

```bash
studio knowledge folders create <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio knowledge folders delete [#studio-knowledge-folders-delete]

Delete Folder

```bash
studio knowledge folders delete <path> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

**Options**

<CommandTable>
  | Option        | Required | Description                            |
  | ------------- | -------- | -------------------------------------- |
  | `--recursive` | No       | Delete the folder and its descendants. |
  | `-y, --yes`   | Yes      | Confirm this operation.                |
</CommandTable>

### studio knowledge folders list [#studio-knowledge-folders-list]

List knowledge folders

```bash
studio knowledge folders list [options]
```

Also available as `studio knowledge folders ls`.

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--parent <value>`     | No       | Direct parent folder path.                                                                                                                                                                           |
  | `--search <value>`     | No       | Case-insensitive substring match against the folder name.                                                                                                                                            |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
</CommandTable>

### studio knowledge folders move [#studio-knowledge-folders-move]

Rename or move a knowledge folder

```bash
studio knowledge folders move <path> <destination>
```

Also available as `studio knowledge folders mv`.

**Arguments**

<CommandTable>
  | Argument      | Required | Description                                                |
  | ------------- | -------- | ---------------------------------------------------------- |
  | `path`        | Yes      | Folder path as shown in the app; the leading / is optional |
  | `destination` | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio knowledge delete [#studio-knowledge-delete]

Delete Knowledge Base

```bash
studio knowledge delete <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio knowledge get [#studio-knowledge-get]

Get Knowledge Base

```bash
studio knowledge get <knowledgeBaseId>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

### studio knowledge list [#studio-knowledge-list]

List Knowledge Bases

```bash
studio knowledge list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--scope <value>`      | No       | Lifecycle scope: active or archived knowledge bases. Use Restore Knowledge Base to recover archived entries. Folder paths resolve only active folders, so filtering by an archived folder returns no matches. Accepted values: `active`, `archived`. |
  | `--folder <value>`     | No       | Folder path as shown in the app; the leading / is optional.                                                                                                                                                                                          |
  | `--search <value>`     | No       | Case-insensitive substring match against the resource name.                                                                                                                                                                                          |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`.                                                 |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                                                                         |
</CommandTable>

### studio knowledge restore [#studio-knowledge-restore]

Restore an archived knowledge base

```bash
studio knowledge restore <knowledgeBaseId>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

### studio knowledge search [#studio-knowledge-search]

Search Knowledge

```bash
studio knowledge search [options]
```

**Options**

<CommandTable>
  | Option                           | Required | Description                                                                                                                                                                                                                                                                   |
  | -------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--kb <value...>`                | Yes      | Knowledge base ID (repeatable) (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                     |
  | `--query <value>`                | No       | Text to search for.                                                                                                                                                                                                                                                           |
  | `--top-k <value>`                | No       | Maximum number of search results to return. Must be a whole number between 1 and 100.                                                                                                                                                                                         |
  | `--tag-filters <json\|@file>`    | No       | Tag filters as \[\{"tagName":"...","operator":"...","value":"..."}] (JSON, or @path / @- to read a file or stdin).                                                                                                                                                            |
  | `--search-mode <value>`          | No       | Search algorithm. Accepted values: `vector`, `hybrid`.                                                                                                                                                                                                                        |
  | `--reranker-enabled`             | No       | Re-order retrieved chunks with a reranking model before truncating to `topK`. Ignored for a tag-only search, and billed as an additional search unit. Reranking is best-effort — a provider failure falls back to vector ordering, so check `rerankerStatus` on the response. |
  | `--no-reranker-enabled`          | No       | Send --reranker-enabled as false.                                                                                                                                                                                                                                             |
  | `--reranker-model <value>`       | No       | Reranking model to use when `rerankerEnabled` is true. Defaults to `rerank-v4.0-fast`. Accepted values: `rerank-v4.0-pro`, `rerank-v4.0-fast`, `rerank-v3.5`.                                                                                                                 |
  | `--reranker-input-count <value>` | No       | How many candidate chunks to retrieve before reranking. Defaults to four times `topK`, capped at 100. A larger pool costs more retrieval work but gives the reranker more to choose from.                                                                                     |
</CommandTable>

### studio knowledge update [#studio-knowledge-update]

Update Knowledge Base

```bash
studio knowledge update <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                       |
  | ----------------- | -------- | --------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                            | Required | Description                                                                         |
  | --------------------------------- | -------- | ----------------------------------------------------------------------------------- |
  | `--name <value>`                  | No       | New knowledge base name.                                                            |
  | `--description <value>`           | No       | New knowledge base description.                                                     |
  | `--chunking-config <json\|@file>` | No       | New document chunking configuration. (JSON, or @path / @- to read a file or stdin). |
  | `--folder <value>`                | No       | Folder path as shown in the app; the leading / is optional.                         |
</CommandTable>

### studio knowledge mv [#studio-knowledge-mv]

Move a knowledge base to a folder

```bash
studio knowledge mv <knowledgeBaseId> <folder>
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description                                                |
  | ----------------- | -------- | ---------------------------------------------------------- |
  | `knowledgeBaseId` | Yes      | Unique knowledge base identifier.                          |
  | `folder`          | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio knowledge export [#studio-knowledge-export]

Export a knowledge base as a .simkb.zip bundle

```bash
studio knowledge export <knowledgeBaseId> [options]
```

**Arguments**

<CommandTable>
  | Argument          | Required | Description              |
  | ----------------- | -------- | ------------------------ |
  | `knowledgeBaseId` | Yes      | Knowledge base to export |
</CommandTable>

**Options**

<CommandTable>
  | Option                     | Required | Description                                                                                           |
  | -------------------------- | -------- | ----------------------------------------------------------------------------------------------------- |
  | `-o, --output-file <path>` | No       | Write the bundle to this path instead of the name the server suggests; pass - to stream it to stdout. |
  | `--force`                  | No       | Overwrite --output-file if it already exists.                                                         |
  | `--no-vectors`             | No       | Leave chunk vectors out of the bundle, so an import re-embeds every chunk.                            |
</CommandTable>

### studio knowledge ls [#studio-knowledge-ls]

List knowledge resources and child folders together

```bash
studio knowledge ls [path] [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | No       | Folder path to list; defaults to the root folder |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                                           |
  | ----------------- | -------- | --------------------------------------------------------------------- |
  | `--search <text>` | No       | Filter folders and resources by name.                                 |
  | `--limit <n>`     | No       | Maximum combined items to return (0 for everything). Defaults to `0`. |
</CommandTable>

### studio knowledge mkdir [#studio-knowledge-mkdir]

Create a knowledge directory at a path

```bash
studio knowledge mkdir <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | Yes      | Folder path to create; the leading / is optional |
</CommandTable>

## studio logs [#studio-logs]

Also spelled `studio log`.

### studio logs get [#studio-logs-get]

Show run diagnostics

```bash
studio logs get <runId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                     |
  | -------- | -------- | ------------------------------- |
  | `runId`  | Yes      | Unique workflow run identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option    | Required | Description                                                               |
  | --------- | -------- | ------------------------------------------------------------------------- |
  | `--trace` | No       | Show expanded trace spans with inputs, outputs, errors, timing, and cost. |
</CommandTable>

### studio logs stats [#studio-logs-stats]

Summarize run counts, failures and latency over a window

```bash
studio logs stats [options]
```

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                                                                                                                                                                                 |
  | ------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <value...>`   | No       | Comma-separated workflow identifiers to include. At most 200 entries. An empty entry is rejected. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                |
  | `--folder <value...>`     | No       | Folder path as shown in the app; the leading / is optional (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                       |
  | `--trigger <value...>`    | No       | Comma-separated trigger types to include. An empty entry is rejected. The vocabulary is open, so an unrecognized member selects no runs; the literal `all` disables this filter. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--level <value>`         | No       | Severity level to include. Accepted values: `info`, `error`.                                                                                                                                                                                                                |
  | `--start-date <value>`    | No       | Only include runs started at or after this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant.                                |
  | `--end-date <value>`      | No       | Only include runs started at or before this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant.                               |
  | `--segment-count <value>` | No       | Number of time buckets, up to 500. Exactly this many are returned, each at least one minute wide. Short windows extend past the requested end and include empty trailing buckets.                                                                                           |
</CommandTable>

### studio logs list [#studio-logs-list]

List Logs

```bash
studio logs list [options]
```

**Options**

<CommandTable>
  | Option                      | Required | Description                                                                                                                                                                                                                                                                                                                                                            |
  | --------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <value...>`     | No       | Comma-separated workflow identifiers to include. An empty entry is rejected. At most 200 entries. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                                           |
  | `--trigger <value...>`      | No       | Comma-separated, lowercase trigger types or webhook provider IDs. Matching is exact and case-sensitive; unknown values select no runs. An empty entry is rejected. The sentinel `all` disables this filter, even when listed with other values. At most 100 entries. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).        |
  | `--level <value>`           | No       | Severity level to include. Accepted values: `info`, `error`.                                                                                                                                                                                                                                                                                                           |
  | `--start-date <value>`      | No       | Only include runs started at or after this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant.                                                                                                                           |
  | `--end-date <value>`        | No       | Only include runs started at or before this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant.                                                                                                                          |
  | `--min-duration-ms <value>` | No       | Minimum total execution duration in milliseconds. Whole milliseconds from 0 to 2147483647; the stored duration is a 32-bit integer, so a fractional or out-of-range bound is rejected.                                                                                                                                                                                 |
  | `--max-duration-ms <value>` | No       | Maximum total execution duration in milliseconds. Whole milliseconds from 0 to 2147483647; the stored duration is a 32-bit integer, so a fractional or out-of-range bound is rejected.                                                                                                                                                                                 |
  | `--min-cost <value>`        | No       | Minimum execution cost in USD, from 0 to 1000000. A run is never charged a negative amount, so a negative bound is rejected rather than treated as a filter that matches every run.                                                                                                                                                                                    |
  | `--max-cost <value>`        | No       | Maximum execution cost in USD, from 0 to 1000000. A run is never charged a negative amount, so a negative bound is rejected rather than treated as a filter that matches every run.                                                                                                                                                                                    |
  | `--model <value>`           | No       | AI model used during execution.                                                                                                                                                                                                                                                                                                                                        |
  | `--details <value>`         | No       | Response detail level; full is requested by default to name each run’s workflow. Accepted values: `basic`, `full`.                                                                                                                                                                                                                                                     |
  | `--include-trace-spans`     | No       | Include trace spans in JSON or YAML output (implies full detail).                                                                                                                                                                                                                                                                                                      |
  | `--include-final-output`    | No       | Include final output in JSON or YAML output (implies full detail).                                                                                                                                                                                                                                                                                                     |
  | `--limit <n>`               | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                                                                                                                                                                         |
  | `--cursor <value>`          | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                                                                                                                                                                                |
  | `--status <value>`          | No       | Comma-separated execution statuses to include, from `pending` \| `running` \| `paused` \| `redacting` \| `completed` \| `failed` \| `cancelled`. An empty entry is rejected. ANDed with `level`, which reports severity rather than lifecycle.                                                                                                                         |
  | `--workflow-name <value>`   | No       | Case-insensitive substring match against the run's workflow name. Runs whose workflow has been deleted match nothing, because the name is no longer joinable.                                                                                                                                                                                                          |
  | `--include-job-runs`        | No       | Include Chat and Studio-agent jobs alongside workflow runs. Jobs use `kind: "job"` and have no workflow or cost ledger. Workflow, folder, model, or status filters exclude jobs. This option is valid only when sorting by `startedAt`.                                                                                                                                |
  | `--no-include-job-runs`     | No       | Send --include-job-runs as false.                                                                                                                                                                                                                                                                                                                                      |
  | `--run-id <value>`          | No       | Exact run identifier to match.                                                                                                                                                                                                                                                                                                                                         |
  | `--sort-by <value>`         | No       | Field used to sort the result. `durationMs` and `cost` are null until a run settles; those runs sort before recorded values in ascending order and after them in descending order. Only `startedAt` can order Chat and Studio-agent job runs, so any other value is rejected when job runs are included. Accepted values: `startedAt`, `durationMs`, `cost`, `status`. |
  | `--sort-order <value>`      | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                                                                                                                                                                                        |
  | `--folder <value...>`       | No       | Folder path as shown in the app; the leading / is optional (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                                                                                  |
</CommandTable>

### studio logs follow [#studio-logs-follow]

Watch runs as they arrive, printing each new run once

```bash
studio logs follow [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                  |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------------------------ |
  | `--workflow <id>`      | No       | Only follow runs of this workflow (repeatable).                                                              |
  | `--folder <path>`      | No       | Only follow runs of workflows in this folder (repeatable).                                                   |
  | `--trigger <type>`     | No       | Only follow runs with this trigger type (repeatable).                                                        |
  | `--level <level>`      | No       | Only follow runs at this severity. Accepted values: `info`, `error`.                                         |
  | `--details <level>`    | No       | Response detail level; full names each run’s workflow. Accepted values: `basic`, `full`. Defaults to `full`. |
  | `-n, --lines <count>`  | No       | Recent runs to print before watching. Defaults to `10`.                                                      |
  | `--interval <seconds>` | No       | Seconds between polls. Defaults to `3`.                                                                      |
</CommandTable>

## studio mcp-servers [#studio-mcp-servers]

Also spelled `studio mcp-server`.

### studio mcp-servers create [#studio-mcp-servers-create]

Create MCP Server

```bash
studio mcp-servers create [options]
```

**Options**

<CommandTable>
  | Option                          | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                             |
  | ------------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`                | Yes      | Server display name.                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | `--description <value>`         | No       | Optional server description.                                                                                                                                                                                                                                                                                                                                                                                                            |
  | `--transport <value>`           | No       | Transport protocol. Defaults to `streamable-http` on creation. Accepted values: `streamable-http`.                                                                                                                                                                                                                                                                                                                                      |
  | `--url <value>`                 | Yes      | Absolute HTTP or HTTPS endpoint URL without `&#123;&#123;ENV_VAR&#125;&#125;` references. It determines server identity and is immutable: delete and recreate the server to change endpoints.                                                                                                                                                                                                                                           |
  | `--auth-type <value>`           | No       | Authentication method. When omitted, and no `headers` are sent, registration probes the endpoint once to classify it, falling back to `headers` when the probe fails or the server does not advertise OAuth. A server publishing RFC 9728 metadata is therefore stored as `oauth`, and headers configured afterwards will not authenticate — send this field explicitly to pin the method. Accepted values: `none`, `headers`, `oauth`. |
  | `--headers <json\|@file>`       | No       | Write-only request headers sent to the server. Replaced wholesale rather than merged on update: sending this field drops every stored header it does not repeat. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                                                         |
  | `--timeout <value>`             | No       | Per-request timeout in milliseconds. Defaults to 30000 on creation.                                                                                                                                                                                                                                                                                                                                                                     |
  | `--retries <value>`             | No       | Number of retries per request. Defaults to 3 on creation.                                                                                                                                                                                                                                                                                                                                                                               |
  | `--enabled`                     | No       | Whether workflows can use the server's tools. Defaults to true on creation.                                                                                                                                                                                                                                                                                                                                                             |
  | `--no-enabled`                  | No       | Send --enabled as false.                                                                                                                                                                                                                                                                                                                                                                                                                |
  | `--oauth-client-id <value>`     | No       | Pre-registered OAuth client identifier. Changing it on update revokes the stored OAuth grant and forces reauthorization.                                                                                                                                                                                                                                                                                                                |
  | `--oauth-client-secret <value>` | No       | Write-only pre-registered OAuth client secret. Sending it on update as null or a new value revokes the stored OAuth grant and forces reauthorization, as does switching away from OAuth authentication. (--oauth-client-secret null sends the word, not JSON null).                                                                                                                                                                     |
</CommandTable>

### studio mcp-servers delete [#studio-mcp-servers-delete]

Delete MCP Server

```bash
studio mcp-servers delete <mcpServerId> [options]
```

**Arguments**

<CommandTable>
  | Argument      | Required | Description                   |
  | ------------- | -------- | ----------------------------- |
  | `mcpServerId` | Yes      | Unique MCP server identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio mcp-servers get [#studio-mcp-servers-get]

Get MCP Server

```bash
studio mcp-servers get <mcpServerId>
```

**Arguments**

<CommandTable>
  | Argument      | Required | Description                   |
  | ------------- | -------- | ----------------------------- |
  | `mcpServerId` | Yes      | Unique MCP server identifier. |
</CommandTable>

### studio mcp-servers list [#studio-mcp-servers-list]

List MCP Servers

```bash
studio mcp-servers list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--search <value>`     | No       | Case-insensitive substring match against the server name.                                                                                                                                            |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                         |
</CommandTable>

### studio mcp-servers tools list [#studio-mcp-servers-tools-list]

List MCP Server Tools (OAuth login or personal API key required)

```bash
studio mcp-servers tools list <mcpServerId> [options]
```

**Arguments**

<CommandTable>
  | Argument      | Required | Description                   |
  | ------------- | -------- | ----------------------------- |
  | `mcpServerId` | Yes      | Unique MCP server identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option         | Required | Description                                                                                                                               |
  | -------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
  | `--refresh`    | No       | Refresh tools using your credentials. Otherwise results may reuse another workspace member's recent discovery and omit newly added tools. |
  | `--no-refresh` | No       | Send --refresh as false.                                                                                                                  |
</CommandTable>

### studio mcp-servers update [#studio-mcp-servers-update]

Update MCP Server

```bash
studio mcp-servers update <mcpServerId> [options]
```

**Arguments**

<CommandTable>
  | Argument      | Required | Description                   |
  | ------------- | -------- | ----------------------------- |
  | `mcpServerId` | Yes      | Unique MCP server identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                          | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                             |
  | ------------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`                | No       | Server display name.                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | `--description <value>`         | No       | Optional server description.                                                                                                                                                                                                                                                                                                                                                                                                            |
  | `--transport <value>`           | No       | Transport protocol. Defaults to `streamable-http` on creation. Accepted values: `streamable-http`.                                                                                                                                                                                                                                                                                                                                      |
  | `--url <value>`                 | No       | Immutable server URL. When provided, it must equal the current URL; use delete and create to change endpoints.                                                                                                                                                                                                                                                                                                                          |
  | `--auth-type <value>`           | No       | Authentication method. When omitted, and no `headers` are sent, registration probes the endpoint once to classify it, falling back to `headers` when the probe fails or the server does not advertise OAuth. A server publishing RFC 9728 metadata is therefore stored as `oauth`, and headers configured afterwards will not authenticate — send this field explicitly to pin the method. Accepted values: `none`, `headers`, `oauth`. |
  | `--headers <json\|@file>`       | No       | Write-only request headers sent to the server. Replaced wholesale rather than merged on update: sending this field drops every stored header it does not repeat. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                                                         |
  | `--timeout <value>`             | No       | Per-request timeout in milliseconds. Defaults to 30000 on creation.                                                                                                                                                                                                                                                                                                                                                                     |
  | `--retries <value>`             | No       | Number of retries per request. Defaults to 3 on creation.                                                                                                                                                                                                                                                                                                                                                                               |
  | `--enabled`                     | No       | Whether workflows can use the server's tools. Defaults to true on creation.                                                                                                                                                                                                                                                                                                                                                             |
  | `--no-enabled`                  | No       | Send --enabled as false.                                                                                                                                                                                                                                                                                                                                                                                                                |
  | `--oauth-client-id <value>`     | No       | Pre-registered OAuth client identifier. Changing it on update revokes the stored OAuth grant and forces reauthorization.                                                                                                                                                                                                                                                                                                                |
  | `--oauth-client-secret <value>` | No       | Write-only pre-registered OAuth client secret. Sending it on update as null or a new value revokes the stored OAuth grant and forces reauthorization, as does switching away from OAuth authentication. (--oauth-client-secret null sends the word, not JSON null).                                                                                                                                                                     |
</CommandTable>

## studio meta [#studio-meta]

### studio meta status [#studio-meta-status]

Show what this API supports and which limits apply

```bash
studio meta status
```

## studio sandboxes [#studio-sandboxes]

Also spelled `studio sandbox`.

### studio sandboxes create [#studio-sandboxes-create]

Create Sandbox (OAuth login or personal API key required)

```bash
studio sandboxes create [options]
```

**Options**

<CommandTable>
  | Option                         | Required | Description                                                                                                                                                                                                                                                             |
  | ------------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`               | Yes      | Display name, unique within the workspace; 1 to 64 characters.                                                                                                                                                                                                          |
  | `--language <value>`           | Yes      | Dependency ecosystem: `javascript` installs from npm, `python` from PyPI. Accepted values: `javascript`, `python`.                                                                                                                                                      |
  | `--dependencies <value...>`    | No       | Package specifiers installed into the sandbox, one per entry. (space-separated, or @path / @- with one value per line; in a file, blank lines and # comments are ignored, while inline values are sent as typed and may not be empty; @@value for a literal leading @). |
  | `--cli-tools <value...>`       | No       | Pinned managed CLI ids installed into the sandbox, at most 10, no duplicates. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                |
  | `--system-packages <value...>` | No       | Debian packages installed into the sandbox, one per entry. (space-separated, or @path / @- with one value per line; in a file, blank lines and # comments are ignored, while inline values are sent as typed and may not be empty; @@value for a literal leading @).    |
</CommandTable>

### studio sandboxes delete [#studio-sandboxes-delete]

Delete Sandbox (OAuth login or personal API key required)

```bash
studio sandboxes delete <sandboxId> [options]
```

**Arguments**

<CommandTable>
  | Argument    | Required | Description                |
  | ----------- | -------- | -------------------------- |
  | `sandboxId` | Yes      | Unique sandbox identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio sandboxes get [#studio-sandboxes-get]

Get Sandbox

```bash
studio sandboxes get <sandboxId>
```

**Arguments**

<CommandTable>
  | Argument    | Required | Description                |
  | ----------- | -------- | -------------------------- |
  | `sandboxId` | Yes      | Unique sandbox identifier. |
</CommandTable>

### studio sandboxes list [#studio-sandboxes-list]

List Sandboxes

```bash
studio sandboxes list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--search <value>`     | No       | Case-insensitive substring match against the sandbox name.                                                                                                                                           |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                         |
</CommandTable>

### studio sandboxes update [#studio-sandboxes-update]

Update Sandbox (OAuth login or personal API key required)

```bash
studio sandboxes update <sandboxId> [options]
```

**Arguments**

<CommandTable>
  | Argument    | Required | Description                |
  | ----------- | -------- | -------------------------- |
  | `sandboxId` | Yes      | Unique sandbox identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                         | Required | Description                                                                                                                                                                                                                                                         |
  | ------------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`               | No       | New display name, unique within the workspace; 1 to 64 characters.                                                                                                                                                                                                  |
  | `--language <value>`           | No       | Replacement dependency ecosystem. The whole spec is revalidated against it, so a Python dependency list does not survive a switch to JavaScript. Accepted values: `javascript`, `python`.                                                                           |
  | `--dependencies <value...>`    | No       | Replacement package list; replaces the whole list. (space-separated, or @path / @- with one value per line; in a file, blank lines and # comments are ignored, while inline values are sent as typed and may not be empty; @@value for a literal leading @).        |
  | `--cli-tools <value...>`       | No       | Replacement managed CLI list; replaces the whole list. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                   |
  | `--system-packages <value...>` | No       | Replacement Debian package list; replaces the whole list. (space-separated, or @path / @- with one value per line; in a file, blank lines and # comments are ignored, while inline values are sent as typed and may not be empty; @@value for a literal leading @). |
</CommandTable>

## studio secrets [#studio-secrets]

Also spelled `studio secret`.

### studio secrets delete [#studio-secrets-delete]

Delete Secret (OAuth login or personal API key required)

```bash
studio secrets delete <name> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description       |
  | -------- | -------- | ----------------- |
  | `name`   | Yes      | Secret to delete. |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                                                                                                                                                                   |
  | ----------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--scope <value>` | Yes      | Whether the secret belongs to the workspace or to the caller. A personal secret belongs to the caller across every workspace, not to one workspace. Accepted values: `workspace`, `personal`. |
  | `-y, --yes`       | Yes      | Confirm this operation.                                                                                                                                                                       |
</CommandTable>

### studio secrets list [#studio-secrets-list]

List Secrets (OAuth login or personal API key required)

```bash
studio secrets list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--scope <value>`      | No       | Restrict results to one ownership scope. Accepted values: `workspace`, `personal`.                                                                                                                   |
  | `--search <value>`     | No       | Case-insensitive substring match against the secret name.                                                                                                                                            |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                         |
</CommandTable>

### studio secrets set [#studio-secrets-set]

Create or replace a named secret (OAuth login or personal API key required)

```bash
studio secrets set <name> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                             |
  | -------- | -------- | --------------------------------------- |
  | `name`   | Yes      | Secret name, as referenced in workflows |
</CommandTable>

**Options**

<CommandTable>
  | Option                        | Required | Description                                                                                                                                                                                                                                                                                                                        |
  | ----------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--scope <scope>`             | Yes      | Secret ownership scope. Accepted values: `workspace`, `personal`.                                                                                                                                                                                                                                                                  |
  | `--value <value\|@file>`      | No       | Secret value. Passing it inline exposes it to shell history and process listings; @path reads it from a file and @- from stdin, verbatim — a trailing newline is part of the value, so write the file with printf rather than echo. Prefix a literal leading @ with a second one.                                                  |
  | `--description <description>` | No       | What the secret is for, shown to teammates; workspace scope only. Omit to leave an existing description unchanged.                                                                                                                                                                                                                 |
  | `--unredacted`                | No       | Opt the workspace secret out of redaction: its value then appears in plaintext in run logs, model-visible content, and files, including publicly shared log links. Workspace scope only — sending it for a personal secret is rejected. Omit it to leave the current setting untouched. Pass --no-unredacted to restore redaction. |
  | `--no-unredacted`             | No       | Send --unredacted as false.                                                                                                                                                                                                                                                                                                        |
</CommandTable>

## studio selectors [#studio-selectors]

### studio selectors get [#studio-selectors-get]

Get Selector Option (OAuth login or personal API key required)

```bash
studio selectors get [options]
```

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
  | ------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--selector-key <value>`  | Yes      | Registered selector key for discovering this field’s destination options. Accepted values: `airtable.bases`, `airtable.tables`, `asana.workspaces`, `attio.lists`, `attio.objects`, `bigquery.datasets`, `bigquery.tables`, `bitbucket.workspaces`, `bitbucket.repositories`, `calcom.eventTypes`, `calcom.schedules`, `clickup.workspaces`, `clickup.spaces`, `clickup.folders`, `clickup.lists`, `confluence.spaces`, `confluence.spacesById`, `confluence.pages`, `google.tasks.lists`, `gmail.labels`, `google.calendar`, `google.drive`, `google.sheets`, `harmonic.savedSearches`, `hubspot.lists`, `hubspot.owners`, `hubspot.pipelines`, `hubspot.pipelineStages`, `hubspot.properties`, `jsm.requestTypes`, `jsm.serviceDesks`, `microsoft.planner.plans`, `notion.databases`, `notion.pages`, `netsuite.recordTypes`, `netsuite.asyncTasks`, `pipedrive.pipelines`, `sharepoint.lists`, `trello.boards`, `zoho_desk.organizations`, `zoho_desk.departments`, `zoho_desk.agents`, `zoom.meetings`, `slack.channels`, `snowflake.databases`, `snowflake.schemas`, `snowflake.tables`, `snowflake.warehouses`, `snowflake.roles`, `snowflake.fileFormats`, `snowflake.procedures`, `slack.users`, `outlook.folders`, `outlook.calendars`, `microsoft.teams`, `microsoft.chats`, `microsoft.channels`, `microsoft.planner`, `onedrive.files`, `onedrive.folders`, `sharepoint.sites`, `microsoft.excel`, `microsoft.excel.drives`, `microsoft.excel.sheets`, `microsoft.word`, `wealthbox.contacts`, `jira.issues`, `jira.projects`, `jira.projectKeys`, `linear.projects`, `linear.teams`, `monday.boards`, `monday.groups`, `webflow.sites`, `webflow.collections`, `webflow.items`, `cloudwatch.logGroups`, `cloudwatch.logStreams`, `imap.mailboxes`, `mcp.tools`, `managedAgent.agents`, `managedAgent.environments`, `managedAgent.vaults`, `managedAgent.memoryStores`, `knowledge.documents`, `studio.workflows`, `table.columns`, `table.outputColumns`, `meta.pages`, `workspace.secretNames`, `workspace.sandboxes`, `providers.ollamaEmbeddingModels`, `providers.openrouterEmbeddingModels`. |
  | `--context <json\|@file>` | No       | Only the dependencies declared by the selector, such as oauthCredential and channelId. Missing OAuth connections require human authorization. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | `--id <value>`            | Yes      | Resource identifier.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
</CommandTable>

### studio selectors list [#studio-selectors-list]

List Selector Options (OAuth login or personal API key required)

```bash
studio selectors list [options]
```

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
  | ------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--selector-key <value>`  | Yes      | Registered selector key for discovering this field’s destination options. Accepted values: `airtable.bases`, `airtable.tables`, `asana.workspaces`, `attio.lists`, `attio.objects`, `bigquery.datasets`, `bigquery.tables`, `bitbucket.workspaces`, `bitbucket.repositories`, `calcom.eventTypes`, `calcom.schedules`, `clickup.workspaces`, `clickup.spaces`, `clickup.folders`, `clickup.lists`, `confluence.spaces`, `confluence.spacesById`, `confluence.pages`, `google.tasks.lists`, `gmail.labels`, `google.calendar`, `google.drive`, `google.sheets`, `harmonic.savedSearches`, `hubspot.lists`, `hubspot.owners`, `hubspot.pipelines`, `hubspot.pipelineStages`, `hubspot.properties`, `jsm.requestTypes`, `jsm.serviceDesks`, `microsoft.planner.plans`, `notion.databases`, `notion.pages`, `netsuite.recordTypes`, `netsuite.asyncTasks`, `pipedrive.pipelines`, `sharepoint.lists`, `trello.boards`, `zoho_desk.organizations`, `zoho_desk.departments`, `zoho_desk.agents`, `zoom.meetings`, `slack.channels`, `snowflake.databases`, `snowflake.schemas`, `snowflake.tables`, `snowflake.warehouses`, `snowflake.roles`, `snowflake.fileFormats`, `snowflake.procedures`, `slack.users`, `outlook.folders`, `outlook.calendars`, `microsoft.teams`, `microsoft.chats`, `microsoft.channels`, `microsoft.planner`, `onedrive.files`, `onedrive.folders`, `sharepoint.sites`, `microsoft.excel`, `microsoft.excel.drives`, `microsoft.excel.sheets`, `microsoft.word`, `wealthbox.contacts`, `jira.issues`, `jira.projects`, `jira.projectKeys`, `linear.projects`, `linear.teams`, `monday.boards`, `monday.groups`, `webflow.sites`, `webflow.collections`, `webflow.items`, `cloudwatch.logGroups`, `cloudwatch.logStreams`, `imap.mailboxes`, `mcp.tools`, `managedAgent.agents`, `managedAgent.environments`, `managedAgent.vaults`, `managedAgent.memoryStores`, `knowledge.documents`, `studio.workflows`, `table.columns`, `table.outputColumns`, `meta.pages`, `workspace.secretNames`, `workspace.sandboxes`, `providers.ollamaEmbeddingModels`, `providers.openrouterEmbeddingModels`. |
  | `--context <json\|@file>` | No       | Only the dependencies declared by the selector, such as oauthCredential and channelId. Missing OAuth connections require human authorization. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | `--search <value>`        | No       | Provider option search text.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | `--cursor <value>`        | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
  | `--limit <n>`             | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
</CommandTable>

## studio skills [#studio-skills]

Also spelled `studio skill`.

### studio skills create [#studio-skills-create]

Create Skill (OAuth login or personal API key required)

```bash
studio skills create [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                        |
  | ----------------------- | -------- | ---------------------------------------------------------------------------------- |
  | `--name <value>`        | Yes      | Kebab-case name, unique within the workspace and not reserved by a built-in skill. |
  | `--description <value>` | Yes      | One-line summary of when the skill applies.                                        |
  | `--content <value>`     | Yes      | Skill body containing the instructions given to the agent.                         |
</CommandTable>

### studio skills delete [#studio-skills-delete]

Delete Skill (OAuth login or personal API key required)

```bash
studio skills delete <skillId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                                                                   |
  | --------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `skillId` | Yes      | Unique skill identifier. A built-in skill is `builtin-` followed by its name, for example `builtin-research`. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio skills get [#studio-skills-get]

Get Skill

```bash
studio skills get <skillId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                                                                   |
  | --------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `skillId` | Yes      | Unique skill identifier. A built-in skill is `builtin-` followed by its name, for example `builtin-research`. |
</CommandTable>

### studio skills editors create [#studio-skills-editors-create]

Grant Skill Editor (OAuth login or personal API key required)

```bash
studio skills editors create <skillId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                                                                   |
  | --------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `skillId` | Yes      | Unique skill identifier. A built-in skill is `builtin-` followed by its name, for example `builtin-research`. |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                  |
  | ----------------- | -------- | -------------------------------------------- |
  | `--email <value>` | Yes      | Email address of a current workspace member. |
</CommandTable>

### studio skills editors list [#studio-skills-editors-list]

List Skill Editors

```bash
studio skills editors list <skillId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                                                                   |
  | --------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `skillId` | Yes      | Unique skill identifier. A built-in skill is `builtin-` followed by its name, for example `builtin-research`. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                         |
  | ---------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `email`, `name`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                     |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                        |
</CommandTable>

### studio skills editors delete [#studio-skills-editors-delete]

Revoke Skill Editor (OAuth login or personal API key required)

```bash
studio skills editors delete <skillId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                                                                   |
  | --------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `skillId` | Yes      | Unique skill identifier. A built-in skill is `builtin-` followed by its name, for example `builtin-research`. |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                  |
  | ----------------- | -------- | -------------------------------------------- |
  | `--email <value>` | Yes      | Email address of a current workspace member. |
  | `-y, --yes`       | Yes      | Confirm this operation.                      |
</CommandTable>

### studio skills list [#studio-skills-list]

List Skills

```bash
studio skills list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--search <value>`     | No       | Case-insensitive substring match against the skill name.                                                                                                                                             |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                         |
</CommandTable>

### studio skills update [#studio-skills-update]

Update Skill (OAuth login or personal API key required)

```bash
studio skills update <skillId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                                                                   |
  | --------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `skillId` | Yes      | Unique skill identifier. A built-in skill is `builtin-` followed by its name, for example `builtin-research`. |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                     |
  | ----------------------- | -------- | ----------------------------------------------- |
  | `--name <value>`        | No       | New kebab-case skill name.                      |
  | `--description <value>` | No       | New one-line summary of when the skill applies. |
  | `--content <value>`     | No       | Replacement skill body.                         |
</CommandTable>

## studio tables [#studio-tables]

Also spelled `studio table`.

### studio tables columns create [#studio-tables-columns-create]

Add Column

```bash
studio tables columns create <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                              |
  | ------------------------ | -------- | ------------------------------------------------------------------------ |
  | `--column <json\|@file>` | Yes      | Column definition to add. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio tables columns delete [#studio-tables-columns-delete]

Delete Column

```bash
studio tables columns delete <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                   |
  | ----------------------- | -------- | ----------------------------- |
  | `--column-name <value>` | Yes      | Name of the column to delete. |
  | `-y, --yes`             | Yes      | Confirm this operation.       |
</CommandTable>

### studio tables columns update [#studio-tables-columns-update]

Update Column

```bash
studio tables columns update <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                    | Required | Description                                                           |
  | ------------------------- | -------- | --------------------------------------------------------------------- |
  | `--column-name <value>`   | Yes      | Current name of the column to update.                                 |
  | `--updates <json\|@file>` | Yes      | Mutable column fields. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio tables groups create [#studio-tables-groups-create]

Add Workflow Group

```bash
studio tables groups create <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                           | Required | Description                                                                                |
  | -------------------------------- | -------- | ------------------------------------------------------------------------------------------ |
  | `--group <json\|@file>`          | Yes      | Workflow or enrichment producer definition. (JSON, or @path / @- to read a file or stdin). |
  | `--output-columns <json\|@file>` | Yes      | Columns created for producer outputs. (JSON, or @path / @- to read a file or stdin).       |
  | `--auto-run`                     | No       | Whether to schedule existing rows after group creation.                                    |
  | `--no-auto-run`                  | No       | Send --auto-run as false.                                                                  |
</CommandTable>

### studio tables groups delete [#studio-tables-groups-delete]

Delete Workflow Group

```bash
studio tables groups delete <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option               | Required | Description               |
  | -------------------- | -------- | ------------------------- |
  | `--group-id <value>` | Yes      | Workflow group to delete. |
  | `-y, --yes`          | Yes      | Confirm this operation.   |
</CommandTable>

### studio tables groups list [#studio-tables-groups-list]

List Workflow Groups

```bash
studio tables groups list <tableId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

### studio tables groups update [#studio-tables-groups-update]

Update Workflow Group

```bash
studio tables groups update <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                               | Required | Description                                                                                                                                                      |
  | ------------------------------------ | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--group-id <value>`                 | Yes      | Workflow group to update.                                                                                                                                        |
  | `--workflow-id <value>`              | No       | Replacement backing workflow identifier.                                                                                                                         |
  | `--name <value>`                     | No       | Replacement workflow-group display name.                                                                                                                         |
  | `--dependencies <json\|@file>`       | No       | Replacement input dependencies. (JSON, or @path / @- to read a file or stdin).                                                                                   |
  | `--outputs <json\|@file>`            | No       | Replacement producer outputs. (JSON, or @path / @- to read a file or stdin).                                                                                     |
  | `--new-output-columns <json\|@file>` | No       | Columns to add for new outputs. (JSON, or @path / @- to read a file or stdin).                                                                                   |
  | `--mapping-updates <json\|@file>`    | No       | Existing output-column mapping changes. (JSON, or @path / @- to read a file or stdin).                                                                           |
  | `--input-mappings <json\|@file>`     | No       | Replacement workflow input mappings. (JSON, or @path / @- to read a file or stdin).                                                                              |
  | `--deployment-mode <value>`          | No       | Replacement workflow execution mode. Accepted values: `live`, `deployed`.                                                                                        |
  | `--type <value>`                     | No       | Workflow-group producer type. Must match the group's stored type — a group's producer cannot be changed after creation. Accepted values: `manual`, `enrichment`. |
  | `--auto-run`                         | No       | Replacement automatic-run setting.                                                                                                                               |
  | `--no-auto-run`                      | No       | Send --auto-run as false.                                                                                                                                        |
</CommandTable>

### studio tables batch-delete [#studio-tables-batch-delete]

Bulk Delete Tables and Folders

```bash
studio tables batch-delete [options]
```

**Options**

<CommandTable>
  | Option                      | Required | Description                                                                                                                                           |
  | --------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--table-ids <json\|@file>` | No       | Tables to archive, by identifier. (JSON, or @path / @- to read a file or stdin).                                                                      |
  | `--folder <value...>`       | No       | Folder path as shown in the app; the leading / is optional (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `-y, --yes`                 | Yes      | Confirm this operation.                                                                                                                               |
</CommandTable>

### studio tables rows update-each [#studio-tables-rows-update-each]

Apply a distinct patch to each listed row

```bash
studio tables rows update-each <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                          |
  | ------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------- |
  | `--updates <json\|@file>` | Yes      | One merge patch per row. Each row identifier may appear at most once. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio tables rows create [#studio-tables-rows-create]

Create Rows

```bash
studio tables rows create <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                            |
  | ---------------------- | -------- | -------------------------------------------------------------------------------------- |
  | `--data <json\|@file>` | No       | One row keyed by column name (JSON, or @path / @-; choose exactly one body flag).      |
  | `--rows <json\|@file>` | No       | Several rows keyed by column name (JSON, or @path / @-; choose exactly one body flag). |
</CommandTable>

### studio tables rows delete [#studio-tables-rows-delete]

Delete Row

```bash
studio tables rows delete <tableId> <rowId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                  |
  | --------- | -------- | ---------------------------- |
  | `tableId` | Yes      | Unique table identifier.     |
  | `rowId`   | Yes      | Unique table row identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio tables rows batch-delete [#studio-tables-rows-batch-delete]

Delete rows matching a filter, or an explicit list of ids

```bash
studio tables rows batch-delete <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                                                                                                           |
  | ------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--filter <json\|@file>` | No       | Predicate: \{"all":\[\{"field":"status","op":"eq","value":"active"}]}; groups use all/any. Operators: eq, ne, gt, gte, lt, lte, in, nin, contains, ncontains, startsWith, endsWith, like, ilike, nlike, nilike, isEmpty, isNotEmpty, isNull, isNotNull (JSON, or @path / @- to read a file or stdin). |
  | `--limit <value>`        | No       | Maximum matching rows to delete. (caps a --filter match only; omit it to act on every match, and note 0 is not accepted).                                                                                                                                                                             |
  | `--row <value...>`       | No       | Explicit row identifiers to delete. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                                        |
  | `-y, --yes`              | Yes      | Confirm this operation.                                                                                                                                                                                                                                                                               |
</CommandTable>

### studio tables rows get [#studio-tables-rows-get]

Get Row

```bash
studio tables rows get <tableId> <rowId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                  |
  | --------- | -------- | ---------------------------- |
  | `tableId` | Yes      | Unique table identifier.     |
  | `rowId`   | Yes      | Unique table row identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                               |
  | ------------------------ | -------- | ------------------------------------------------------------------------- |
  | `--include-run-state`    | No       | Include per-workflow-group run state on the returned row. Off by default. |
  | `--no-include-run-state` | No       | Send --include-run-state as false.                                        |
</CommandTable>

### studio tables rows list [#studio-tables-rows-list]

List Rows

```bash
studio tables rows list <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                           |
  | ------------------------ | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--limit <n>`            | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                        |
  | `--cursor <value>`       | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                               |
  | `--include-run-state`    | No       | Include per-workflow-group run state on every returned row. Off by default: run state is a separate sidecar read and its `blockErrors` are unbounded, so a full page carries it only when asked. Caps `limit` at 200. |
  | `--no-include-run-state` | No       | Send --include-run-state as false.                                                                                                                                                                                    |
</CommandTable>

### studio tables rows query [#studio-tables-rows-query]

Query Rows

```bash
studio tables rows query <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | ------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--filter <json\|@file>` | No       | Condition: \{"field":"status","op":"eq","value":"active"}. Groups: \{"all":\[\{"field":"status","op":"eq","value":"active"}]} or \{"any":\[\{"field":"status","op":"eq","value":"active"}]}; group entries may also be nested groups. Operators: eq, ne, gt, gte, lt, lte, in, nin, contains, ncontains, startsWith, endsWith, like, ilike, nlike, nilike, isEmpty, isNotEmpty, isNull, isNotNull (JSON, or @path / @- to read a file or stdin). |
  | `--sort <json\|@file>`   | No       | Ordered sort keys: \[\{"field":"createdAt","direction":"desc"}] (direction: asc or desc) (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                                                                                                                                          |
  | `--limit <n>`            | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                                                                                                                                                                                                                                                   |
  | `--cursor <value>`       | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                                                                                                                                                                                                                                                          |
  | `--include-run-state`    | No       | Include per-workflow-group run state on every returned row. Off by default: run state is a separate sidecar read and its `blockErrors` are unbounded, so a full page carries it only when asked. Incompatible with `limit: 0`, and caps `limit` at 200.                                                                                                                                                                                          |
  | `--no-include-run-state` | No       | Send --include-run-state as false.                                                                                                                                                                                                                                                                                                                                                                                                               |
</CommandTable>

### studio tables rows count [#studio-tables-rows-count]

Count rows matching a filter

```bash
studio tables rows count <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | ------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--filter <json\|@file>` | No       | Condition: \{"field":"status","op":"eq","value":"active"}. Groups: \{"all":\[\{"field":"status","op":"eq","value":"active"}]} or \{"any":\[\{"field":"status","op":"eq","value":"active"}]}; group entries may also be nested groups. Operators: eq, ne, gt, gte, lt, lte, in, nin, contains, ncontains, startsWith, endsWith, like, ilike, nlike, nilike, isEmpty, isNotEmpty, isNull, isNotNull (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio tables rows enrich [#studio-tables-rows-enrich]

Run one row’s enrichment group

```bash
studio tables rows enrich <tableId> <rowId> <groupId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                          |
  | --------- | -------- | ------------------------------------ |
  | `tableId` | Yes      | Unique table identifier.             |
  | `rowId`   | Yes      | Unique table row identifier.         |
  | `groupId` | Yes      | Workflow or enrichment group to run. |
</CommandTable>

### studio tables rows search [#studio-tables-rows-search]

Search cells for a value and return their coordinates

```bash
studio tables rows search <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                                                                                                           |
  | ------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--query <value>`        | Yes      | Value to search for.                                                                                                                                                                                                                                                                                  |
  | `--filter <json\|@file>` | No       | Predicate: \{"all":\[\{"field":"status","op":"eq","value":"active"}]}; groups use all/any. Operators: eq, ne, gt, gte, lt, lte, in, nin, contains, ncontains, startsWith, endsWith, like, ilike, nlike, nilike, isEmpty, isNotEmpty, isNull, isNotNull (JSON, or @path / @- to read a file or stdin). |
  | `--sort <json\|@file>`   | No       | Ordered sort keys: \[\{"field":"createdAt","direction":"desc"}] (direction: asc or desc) (JSON, or @path / @- to read a file or stdin).                                                                                                                                                               |
</CommandTable>

### studio tables rows batch-update [#studio-tables-rows-batch-update]

Update every row matching a filter

```bash
studio tables rows batch-update <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                                                                                                                                                                                                           |
  | ------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--filter <json\|@file>` | Yes      | Predicate: \{"all":\[\{"field":"status","op":"eq","value":"active"}]}; groups use all/any. Operators: eq, ne, gt, gte, lt, lte, in, nin, contains, ncontains, startsWith, endsWith, like, ilike, nlike, nilike, isEmpty, isNotEmpty, isNull, isNotNull (JSON, or @path / @- to read a file or stdin). |
  | `--data <json\|@file>`   | Yes      | Row-data patch applied to every matching row. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                                          |
  | `--limit <value>`        | No       | Maximum matching rows to update. (caps a --filter match only; omit it to act on every match, and note 0 is not accepted).                                                                                                                                                                             |
  | `-y, --yes`              | Yes      | Confirm this operation.                                                                                                                                                                                                                                                                               |
</CommandTable>

### studio tables rows update [#studio-tables-rows-update]

Update Row

```bash
studio tables rows update <tableId> <rowId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                  |
  | --------- | -------- | ---------------------------- |
  | `tableId` | Yes      | Unique table identifier.     |
  | `rowId`   | Yes      | Unique table row identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                 |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------- |
  | `--data <json\|@file>` | Yes      | Partial row-data patch keyed by column name. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio tables dispatches cancel [#studio-tables-dispatches-cancel]

Cancel a running dispatch

```bash
studio tables dispatches cancel <tableId> <dispatchId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                           |
  | ------------ | -------- | ------------------------------------- |
  | `tableId`    | Yes      | Unique table identifier.              |
  | `dispatchId` | Yes      | Unique table run-dispatch identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio tables dispatches create [#studio-tables-dispatches-create]

Start a column or enrichment run

```bash
studio tables dispatches create <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                         | Required | Description                                                                                                                                                                                                                                                                                           |
  | ------------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--group-ids <value...>`       | Yes      | Workflow or enrichment groups to run. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                                      |
  | `--run-mode <value>`           | No       | Whether to run all or only incomplete cells. Accepted values: `all`, `incomplete`.                                                                                                                                                                                                                    |
  | `--row-ids <value...>`         | No       | Explicit row subset to run. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                                                |
  | `--filter <json\|@file>`       | No       | Predicate: \{"all":\[\{"field":"status","op":"eq","value":"active"}]}; groups use all/any. Operators: eq, ne, gt, gte, lt, lte, in, nin, contains, ncontains, startsWith, endsWith, like, ilike, nlike, nilike, isEmpty, isNotEmpty, isNull, isNotNull (JSON, or @path / @- to read a file or stdin). |
  | `--exclude-row-ids <value...>` | No       | Rows excluded from a select-all run scope. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                                 |
  | `--max-rows <n>`               | No       | Stop after this many eligible rows have run (1-1,000,000). Omit for an unbounded run.                                                                                                                                                                                                                 |
</CommandTable>

### studio tables dispatches get [#studio-tables-dispatches-get]

Get Run Dispatch

```bash
studio tables dispatches get <tableId> <dispatchId>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                           |
  | ------------ | -------- | ------------------------------------- |
  | `tableId`    | Yes      | Unique table identifier.              |
  | `dispatchId` | Yes      | Unique table run-dispatch identifier. |
</CommandTable>

### studio tables dispatches list [#studio-tables-dispatches-list]

List Active Run Dispatches

```bash
studio tables dispatches list <tableId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

### studio tables exports cancel [#studio-tables-exports-cancel]

Stop a running export

```bash
studio tables exports cancel <tableId> <exportId>
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                     |
  | ---------- | -------- | ------------------------------- |
  | `tableId`  | Yes      | Unique table identifier.        |
  | `exportId` | Yes      | Unique table-export identifier. |
</CommandTable>

### studio tables exports create [#studio-tables-exports-create]

Create Table Export

```bash
studio tables exports create <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option             | Required | Description                                         |
  | ------------------ | -------- | --------------------------------------------------- |
  | `--format <value>` | No       | Export file format. Accepted values: `csv`, `json`. |
</CommandTable>

### studio tables exports get [#studio-tables-exports-get]

Get Table Export

```bash
studio tables exports get <tableId> <exportId>
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                     |
  | ---------- | -------- | ------------------------------- |
  | `tableId`  | Yes      | Unique table identifier.        |
  | `exportId` | Yes      | Unique table-export identifier. |
</CommandTable>

### studio tables exports download [#studio-tables-exports-download]

Get the download URL for a finished export

```bash
studio tables exports download <tableId> <exportId>
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                     |
  | ---------- | -------- | ------------------------------- |
  | `tableId`  | Yes      | Unique table identifier.        |
  | `exportId` | Yes      | Unique table-export identifier. |
</CommandTable>

### studio tables imports cancel [#studio-tables-imports-cancel]

Stop a running import

```bash
studio tables imports cancel <importId> [options]
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                     |
  | ---------- | -------- | ------------------------------- |
  | `importId` | Yes      | Unique table-import identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio tables imports get [#studio-tables-imports-get]

Get Table Import

```bash
studio tables imports get <importId>
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                     |
  | ---------- | -------- | ------------------------------- |
  | `importId` | Yes      | Unique table-import identifier. |
</CommandTable>

### studio tables cancel-runs [#studio-tables-cancel-runs]

Stop every running column job

```bash
studio tables cancel-runs <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                         | Required | Description                                                                                                                                                                                                                                                                                           |
  | ------------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--scope <value>`              | Yes      | Whether to cancel across the table or one row. Accepted values: `all`, `row`.                                                                                                                                                                                                                         |
  | `--row-id <value>`             | No       | Row whose runs should be canceled for row scope.                                                                                                                                                                                                                                                      |
  | `--filter <json\|@file>`       | No       | Predicate: \{"all":\[\{"field":"status","op":"eq","value":"active"}]}; groups use all/any. Operators: eq, ne, gt, gte, lt, lte, in, nin, contains, ncontains, startsWith, endsWith, like, ilike, nlike, nilike, isEmpty, isNotEmpty, isNull, isNotNull (JSON, or @path / @- to read a file or stdin). |
  | `--exclude-row-ids <value...>` | No       | Rows excluded from an all-scope cancellation. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                                                                                                                                                              |
  | `-y, --yes`                    | Yes      | Confirm this operation.                                                                                                                                                                                                                                                                               |
</CommandTable>

### studio tables create [#studio-tables-create]

Create Table

```bash
studio tables create [options]
```

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                                    |
  | ------------------------ | -------- | -------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`         | Yes      | Identifier: letters, numbers, and underscores; cannot start with a number.                                     |
  | `--description <value>`  | No       | Optional table description.                                                                                    |
  | `--schema <json\|@file>` | Yes      | Table schema: \{"columns":\[\{"name":"email","type":"string"}]} (JSON, or @path / @- to read a file or stdin). |
  | `--folder <value>`       | No       | Folder path as shown in the app; the leading / is optional.                                                    |
</CommandTable>

### studio tables folders create [#studio-tables-folders-create]

Create a table folder at a path

```bash
studio tables folders create <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio tables folders delete [#studio-tables-folders-delete]

Delete Folder

```bash
studio tables folders delete <path> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

**Options**

<CommandTable>
  | Option        | Required | Description                            |
  | ------------- | -------- | -------------------------------------- |
  | `--recursive` | No       | Delete the folder and its descendants. |
  | `-y, --yes`   | Yes      | Confirm this operation.                |
</CommandTable>

### studio tables folders list [#studio-tables-folders-list]

List table folders

```bash
studio tables folders list [options]
```

Also available as `studio tables folders ls`.

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--parent <value>`     | No       | Direct parent folder path.                                                                                                                                                                           |
  | `--search <value>`     | No       | Case-insensitive substring match against the folder name.                                                                                                                                            |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
</CommandTable>

### studio tables folders move [#studio-tables-folders-move]

Rename or move a table folder

```bash
studio tables folders move <path> <destination>
```

Also available as `studio tables folders mv`.

**Arguments**

<CommandTable>
  | Argument      | Required | Description                                                |
  | ------------- | -------- | ---------------------------------------------------------- |
  | `path`        | Yes      | Folder path as shown in the app; the leading / is optional |
  | `destination` | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio tables folders restore [#studio-tables-folders-restore]

Restore an archived table folder

```bash
studio tables folders restore <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio tables views create [#studio-tables-views-create]

Create View

```bash
studio tables views create <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                   | Required | Description                                                                                         |
  | ------------------------ | -------- | --------------------------------------------------------------------------------------------------- |
  | `--name <value>`         | Yes      | Saved-view display name.                                                                            |
  | `--config <json\|@file>` | Yes      | Saved filter, sort, and column-layout configuration. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio tables views delete [#studio-tables-views-delete]

Delete View

```bash
studio tables views delete <tableId> <viewId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                   |
  | --------- | -------- | ----------------------------- |
  | `tableId` | Yes      | Unique table identifier.      |
  | `viewId`  | Yes      | Unique saved-view identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio tables views get [#studio-tables-views-get]

Get View

```bash
studio tables views get <tableId> <viewId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                   |
  | --------- | -------- | ----------------------------- |
  | `tableId` | Yes      | Unique table identifier.      |
  | `viewId`  | Yes      | Unique saved-view identifier. |
</CommandTable>

### studio tables views list [#studio-tables-views-list]

List Views

```bash
studio tables views list <tableId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

### studio tables views update [#studio-tables-views-update]

Update View

```bash
studio tables views update <tableId> <viewId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                   |
  | --------- | -------- | ----------------------------- |
  | `tableId` | Yes      | Unique table identifier.      |
  | `viewId`  | Yes      | Unique saved-view identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                         | Required | Description                                                                                      |
  | ------------------------------ | -------- | ------------------------------------------------------------------------------------------------ |
  | `--name <value>`               | No       | Replacement saved-view display name.                                                             |
  | `--config <json\|@file>`       | No       | Complete replacement saved-view configuration. (JSON, or @path / @- to read a file or stdin).    |
  | `--config-patch <json\|@file>` | No       | Saved-view configuration fields to shallow-merge. (JSON, or @path / @- to read a file or stdin). |
  | `--is-default`                 | No       | Whether to promote this view to the table default.                                               |
  | `--no-is-default`              | No       | Send --is-default as false.                                                                      |
</CommandTable>

### studio tables delete [#studio-tables-delete]

Delete Table

```bash
studio tables delete <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio tables enrichment get [#studio-tables-enrichment-get]

Get Enrichment Run Detail

```bash
studio tables enrichment get <tableId> <rowId> <groupId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                          |
  | --------- | -------- | ------------------------------------ |
  | `tableId` | Yes      | Unique table identifier.             |
  | `rowId`   | Yes      | Unique table row identifier.         |
  | `groupId` | Yes      | Workflow or enrichment group to run. |
</CommandTable>

### studio tables get [#studio-tables-get]

Get Table

```bash
studio tables get <tableId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

### studio tables list [#studio-tables-list]

List Tables

```bash
studio tables list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                                                                                                                                   |
  | ---------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--scope <value>`      | No       | Which lifecycle set to list: `active` (default) for live tables, `archived` for tables a delete archived and a table restore can bring back. `folderPath` resolves against active folders only, so pairing it with `scope=archived` returns an empty page when the containing folder was archived too. Accepted values: `active`, `archived`. |
  | `--folder <value>`     | No       | Folder path as shown in the app; the leading / is optional.                                                                                                                                                                                                                                                                                   |
  | `--search <value>`     | No       | Case-insensitive substring match against the resource name.                                                                                                                                                                                                                                                                                   |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`.                                                                                                                                          |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                                                                                                                                                               |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                                                                                                                                                                  |
</CommandTable>

### studio tables move [#studio-tables-move]

Move Tables and Folders

```bash
studio tables move [options]
```

**Options**

<CommandTable>
  | Option                      | Required | Description                                                                                                                                                              |
  | --------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--table-ids <json\|@file>` | No       | Tables to move, by identifier. (JSON, or @path / @- to read a file or stdin).                                                                                            |
  | `--folder <value...>`       | No       | Table folders to move, by path as shown in the app; the leading / is optional (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--to <value>`              | No       | Destination folder path; omit for root.                                                                                                                                  |
</CommandTable>

### studio tables restore [#studio-tables-restore]

Restore an archived table

```bash
studio tables restore <tableId>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

### studio tables update [#studio-tables-update]

Update Table

```bash
studio tables update <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                             |
  | ----------------------- | -------- | ------------------------------------------------------------------------------------------------------- |
  | `--name <value>`        | No       | Identifier: letters, numbers, and underscores; cannot start with a number.                              |
  | `--description <value>` | No       | Replacement table description, or null to clear it. (--description null sends the word, not JSON null). |
  | `--folder <value>`      | No       | Folder path as shown in the app; the leading / is optional.                                             |
</CommandTable>

### studio tables mv [#studio-tables-mv]

Move a table to a folder

```bash
studio tables mv <tableId> <folder>
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description                                                |
  | --------- | -------- | ---------------------------------------------------------- |
  | `tableId` | Yes      | Unique table identifier.                                   |
  | `folder`  | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio tables upsert [#studio-tables-upsert]

Insert a row, or update the one that conflicts on a unique column

```bash
studio tables upsert <tableId> [options]
```

**Arguments**

<CommandTable>
  | Argument  | Required | Description              |
  | --------- | -------- | ------------------------ |
  | `tableId` | Yes      | Unique table identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                          |
  | ---------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--data <json\|@file>` | Yes      | Complete set of row cells keyed by column name. On the update branch this REPLACES the matched row: any column not present here is cleared, unlike a single-row update, which merges. (JSON, or @path / @- to read a file or stdin). |
  | `--on <value>`         | No       | Unique column to resolve the conflict against.                                                                                                                                                                                       |
</CommandTable>

### studio tables import [#studio-tables-import]

Import a CSV, into a new table by default

```bash
studio tables import [path] [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                         |
  | -------- | -------- | --------------------------------------------------- |
  | `path`   | No       | Local CSV file to import; omit when using --file-id |
</CommandTable>

**Options**

<CommandTable>
  | Option                           | Required | Description                                                                                           |
  | -------------------------------- | -------- | ----------------------------------------------------------------------------------------------------- |
  | `--name <name>`                  | No       | Identifier for the new table: letters, numbers, and underscores; defaults to the sanitized file name. |
  | `--table-id <id>`                | No       | Import into this existing table instead of creating one.                                              |
  | `--mode <append\|replace>`       | No       | How to write into --table-id (default: append). Accepted values: `append`, `replace`.                 |
  | `--folder <path>`                | No       | Folder path for the new table, as shown in the app.                                                   |
  | `--file-id <id>`                 | No       | Import a file already in the workspace instead of a local path.                                       |
  | `--mapping <json\|@file>`        | No       | Column mapping (--table-id only).                                                                     |
  | `--create-columns <json\|@file>` | No       | Columns to create (--table-id only).                                                                  |
  | `--timezone <iana>`              | No       | Timezone for date parsing, e.g. America/New\_York.                                                    |
  | `-y, --yes`                      | No       | Confirm this destructive operation (required with --mode replace).                                    |
  | `--no-wait`                      | No       | Return once the import is queued instead of watching it.                                              |
</CommandTable>

### studio tables ls [#studio-tables-ls]

List table resources and child folders together

```bash
studio tables ls [path] [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | No       | Folder path to list; defaults to the root folder |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                                           |
  | ----------------- | -------- | --------------------------------------------------------------------- |
  | `--search <text>` | No       | Filter folders and resources by name.                                 |
  | `--limit <n>`     | No       | Maximum combined items to return (0 for everything). Defaults to `0`. |
</CommandTable>

### studio tables mkdir [#studio-tables-mkdir]

Create a table directory at a path

```bash
studio tables mkdir <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | Yes      | Folder path to create; the leading / is optional |
</CommandTable>

## studio tools [#studio-tools]

### studio tools execute [#studio-tools-execute]

Run one built-in tool and print what it produced (OAuth login or personal API key required)

```bash
studio tools execute <toolId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                                                                   |
  | -------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `toolId` | Yes      | Tool identifier. An unversioned name resolves to the newest version, and the response echoes the resolved id. |
</CommandTable>

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                                               |
  | ------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
  | `--input <json\|@file>`   | No       | Tool arguments as JSON, keyed by the parameter ids `studio tools get &lt;toolId&gt;` lists (JSON, or @path / @- to read a file or stdin). |
  | `--credential-id <value>` | No       | Credential to authenticate with, required for OAuth tools.                                                                                |
  | `--timeout <value>`       | No       | Seconds to wait before abandoning the call.                                                                                               |
</CommandTable>

### studio tools get [#studio-tools-get]

Get Tool

```bash
studio tools get <toolId>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                                                                   |
  | -------- | -------- | ------------------------------------------------------------------------------------------------------------- |
  | `toolId` | Yes      | Tool identifier. An unversioned name resolves to the newest version, and the response echoes the resolved id. |
</CommandTable>

### studio tools list [#studio-tools-list]

List Tools

```bash
studio tools list [options]
```

**Options**

<CommandTable>
  | Option                     | Required | Description                                                                                                                                                                      |
  | -------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--search <value>`         | No       | Case-insensitive substring match against the tool id, name, and description.                                                                                                     |
  | `--hosted-api-key <value>` | No       | Restrict to tools by how their API key is supplied. Accepted values: `always`, `conditional`, `none`.                                                                            |
  | `--oauth-provider <value>` | No       | Restrict to tools that authenticate against this OAuth service.                                                                                                                  |
  | `--sort-by <value>`        | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `id`, `name`. |
  | `--sort-order <value>`     | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                  |
  | `--limit <n>`              | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                     |
</CommandTable>

## studio workflow-mcp-servers [#studio-workflow-mcp-servers]

### studio workflow-mcp-servers create [#studio-workflow-mcp-servers-create]

Create Workflow MCP Server (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers create [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                                                                                          |
  | ----------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`        | Yes      | Server display name, shown to connecting MCP clients.                                                                                                                |
  | `--description <value>` | No       | Optional server description.                                                                                                                                         |
  | `--is-public`           | No       | Whether the server answers MCP clients without a Studio API key. Defaults to false — a public server executes the workflows it publishes for anyone holding its URL. |
  | `--no-is-public`        | No       | Send --is-public as false.                                                                                                                                           |
  | `--workflow <value...>` | No       | Deployed workflows to publish as tools on the new server. (space-separated, or @path / @- with one value per line; @@value for a literal leading @).                 |
</CommandTable>

### studio workflow-mcp-servers delete [#studio-workflow-mcp-servers-delete]

Delete Workflow MCP Server (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers delete <serverId> [options]
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                            |
  | ---------- | -------- | -------------------------------------- |
  | `serverId` | Yes      | Unique workflow-MCP server identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio workflow-mcp-servers tools create [#studio-workflow-mcp-servers-tools-create]

Publish Workflow As MCP Tool (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers tools create <serverId> [options]
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                            |
  | ---------- | -------- | -------------------------------------- |
  | `serverId` | Yes      | Unique workflow-MCP server identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                                   | Required | Description                                                                                                                                                                                                                                                 |
  | ---------------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow-id <value>`                  | Yes      | Deployed workflow to publish. The workflow must already be deployed.                                                                                                                                                                                        |
  | `--tool-name <value>`                    | No       | Name MCP clients call. Normalized to the MCP tool-name grammar, and derived from the workflow name when omitted.                                                                                                                                            |
  | `--tool-description <value>`             | No       | Description shown to MCP clients. Derived from the workflow name when omitted.                                                                                                                                                                              |
  | `--parameter-descriptions <json\|@file>` | No       | Per-field description overrides applied to the schema generated from the deployed workflow inputs, as \[\{"name":"email","description":"Customer email address"}]. A name matching no input field is ignored (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio workflow-mcp-servers tools list [#studio-workflow-mcp-servers-tools-list]

List Workflow MCP Tools (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers tools list <serverId>
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                            |
  | ---------- | -------- | -------------------------------------- |
  | `serverId` | Yes      | Unique workflow-MCP server identifier. |
</CommandTable>

### studio workflow-mcp-servers tools delete [#studio-workflow-mcp-servers-tools-delete]

Unpublish Workflow MCP Tool (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers tools delete <serverId> <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                                  |
  | ------------ | -------- | -------------------------------------------- |
  | `serverId`   | Yes      | Unique workflow-MCP server identifier.       |
  | `workflowId` | Yes      | Workflow published as a tool on this server. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio workflow-mcp-servers get [#studio-workflow-mcp-servers-get]

Get Workflow MCP Server (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers get <serverId>
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                            |
  | ---------- | -------- | -------------------------------------- |
  | `serverId` | Yes      | Unique workflow-MCP server identifier. |
</CommandTable>

### studio workflow-mcp-servers list [#studio-workflow-mcp-servers-list]

List Workflow MCP Servers (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                         |
</CommandTable>

### studio workflow-mcp-servers update [#studio-workflow-mcp-servers-update]

Update Workflow MCP Server (OAuth login or personal API key required)

```bash
studio workflow-mcp-servers update <serverId> [options]
```

**Arguments**

<CommandTable>
  | Argument   | Required | Description                            |
  | ---------- | -------- | -------------------------------------- |
  | `serverId` | Yes      | Unique workflow-MCP server identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                      |
  | ----------------------- | -------- | ------------------------------------------------------------------------------------------------ |
  | `--name <value>`        | No       | Server display name, shown to connecting MCP clients.                                            |
  | `--description <value>` | No       | New server description, or null to clear it. (--description null sends the word, not JSON null). |
  | `--is-public`           | No       | Whether the server answers MCP clients without a Studio API key.                                 |
  | `--no-is-public`        | No       | Send --is-public as false.                                                                       |
</CommandTable>

## studio workflows [#studio-workflows]

Also spelled `studio workflow`.

### studio workflows activate create [#studio-workflows-activate-create]

Activate Workflow Version (OAuth login or personal API key required)

```bash
studio workflows activate create <workflowId> <version> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
  | `version`    | Yes      | Numeric deployment version. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio workflows operations apply [#studio-workflows-operations-apply]

Apply Workflow Operations (OAuth login or personal API key required)

```bash
studio workflows operations apply <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                              | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
  | ----------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--dry-run`                         | No       | Validate and lint without persisting. The response is identical to the committed write of the same body, so a caller can inspect `lint` and then re-send the request for real. Nothing is written, no audit entry is recorded, and collaborators are not notified.                                                                                                                                                                                                                                                                                                                                      |
  | `--no-dry-run`                      | No       | Send --dry-run as false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
  | `--operations <json\|@file>`        | Yes      | Edits to apply, in a single batch, keyed by operation\_type: \[\{"operation\_type":"add","block\_id":"my-fn","params":\{"type":"function","name":"My Fn","inputs":\{"code":"return \{ok:true}"}}},\{"operation\_type":"edit","block\_id":"\<uuid>","params":\{"name":"Renamed","connections":\{"success":"my-fn"}}},\{"operation\_type":"delete","block\_id":"\<uuid>"}]. Also extract\_from\_subflow, whose params carry \{"subflowId":"\<loop-id>"}, and insert\_into\_subflow, which creates a block and so takes an add’s params plus that subflowId (JSON, or @path / @- to read a file or stdin). |
  | `--atomic`                          | No       | Fail the whole batch when any operation is declined or any block input would be dropped. The default applies what it can and reports the rest in `skipped` and `inputValidationErrors`; `true` writes nothing and answers `409` instead.                                                                                                                                                                                                                                                                                                                                                                |
  | `--no-atomic`                       | No       | Send --atomic as false.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
  | `--layout <value>`                  | No       | Whether to reposition blocks the batch touched. `targeted` (default) nudges only the affected subgraph; `none` leaves every position exactly as supplied. Accepted values: `targeted`, `none`.                                                                                                                                                                                                                                                                                                                                                                                                          |
  | `--set-block-enabled <json\|@file>` | No       | Blocks to enable or disable, applied after --operations: \[\{"block\_id":"\<uuid>","enabled":false}]. Disabling a loop or parallel cascades to its unlocked descendants; enabling a block whose container is disabled is declined (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                                                                                                                                                        |
  | `-y, --yes`                         | No       | Confirm this operation (required unless --dry-run).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
</CommandTable>

### studio workflows variables update [#studio-workflows-variables-update]

Update Workflow Variables

```bash
studio workflows variables update <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                       | Required | Description                                                                                                                                                                                                                                                                       |
  | ---------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--operations <json\|@file>` | Yes      | Variable changes to apply in order, keyed by operation: \[\{"operation":"add","name":"my\_var","type":"string","value":"hello"},\{"operation":"edit","name":"my\_var","value":"updated"},\{"operation":"delete","name":"my\_var"}] (JSON, or @path / @- to read a file or stdin). |
  | `-y, --yes`                  | Yes      | Confirm this operation.                                                                                                                                                                                                                                                           |
</CommandTable>

### studio workflows runs cancel [#studio-workflows-runs-cancel]

Cancel a running workflow run

```bash
studio workflows runs cancel <runId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                     |
  | -------- | -------- | ------------------------------- |
  | `runId`  | Yes      | Unique workflow run identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                    | Required | Description  |
  | ------------------------- | -------- | ------------ |
  | `--workflow <workflowId>` | Yes      | Workflow ID. |
</CommandTable>

### studio workflows runs get [#studio-workflows-runs-get]

Show run status (requested outputs are included in JSON or YAML output)

```bash
studio workflows runs get <runId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                     |
  | -------- | -------- | ------------------------------- |
  | `runId`  | Yes      | Unique workflow run identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                       | Required | Description                                                                                                                                                                                              |
  | ---------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <workflowId>`    | Yes      | Workflow ID.                                                                                                                                                                                             |
  | `--include-output`           | No       | Include the final output in JSON or YAML output.                                                                                                                                                         |
  | `--select-output <value...>` | No       | Include blockId or blockId.path values in JSON or YAML output; block names are not resolved on a finished run (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--include-file-base64`      | No       | Inline each produced file's bytes as base64. Requires `includeOutput`. A file above the inline ceiling answers `413` naming its download path; fetch large files from `downloadPath` instead.            |
  | `--no-include-file-base64`   | No       | Send --include-file-base64 as false.                                                                                                                                                                     |
  | `--base64-max-bytes <value>` | No       | Per-file inline ceiling, lowering but never raising the server limit of 16 MiB.                                                                                                                          |
</CommandTable>

### studio workflows runs list [#studio-workflows-runs-list]

List runs for a workflow

```bash
studio workflows runs list [options]
```

**Options**

<CommandTable>
  | Option                    | Required | Description                                                                                                                                                                                                                                   |
  | ------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <workflowId>` | Yes      | Workflow ID.                                                                                                                                                                                                                                  |
  | `--status <value>`        | No       | Filter by run status. Accepted values: `pending`, `running`, `completed`, `failed`, `cancelled`, `paused`.                                                                                                                                    |
  | `--trigger <value>`       | No       | Filter by trigger type.                                                                                                                                                                                                                       |
  | `--start-date <value>`    | No       | Only include runs started at or after this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant.  |
  | `--end-date <value>`      | No       | Only include runs started at or before this UTC ISO 8601 timestamp, e.g. `2026-08-06T00:00:00Z`. A date without a time, or a timestamp carrying a UTC offset instead of `Z`, is rejected, as is year `0000`, which names no storable instant. |
  | `--limit <n>`             | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                                                                                                                |
  | `--cursor <value>`        | No       | Continue from nextCursor returned by a previous result.                                                                                                                                                                                       |
  | `--order <value>`         | No       | Sort direction by run start time. This list is sortable only by run start time, so it takes `order` in place of `sortBy`/`sortOrder`, which it rejects. Accepted values: `asc`, `desc`.                                                       |
</CommandTable>

### studio workflows runs resume [#studio-workflows-runs-resume]

Resume a paused run (output is included in JSON or YAML output)

```bash
studio workflows runs resume <runId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                     |
  | -------- | -------- | ------------------------------- |
  | `runId`  | Yes      | Unique workflow run identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                    | Required | Description                                                         |
  | ------------------------- | -------- | ------------------------------------------------------------------- |
  | `--workflow <workflowId>` | Yes      | Workflow ID.                                                        |
  | `--context <value>`       | Yes      | Pause context ID returned by run status.                            |
  | `--input <json\|@file>`   | No       | Resume input as JSON (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio workflows runs wait [#studio-workflows-runs-wait]

Wait for a run to reach a terminal state, then show it

```bash
studio workflows runs wait <runId> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                     |
  | -------- | -------- | ------------------------------- |
  | `runId`  | Yes      | Unique workflow run identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                     | Required | Description                                                                                                                                     |
  | -------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <workflowId>`  | Yes      | Workflow ID.                                                                                                                                    |
  | `--wait-timeout <seconds>` | No       | Give up after this many seconds, or 0 to wait indefinitely (default: 3600). Bounds the whole wait; STUDIO\_TIMEOUT\_SECONDS bounds one request. |
</CommandTable>

### studio workflows create [#studio-workflows-create]

Create Workflow

```bash
studio workflows create [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                                 |
  | ----------------------- | -------- | ----------------------------------------------------------- |
  | `--name <value>`        | Yes      | Workflow name.                                              |
  | `--description <value>` | No       | Optional workflow description.                              |
  | `--folder <value>`      | No       | Folder path as shown in the app; the leading / is optional. |
</CommandTable>

### studio workflows folders create [#studio-workflows-folders-create]

Create a workflow folder at a path

```bash
studio workflows folders create <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio workflows folders delete [#studio-workflows-folders-delete]

Delete Workflow Folder

```bash
studio workflows folders delete <path> [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                                |
  | -------- | -------- | ---------------------------------------------------------- |
  | `path`   | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

**Options**

<CommandTable>
  | Option        | Required | Description                            |
  | ------------- | -------- | -------------------------------------- |
  | `--recursive` | No       | Delete the folder and its descendants. |
  | `-y, --yes`   | Yes      | Confirm this operation.                |
</CommandTable>

### studio workflows folders list [#studio-workflows-folders-list]

List workflow folders

```bash
studio workflows folders list [options]
```

Also available as `studio workflows folders ls`.

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--parent <value>`     | No       | Direct parent folder path.                                                                                                                                                                           |
  | `--search <value>`     | No       | Case-insensitive substring match against the folder name.                                                                                                                                            |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
</CommandTable>

### studio workflows folders move [#studio-workflows-folders-move]

Rename or move a workflow folder

```bash
studio workflows folders move <path> <destination>
```

Also available as `studio workflows folders mv`.

**Arguments**

<CommandTable>
  | Argument      | Required | Description                                                |
  | ------------- | -------- | ---------------------------------------------------------- |
  | `path`        | Yes      | Folder path as shown in the app; the leading / is optional |
  | `destination` | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio workflows delete [#studio-workflows-delete]

Delete Workflow

```bash
studio workflows delete <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio workflows chat unpublish [#studio-workflows-chat-unpublish]

Take a workflow’s chat deployment offline (OAuth login or personal API key required)

```bash
studio workflows chat unpublish <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio workflows chat status [#studio-workflows-chat-status]

Show a workflow’s chat deployment (OAuth login or personal API key required)

```bash
studio workflows chat status <workflowId>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

### studio workflows chat publish [#studio-workflows-chat-publish]

Publish or replace a workflow’s chat deployment (OAuth login or personal API key required)

```bash
studio workflows chat publish <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                           | Required | Description                                                                                                                                                  |
  | -------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--identifier <value>`           | Yes      | URL slug the deployed chat answers on. Must be free across live deployments.                                                                                 |
  | `--title <value>`                | Yes      | Title shown to visitors.                                                                                                                                     |
  | `--description <value>`          | No       | Description shown to visitors. Omitted clears it.                                                                                                            |
  | `--customizations <json\|@file>` | No       | Presentation overrides. Omitted fields take platform defaults. (JSON, or @path / @- to read a file or stdin).                                                |
  | `--auth-type <value>`            | No       | How visitors are gated. `public` leaves the chat open to anyone holding the URL. Accepted values: `public`, `password`, `email`, `sso`.                      |
  | `--password <value>`             | No       | Write-only password. Required whenever `authType` is `password`, and rejected otherwise. Never readable back.                                                |
  | `--allowed-emails <json\|@file>` | No       | Email addresses or domains admitted under `email` and `sso` gating. At least one is required for those modes. (JSON, or @path / @- to read a file or stdin). |
  | `--output-configs <json\|@file>` | No       | Block outputs to surface to visitors. Omitted surfaces none. (JSON, or @path / @- to read a file or stdin).                                                  |
  | `--include-thinking`             | No       | Allow visitors to receive provider thinking events.                                                                                                          |
  | `--no-include-thinking`          | No       | Send --include-thinking as false.                                                                                                                            |
  | `--include-tool-calls`           | No       | Allow visitors to receive tool lifecycle events.                                                                                                             |
  | `--no-include-tool-calls`        | No       | Send --include-tool-calls as false.                                                                                                                          |
  | `-y, --yes`                      | Yes      | Confirm this operation.                                                                                                                                      |
</CommandTable>

### studio workflows deploy [#studio-workflows-deploy]

Deploy Workflow (OAuth login or personal API key required)

```bash
studio workflows deploy <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                       |
  | ----------------------- | -------- | ------------------------------------------------- |
  | `--name <value>`        | No       | Optional label for the deployment version.        |
  | `--description <value>` | No       | Optional release note for the deployment version. |
</CommandTable>

### studio workflows duplicate create [#studio-workflows-duplicate-create]

Duplicate Workflow

```bash
studio workflows duplicate create <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option             | Required | Description                                                                     |
  | ------------------ | -------- | ------------------------------------------------------------------------------- |
  | `--name <value>`   | No       | Name for the copy. Defaults to the source name, deduplicated within the folder. |
  | `--folder <value>` | No       | Folder path as shown in the app; the leading / is optional.                     |
</CommandTable>

### studio workflows run [#studio-workflows-run]

Run a deployed workflow or execute saved state manually

```bash
studio workflows run <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                                | Required | Description                                                                                                                                                                                                                                       |
  | ------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--input <json\|@file>`               | No       | Trigger input as JSON (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                              |
  | `--async`                             | No       | Queue the run and return immediately.                                                                                                                                                                                                             |
  | `--execution-timeout-seconds <value>` | No       | Maximum duration of an asynchronous run, in seconds, capped by the plan's execution timeout. Requires `async: true`; otherwise returns `400`.                                                                                                     |
  | `--select-output <value...>`          | No       | Return streamed outputs as blockName.path or childWorkflowId.blockName.path; selecting a child workflow applies to every invocation, requires --follow (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--include-file-base64`               | No       | Inline eligible output files as base64 content. Rejected when `async` is true.                                                                                                                                                                    |
  | `--no-include-file-base64`            | No       | Send --include-file-base64 as false.                                                                                                                                                                                                              |
  | `--base64-max-bytes <value>`          | No       | Maximum total bytes of file content to inline as base64, lowering but never raising the server limit of 16 MiB. Rejected when `async` is true.                                                                                                    |
  | `--run-id <value>`                    | No       | One-shot identifier for this run; NOT an idempotency key — reusing a claimed value fails with RUN\_ID\_CONFLICT instead of replaying the first result, and a fresh value starts another run.                                                      |
  | `--manual`                            | No       | Run the current saved workflow state instead of the active deployment.                                                                                                                                                                            |
  | `--trigger <blockId>`                 | No       | Enter a manual run through this runnable trigger (requires --manual).                                                                                                                                                                             |
  | `--mock-payload`                      | No       | Use the selected trigger's server-derived mock payload (requires --manual).                                                                                                                                                                       |
  | `--from-block <blockId>`              | No       | Run manually from this saved workflow block.                                                                                                                                                                                                      |
  | `--source-run <runId>`                | No       | Prior run whose persisted state supplies upstream outputs (requires --from-block).                                                                                                                                                                |
  | `--follow`                            | No       | Stream the run as it happens; progress on stderr, result on stdout. The stream reports only success and output, so the result omits the run id and timings a non-streaming run returns.                                                           |
  | `--include-thinking`                  | No       | Show model reasoning while following (requires --follow).                                                                                                                                                                                         |
  | `--include-tool-calls`                | No       | Show tool calls while following (requires --follow).                                                                                                                                                                                              |
</CommandTable>

### studio workflows export [#studio-workflows-export]

Print a workflow as a portable JSON document

```bash
studio workflows export <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                               |
  | ---------------------- | -------- | --------------------------------------------------------- |
  | `--include-references` | No       | Include non-secret resource identities for mapped import. |
</CommandTable>

### studio workflows get [#studio-workflows-get]

Get Workflow

```bash
studio workflows get <workflowId>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

### studio workflows deployment status [#studio-workflows-deployment-status]

Show a workflow’s current deployment

```bash
studio workflows deployment status <workflowId>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

### studio workflows deployment update [#studio-workflows-deployment-update]

Update Workflow Public API Access (OAuth login or personal API key required)

```bash
studio workflows deployment update <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                          | Required | Description                                                                                                         |
  | ------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------- |
  | `--is-public-api <true\|false>` | Yes      | Whether the deployed workflow should accept unauthenticated public API execution. Accepted values: `true`, `false`. |
</CommandTable>

### studio workflows state get [#studio-workflows-state-get]

Get Workflow State

```bash
studio workflows state get <workflowId>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

### studio workflows state replace [#studio-workflows-state-replace]

Replace Workflow State (OAuth login or personal API key required)

```bash
studio workflows state replace <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                      | Required | Description                                                                                                                                                                                                                                                        |
  | --------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `--dry-run`                 | No       | Validate and lint without persisting. The response is identical to the committed write of the same body, so a caller can inspect `lint` and then re-send the request for real. Nothing is written, no audit entry is recorded, and collaborators are not notified. |
  | `--no-dry-run`              | No       | Send --dry-run as false.                                                                                                                                                                                                                                           |
  | `--blocks <json\|@file>`    | Yes      | Blocks keyed by block id. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                           |
  | `--edges <json\|@file>`     | Yes      | Directed connections between blocks. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                                                |
  | `--loops <json\|@file>`     | No       | Ignored on write: loop containers are recomputed from `blocks`. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                     |
  | `--parallels <json\|@file>` | No       | Ignored on write: parallel containers are recomputed from `blocks`. (JSON, or @path / @- to read a file or stdin).                                                                                                                                                 |
  | `--variables <json\|@file>` | No       | Replacement variable set. Omit to leave the stored variables untouched. (JSON, or @path / @- to read a file or stdin).                                                                                                                                             |
  | `-y, --yes`                 | No       | Confirm this operation (required unless --dry-run).                                                                                                                                                                                                                |
</CommandTable>

### studio workflows versions get [#studio-workflows-versions-get]

Get Workflow Version

```bash
studio workflows versions get <workflowId> <version>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
  | `version`    | Yes      | Numeric deployment version. |
</CommandTable>

### studio workflows versions list [#studio-workflows-versions-list]

List Workflow Versions

```bash
studio workflows versions list <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option             | Required | Description                                                    |
  | ------------------ | -------- | -------------------------------------------------------------- |
  | `--limit <n>`      | No       | Maximum items to return (0 for everything). Defaults to `100`. |
  | `--cursor <value>` | No       | Continue from nextCursor returned by a previous result.        |
</CommandTable>

### studio workflows versions update [#studio-workflows-versions-update]

Update Workflow Version

```bash
studio workflows versions update <workflowId> <version> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
  | `version`    | Yes      | Numeric deployment version. |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                                           |
  | ----------------------- | -------- | --------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`        | No       | New label for the deployment version.                                                                                 |
  | `--description <value>` | No       | New release note for the deployment version, or null to clear it. (--description null sends the word, not JSON null). |
</CommandTable>

### studio workflows import [#studio-workflows-import]

Import Workflow

```bash
studio workflows import [options]
```

**Options**

<CommandTable>
  | Option                             | Required | Description                                                                                                                         |
  | ---------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <json\|@file>`         | Yes      | Workflow export object, bare workflow state, or JSON string containing either form. (JSON, or @path / @- to read a file or stdin).  |
  | `--folder <value>`                 | No       | Folder path as shown in the app; the leading / is optional.                                                                         |
  | `--name <value>`                   | No       | Override for the imported workflow name.                                                                                            |
  | `--description <value>`            | No       | Override for the imported workflow description.                                                                                     |
  | `--mappings <json\|@file>`         | No       | Mappings keyed by resource type and source identifier. (JSON, or @path / @- to read a file or stdin).                               |
  | `--bindings <json\|@file>`         | No       | Resolved and unresolved source occurrences with their destination selections. (JSON, or @path / @- to read a file or stdin).        |
  | `--dependent-values <json\|@file>` | No       | Destination-dependent choices keyed by source workflow, block, and field identities. (JSON, or @path / @- to read a file or stdin). |
  | `--request-id <value>`             | No       | Stable client request ID for reconciliation and identical retries.                                                                  |
  | `--preview-fingerprint <value>`    | No       | Fingerprint of the reviewed preview and its choices.                                                                                |
  | `--wait`                           | No       | Wait for the committed operation to finish; missing configuration and failure exit nonzero.                                         |
  | `--wait-timeout <seconds>`         | No       | Maximum operation wait in seconds (default 3600; 0 waits indefinitely).                                                             |
</CommandTable>

### studio workflows list [#studio-workflows-list]

List Workflows

```bash
studio workflows list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                                                                                                                                       |
  | ---------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--scope <value>`      | No       | Which lifecycle set to list: `active` (default) for live workflows, `archived` for workflows a `DELETE` archived. The folder filter resolves against active folders only, so pairing it with `archived` returns an empty page when the containing folder was archived too. Accepted values: `active`, `archived`. |
  | `--folder <value>`     | No       | Folder path as shown in the app; the leading / is optional.                                                                                                                                                                                                                                                       |
  | `--deployed-only`      | No       | Return only workflows with an active deployment when true.                                                                                                                                                                                                                                                        |
  | `--no-deployed-only`   | No       | Send --deployed-only as false.                                                                                                                                                                                                                                                                                    |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                                                                                                                                      |
  | `--search <value>`     | No       | Case-insensitive substring match against the resource name.                                                                                                                                                                                                                                                       |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `position`, `name`, `createdAt`, `updatedAt`, `runCount`.                                                                                      |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                                                                                                                                   |
</CommandTable>

### studio workflows move [#studio-workflows-move]

Move Workflows

```bash
studio workflows move [options]
```

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                                                             |
  | ----------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <value...>` | Yes      | Workflows to move. Duplicates are collapsed. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--to <value>`          | Yes      | Destination folder path; / moves the workflows to the workspace root.                                                                   |
</CommandTable>

### studio workflows import-preview [#studio-workflows-import-preview]

Preview Workflow Import

```bash
studio workflows import-preview [options]
```

**Options**

<CommandTable>
  | Option                             | Required | Description                                                                                                                         |
  | ---------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <json\|@file>`         | Yes      | Workflow export object, bare workflow state, or JSON string containing either form. (JSON, or @path / @- to read a file or stdin).  |
  | `--folder <value>`                 | No       | Folder path as shown in the app; the leading / is optional.                                                                         |
  | `--name <value>`                   | No       | Override for the imported workflow name.                                                                                            |
  | `--description <value>`            | No       | Override for the imported workflow description.                                                                                     |
  | `--mappings <json\|@file>`         | No       | Mappings keyed by resource type and source identifier. (JSON, or @path / @- to read a file or stdin).                               |
  | `--bindings <json\|@file>`         | No       | Resolved and unresolved source occurrences with their destination selections. (JSON, or @path / @- to read a file or stdin).        |
  | `--dependent-values <json\|@file>` | No       | Destination-dependent choices keyed by source workflow, block, and field identities. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio workflows restore [#studio-workflows-restore]

Restore an archived workflow

```bash
studio workflows restore <workflowId>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

### studio workflows revert create [#studio-workflows-revert-create]

Revert Workflow To Version (OAuth login or personal API key required)

```bash
studio workflows revert create <workflowId> <version> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                                                             |
  | ------------ | -------- | ----------------------------------------------------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier.                                             |
  | `version`    | Yes      | Numeric deployment version, or `active` for the currently live version. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio workflows rollback [#studio-workflows-rollback]

Rollback Workflow (OAuth login or personal API key required)

```bash
studio workflows rollback <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                   |
  | ---------------------- | -------- | ----------------------------------------------------------------------------- |
  | `--to-version <value>` | No       | Deployment version to reactivate. Omit to select the previous active version. |
  | `-y, --yes`            | Yes      | Confirm this operation.                                                       |
</CommandTable>

### studio workflows undeploy [#studio-workflows-undeploy]

Take a workflow out of deployment (OAuth login or personal API key required)

```bash
studio workflows undeploy <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option      | Required | Description             |
  | ----------- | -------- | ----------------------- |
  | `-y, --yes` | Yes      | Confirm this operation. |
</CommandTable>

### studio workflows update [#studio-workflows-update]

Update Workflow

```bash
studio workflows update <workflowId> [options]
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                 |
  | ------------ | -------- | --------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier. |
</CommandTable>

**Options**

<CommandTable>
  | Option                  | Required | Description                                                                                           |
  | ----------------------- | -------- | ----------------------------------------------------------------------------------------------------- |
  | `--name <value>`        | No       | Replacement workflow name.                                                                            |
  | `--description <value>` | No       | Replacement workflow description; null clears it. (--description null sends the word, not JSON null). |
  | `--folder <value>`      | No       | Folder path as shown in the app; the leading / is optional.                                           |
</CommandTable>

### studio workflows mv [#studio-workflows-mv]

Move a workflow to a folder

```bash
studio workflows mv <workflowId> <folder>
```

**Arguments**

<CommandTable>
  | Argument     | Required | Description                                                |
  | ------------ | -------- | ---------------------------------------------------------- |
  | `workflowId` | Yes      | Unique workflow identifier.                                |
  | `folder`     | Yes      | Folder path as shown in the app; the leading / is optional |
</CommandTable>

### studio workflows ls [#studio-workflows-ls]

List workflow resources and child folders together

```bash
studio workflows ls [path] [options]
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | No       | Folder path to list; defaults to the root folder |
</CommandTable>

**Options**

<CommandTable>
  | Option            | Required | Description                                                           |
  | ----------------- | -------- | --------------------------------------------------------------------- |
  | `--search <text>` | No       | Filter folders and resources by name.                                 |
  | `--limit <n>`     | No       | Maximum combined items to return (0 for everything). Defaults to `0`. |
</CommandTable>

### studio workflows mkdir [#studio-workflows-mkdir]

Create a workflow directory at a path

```bash
studio workflows mkdir <path>
```

**Arguments**

<CommandTable>
  | Argument | Required | Description                                      |
  | -------- | -------- | ------------------------------------------------ |
  | `path`   | Yes      | Folder path to create; the leading / is optional |
</CommandTable>

## studio workspaces [#studio-workspaces]

Also spelled `studio workspace`.

### studio workspaces fork [#studio-workspaces-fork]

Fork Workspace (OAuth login or personal API key required)

```bash
studio workspaces fork [options]
```

**Options**

<CommandTable>
  | Option                          | Required | Description                                                                                                                                   |
  | ------------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`                | No       | Display name of the workflow or workspace.                                                                                                    |
  | `--copy <json\|@file>`          | No       | Explicit resource selections to copy into the new fork; omitted resource kinds are not copied. (JSON, or @path / @- to read a file or stdin). |
  | `--request-id <value>`          | Yes      | Stable client request ID for reconciliation and identical retries.                                                                            |
  | `--preview-fingerprint <value>` | Yes      | Fingerprint of the reviewed preview and its choices.                                                                                          |
  | `--wait`                        | No       | Wait for the committed operation to finish; missing configuration and failure exit nonzero.                                                   |
  | `--wait-timeout <seconds>`      | No       | Maximum operation wait in seconds (default 3600; 0 waits indefinitely).                                                                       |
</CommandTable>

### studio workspaces get [#studio-workspaces-get]

Get Workspace

```bash
studio workspaces get
```

### studio workspaces fork-availability [#studio-workspaces-fork-availability]

Get Workspace Fork Availability (OAuth login or personal API key required)

```bash
studio workspaces fork-availability
```

### studio workspaces lineage [#studio-workspaces-lineage]

Get Workspace Fork Lineage (OAuth login or personal API key required)

```bash
studio workspaces lineage
```

### studio workspaces mappings get [#studio-workspaces-mappings-get]

Get Workspace Fork Mappings (OAuth login or personal API key required)

```bash
studio workspaces mappings get [options]
```

**Options**

<CommandTable>
  | Option                         | Required | Description                                                                                                                         |
  | ------------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------- |
  | `--other-workspace-id <value>` | Yes      | Workspace on the other side of the direct fork edge.                                                                                |
  | `--direction <value>`          | Yes      | Push means current to other; pull means other to current, independent of parent/child orientation. Accepted values: `push`, `pull`. |
  | `--limit <n>`                  | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                      |
  | `--cursor <value>`             | No       | Continue from nextCursor returned by a previous result.                                                                             |
  | `--sort-by <value>`            | No       | Supported stable sort key for this collection. Accepted values: `id`.                                                               |
  | `--sort-order <value>`         | No       | Sort direction. Accepted values: `asc`.                                                                                             |
</CommandTable>

### studio workspaces mappings update [#studio-workspaces-mappings-update]

Update Workspace Fork Mappings (OAuth login or personal API key required)

```bash
studio workspaces mappings update [options]
```

**Options**

<CommandTable>
  | Option                         | Required | Description                                                                                                                         |
  | ------------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------- |
  | `--other-workspace-id <value>` | Yes      | Workspace on the other side of the direct fork edge.                                                                                |
  | `--direction <value>`          | Yes      | Push means current to other; pull means other to current, independent of parent/child orientation. Accepted values: `push`, `pull`. |
  | `--mappings <json\|@file>`     | Yes      | Mappings keyed by resource type and source identifier. (JSON, or @path / @- to read a file or stdin).                               |
</CommandTable>

### studio workspaces operations get [#studio-workspaces-operations-get]

Get Workspace Operation

```bash
studio workspaces operations get <operationId>
```

**Arguments**

<CommandTable>
  | Argument      | Required | Description                                      |
  | ------------- | -------- | ------------------------------------------------ |
  | `operationId` | Yes      | Durable operation identifier to use for polling. |
</CommandTable>

### studio workspaces operations list [#studio-workspaces-operations-list]

List Workspace Operations

```bash
studio workspaces operations list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                        |
  | ---------------------- | -------- | ------------------------------------------------------------------ |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `100`.     |
  | `--cursor <value>`     | No       | Continue from nextCursor returned by a previous result.            |
  | `--request-id <value>` | No       | Stable client request ID for reconciliation and identical retries. |
</CommandTable>

### studio workspaces operations wait [#studio-workspaces-operations-wait]

Wait for copy and deployment readiness; exit 3 for configuration, 1 for failure, or 4 for timeout

```bash
studio workspaces operations wait <operationId> [options]
```

**Arguments**

<CommandTable>
  | Argument      | Required | Description                                          |
  | ------------- | -------- | ---------------------------------------------------- |
  | `operationId` | Yes      | Operation ID returned by import, fork, push, or pull |
</CommandTable>

**Options**

<CommandTable>
  | Option                     | Required | Description                                              |
  | -------------------------- | -------- | -------------------------------------------------------- |
  | `--wait-timeout <seconds>` | No       | Maximum total wait (default 3600; 0 waits indefinitely). |
</CommandTable>

### studio workspaces children [#studio-workspaces-children]

List Workspace Fork Children (OAuth login or personal API key required)

```bash
studio workspaces children [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                  |
  | ---------------------- | -------- | ---------------------------------------------------------------------------- |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `100`.               |
  | `--cursor <value>`     | No       | Continue from nextCursor returned by a previous result.                      |
  | `--sort-by <value>`    | No       | Supported stable sort key for this collection. Accepted values: `createdAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `desc`.                                     |
</CommandTable>

### studio workspaces fork-resources [#studio-workspaces-fork-resources]

List Workspace Fork Resources (OAuth login or personal API key required)

```bash
studio workspaces fork-resources [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                    |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `100`.                                                                                 |
  | `--cursor <value>`     | No       | Continue from nextCursor returned by a previous result.                                                                                        |
  | `--kind <value>`       | Yes      | Resource or operation kind. Accepted values: `files`, `tables`, `knowledgeBases`, `customTools`, `skills`, `mcpServers`, `workflowMcpServers`. |
  | `--sort-by <value>`    | No       | Supported stable sort key for this collection. Accepted values: `id`.                                                                          |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`.                                                                                                        |
</CommandTable>

### studio workspaces members [#studio-workspaces-members]

List workspace members

```bash
studio workspaces members [options]
```

**Options**

<CommandTable>
  | Option        | Required | Description                                                  |
  | ------------- | -------- | ------------------------------------------------------------ |
  | `--limit <n>` | No       | Maximum items to return (0 for everything). Defaults to `0`. |
</CommandTable>

### studio workspaces list [#studio-workspaces-list]

List Workspaces

```bash
studio workspaces list [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                                                                          |
  | ---------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--sort-by <value>`    | No       | Field used to sort the result. Sorting by `name` is case-sensitive and follows the storage collation, so do not rely on a case-insensitive order. Accepted values: `name`, `createdAt`, `updatedAt`. |
  | `--sort-order <value>` | No       | Sort direction. Accepted values: `asc`, `desc`.                                                                                                                                                      |
  | `--limit <n>`          | No       | Maximum items to return (0 for everything). Defaults to `0`.                                                                                                                                         |
</CommandTable>

### studio workspaces fork-preview [#studio-workspaces-fork-preview]

Preview Workspace Fork (OAuth login or personal API key required)

```bash
studio workspaces fork-preview [options]
```

**Options**

<CommandTable>
  | Option                 | Required | Description                                                                                                                                   |
  | ---------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--name <value>`       | No       | Display name of the workflow or workspace.                                                                                                    |
  | `--copy <json\|@file>` | No       | Explicit resource selections to copy into the new fork; omitted resource kinds are not copied. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio workspaces pull-preview [#studio-workspaces-pull-preview]

Preview Workspace Pull (OAuth login or personal API key required)

```bash
studio workspaces pull-preview [options]
```

**Options**

<CommandTable>
  | Option                             | Required | Description                                                                                                                                                                                       |
  | ---------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--other-workspace-id <value>`     | Yes      | Workspace on the other side of the direct fork edge.                                                                                                                                              |
  | `--mappings <json\|@file>`         | No       | Mappings keyed by resource type and source identifier. (JSON, or @path / @- to read a file or stdin).                                                                                             |
  | `--dependent-values <json\|@file>` | No       | Destination-dependent choices keyed by source workflow, block, and field identities. (JSON, or @path / @- to read a file or stdin).                                                               |
  | `--copy-resources <json\|@file>`   | No       | Explicit source resources to copy before syncing the workflows. (JSON, or @path / @- to read a file or stdin).                                                                                    |
  | `--drop-references <json\|@file>`  | No       | Source-deleted references explicitly acknowledged for removal; live source references cannot be dropped. (JSON, or @path / @- to read a file or stdin).                                           |
  | `--trigger-mappings <json\|@file>` | No       | Public trigger path choices from preview\.triggerSlots, addressed by source workflow and block IDs. Duplicate or unavailable choices are rejected. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio workspaces push-preview [#studio-workspaces-push-preview]

Preview Workspace Push (OAuth login or personal API key required)

```bash
studio workspaces push-preview [options]
```

**Options**

<CommandTable>
  | Option                             | Required | Description                                                                                                                                                                                       |
  | ---------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--other-workspace-id <value>`     | Yes      | Workspace on the other side of the direct fork edge.                                                                                                                                              |
  | `--mappings <json\|@file>`         | No       | Mappings keyed by resource type and source identifier. (JSON, or @path / @- to read a file or stdin).                                                                                             |
  | `--dependent-values <json\|@file>` | No       | Destination-dependent choices keyed by source workflow, block, and field identities. (JSON, or @path / @- to read a file or stdin).                                                               |
  | `--copy-resources <json\|@file>`   | No       | Explicit source resources to copy before syncing the workflows. (JSON, or @path / @- to read a file or stdin).                                                                                    |
  | `--drop-references <json\|@file>`  | No       | Source-deleted references explicitly acknowledged for removal; live source references cannot be dropped. (JSON, or @path / @- to read a file or stdin).                                           |
  | `--trigger-mappings <json\|@file>` | No       | Public trigger path choices from preview\.triggerSlots, addressed by source workflow and block IDs. Duplicate or unavailable choices are rejected. (JSON, or @path / @- to read a file or stdin). |
</CommandTable>

### studio workspaces pull [#studio-workspaces-pull]

Pull Workspace (OAuth login or personal API key required)

```bash
studio workspaces pull [options]
```

**Options**

<CommandTable>
  | Option                             | Required | Description                                                                                                                                                                                       |
  | ---------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--other-workspace-id <value>`     | Yes      | Workspace on the other side of the direct fork edge.                                                                                                                                              |
  | `--mappings <json\|@file>`         | No       | Mappings keyed by resource type and source identifier. (JSON, or @path / @- to read a file or stdin).                                                                                             |
  | `--dependent-values <json\|@file>` | No       | Destination-dependent choices keyed by source workflow, block, and field identities. (JSON, or @path / @- to read a file or stdin).                                                               |
  | `--copy-resources <json\|@file>`   | No       | Explicit source resources to copy before syncing the workflows. (JSON, or @path / @- to read a file or stdin).                                                                                    |
  | `--drop-references <json\|@file>`  | No       | Source-deleted references explicitly acknowledged for removal; live source references cannot be dropped. (JSON, or @path / @- to read a file or stdin).                                           |
  | `--trigger-mappings <json\|@file>` | No       | Public trigger path choices from preview\.triggerSlots, addressed by source workflow and block IDs. Duplicate or unavailable choices are rejected. (JSON, or @path / @- to read a file or stdin). |
  | `--request-id <value>`             | Yes      | Stable client request ID for reconciliation and identical retries.                                                                                                                                |
  | `--preview-fingerprint <value>`    | Yes      | Fingerprint of the reviewed preview and its choices.                                                                                                                                              |
  | `--wait`                           | No       | Wait for the committed operation to finish; missing configuration and failure exit nonzero.                                                                                                       |
  | `--wait-timeout <seconds>`         | No       | Maximum operation wait in seconds (default 3600; 0 waits indefinitely).                                                                                                                           |
  | `-y, --yes`                        | Yes      | Confirm this operation.                                                                                                                                                                           |
</CommandTable>

### studio workspaces push [#studio-workspaces-push]

Push Workspace (OAuth login or personal API key required)

```bash
studio workspaces push [options]
```

**Options**

<CommandTable>
  | Option                             | Required | Description                                                                                                                                                                                       |
  | ---------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `--other-workspace-id <value>`     | Yes      | Workspace on the other side of the direct fork edge.                                                                                                                                              |
  | `--mappings <json\|@file>`         | No       | Mappings keyed by resource type and source identifier. (JSON, or @path / @- to read a file or stdin).                                                                                             |
  | `--dependent-values <json\|@file>` | No       | Destination-dependent choices keyed by source workflow, block, and field identities. (JSON, or @path / @- to read a file or stdin).                                                               |
  | `--copy-resources <json\|@file>`   | No       | Explicit source resources to copy before syncing the workflows. (JSON, or @path / @- to read a file or stdin).                                                                                    |
  | `--drop-references <json\|@file>`  | No       | Source-deleted references explicitly acknowledged for removal; live source references cannot be dropped. (JSON, or @path / @- to read a file or stdin).                                           |
  | `--trigger-mappings <json\|@file>` | No       | Public trigger path choices from preview\.triggerSlots, addressed by source workflow and block IDs. Duplicate or unavailable choices are rejected. (JSON, or @path / @- to read a file or stdin). |
  | `--request-id <value>`             | Yes      | Stable client request ID for reconciliation and identical retries.                                                                                                                                |
  | `--preview-fingerprint <value>`    | Yes      | Fingerprint of the reviewed preview and its choices.                                                                                                                                              |
  | `--wait`                           | No       | Wait for the committed operation to finish; missing configuration and failure exit nonzero.                                                                                                       |
  | `--wait-timeout <seconds>`         | No       | Maximum operation wait in seconds (default 3600; 0 waits indefinitely).                                                                                                                           |
  | `-y, --yes`                        | Yes      | Confirm this operation.                                                                                                                                                                           |
</CommandTable>

### studio workspaces fork-rollback [#studio-workspaces-fork-rollback]

Rollback Workspace Fork (OAuth login or personal API key required)

```bash
studio workspaces fork-rollback [options]
```

**Options**

<CommandTable>
  | Option                         | Required | Description                                          |
  | ------------------------------ | -------- | ---------------------------------------------------- |
  | `--other-workspace-id <value>` | Yes      | Workspace on the other side of the direct fork edge. |
  | `-y, --yes`                    | Yes      | Confirm this operation.                              |
</CommandTable>

### studio workspaces unlink [#studio-workspaces-unlink]

Unlink Workspace Fork (OAuth login or personal API key required)

```bash
studio workspaces unlink [options]
```

**Options**

<CommandTable>
  | Option                         | Required | Description                                          |
  | ------------------------------ | -------- | ---------------------------------------------------- |
  | `--other-workspace-id <value>` | Yes      | Workspace on the other side of the direct fork edge. |
  | `-y, --yes`                    | Yes      | Confirm this operation.                              |
</CommandTable>

### studio workspaces sync-exclusions [#studio-workspaces-sync-exclusions]

Update Workspace Fork Exclusions (OAuth login or personal API key required)

```bash
studio workspaces sync-exclusions [options]
```

**Options**

<CommandTable>
  | Option                               | Required | Description                                                                                                                               |
  | ------------------------------------ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
  | `--workflow <value...>`              | Yes      | Workflow identifiers in the current workspace. (space-separated, or @path / @- with one value per line; @@value for a literal leading @). |
  | `--fork-sync-excluded <true\|false>` | Yes      | Whether the named workflows should be skipped as sync sources and targets. Accepted values: `true`, `false`.                              |
</CommandTable>
