CLI
Commands Reference
Every command family the dcupl binary exposes — search by command or description, filter by family, and copy any signature.
--json is a global flag available on every command. It switches output to machine-readable JSON for scripting and automation.
Project setup
Guide →Scaffold a new dcupl project or wire an existing one into your workspace.
dcupl init [target]Create a new project in target (defaults to a new directory). · alias
dcupl new❯dcupl init my-app --name "My App" --starter minimal
6 flags
--name <str> | Project name. |
--here | Scaffold into the current directory instead of a new one. |
--starter <minimal|empty|existing> | Choose the starter template. |
--project-id <str> | For existing: the cloud project ID to link. |
--api-key <str> | For existing: API key for the linked project. |
--console-api-url <str> | For existing: override the console API URL. |
Dev server
Guide →Serve a project locally for development.
dcupl serve [path]Start the dev server for the project at path.
❯dcupl serve --port 9000 --open-browserdcupl serve listList running dev servers.
dcupl serve stop --port <n>Stop the dev server on the given port.
2 flags
--port <n> | Port to serve on (default 8083). |
--open-browser | Open the served app in your browser. |
Code generation
Guide →Generate models, types, schemas, transformers, scripts, operators, and tests. Supported types: model, typescript, json-schema, transformer, script, operator, test, test-setup, test-config.
dcupl generate [type]Generate a file of the given type.
❯dcupl generate typescript --from data/products.json --name Product
7 flags
--name <str> | Name of the generated artifact. |
--file-name <str> | Override the output file name. |
--from <file> | Generate from an existing source file. |
--register | Register the generated artifact in the relevant config. |
--key-property <str> | Key property to use for the model. |
--sample-size <n> | Number of rows to sample when inferring from data. |
--dry-run | Print the result without writing files. |
Schemas
Guide →Inspect the built-in dcupl schemas.
dcupl schemas listList all built-in schemas.
dcupl schemas get <name> [--example]Print a schema's source; --example appends a sample payload.
❯dcupl schemas get ModelDefinition --example
Local data app
Guide →Manage a long-running local data app daemon: lifecycle, models, data, queries, functions, and loaders.
dcupl app createCreate and start a new local data app.
❯dcupl app create --lc-json dcupl.lc.json --load --auto-servedcupl app destroy [--app <id>] [--keep-logs]Destroy an app; optionally keep its logs.
dcupl app listList local data apps.
dcupl app status [--app <id>]Show app status.
dcupl app build [--app <id>]Build the app — apply staged changes.
dcupl app logs [--app <id>] [--lines <n>]Tail the last n log lines.
dcupl app models keysList model keys.
dcupl app models get --model <str>Get a model definition.
❯dcupl app models get --model Productdcupl app models set --model <str> [--file|--content]Set a model definition.
dcupl app models remove --model <str>Remove a model.
dcupl app data upsertInsert or update items.
❯cat products.csv | dcupl app data upsert --model Product --content - --format csvdcupl app data updateUpdate existing items.
dcupl app data setReplace items.
dcupl app data removeRemove items.
dcupl app data resetReset a model's data.
dcupl app query one --model <str> --item-key <str>Fetch a single item by key.
dcupl app query execute --model <str> [flags]Run a query against a model.
❯dcupl app query execute --model Product --query '{"price":{"$gt":100}}' --sort price:desc --limit 20dcupl app fn facets --model <str> --attribute <str>Compute facets for an attribute.
❯dcupl app fn facets --model Product --attribute category --sort size-desc --limit 10dcupl app fn aggregate --model <str> --attribute <str> --types <list>Aggregate an attribute.
dcupl app fn groupBy --model <str> --attribute <str>Group items by an attribute.
dcupl app fn metadata --model <str>Return model metadata.
dcupl app loaders add --key <str> [--source local|remote|url]Add a loader.
❯dcupl app loaders add --key products --source localdcupl app loaders process [flags]Process loaders.
dcupl app loaders listList loaders.
dcupl app loaders get [--loader <key>]Get a loader config.
dcupl app loaders remove [--loader <key>]Remove a loader.
32 flags
--auto-update | create | Re-process loaders automatically on change. |
--auto-generate-properties | create | Auto-generate model properties from data. |
--auto-generate-deep | create | Deep auto-generation of nested properties. |
--auto-generate-sample-size <n> | create | Rows to sample during auto-generation. |
--quality <bool> | create | Enable/disable data quality checks. |
--cache | create | Enable caching. |
--clone | create | Clone an existing app's configuration. |
--analytics | create | Enable analytics. |
--logging-level <level> | create | Logging verbosity. |
--max-memory <MB> | create | Memory ceiling in MB. |
--idle-timeout <min> | create | Shut down after min minutes idle. |
--load | create | Process loaders on startup. |
--lc-json <path> | create | Path to a dcupl.lc.json config. |
--auto-serve | create | Serve the app automatically after create. |
--auto-serve-port <n|auto> | create | Port for auto-serve (auto to pick one). |
--file <path> | data | Read data from a file. |
--url <url> | data | Read data from a URL. |
--content <str> | data | Inline content (- for stdin). |
--format <csv|json|ndjson> | data | Input data format. |
--model <str> | data, query, fn | Target model. |
--key-property <str> | data | Key property; composite as a,b,c. |
--auto-generate-key | data | Generate item keys automatically. |
--query <str> | query, fn | Inline query / restrict to matching items. |
--query-file <path> | query | Read query from a file. |
--sort <field:asc|desc> | query, groupBy | Sort results by field. |
--sort <size-desc|size-asc|value-asc|value-desc> | fn facets | Facet sort order (fixed enum, not field:dir). |
--limit <n> | query, fn | Maximum results / limit facet values. |
--start <n> | query | Offset for pagination. |
--projection <str> | query | Fields to project. |
--types <distinct,count,sum,avg,min,max,group> | fn aggregate | Aggregation types to compute. |
--aggregate <attr>:<type[,type...]> | fn groupBy | Per-group aggregates, e.g. price:avg. Repeat to combine. |
--loader <key> | loaders | Target loader key. |
Cloud sync
Guide →Sync project files with the dcupl cloud.
dcupl files status [--version]Show local vs. remote diff.
dcupl files push [flags]Push local files to the cloud.
❯dcupl files push --version main --yesdcupl files pull [flags]Pull cloud files locally.
dcupl files list [--version] [--search] [--tree]List remote files.
dcupl files read --path <str>Read a remote file.
dcupl files write --path <str> [--content|--file]Write a remote file.
dcupl files delete --path <str> [--yes] [--dry-run]Delete a remote file.
dcupl files move --from <str> --to <str>Move/rename a remote file.
dcupl files copy --from <str> --to <str>Copy a remote file.
dcupl files create-folder --path <str>Create a remote folder.
dcupl files versions listList versions.
dcupl files versions copy --from <str> --to <str>Copy a version.
dcupl files versions delete <id>Delete a version.
5 flags
--version <str> | Target version. |
--strict | Mirror the source, including deletions. Default (additive) never deletes. |
--yes | Skip confirmation prompts. |
--force | Resolve conflicts by overwriting the other side. |
--path <str> | Limit to a path (repeatable). |
Credentials
Guide →Configure and inspect stored credentials.
dcupl config set [flags]Set credential values.
❯dcupl config set --project-id my-project --api-key $DCUPL_API_KEYdcupl config get [--show-secrets]Show the current config; reveal secrets with --show-secrets.
4 flags
--project-id <str> | Set the project ID. |
--api-key <str> | Set the API key. |
--console-api-url <str> | Set the console API URL. |
--yes | Skip confirmation prompts. |
Workflows (v3)
Guide →Validate, deploy, and trace v3 workflows.
dcupl workflow validateValidate a workflow template.
dcupl workflow deployDeploy a workflow to a runner.
❯dcupl workflow deploy --file my.workflow-v3.json --runner default --waitdcupl workflow undeployRemove a deployed workflow.
dcupl workflow testTest-run a workflow.
dcupl workflow listList workflows.
dcupl workflow getGet a workflow.
dcupl workflow templatePrint a workflow template.
dcupl workflow statusShow deployment status.
dcupl workflow historyShow run history.
dcupl workflow trace --id <str> --run <str>Trace a specific run.
dcupl workflow runners listList runners.
dcupl workflow runners get --id <str>Get a runner.
6 flags
--file <path> | deploy, test | Workflow template file. |
--runner <str> | deploy, test | Target runner. |
--wait | deploy, test | Wait for completion. |
--swap-timeout <ms> | deploy, test | Timeout for hot-swap. |
--id <str> | trace, runners get | Workflow/runner ID. |
--run <str> | trace | Run ID to trace. |
Validation
Guide →Validate a project's data and configuration, locally or against the cloud.
dcupl validate [flags]Validate a project locally or against the cloud.
❯dcupl validate --source local --lc-json dcupl.lc.json
9 flags
--source <local|remote> | Validation source. |
--lc-json <path> | Path to a dcupl.lc.json config. |
--project-id <str> | Cloud project ID. |
--api-key <str> | Cloud API key. |
--version <str> | Project version. |
--app-key <str> | App key. |
--env <str> | Environment. |
--quality <bool> | Toggle quality checks. |
--limit <n> | Limit items validated. |
Utility
Version and diagnostic helpers.
dcupl versionPrint the CLI version and resolved @dcupl/* package versions.
❯dcupl version