Every command on one page, generated from the CLI itself. Start at the overview to browse; this page is for searching and for tools.
Append .mdx to any page for its raw Markdown —
/cli/reference.mdx is this page as plain text. The docs
are also published as /llms.txt and
/llms-full.txt.
Global options
These apply to every command, and may be written before or after it.
| Option | Description |
|---|---|
-P, --profile <name> | Profile to use (env: SIM_PROFILE). |
--endpoint <url> | Sim deployment to talk to (env: SIM_ENDPOINT). |
-w, --workspace <id> | Workspace to target (env: SIM_WORKSPACE). |
--output <format> | Output format for this command. Accepted values: table, json, yaml, text. |
sim login
Sign in through the browser and store the login for the profile
sim login [options]Options
| 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. |
sim logout
Sign out and remove the profile's stored login
sim logout [options]Options
| Option | Required | Description |
|---|---|---|
--all | No | Remove the profile entirely, including its settings. |
sim whoami
Show the resolved profile, where each setting came from, and whether it works
sim whoami [options]Options
| Option | Required | Description |
|---|---|---|
--no-verify | No | Skip the API check and only print the resolved settings. |
sim configure
Set a profile's endpoint, default workspace, or output format
sim configure [options]Options
| Option | Required | Description |
|---|---|---|
--set-endpoint <url> | No | Sim 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). |
sim chat
Ask Sim and print the reply
sim chat <message> [options]Arguments
| Argument | Required | Description |
|---|---|---|
message | Yes | What to ask Sim |
Options
| Option | Required | Description |
|---|---|---|
-c, --conversation <id> | No | Continue the conversation with this ID. |
sim profiles
Also spelled sim profile.
sim profiles list
List configured profiles
sim profiles listsim profiles add
Add a workspace profile that shares the active stored login
sim profiles add <name> [options]Arguments
| Argument | Required | Description |
|---|---|---|
name | Yes | Name for the new profile |
Options
| Option | Required | Description |
|---|---|---|
-w, --workspace <id> | No | Existing workspace to use; omit for an interactive picker. |
sim audit-logs
Also spelled sim audit-log.
sim audit-logs get
Get Audit Log (OAuth login or personal API key required)
sim audit-logs get <auditLogId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
auditLogId | Yes | Audit-log entry identifier. |
Options
| 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). |
sim audit-logs list
List Audit Logs (OAuth login or personal API key required)
sim audit-logs list [options]Options
| 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). |
sim billing
sim billing status
Show billing status and current-period credit usage (credits and storage require an OAuth login or personal API key)
sim billing status [options]Options
| Option | Required | Description |
|---|---|---|
--all-workspaces | No | Do not filter to the configured workspace (OAuth login or personal API key required for account-wide access). |
sim 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)
sim billing logs [options]Options
| Option | Required | Description |
|---|---|---|
--source <value> | No | Filter by usage source; sim-chat combines Copilot and workspace chat. Accepted values: workflow, wand, sim-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). |
sim blocks
sim blocks get
Get Block
sim blocks get <blockId>Arguments
| Argument | Required | Description |
|---|---|---|
blockId | Yes | Block type identifier. An unversioned base type resolves to the newest version, and the response echoes the resolved id. |
sim blocks list
List Blocks
sim blocks list [options]Options
| 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. |
sim chat-deployments
sim chat-deployments list
List Chat Deployments
sim chat-deployments list [options]Options
| 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. |
sim connector-types
sim connector-types list
List Connector Types
sim connector-types list [options]Options
| Option | Required | Description |
|---|---|---|
--search <value> | No | Case-insensitive substring match against the connector name. |
sim credentials
Also spelled sim credential.
sim credentials delete
Disconnect Credential (OAuth login or personal API key required)
sim credentials delete <credentialId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
credentialId | Yes | Credential to disconnect. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim credentials providers list
List Credential Providers
sim credentials providers list [options]Options
| Option | Required | Description |
|---|---|---|
--search <value> | No | Case-insensitive substring match against the credential provider name. |
sim credentials list
List Credentials
sim credentials list [options]Options
| 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. |
sim credentials update
Update Credential (OAuth login or personal API key required)
sim credentials update <credentialId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
credentialId | Yes | Credential to update. |
Options
| Option | Required | Description |
|---|---|---|
--display-name <value> | No | New name shown for the credential in Sim. |
--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. |
sim credentials create
Create a service-account credential using its discovered provider schema (OAuth login or personal API key required)
sim credentials create <providerId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
providerId | Yes | Service-account provider to create a credential for |
Options
| Option | Required | Description |
|---|---|---|
--name <displayName> | Yes | Name shown for the credential in Sim. |
--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. |
sim credentials connect
Create a short-lived link for connecting an OAuth provider (OAuth login or personal API key required)
sim credentials connect <providerId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
providerId | Yes | OAuth provider to connect |
Options
| Option | Required | Description |
|---|---|---|
--name <displayName> | Yes | Name shown for the new credential in Sim. |
sim credentials reconnect
Create a short-lived link for reconnecting an OAuth credential (OAuth login or personal API key required)
sim credentials reconnect <credentialId>Arguments
| Argument | Required | Description |
|---|---|---|
credentialId | Yes | Existing OAuth credential to re-authorize |
sim custom-tools
Also spelled sim custom-tool.
sim custom-tools create
Create Custom Tool
sim custom-tools create [options]Options
| 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. |
sim custom-tools delete
Delete Custom Tool
sim custom-tools delete <customToolId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
customToolId | Yes | Unique custom tool identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim custom-tools get
Get Custom Tool
sim custom-tools get <customToolId>Arguments
| Argument | Required | Description |
|---|---|---|
customToolId | Yes | Unique custom tool identifier. |
sim custom-tools list
List Custom Tools
sim custom-tools list [options]Options
| 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. |
sim custom-tools update
Update Custom Tool
sim custom-tools update <customToolId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
customToolId | Yes | Unique custom tool identifier. |
Options
| 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. |
sim files
Also spelled sim file.
sim files batch-delete
Delete several files at once
sim files batch-delete [options]Options
| 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. |
sim files create
Create File
sim files create [options]Options
| 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. |
sim files folders create
Create a file folder at a path
sim files folders create <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
sim files folders delete
Delete Folder
sim files folders delete <path> [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
Options
| Option | Required | Description |
|---|---|---|
--recursive | No | Delete the folder and its descendants. |
-y, --yes | Yes | Confirm this operation. |
sim files folders list
List folders
sim files folders list [options]Also available as sim files folders ls.
Options
| 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. |
sim files folders move
Rename or move a file folder
sim files folders move <path> <destination>Also available as sim files folders mv.
Arguments
| 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 |
sim files folders restore
Restore an archived file folder
sim files folders restore <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
sim files delete
Delete File
sim files delete <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim files edit
Apply one exact or anchor-based edit to a text file
sim files edit <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| 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). |
sim files describe
Show file metadata and sharing status
sim files describe <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| 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. |
sim files share get
Show a file’s share settings
sim files share get <fileId>Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
sim files share set
Enable or disable sharing for a file (OAuth login or personal API key required)
sim files share set <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| 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 @). |
sim files list
List Files
sim files list [options]Options
| 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. |
sim files move
Move files into another folder
sim files move [options]Also available as sim files mv.
Options
| 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. |
sim files read
Read a file’s text content
sim files read <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| 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. |
sim files rename
Rename a file
sim files rename <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| Option | Required | Description |
|---|---|---|
--name <value> | Yes | New file name, including its extension. |
sim files restore
Restore an archived file
sim files restore <fileId>Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
sim files search
Search File Content
sim files search [options]Options
| 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. |
sim files unzip
Unzip an archive into a new folder beside it
sim files unzip <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim files set-content
Replace a file’s contents
sim files set-content <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File identifier. |
Options
| 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. |
sim files upload
Upload a file to the workspace
sim files upload <path> [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Local file to upload |
Options
| 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. |
sim files get
Get a file’s content
sim files get <fileId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
fileId | Yes | File whose content to read |
Options
| 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. |
sim files ls
List file resources and child folders together
sim files ls [path] [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | No | Folder path to list; defaults to the root folder |
Options
| 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. |
sim files mkdir
Create a file directory at a path
sim files mkdir <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path to create; the leading / is optional |
sim knowledge
Also spelled sim kb.
sim knowledge from-workspace-files create
Index files the workspace already stores (OAuth login or personal API key required)
sim knowledge from-workspace-files create <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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 @). |
sim knowledge tags save
Declare the tag definitions a knowledge base needs (OAuth login or personal API key required)
sim knowledge tags save <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| Option | Required | Description |
|---|---|---|
--definitions <json|@file> | Yes | Tag definitions: [{"tagSlot":"tag1","displayName":"category","fieldType":"text"}] (JSON, or @path / @- to read a file or stdin). |
sim knowledge tags create
Create Tag (OAuth login or personal API key required)
sim knowledge tags create <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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. |
sim knowledge tags delete
Delete Tag (OAuth login or personal API key required)
sim knowledge tags delete <knowledgeBaseId> <tagId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
tagId | Yes | Unique tag definition identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim knowledge tags cleanup
Remove tag definitions no document still uses (OAuth login or personal API key required)
sim knowledge tags cleanup <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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. |
sim knowledge tags next-slot
Show which tag slot a create would take for a field type (OAuth login or personal API key required)
sim knowledge tags next-slot <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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. |
sim knowledge tags list
List Tags
sim knowledge tags list <knowledgeBaseId>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
sim knowledge tags usage
Show how many documents and chunks carry each tag (OAuth login or personal API key required)
sim knowledge tags usage <knowledgeBaseId>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
sim knowledge tags update
Update Tag (OAuth login or personal API key required)
sim knowledge tags update <knowledgeBaseId> <tagId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
tagId | Yes | Unique tag definition identifier. |
Options
| 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. |
sim knowledge chunks batch-update
Enable, disable, or delete many chunks at once (OAuth login or personal API key required)
sim knowledge chunks batch-update <knowledgeBaseId> <documentId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
Options
| 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. |
sim knowledge chunks create
Create Chunk (OAuth login or personal API key required)
sim knowledge chunks create <knowledgeBaseId> <documentId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
Options
| 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. |
sim knowledge chunks delete
Delete Chunk (OAuth login or personal API key required)
sim knowledge chunks delete <knowledgeBaseId> <documentId> <chunkId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
chunkId | Yes | Unique chunk identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim knowledge chunks get
Get Chunk (OAuth login or personal API key required)
sim knowledge chunks get <knowledgeBaseId> <documentId> <chunkId>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
chunkId | Yes | Unique chunk identifier. |
sim knowledge chunks list
List Chunks (OAuth login or personal API key required)
sim knowledge chunks list <knowledgeBaseId> <documentId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
Options
| 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. |
sim knowledge chunks update
Update Chunk (OAuth login or personal API key required)
sim knowledge chunks update <knowledgeBaseId> <documentId> <chunkId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
chunkId | Yes | Unique chunk identifier. |
Options
| 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. |
sim knowledge documents batch-update
Enable or disable every matching document (OAuth login or personal API key required)
sim knowledge documents batch-update <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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. |
sim knowledge documents delete
Delete Document
sim knowledge documents delete <knowledgeBaseId> <documentId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim knowledge documents get
Get Document
sim knowledge documents get <knowledgeBaseId> <documentId>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
sim knowledge documents list
List Documents
sim knowledge documents list <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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: [{"tagName":"category","operator":"eq","value":"billing"}]. 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. |
sim knowledge documents update
Update Document (OAuth login or personal API key required)
sim knowledge documents update <knowledgeBaseId> <documentId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
documentId | Yes | Unique knowledge document identifier. |
Options
| 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. |
sim knowledge documents upload
Upload a document to a knowledge base
sim knowledge documents upload <knowledgeBaseId> <path> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base to upload into |
path | Yes | Local file to upload |
Options
| 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. |
sim knowledge create
Create Knowledge Base
sim knowledge create [options]Options
| 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. |
sim knowledge connectors create
Create Knowledge Connector (OAuth login or personal API key required)
sim knowledge connectors create <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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. |
sim knowledge connectors delete
Delete Knowledge Connector (OAuth login or personal API key required)
sim knowledge connectors delete <knowledgeBaseId> <connectorId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base that owns the connector. |
connectorId | Yes | Connector selected for the operation. |
Options
| 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. |
sim knowledge connectors get
Get Knowledge Connector (OAuth login or personal API key required)
sim knowledge connectors get <knowledgeBaseId> <connectorId>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base that owns the connector. |
connectorId | Yes | Connector selected for the operation. |
sim knowledge connectors documents list
List Knowledge Connector Documents (OAuth login or personal API key required)
sim knowledge connectors documents list <knowledgeBaseId> <connectorId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base that owns the connector. |
connectorId | Yes | Connector selected for the operation. |
Options
| 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. |
sim knowledge connectors documents update
Update Knowledge Connector Documents (OAuth login or personal API key required)
sim knowledge connectors documents update <knowledgeBaseId> <connectorId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base that owns the connector. |
connectorId | Yes | Connector selected for the operation. |
Options
| 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 @). |
sim knowledge connectors list
List Knowledge Connectors (OAuth login or personal API key required)
sim knowledge connectors list <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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. |
sim knowledge connectors sync
Queue a knowledge connector synchronization (OAuth login or personal API key required)
sim knowledge connectors sync <knowledgeBaseId> <connectorId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base that owns the connector. |
connectorId | Yes | Connector selected for the operation. |
Options
| Option | Required | Description |
|---|---|---|
--rehydrate | No | Re-fetch and re-index every existing connector document. |
--no-rehydrate | No | Send --rehydrate as false. |
sim knowledge connectors update
Update Knowledge Connector (OAuth login or personal API key required)
sim knowledge connectors update <knowledgeBaseId> <connectorId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base that owns the connector. |
connectorId | Yes | Connector selected for the operation. |
Options
| 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. |
sim knowledge folders create
Create a knowledge folder at a path
sim knowledge folders create <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
sim knowledge folders delete
Delete Folder
sim knowledge folders delete <path> [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
Options
| Option | Required | Description |
|---|---|---|
--recursive | No | Delete the folder and its descendants. |
-y, --yes | Yes | Confirm this operation. |
sim knowledge folders list
List knowledge folders
sim knowledge folders list [options]Also available as sim knowledge folders ls.
Options
| 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. |
sim knowledge folders move
Rename or move a knowledge folder
sim knowledge folders move <path> <destination>Also available as sim knowledge folders mv.
Arguments
| 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 |
sim knowledge delete
Delete Knowledge Base
sim knowledge delete <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim knowledge get
Get Knowledge Base
sim knowledge get <knowledgeBaseId>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
sim knowledge list
List Knowledge Bases
sim knowledge list [options]Options
| 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. |
sim knowledge restore
Restore an archived knowledge base
sim knowledge restore <knowledgeBaseId>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
sim knowledge search
Search Knowledge
sim knowledge search [options]Options
| 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. |
sim knowledge update
Update Knowledge Base
sim knowledge update <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
Options
| 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. |
sim knowledge mv
Move a knowledge base to a folder
sim knowledge mv <knowledgeBaseId> <folder>Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Unique knowledge base identifier. |
folder | Yes | Folder path as shown in the app; the leading / is optional |
sim knowledge export
Export a knowledge base as a .simkb.zip bundle
sim knowledge export <knowledgeBaseId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
knowledgeBaseId | Yes | Knowledge base to export |
Options
| 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. |
sim knowledge ls
List knowledge resources and child folders together
sim knowledge ls [path] [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | No | Folder path to list; defaults to the root folder |
Options
| 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. |
sim knowledge mkdir
Create a knowledge directory at a path
sim knowledge mkdir <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path to create; the leading / is optional |
sim logs
Also spelled sim log.
sim logs get
Show run diagnostics
sim logs get <runId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
runId | Yes | Unique workflow run identifier. |
Options
| Option | Required | Description |
|---|---|---|
--trace | No | Show expanded trace spans with inputs, outputs, errors, timing, and cost. |
sim logs stats
Summarize run counts, failures and latency over a window
sim logs stats [options]Options
| 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. |
sim logs list
List Logs
sim logs list [options]Options
| 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 Sim-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 Sim-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 @). |
sim logs follow
Watch runs as they arrive, printing each new run once
sim logs follow [options]Options
| 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. |
sim mcp-servers
Also spelled sim mcp-server.
sim mcp-servers create
Create MCP Server
sim mcp-servers create [options]Options
| 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 {{ENV_VAR}} 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). |
sim mcp-servers delete
Delete MCP Server
sim mcp-servers delete <mcpServerId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
mcpServerId | Yes | Unique MCP server identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim mcp-servers get
Get MCP Server
sim mcp-servers get <mcpServerId>Arguments
| Argument | Required | Description |
|---|---|---|
mcpServerId | Yes | Unique MCP server identifier. |
sim mcp-servers list
List MCP Servers
sim mcp-servers list [options]Options
| 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. |
sim mcp-servers tools list
List MCP Server Tools (OAuth login or personal API key required)
sim mcp-servers tools list <mcpServerId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
mcpServerId | Yes | Unique MCP server identifier. |
Options
| 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. |
sim mcp-servers update
Update MCP Server
sim mcp-servers update <mcpServerId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
mcpServerId | Yes | Unique MCP server identifier. |
Options
| 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). |
sim meta
sim meta status
Show what this API supports and which limits apply
sim meta statussim sandboxes
Also spelled sim sandbox.
sim sandboxes create
Create Sandbox (OAuth login or personal API key required)
sim sandboxes create [options]Options
| 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 @). |
sim sandboxes delete
Delete Sandbox (OAuth login or personal API key required)
sim sandboxes delete <sandboxId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
sandboxId | Yes | Unique sandbox identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim sandboxes get
Get Sandbox
sim sandboxes get <sandboxId>Arguments
| Argument | Required | Description |
|---|---|---|
sandboxId | Yes | Unique sandbox identifier. |
sim sandboxes list
List Sandboxes
sim sandboxes list [options]Options
| 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. |
sim sandboxes update
Update Sandbox (OAuth login or personal API key required)
sim sandboxes update <sandboxId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
sandboxId | Yes | Unique sandbox identifier. |
Options
| 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 @). |
sim secrets
Also spelled sim secret.
sim secrets delete
Delete Secret (OAuth login or personal API key required)
sim secrets delete <name> [options]Arguments
| Argument | Required | Description |
|---|---|---|
name | Yes | Secret to delete. |
Options
| 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. |
sim secrets list
List Secrets (OAuth login or personal API key required)
sim secrets list [options]Options
| 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. |
sim secrets set
Create or replace a named secret (OAuth login or personal API key required)
sim secrets set <name> [options]Arguments
| Argument | Required | Description |
|---|---|---|
name | Yes | Secret name, as referenced in workflows |
Options
| 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. |
sim skills
Also spelled sim skill.
sim skills create
Create Skill (OAuth login or personal API key required)
sim skills create [options]Options
| 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. |
sim skills delete
Delete Skill (OAuth login or personal API key required)
sim skills delete <skillId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
skillId | Yes | Unique skill identifier. A built-in skill is builtin- followed by its name, for example builtin-research. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim skills get
Get Skill
sim skills get <skillId>Arguments
| Argument | Required | Description |
|---|---|---|
skillId | Yes | Unique skill identifier. A built-in skill is builtin- followed by its name, for example builtin-research. |
sim skills editors create
Grant Skill Editor (OAuth login or personal API key required)
sim skills editors create <skillId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
skillId | Yes | Unique skill identifier. A built-in skill is builtin- followed by its name, for example builtin-research. |
Options
| Option | Required | Description |
|---|---|---|
--email <value> | Yes | Email address of a current workspace member. |
sim skills editors list
List Skill Editors
sim skills editors list <skillId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
skillId | Yes | Unique skill identifier. A built-in skill is builtin- followed by its name, for example builtin-research. |
Options
| 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. |
sim skills editors delete
Revoke Skill Editor (OAuth login or personal API key required)
sim skills editors delete <skillId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
skillId | Yes | Unique skill identifier. A built-in skill is builtin- followed by its name, for example builtin-research. |
Options
| Option | Required | Description |
|---|---|---|
--email <value> | Yes | Email address of a current workspace member. |
-y, --yes | Yes | Confirm this operation. |
sim skills list
List Skills
sim skills list [options]Options
| 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. |
sim skills update
Update Skill (OAuth login or personal API key required)
sim skills update <skillId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
skillId | Yes | Unique skill identifier. A built-in skill is builtin- followed by its name, for example builtin-research. |
Options
| 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. |
sim tables
Also spelled sim table.
sim tables columns create
Add Column
sim tables columns create <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| Option | Required | Description |
|---|---|---|
--column <json|@file> | Yes | Column definition to add. (JSON, or @path / @- to read a file or stdin). |
sim tables columns delete
Delete Column
sim tables columns delete <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| Option | Required | Description |
|---|---|---|
--column-name <value> | Yes | Name of the column to delete. |
-y, --yes | Yes | Confirm this operation. |
sim tables columns update
Update Column
sim tables columns update <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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). |
sim tables groups create
Add Workflow Group
sim tables groups create <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables groups delete
Delete Workflow Group
sim tables groups delete <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| Option | Required | Description |
|---|---|---|
--group-id <value> | Yes | Workflow group to delete. |
-y, --yes | Yes | Confirm this operation. |
sim tables groups list
List Workflow Groups
sim tables groups list <tableId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
sim tables groups update
Update Workflow Group
sim tables groups update <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables batch-delete
Bulk Delete Tables and Folders
sim tables batch-delete [options]Options
| 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. |
sim tables rows update-each
Apply a distinct patch to each listed row
sim tables rows update-each <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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). |
sim tables rows create
Create Rows
sim tables rows create <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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). |
sim tables rows delete
Delete Row
sim tables rows delete <tableId> <rowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
rowId | Yes | Unique table row identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim tables rows batch-delete
Delete rows matching a filter, or an explicit list of ids
sim tables rows batch-delete <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables rows get
Get Row
sim tables rows get <tableId> <rowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
rowId | Yes | Unique table row identifier. |
Options
| 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. |
sim tables rows list
List Rows
sim tables rows list <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables rows query
Query Rows
sim tables rows query <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables rows count
Count rows matching a filter
sim tables rows count <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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). |
sim tables rows enrich
Run one row’s enrichment group
sim tables rows enrich <tableId> <rowId> <groupId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
rowId | Yes | Unique table row identifier. |
groupId | Yes | Workflow or enrichment group to run. |
sim tables rows search
Search cells for a value and return their coordinates
sim tables rows search <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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). |
sim tables rows batch-update
Update every row matching a filter
sim tables rows batch-update <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables rows update
Update Row
sim tables rows update <tableId> <rowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
rowId | Yes | Unique table row identifier. |
Options
| Option | Required | Description |
|---|---|---|
--data <json|@file> | Yes | Partial row-data patch keyed by column name. (JSON, or @path / @- to read a file or stdin). |
sim tables dispatches cancel
Cancel a running dispatch
sim tables dispatches cancel <tableId> <dispatchId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
dispatchId | Yes | Unique table run-dispatch identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim tables dispatches create
Start a column or enrichment run
sim tables dispatches create <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables dispatches get
Get Run Dispatch
sim tables dispatches get <tableId> <dispatchId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
dispatchId | Yes | Unique table run-dispatch identifier. |
sim tables dispatches list
List Active Run Dispatches
sim tables dispatches list <tableId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
sim tables exports cancel
Stop a running export
sim tables exports cancel <tableId> <exportId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
exportId | Yes | Unique table-export identifier. |
sim tables exports create
Create Table Export
sim tables exports create <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| Option | Required | Description |
|---|---|---|
--format <value> | No | Export file format. Accepted values: csv, json. |
sim tables exports get
Get Table Export
sim tables exports get <tableId> <exportId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
exportId | Yes | Unique table-export identifier. |
sim tables exports download
Get the download URL for a finished export
sim tables exports download <tableId> <exportId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
exportId | Yes | Unique table-export identifier. |
sim tables imports cancel
Stop a running import
sim tables imports cancel <importId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
importId | Yes | Unique table-import identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim tables imports get
Get Table Import
sim tables imports get <importId>Arguments
| Argument | Required | Description |
|---|---|---|
importId | Yes | Unique table-import identifier. |
sim tables cancel-runs
Stop every running column job
sim tables cancel-runs <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables create
Create Table
sim tables create [options]Options
| 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. |
sim tables folders create
Create a table folder at a path
sim tables folders create <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
sim tables folders delete
Delete Folder
sim tables folders delete <path> [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
Options
| Option | Required | Description |
|---|---|---|
--recursive | No | Delete the folder and its descendants. |
-y, --yes | Yes | Confirm this operation. |
sim tables folders list
List table folders
sim tables folders list [options]Also available as sim tables folders ls.
Options
| 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. |
sim tables folders move
Rename or move a table folder
sim tables folders move <path> <destination>Also available as sim tables folders mv.
Arguments
| 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 |
sim tables folders restore
Restore an archived table folder
sim tables folders restore <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
sim tables views create
Create View
sim tables views create <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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). |
sim tables views delete
Delete View
sim tables views delete <tableId> <viewId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
viewId | Yes | Unique saved-view identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim tables views get
Get View
sim tables views get <tableId> <viewId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
viewId | Yes | Unique saved-view identifier. |
sim tables views list
List Views
sim tables views list <tableId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
sim tables views update
Update View
sim tables views update <tableId> <viewId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
viewId | Yes | Unique saved-view identifier. |
Options
| 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. |
sim tables delete
Delete Table
sim tables delete <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim tables enrichment get
Get Enrichment Run Detail
sim tables enrichment get <tableId> <rowId> <groupId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
rowId | Yes | Unique table row identifier. |
groupId | Yes | Workflow or enrichment group to run. |
sim tables get
Get Table
sim tables get <tableId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
sim tables list
List Tables
sim tables list [options]Options
| 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. |
sim tables move
Move Tables and Folders
sim tables move [options]Options
| 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. |
sim tables restore
Restore an archived table
sim tables restore <tableId>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
sim tables update
Update Table
sim tables update <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables mv
Move a table to a folder
sim tables mv <tableId> <folder>Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
folder | Yes | Folder path as shown in the app; the leading / is optional |
sim tables upsert
Insert a row, or update the one that conflicts on a unique column
sim tables upsert <tableId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
tableId | Yes | Unique table identifier. |
Options
| 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. |
sim tables import
Import a CSV, into a new table by default
sim tables import [path] [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | No | Local CSV file to import; omit when using --file-id |
Options
| 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. |
sim tables ls
List table resources and child folders together
sim tables ls [path] [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | No | Folder path to list; defaults to the root folder |
Options
| 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. |
sim tables mkdir
Create a table directory at a path
sim tables mkdir <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path to create; the leading / is optional |
sim tools
sim tools execute
Run one built-in tool and print what it produced (OAuth login or personal API key required)
sim tools execute <toolId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
toolId | Yes | Tool identifier. An unversioned name resolves to the newest version, and the response echoes the resolved id. |
Options
| Option | Required | Description |
|---|---|---|
--input <json|@file> | No | Tool arguments as JSON, keyed by the parameter ids sim tools get <toolId> 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. |
sim tools get
Get Tool
sim tools get <toolId>Arguments
| Argument | Required | Description |
|---|---|---|
toolId | Yes | Tool identifier. An unversioned name resolves to the newest version, and the response echoes the resolved id. |
sim tools list
List Tools
sim tools list [options]Options
| 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. |
sim workflow-mcp-servers
sim workflow-mcp-servers create
Create Workflow MCP Server (OAuth login or personal API key required)
sim workflow-mcp-servers create [options]Options
| 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 Sim 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 @). |
sim workflow-mcp-servers delete
Delete Workflow MCP Server (OAuth login or personal API key required)
sim workflow-mcp-servers delete <serverId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
serverId | Yes | Unique workflow-MCP server identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim workflow-mcp-servers tools create
Publish Workflow As MCP Tool (OAuth login or personal API key required)
sim workflow-mcp-servers tools create <serverId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
serverId | Yes | Unique workflow-MCP server identifier. |
Options
| 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). |
sim workflow-mcp-servers tools list
List Workflow MCP Tools (OAuth login or personal API key required)
sim workflow-mcp-servers tools list <serverId>Arguments
| Argument | Required | Description |
|---|---|---|
serverId | Yes | Unique workflow-MCP server identifier. |
sim workflow-mcp-servers tools delete
Unpublish Workflow MCP Tool (OAuth login or personal API key required)
sim workflow-mcp-servers tools delete <serverId> <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
serverId | Yes | Unique workflow-MCP server identifier. |
workflowId | Yes | Workflow published as a tool on this server. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim workflow-mcp-servers get
Get Workflow MCP Server (OAuth login or personal API key required)
sim workflow-mcp-servers get <serverId>Arguments
| Argument | Required | Description |
|---|---|---|
serverId | Yes | Unique workflow-MCP server identifier. |
sim workflow-mcp-servers list
List Workflow MCP Servers (OAuth login or personal API key required)
sim workflow-mcp-servers list [options]Options
| 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. |
sim workflow-mcp-servers update
Update Workflow MCP Server (OAuth login or personal API key required)
sim workflow-mcp-servers update <serverId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
serverId | Yes | Unique workflow-MCP server identifier. |
Options
| 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 Sim API key. |
--no-is-public | No | Send --is-public as false. |
sim workflows
Also spelled sim workflow.
sim workflows activate create
Activate Workflow Version (OAuth login or personal API key required)
sim workflows activate create <workflowId> <version> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
version | Yes | Numeric deployment version. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim workflows operations apply
Apply Workflow Operations (OAuth login or personal API key required)
sim workflows operations apply <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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). |
sim workflows variables update
Update Workflow Variables
sim workflows variables update <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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. |
sim workflows runs cancel
Cancel a running workflow run
sim workflows runs cancel <runId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
runId | Yes | Unique workflow run identifier. |
Options
| Option | Required | Description |
|---|---|---|
--workflow <workflowId> | Yes | Workflow ID. |
sim workflows runs get
Show run status (requested outputs are included in JSON or YAML output)
sim workflows runs get <runId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
runId | Yes | Unique workflow run identifier. |
Options
| 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. |
sim workflows runs list
List runs for a workflow
sim workflows runs list [options]Options
| 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. |
sim workflows runs resume
Resume a paused run (output is included in JSON or YAML output)
sim workflows runs resume <runId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
runId | Yes | Unique workflow run identifier. |
Options
| 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). |
sim workflows runs wait
Wait for a run to reach a terminal state, then show it
sim workflows runs wait <runId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
runId | Yes | Unique workflow run identifier. |
Options
| 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; SIM_TIMEOUT_SECONDS bounds one request. |
sim workflows create
Create Workflow
sim workflows create [options]Options
| 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. |
sim workflows folders create
Create a workflow folder at a path
sim workflows folders create <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
sim workflows folders delete
Delete Workflow Folder
sim workflows folders delete <path> [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path as shown in the app; the leading / is optional |
Options
| Option | Required | Description |
|---|---|---|
--recursive | No | Delete the folder and its descendants. |
-y, --yes | Yes | Confirm this operation. |
sim workflows folders list
List workflow folders
sim workflows folders list [options]Also available as sim workflows folders ls.
Options
| 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. |
sim workflows folders move
Rename or move a workflow folder
sim workflows folders move <path> <destination>Also available as sim workflows folders mv.
Arguments
| 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 |
sim workflows delete
Delete Workflow
sim workflows delete <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim workflows chat unpublish
Take a workflow’s chat deployment offline (OAuth login or personal API key required)
sim workflows chat unpublish <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim workflows chat status
Show a workflow’s chat deployment (OAuth login or personal API key required)
sim workflows chat status <workflowId>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
sim workflows chat publish
Publish or replace a workflow’s chat deployment (OAuth login or personal API key required)
sim workflows chat publish <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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. |
sim workflows deploy
Deploy Workflow (OAuth login or personal API key required)
sim workflows deploy <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| Option | Required | Description |
|---|---|---|
--name <value> | No | Optional label for the deployment version. |
--description <value> | No | Optional release note for the deployment version. |
sim workflows duplicate create
Duplicate Workflow
sim workflows duplicate create <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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. |
sim workflows run
Run a deployed workflow or execute saved state manually
sim workflows run <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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). |
sim workflows export
Print a workflow as a portable JSON document
sim workflows export <workflowId>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
sim workflows get
Get Workflow
sim workflows get <workflowId>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
sim workflows deployment status
Show a workflow’s current deployment
sim workflows deployment status <workflowId>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
sim workflows deployment update
Update Workflow Public API Access (OAuth login or personal API key required)
sim workflows deployment update <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| Option | Required | Description |
|---|---|---|
--is-public-api <true|false> | Yes | Whether the deployed workflow should accept unauthenticated public API execution. Accepted values: true, false. |
sim workflows state get
Get Workflow State
sim workflows state get <workflowId>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
sim workflows state replace
Replace Workflow State (OAuth login or personal API key required)
sim workflows state replace <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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). |
sim workflows versions get
Get Workflow Version
sim workflows versions get <workflowId> <version>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
version | Yes | Numeric deployment version. |
sim workflows versions list
List Workflow Versions
sim workflows versions list <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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. |
sim workflows versions update
Update Workflow Version
sim workflows versions update <workflowId> <version> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
version | Yes | Numeric deployment version. |
Options
| 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). |
sim workflows import
Import Workflow
sim workflows import [options]Options
| 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. |
sim workflows list
List Workflows
sim workflows list [options]Options
| 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. |
sim workflows move
Move Workflows
sim workflows move [options]Options
| 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. |
sim workflows restore
Restore an archived workflow
sim workflows restore <workflowId>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
sim workflows revert create
Revert Workflow To Version (OAuth login or personal API key required)
sim workflows revert create <workflowId> <version> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
version | Yes | Numeric deployment version, or active for the currently live version. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim workflows rollback
Rollback Workflow (OAuth login or personal API key required)
sim workflows rollback <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| Option | Required | Description |
|---|---|---|
--to-version <value> | No | Deployment version to reactivate. Omit to select the previous active version. |
-y, --yes | Yes | Confirm this operation. |
sim workflows undeploy
Take a workflow out of deployment (OAuth login or personal API key required)
sim workflows undeploy <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| Option | Required | Description |
|---|---|---|
-y, --yes | Yes | Confirm this operation. |
sim workflows update
Update Workflow
sim workflows update <workflowId> [options]Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
Options
| 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. |
sim workflows mv
Move a workflow to a folder
sim workflows mv <workflowId> <folder>Arguments
| Argument | Required | Description |
|---|---|---|
workflowId | Yes | Unique workflow identifier. |
folder | Yes | Folder path as shown in the app; the leading / is optional |
sim workflows ls
List workflow resources and child folders together
sim workflows ls [path] [options]Arguments
| Argument | Required | Description |
|---|---|---|
path | No | Folder path to list; defaults to the root folder |
Options
| 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. |
sim workflows mkdir
Create a workflow directory at a path
sim workflows mkdir <path>Arguments
| Argument | Required | Description |
|---|---|---|
path | Yes | Folder path to create; the leading / is optional |
sim workspaces
Also spelled sim workspace.
sim workspaces get
Get Workspace
sim workspaces getsim workspaces members
List workspace members
sim workspaces members [options]Options
| Option | Required | Description |
|---|---|---|
--limit <n> | No | Maximum items to return (0 for everything). Defaults to 0. |
sim workspaces list
List Workspaces
sim workspaces list [options]Options
| 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. |