Skip to main content
Version: 2.5

Command reference

Generated from the same CLI spec as the command builder.

tsm​

tSM CLI for configuration, packages, and deployments.

OptionDescription
--contextNamed context from the home configuration.
--workspaceWorkspace directory name or path; defaults to the current directory.
--user, -uBasic-auth username override.
--passwordBasic-auth password override. Sensitive input.
--tokenBearer token override. Sensitive input.
--api-keyAPI key override (tsm_ak_…). Sent as the X-API-Key header. Sensitive input.
--tenant, -tTenant identifier sent as the X-Tenant-Id header.
--output, -oOutput format: table, json, yaml.
--jsonShortcut for --output json. Default: false.
--verboseEnable verbose output and stack traces.
--timeoutHTTP timeout in seconds.

tsm context​

Manage target contexts and explicit workspace defaults in the home config.

tsm context list​

List contexts without accessing secrets or starting runtimes.

tsm context list

tsm context show​

Show the resolved target and the origin of its selection.

OptionDescription
--explainInclude the origin of context, workspace and profile selection. Default: false.
tsm context show --explain

tsm context use​

Select a context globally or for its project directory; writes only home config.

OptionDescription
--globalWrite only global home preferences instead of a workspace default. Default: false.
ArgumentDescription
<name>Registered resource name. Required.
tsm context use tsm-dev --global

tsm context create​

Create a context; interactively configure its environment, login and workspace default. Without a console no questions are asked; use --non-interactive to enforce this in scripts.

OptionDescription
--projectProject; inferred from workspace/manifest or a single registered project.
--envEnvironment; defaults to the sole existing environment or dev for a new project.
--endpointApplication URL; required when registering a new environment.
--accountAccount name; defaults to personal for remote environments.
--non-interactiveNever prompt, even in a terminal; missing required inputs fail before writes. Default: false.
--loginValidate/store credentials after creation; offered interactively, inferred from explicit credentials. --no-login skips it.
--api-key-stdinRead one API-key line from stdin; implies login. Never saved in home YAML. Default: false.
--useDefault scope: workspace, global or none. Non-interactive default: none.
--workspace-nameName for a newly registered workspace; defaults to its directory name.
ArgumentDescription
<name>Context name; defaults to PROJECT-ENV.
tsm context create tsm-dev --project tsm --env dev --use none --non-interactive

tsm context update​

Replace one context definition; existing account secrets and runtime instances are retained.

OptionDescription
--projectLogical project registered in home config. Required.
--envEnvironment name within the selected project. Required.
--accountStored account name for this project environment.
ArgumentDescription
<name>Registered resource name. Required.
tsm context update tsm-dev --project tsm --env dev --account personal

tsm context remove​

Remove a context and its default bindings; leaves credentials and runtime instances intact.

ArgumentDescription
<name>Registered resource name. Required.
tsm context remove old-dev

tsm auth​

Manage accounts, stored Basic, API-key and tSM token credentials.

tsm auth login​

Validate and store an account for a project environment.

OptionDescription
--projectLogical project registered in home config.
--envEnvironment name within the selected project.
--accountStored account name for this project environment.
--methodCredential type: basic, api-key or bearer; otherwise inferred from input or stored account.
--refresh-tokenOptional tSM refresh token accompanying --token. Sensitive input.
--client-idOriginal tSM client profile; required with --refresh-token.
tsm --context tsm-dev auth login --method api-key

tsm auth status​

Show stored account metadata without reading secrets or contacting a server.

tsm auth status --json

tsm auth logout​

Forget this account locally; does not revoke API keys or sign out the browser.

OptionDescription
--projectLogical project registered in home config.
--envEnvironment name within the selected project.
--accountStored account name for this project environment.
tsm --context tsm-dev auth logout

tsm auth whoami​

Show the user, tenant and token expiry behind the selected credentials.

tsm --context dev auth whoami

tsm auth token​

Print a backend access token for the selected credentials, for scripts: curl -H "Authorization: Bearer $(tsm auth token)" ... A stored Bearer token is printed as it is; Basic credentials and API keys are exchanged at /api/token.

OptionDescription
--decodePrint the decoded JWT claims instead of the token. Default: false.
tsm --context dev auth token --decode

tsm auth api-key​

Manage API keys (tsm_ak_…) of the current user, or of another one with --user.

tsm auth api-key list​

List API keys; the secret itself is never returned.

OptionDescription
--user-idUser id whose keys to list (needs Um.User.ApiKey.Read). Default: the current user.
tsm --context dev auth api-key list

tsm auth api-key create​

Create an API key. The key is printed only once, to stdout; store it right away. Needs Um.User.ApiKey.ManageOwn for your own keys, Um.User.ApiKey.Manage for another user.

OptionDescription
--nameKey name, e.g. gitlab-ci-deploy. Required.
--expiresExpiry: a date (2027-06-30, valid through that day in UTC) or an ISO instant. Required.
--descriptionFree-text description.
--scopePrivilege scope rules, e.g. Tick,-Tick.Ticket.Delete. Default: all privileges of the user.
--user-idUser id to create the key for. Default: the current user.
tsm --context dev auth api-key create --name gitlab-ci-deploy --expires 2027-06-30 --scope Tick,-Tick.Ticket.Delete --description "Deploys packages from GitLab CI"

tsm auth api-key revoke​

Revoke an API key; requests with it fail from then on.

OptionDescription
--reasonReason recorded with the revocation.
ArgumentDescription
IDAPI key id (see 'tsm auth api-key list'). Required.
tsm --context dev auth api-key revoke 3f2b8c1e-5d4a-4e7b-9a60-1c2d3e4f5a6b --reason "Key rotated"

tsm package​

Create, build, validate, diff, and install configuration packages.

tsm package init​

Scaffold a new package directory with package.yaml.

OptionDescription
--package-idPackage identifier, also the default directory name under packages/ (e.g. ordering-sdwan). Required.
--nameHuman-readable package name. Required.
--versionInitial package version (default: 0.0.1). Default: 0.0.1.
--descriptionPackage description.
--owner-teamTeam that owns the package, recorded in package.yaml.
--pathDirectory to create the package in (default: packages/<package-id>).
--area-idId of the first area (default: main).
--area-pathDirectory of the first area inside the package (default: the area id).
--config-typeConfig type selected by the first area. Without it the area starts empty.
--include-subtreeSelect the child config types of --config-type too. On by default; turn off with --include-subtree=false. Default: true.
tsm package init --package-id ordering-sdwan --name "Ordering / SD-WAN" --path packages/ordering-sdwan --area-id shared --config-type Form

tsm package add​

Add package elements to package.yaml.

tsm package add area​

Add an area definition to package.yaml.

OptionDescription
--package-yamlPath to the package.yaml to modify. Required.
--area-idId of the new area. Required.
--area-pathDirectory of the area inside the package (default: the area id).
--nameDisplay name of the area.
--descriptionArea description.
--config-typeConfig types selected by the area. Comma-separated. Required.
--include-subtreeSelect the child config types of the listed config types too. On by default; turn off with --include-subtree=false. Default: true.
tsm package add area --package-yaml packages/ordering-sdwan/package.yaml --area-id workflows --config-type ProcessDefinition

tsm package add dependency​

Add or replace a package dependency.

OptionDescription
--package-yamlPath to the package.yaml to modify. Required.
--dependency-idPackage id of the dependency. An existing dependency with the same id is replaced. Required.
--version-rangeAccepted versions of the dependency, e.g. ">=1.0.0 <2.0.0". Required.
--kindDependency kind (default: required). Default: required.
tsm package add dependency --package-yaml packages/ordering-sdwan/package.yaml --dependency-id core-common --version-range ">=1.0.0 <2.0.0"

tsm package version​

Set or bump package version.

OptionDescription
--package-yamlPath to the package.yaml to modify. Required.
--versionSet exactly this version, e.g. 1.2.0. Exclusive with --bump.
--bumpIncrease one version component: major, minor or patch. Exclusive with --version.
tsm package version --package-yaml packages/demo/package.yaml --bump minor

tsm package info​

Display package.yaml details.

OptionDescription
--package-yamlPath to the package.yaml to display. Required.
tsm package info --package-yaml packages/ordering-sdwan/package.yaml

tsm package download​

Download current environment content into a local package directory.

OptionDescription
--outSave the downloaded ZIP to this file instead of extracting it into the package directory.
--area-codeDownload only the area with this id from package.yaml.
--entity-typesEntity types to download, comma-separated (e.g. Form,Listing). Default: all entity types selected by the package.
--from-timestampOnly content changed since this instant, ISO-8601 in UTC (e.g. 2025-06-01T00:00:00Z).
--changesetOnly content tracked in this Change Set (code or id).
--who-editedFilter by editor user ID or code. Accepts comma-separated values.
--my-changesShorthand: filter to changes made by the currently logged-in user. Default: false.
--page-sizeRecords fetched per downstream request during export. Lower it if the server runs out of heap on heavy entity types (e.g. process definitions). Server clamps it to the entity's configured limits.
ArgumentDescription
<packageDir>Local package directory containing package.yaml. Required.
tsm --context dev package download packages/ordering-sdwan
tsm --context dev package download packages/ordering-sdwan --area-code shared --out build/ordering-sdwan-shared.zip

tsm package validate​

Validate a package against the target environment.

OptionDescription
--fileUse this already built package ZIP instead of zipping the package directory.
--area-codeLimit the operation to the area with this id from package.yaml.
--entity-typesLimit the operation to these entity types, comma-separated (e.g. Form,Listing).
ArgumentDescription
<packageDir>Local package directory. Required unless --file is used.
tsm --context dev package validate packages/ordering-sdwan

tsm package diff​

Compare a package with the current environment.

OptionDescription
--fileUse this already built package ZIP instead of zipping the package directory.
--area-codeLimit the operation to the area with this id from package.yaml.
--entity-typesLimit the operation to these entity types, comma-separated (e.g. Form,Listing).
--show-detailsPrint full nested diff details. Default: false.
--diffPrint unified content diff for changed values. Default: false.
ArgumentDescription
<packageDir>Local package directory. Required unless --file is used.
tsm --context dev package diff packages/ordering-sdwan --show-details

tsm package install​

Install a package into the target environment.

OptionDescription
--fileUse this already built package ZIP instead of zipping the package directory.
--area-codeLimit the operation to the area with this id from package.yaml.
--entity-typesLimit the operation to these entity types, comma-separated (e.g. Form,Listing).
--install-sourceOrigin recorded with the installation: CLI, TSM_STUDIO, CI_PIPELINE or API (default: CLI). Default: CLI.
--notesFree-text notes stored with the installation.
--dry-runOnly validate the package and print the validation result; nothing is installed. Default: false.
--data-model-timeoutData Model refresh wait budget in seconds, independent of the HTTP timeout. Default: 1800.
--require-clean-data-modelRequire a completed Data Model refresh with no failed sources; unavailable or deferred refresh is not ready. Default: false.
--defer-data-model-refreshBootstrap only: install without refreshing Data Model. Run a final install with --require-clean-data-model after registration completes. Default: false.
ArgumentDescription
<packageDir>Local package directory. Required unless --file is used.
tsm --context dev package install packages/ordering-sdwan --notes "release 1.2.0"
tsm --context dev package install --file build/ordering-sdwan.zip

tsm package artifact​

Create and publish installation artifacts.

tsm package artifact create​

Create an installation artifact with a pre-computed diff.

OptionDescription
--outOutput location for the artifact ZIP file. If not specified, defaults to build/{packageId}-{version}-{environment}.zip
--area-codeFilter artifact to include only changes in the specified area (e.g., 'order-service'). Matches areas/{area-code}/ directory.
--entity-typesComma-separated list of entity types to include (e.g., 'policy,rule,config'). If specified, only files matching these types are included.
--branch-diffGit branch specification for diff-based artifact creation. Format: base..target (e.g., 'origin/main..HEAD'). Creates artifact with only changed files between branches.
--git-fetchWhether to fetch latest refs from remote before comparing branches. Default: true (recommended for CI/CD). Use false for offline operation with local refs only.
--repository-rootOverride automatic git repository root detection. Specify the path to the git repository if auto-detection fails.
ArgumentDescription
<packageDir>Local package directory containing package.yaml and package content. Required.
tsm --context tsm-dev package artifact create packages/demo

tsm package artifact publish​

Publish an installation artifact to a repository.

OptionDescription
--repositoryAlias of the artifact repository configured in tsm-project.yaml or ~/.tsm/config.json (e.g. nexus). Required.
--notesNotes sent along with the uploaded artifact.
ArgumentDescription
<artifact>Artifact ZIP file. Required.
tsm package artifact publish build/ordering-sdwan-feature.zip --repository nexus --notes "feature deployment"

tsm package installed​

Browse InstalledPackage records.

tsm package installed list​

List installed packages.

OptionDescription
--pagePage number, starting at 0 (default: 0). Default: 0.
--sizePage size (default: 20). Default: 20.
--sortSort expression field,ASC|DESC, e.g. installedAt,DESC.
--filterEquality filter field==value, e.g. packageId==ordering-sdwan. Repeatable.
tsm --context dev package installed list --filter "packageId==ordering-sdwan"

tsm package installed get​

Get one installed package by UUID.

ArgumentDescription
<id>Installed package id (UUID, see 'tsm package installed list'). Required.
tsm --context dev package installed get aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa

tsm package installed items​

List items in one installed package.

OptionDescription
--pagePage number, starting at 0 (default: 0). Default: 0.
--sizePage size (default: 50). Default: 50.
--filterEquality filter field==value on item fields such as entityType, code, configType or compareStatus. Repeatable.
--include-unchangedShow unchanged items too (within the selected page). Default: false.
ArgumentDescription
<id>Installed package id (UUID, see 'tsm package installed list'). Required.
tsm --context dev package installed items aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa

tsm changeset​

Story-level change tracking.

tsm changeset create​

Create a new Change Set.

OptionDescription
--codeChange Set code, usually the story key (e.g. STORY-123). Required.
--nameChange Set name. Required.
--branchGit branch the changes are made on.
--user-groupUser group that owns the Change Set together with you.
tsm changeset create --code STORY-123 --name "Order form changes" --branch feature/story-123

tsm changeset list​

List Change Sets.

OptionDescription
--statusShow only Change Sets in this status: OPEN, IN_REVIEW or CLOSED.
--ownerShow only Change Sets owned by this user (user id).
tsm changeset list --status OPEN

tsm changeset show​

Display Change Set details.

ArgumentDescription
<identifier>Change Set ID (UUID or code). Required.
tsm changeset show STORY-123

tsm changeset add​

Manually add an entity to a Change Set.

OptionDescription
--entity-typeEntity type of the entity to add (e.g. Form). Required.
--entity-codeCode of the entity to add. Required.
--allow-unresolvedRecord the code as the entity id when the entity does not exist (HTTP 404) or cannot be read (HTTP 403) instead of failing. Export and automatic tracking select by entity id and will not match such an item. Default: false.
ArgumentDescription
<code>Change Set id (UUID) or code. Required.
tsm changeset add STORY-123 --entity-type Form --entity-code OrderForm

tsm changeset remove​

Remove an entity from a Change Set.

OptionDescription
--entity-typeEntity type of the entity to remove (e.g. Form). Required.
--entity-codeCode of the tracked item (or its entity id). Fails when it matches more than one item; use --entity-id then.
--entity-idExact entity id of the tracked item. Use it when codes are not unique (e.g. RegisterValue, ProcessDefinition versions).
ArgumentDescription
<code>Change Set id (UUID) or code. Required.
tsm changeset remove STORY-123 --entity-type Form --entity-code OrderForm

tsm changeset submit​

Submit a Change Set for review.

ArgumentDescription
<code>Change Set id (UUID) or code. Required.
tsm changeset submit STORY-123

tsm changeset close​

Close a reviewed Change Set.

ArgumentDescription
<code>Change Set id (UUID) or code. Required.
tsm changeset close STORY-123

tsm changeset abandon​

Abandon a Change Set. Its items are kept.

ArgumentDescription
<code>Change Set id (UUID) or code. Required.
tsm changeset abandon STORY-123

tsm e2e​

Select and run product E2E tests.

tsm e2e catalog​

List available tests and parameters.

tsm --context dev --tenant demo e2e catalog

tsm e2e suites​

List available suites.

tsm --context dev --tenant demo e2e suites

tsm e2e preview​

Resolve selection without running tests.

OptionDescription
--testTest code; repeatable or comma-separated. Choose tests or a suite.
--suiteSuite code (exclusive with --test).
--allRun all executable tests in the server catalog; exclusive with --test and --suite. Default: false.
--paramsParameters as a JSON object; preserves numbers, booleans and nested values.
--params-fileRead parameter JSON from a file instead of command arguments.
--no-reportDisable automatic Allure publication for this run. Default: false.
--execution-timeoutServer execution timeout in seconds (default: 10800). Default: 10800.
tsm --context dev --tenant demo e2e preview --suite Reference.Baseline

tsm e2e run​

Run selected tests or a suite.

OptionDescription
--testTest code; repeatable or comma-separated. Choose tests or a suite.
--suiteSuite code (exclusive with --test).
--allRun all executable tests in the server catalog; exclusive with --test and --suite. Default: false.
--paramsParameters as a JSON object; preserves numbers, booleans and nested values.
--params-fileRead parameter JSON from a file instead of command arguments.
--no-reportDisable automatic Allure publication for this run. Default: false.
--execution-timeoutServer execution timeout in seconds (default: 10800). Default: 10800.
--waitWait for terminal execution status. Default: false.
--wait-timeoutMaximum client wait in seconds (default: 10800); does not cancel the execution. Default: 10800.
--poll-intervalPolling interval in seconds (default: 2). Default: 2.
tsm --context dev --tenant demo e2e run --test CoreE2e.Evaluation
tsm --context dev --tenant demo e2e run --test CoreE2e.Evaluation,CoreE2e.Cleanup --params '{"count":2}' --wait
tsm --context ci --tenant demo e2e run --suite Reference.Baseline --wait

tsm e2e status​

Read execution status; optionally wait.

OptionDescription
--waitWait for terminal execution status. Default: false.
--wait-timeoutMaximum client wait in seconds (default: 10800); does not cancel the execution. Default: 10800.
--poll-intervalPolling interval in seconds (default: 2). Default: 2.
--require-reportWait for published report; fail if publication failed. Default: false.
ArgumentDescription
<id>Execution UUID. Required.
tsm --context dev --tenant demo e2e status 0b7e9a54-2c1d-4f3a-8e6b-5a9d7c1f2e30 --wait --wait-timeout 120

tsm e2e online​

List online executions in the selected tenant.

tsm --context dev --tenant demo e2e online

tsm e2e initialize​

Initialize optional E2E configuration storage in the selected tenant.

OptionDescription
--yesConfirm creation or migration of E2E schema in the explicit tenant. Default: false.
tsm --context dev --tenant demo e2e initialize --yes

tsm e2e cancel​

Request execution cancellation.

ArgumentDescription
<id>Execution UUID. Required.
tsm --context dev --tenant demo e2e cancel 0b7e9a54-2c1d-4f3a-8e6b-5a9d7c1f2e30

tsm e2e report​

Retry report upload for an execution.

ArgumentDescription
<id>Execution UUID. Required.
tsm --context dev --tenant demo e2e report 0b7e9a54-2c1d-4f3a-8e6b-5a9d7c1f2e30

tsm app​

Work with the application selected by the current context.

tsm app entity​

Read entity data from target environment.

tsm app entity types​

List available entity types.

tsm app entity types

tsm app entity list​

List records of an entity type.

OptionDescription
--page-sizeMaximum number of records to return.
ArgumentDescription
<entityCode>Entity type code (e.g. BillingCycleType). Required.
tsm app entity list BillingCycleType --page-size 50

tsm app entity get​

Get a single entity record by ID or code.

OptionDescription
--sourceRead source: 'db' (default, database source of truth) or 'es' (Elasticsearch read model). Default: db.
--es-entityTQL/Elasticsearch logical entity name for --source es (e.g. 'order'). Required with --source es.
ArgumentDescription
<entityCode>Entity type code (e.g. BillingCycleType). Required.
<idOrCode>Entity ID or code. Required.
tsm app entity get BillingCycleType MONTHLY

tsm app entity verify​

Verify a record's presence in the database (source of truth) vs the Elasticsearch read model.

OptionDescription
--es-entityTQL/Elasticsearch logical entity name (e.g. 'order'). Required.
ArgumentDescription
<entityCode>Entity type code (e.g. Order). Required.
<idOrCode>Entity ID or code. Required.
tsm --context dev app entity verify Order ORD-1001 --es-entity order

tsm app request​

Send a raw HTTP request to the target environment's tSM API, reusing the configured environment and credentials. The leading slash of <path> is optional — omit it on Windows, where Git Bash rewrites /path into a Windows path.

OptionDescription
--field, -fBody field key=value (string) or key:=value (raw JSON). Repeatable; builds a JSON object body.
--input, -iRead the request body from a file, or '-' for stdin.
--raw-bodyUse this literal string as the request body.
--query, -qQuery parameter key=value. Repeatable.
--header, -HExtra request header 'Name: value'. Repeatable.
--content-typeContent-Type for the request body. Default: application/json.
--rawPrint the response body verbatim (no JSON pretty-printing). Default: false.
--outWrite the response body to a file byte-for-byte. Creates parent directories.
ArgumentDescription
<method>HTTP method: GET, POST, PUT, PATCH, DELETE, HEAD. Required.
<path>Request path relative to the environment base URL, e.g. tsm-config-form/api/v2/entity-types/search. The leading slash is optional; prefer the slash-less form in Git Bash on Windows, which rewrites an argument starting with '/' into a Windows filesystem path. Required.
tsm app request GET tsm-config-form/api/v2/entity-types/search

tsm app endpoints​

List the REST endpoints of a service from its OpenAPI document, optionally filtered. Then call one of the endpoints with 'tsm api'.

OptionDescription
--groupOpenAPI group, e.g. v2, admin, legacy (default: every group in one document).
ArgumentDescription
SERVICEService code, e.g. tsm-ticket. Required.
FILTERCase-insensitive text matched against path, summary, operation id and tags.
tsm app endpoints tsm-ticket reindex

tsm app tql​

Run a TQL query and print the result as a table (or -o json / yaml). Exits 1 when the query fails; the parser position is printed to stderr.

OptionDescription
--fileRead the query from a file, or '-' for stdin.
--param, -pQuery parameter key=value (string) or key:=value (JSON). Repeatable.
--serviceService that runs the query (default: tsm-config-form). Default: tsm-config-form.
ArgumentDescription
QUERYTQL query; or use --file.
tsm app tql "select key, name from ticket where status = 'NEW' limit 20"

tsm app spel​

Evaluate SpEL on the target environment.

tsm app spel eval​

Evaluate a SpEL expression like the SpEL console and print the result. Needs the Settings.Script.Spel.Console privilege.

OptionDescription
--fileRead the expression from a file, or '-' for stdin.
--var, -vContext variable key=value (string) or key:=value (JSON), available as #key. Repeatable.
--scriptEvaluate in the context of this saved script.
--serviceService that evaluates the expression, with its own beans (default: tsm-config-form). Default: tsm-config-form.
ArgumentDescription
EXPRESSIONSpEL expression; or use --file.
tsm app spel eval "@config.registerValue.get('Tick.Priority', 'HIGH')"

tsm app script​

Run saved scripts on the target environment.

tsm app script run​

Run a saved Script entity by code and print its result. The script's own execution privilege applies.

OptionDescription
--var, -vScript variable key=value (string) or key:=value (JSON). Repeatable.
--serviceService that runs the script (default: tsm-config-form). Default: tsm-config-form.
ArgumentDescription
CODEScript code. Required.
tsm --context dev app script run Billing.RecalculateCycle --var cycleId=42 --var dryRun:=true

tsm app forms​

Validate and inspect forms using the TSM-AI skill API.

tsm app forms validate​

Validate a form schema; --strict also rejects warnings.

OptionDescription
--formStored form ID or code; alternatively supply a schema file.
--entityControl entity scope.
--use-typeControl use-type scope.
--base-formBase form configuration code.
--strictReject warnings as well as errors. Default: false.
ArgumentDescription
<file>Schema JSON file, or '-' for stdin; alternatively use --form.
tsm app forms validate form.json --strict --entity Ticket --use-type EDIT --base-form Ticket.Edit
tsm app forms validate --form Ticket.Edit --strict

tsm app forms lint​

Return all form lint findings.

OptionDescription
--formStored form ID or code; alternatively supply a schema file.
--entityControl entity scope.
--use-typeControl use-type scope.
--base-formBase form configuration code.
ArgumentDescription
<file>Schema JSON file, or '-' for stdin; alternatively use --form.
tsm app forms lint form.json

tsm app forms inspect​

Inspect schema widgets, effects and expressions.

OptionDescription
--formStored form ID or code; alternatively supply a schema file.
--entityControl entity scope.
--use-typeControl use-type scope.
--base-formBase form configuration code.
ArgumentDescription
<file>Schema JSON file, or '-' for stdin; alternatively use --form.
tsm app forms inspect --form Ticket.Edit

tsm app forms widgets​

Search the bundled widget catalog.

OptionDescription
--searchText to search for in the widget catalog.
--selectorOnly widgets with this selector, e.g. input.
--limitMaximum records (1..200; server default 30).
tsm app forms widgets --search text --selector input --limit 30

tsm app forms controls​

Search the bundled form control catalog.

OptionDescription
--entityOnly controls of this entity, e.g. Ticket.
--use-typeOnly controls with this use type, e.g. EDIT.
--codeOnly controls of this form configuration code, e.g. Ticket.Edit.
--idLook up a single control by its ID.
--searchText to search for in the control catalog.
--allInclude all matching controls. Default: false.
tsm app forms controls --entity Ticket --use-type EDIT --code Ticket.Edit --search name
tsm app forms controls --id control-id

tsm app forms effects​

Inspect and simulate form effects.

tsm app forms effects lint​

Lint form effects.

OptionDescription
--formStored form ID or code; alternatively supply a schema file.
--entityControl entity scope.
--use-typeControl use-type scope.
--base-formBase form configuration code.
ArgumentDescription
<file>Schema JSON file, or '-' for stdin; alternatively use --form.
tsm app forms effects lint form.json

tsm app forms effects graph​

Build the form effects graph.

OptionDescription
--formStored form ID or code; alternatively supply a schema file.
--entityControl entity scope.
--use-typeControl use-type scope.
--base-formBase form configuration code.
ArgumentDescription
<file>Schema JSON file, or '-' for stdin; alternatively use --form.
tsm app forms effects graph --form Ticket.Edit

tsm app forms effects simulate​

Simulate effects against sample initial data.

OptionDescription
--formStored form ID or code; alternatively supply a schema file.
--entityControl entity scope.
--use-typeControl use-type scope.
--base-formBase form configuration code.
--initialInitial values as a JSON object; mutually exclusive with --initial-file.
--initial-fileInitial values JSON file, or '-' for stdin; defaults to {} when neither initial option is supplied.
ArgumentDescription
<file>Schema JSON file, or '-' for stdin; alternatively use --form.
tsm app forms effects simulate form.json --initial-file initial.json

tsm app forms capabilities​

Read available Forms operations and provenance.

tsm app forms capabilities

tsm app jexl​

Validate and evaluate JEXL using the TSM-AI skill API.

tsm app jexl validate​

Validate JEXL syntax and precedence without execution.

OptionDescription
--exprLiteral expression.
--fileExpression file, or '-' for stdin.
--formStored form ID or code; requires --path.
--pathRFC 6901 pointer relative to authored Form.schema; requires --form.
tsm app jexl validate --expr '1 + 2'
tsm app jexl validate --form Ticket.Edit --path /widgets/0/props/visible

tsm app jexl execute​

Evaluate JEXL against supplied sample context and JSON helper values.

OptionDescription
--exprLiteral expression.
--fileExpression file, or '-' for stdin.
--formStored form ID or code; requires --path.
--pathRFC 6901 pointer relative to authored Form.schema; requires --form.
--ctxSample context JSON file.
--functions-fileJSON function helper values; executable JavaScript is not supported.
--transforms-fileJSON transform helper values; executable JavaScript is not supported.
tsm app jexl execute --file expression.jexl --ctx context.json

tsm app jexl compile​

Compile JEXL to JavaScript; the response remains JSON.

OptionDescription
--exprLiteral expression.
--fileExpression file, or '-' for stdin.
--formStored form ID or code; requires --path.
--pathRFC 6901 pointer relative to authored Form.schema; requires --form.
--shapeOutput shape: json, body, wrapped (server default json).
tsm app jexl compile --file expression.jexl --shape wrapped

tsm app jexl autocomplete​

Complete JEXL at a cursor offset.

OptionDescription
--exprLiteral expression.
--fileExpression file, or '-' for stdin.
--offsetCursor offset in the expression. Default: 0. Required.
--ctxSample context JSON file.
tsm app jexl autocomplete --file expression.jexl --offset 8 --ctx context.json

tsm app jexl catalog​

Read JEXL catalog documentation and return shapes.

OptionDescription
--kindfunctions, transforms, variables or datasources. Required.
--nameOnly the catalog entry with this name, e.g. lookup.
--limitMaximum records (1..200; server default 40).
tsm app jexl catalog --kind functions --name lookup --limit 40

tsm app jexl capabilities​

Read available JEXL operations and provenance.

tsm app jexl capabilities

tsm app mock​

Build mock packages and manage tenant mock bindings.

tsm app mock validate​

Validate portable mock package source or ZIP locally.

ArgumentDescription
<source>Mock-package source directory or archive. Required.
tsm app mock validate mocks/demo

tsm app mock build​

Build an immutable mock-package-v1 ZIP locally.

OptionDescription
--outOutput file or directory. Required.
ArgumentDescription
<source>Mock-package source directory or archive. Required.
tsm app mock build mocks/demo --out build/demo-mocks.zip

tsm app mock diff​

Compare an artifact to the current tenant binding.

ArgumentDescription
<artifact>Built mock package ZIP. Required.
tsm app mock diff build/demo-mocks.zip

tsm app mock install​

Install at the observed binding revision without resetting state.

OptionDescription
--expected-revisionOverride the observed revision for optimistic concurrency.
ArgumentDescription
<artifact>Built mock package ZIP. Required.
tsm app mock install build/demo-mocks.zip

tsm app mock status​

Read tenant binding, readiness and drift.

tsm app mock status

tsm app mock ui​

Return the registered dashboard URL for this tenant binding.

tsm app mock ui

tsm app mock journal​

Read tenant journal with explicit partial correlation coverage.

OptionDescription
--correlation-id, --runExisting system X-Correlation-Id; accepts generated tsm-prefixed IDs.
--resourcenetbox:device:ID or abs:phone:ID.
tsm app mock journal --correlation-id tsm-example

tsm app mock export​

Export portable draft source from an idle tenant workspace.

OptionDescription
--outOutput file or directory. Required.
tsm app mock export --out mocks/export

tsm app data​

Import business datasets through the standard data-package API.

tsm app data import​

Import a data-package ZIP into the selected tenant; retain record results on partial failure.

OptionDescription
--fileData-package ZIP file to import. Required.
--overwrite-existingUpdate records that differ from the dataset; default rejects conflicts. Default: false.
tsm --context tsm-dev --tenant demo app data import --file dataset.zip

tsm app tenant​

Create and inspect tenants through installation management.

tsm app tenant profiles​

List creation profiles, their descriptions and the configured default.

tsm --context tsm-dev app tenant profiles

tsm app tenant sources​

List available clone sources.

tsm --context tsm-dev app tenant sources

tsm app tenant create​

Create and prepare one tenant; optionally run a suite after READY.

OptionDescription
--nameDisplay name of the new resource. Required.
--source-tenantSource tenant used as the preparation blueprint. Required.
--profileCreation profile code; defaults to the configured profile shown by tenant profiles.
--purposeTenant purpose: ORGANIZATION, SANDBOX, TESTING. Controls the default lifetime, not test selection. Default: SANDBOX.
--ttl-daysTenant lifetime in days.
--unlimitedCreate without an automatic expiration. Default: false.
--run-suiteRun this suite once after preparation; tenant remains READY if tests fail.
--waitWait for READY and any requested test run. Default: false.
--wait-timeoutClient wait budget in seconds (default: 10800); does not cancel provisioning. Default: 10800.
--poll-intervalPolling interval in seconds (default: 2). Default: 2.
ArgumentDescription
<code>Lowercase tenant code: letter followed by letters/digits, maximum 40 characters. Required.
tsm --context tsm-dev app tenant create demo --name Demo --source-tenant default --purpose TESTING --wait

tsm app tenant status​

Inspect tenant preparation and any requested test run.

OptionDescription
--waitWait for READY and any requested test run. Default: false.
--wait-timeoutClient wait budget in seconds (default: 10800); does not cancel provisioning. Default: 10800.
--poll-intervalPolling interval in seconds (default: 2). Default: 2.
ArgumentDescription
<code>Tenant code. Required.
tsm --context tsm-dev app tenant status demo

tsm cli​

Configure, update and integrate the CLI itself.

tsm cli config​

Manage the single home configuration without accessing secrets.

tsm cli config set​

Set a CLI preference in the home config; requires --global.

OptionDescription
--globalWrite only global home preferences instead of a workspace default. Default: false. Required.
ArgumentDescription
<key>CLI preference key. Required.
<value>New preference value. Required.
tsm cli config set output json --global

tsm cli config get​

Show effective CLI preferences and their home file.

ArgumentDescription
<key>CLI preference key.
tsm cli config get

tsm cli config list​

List registered projects and environments; never lists credentials.

tsm cli config list

tsm cli config unset​

Reset a CLI preference in the home config; requires --global.

OptionDescription
--globalWrite only global home preferences instead of a workspace default. Default: false. Required.
ArgumentDescription
<key>CLI preference key. Required.
tsm cli config unset output --global

tsm cli config project​

Register logical projects in the home config.

tsm cli config project add​

Register a project without copying environments into a checkout.

ArgumentDescription
<name>Registered resource name. Required.
tsm cli config project add tsm

tsm cli config project remove​

Remove an unreferenced project; retains account secrets.

ArgumentDescription
<name>Registered resource name. Required.
tsm cli config project remove old-project

tsm cli config environment​

Register project environments in the home config.

tsm cli config environment add​

Add a direct endpoint or runtime-resolved environment; no credentials are stored.

OptionDescription
--projectLogical project registered in home config. Required.
--endpointDirect tSM HTTP(S) URL; omit to resolve the owned workspace runtime.
ArgumentDescription
<name>Registered resource name. Required.
tsm cli config environment add dev --project tsm --endpoint https://tsm-dev.example.com

tsm cli config environment update​

Replace environment connection settings; changed endpoint invalidates stored credential scope.

OptionDescription
--projectLogical project registered in home config. Required.
--endpointDirect tSM HTTP(S) URL; omit to resolve the owned workspace runtime.
ArgumentDescription
<name>Registered resource name. Required.
tsm cli config environment update dev --project tsm --endpoint https://tsm-dev.example.com

tsm cli config environment remove​

Remove an unreferenced project environment; retains account secrets.

OptionDescription
--projectLogical project registered in home config. Required.
ArgumentDescription
<name>Registered resource name. Required.
tsm cli config environment remove old-dev --project tsm

tsm cli config workspace​

Manage named worktrees and their personal defaults in home config.

tsm cli config workspace list​

List registered workspaces without selecting or starting them.

tsm cli config workspace list

tsm cli config workspace add​

Register this Git checkout as a workspace; infer path, name and project from CWD/tsm-project.yaml.

OptionDescription
--pathWorkspace or source checkout path; defaults to CWD when supported.
--projectLogical project registered in home config.
--runtime-profileDefault profile defined in the workspace runtime-profiles.yaml.
ArgumentDescription
<name>Registered resource name.
tsm cli config workspace add

tsm cli config workspace update​

Replace a workspace registration; does not change a running instance.

OptionDescription
--pathWorkspace or source checkout path; defaults to CWD when supported.
--projectLogical project registered in home config.
--runtime-profileDefault profile defined in the workspace runtime-profiles.yaml.
ArgumentDescription
<name>Registered resource name.
tsm cli config workspace update tsm-a --path /work/tsm-a --project tsm --context tsm-local --runtime-profile full

tsm cli config workspace remove​

Forget a workspace registration; retains its files, runtime, ports and volumes.

ArgumentDescription
<name>Registered resource name. Required.
tsm cli config workspace remove tsm-a

tsm cli upgrade​

Upgrade the tsm CLI to the latest published release.

OptionDescription
--checkOnly report whether a newer release exists; do not install. Default: false.
--forceReinstall even when already on the latest version. Default: false.
--gitlab-tokenGitLab access token. Defaults to $TSM_UPGRADE_TOKEN or $GITLAB_TOKEN. Sensitive input.
--gitlab-urlGitLab API v4 base URL (upgrade source). Default: https://gitlab.datalite.cz/api/v4.
--projectGitLab project id or namespaced path (upgrade source). Default: tsm/tsm-config.
--skip-checksumSkip SHA-256 verification of the downloaded binary. Default: false.
--targetInstall to this path instead of replacing the running binary. Also enables installing when running via the JVM (java -jar).
tsm cli upgrade --check
tsm cli upgrade

tsm cli autocomplete​

Install shell completion for tsm: writes the completion script next to the CLI config and sources it from the shell startup file (~/.bashrc, the first existing of ~/.bash_profile, ~/.bash_login, ~/.profile on macOS, $ZDOTDIR/.zshrc or ~/.zshrc, or the PowerShell $PROFILE). Run it again after an upgrade to refresh the commands.

OptionDescription
--printPrint the completion script to stdout instead of installing it. Default: false.
--rc-fileStartup file to source the script from, instead of the shell default.
ArgumentDescription
<shell>Shell: bash, zsh, powershell. Required.
tsm cli autocomplete bash
tsm cli autocomplete zsh --print

tsm runtime​

Build and run the selected local setup.

tsm runtime profile​

Inspect and validate workspace runtime profile definitions.

tsm runtime profile list​

List profiles in the context directory.

tsm runtime profile list

tsm runtime profile show​

Show one profile without starting it.

ArgumentDescription
<name>Registered resource name. Required.
tsm runtime profile show full

tsm runtime profile validate​

Validate a runtime profile against the selected environment.

ArgumentDescription
<name>Registered resource name. Required.
tsm runtime profile validate full

tsm runtime list​

List this workspace's recorded runtime instances without changing selection.

tsm runtime list

tsm runtime plan​

Show the complete setup without starting or building it.

ArgumentDescription
PROFILERuntime profile, otherwise the directory default.
tsm runtime plan full

tsm runtime build​

Build missing or changed source artifacts with Maven 3.

ArgumentDescription
PROFILERuntime profile, otherwise the directory default.
tsm runtime build full

tsm runtime up​

Build and start all components declared by the setup.

ArgumentDescription
PROFILERuntime profile, otherwise the directory default.
tsm runtime up full

tsm runtime down​

Stop this directory's owned runtime, preserving data and port leases.

OptionDescription
--instanceVerify this workspace owns the specified runtime UUID.
--volumesDelete this runtime's Compose volumes. Default: false.
tsm runtime down

tsm runtime status​

Show local process ownership and readiness.

tsm runtime status

tsm runtime ports​

Allocate or show stable ports for the selected setup.

OptionDescription
--reserveAlso reserve named ports for project fixtures; does not launch a process.
tsm runtime ports

tsm runtime logs​

Read a component log.

OptionDescription
--tailNumber of recent log lines. Default: 100.
ArgumentDescription
<component>Runtime component name. Required.
tsm runtime logs tsm-calendar --tail 100

tsm runtime ide​

Show launch arguments for a component declared external.

ArgumentDescription
<component>Runtime component name. Required.
tsm runtime ide tsm-ordering

tsm runtime source​

Bind source checkouts; ordinary Git manages branches and merges.

tsm runtime source add​

Register a checkout or clone a repository with an explicit ref.

OptionDescription
--pathWorkspace or source checkout path; defaults to CWD when supported.
--urlGit clone URL without embedded credentials.
--refExplicit Git branch or tag to clone.
ArgumentDescription
<name>Registered resource name. Required.
tsm runtime source add tsm-infra --path /work/tsm-infra

tsm runtime source remove​

Remove a binding while retaining the checkout.

ArgumentDescription
<name>Registered resource name. Required.
tsm runtime source remove tsm-infra

tsm runtime source list​

Show registered sources.

tsm runtime source list

tsm runtime source status​

Show actual source SHAs, branches and dirty status.

tsm runtime source status

tsm runtime source exec​

Execute a command in every registered source checkout.

ArgumentDescription
<arguments>Command and arguments to execute in each source checkout. Required.
tsm runtime source exec -- git status --short

tsm runtime update​

Resolve and lock the selected completed product release.

ArgumentDescription
PROFILERuntime profile, otherwise the directory default.
tsm runtime update full

tsm doctor​

Check the CLI setup against the selected environment: configuration, reachability, credentials, tenant and server version. Exits 1 when a check fails.

tsm --context dev doctor

tsm service​

Inspect tSM microservices behind the gateway.

tsm service health​

List microservices and their health status. Exits 1 when a service is not UP. With a single SERVICE prints its health components and their details.

OptionDescription
--waitPoll until every service is UP (e.g. after a deployment or restart). Default: false.
--wait-timeoutMaximum wait in seconds (default: 300). Default: 300.
--poll-intervalPolling interval in seconds (default: 5). Default: 5.
ArgumentDescription
SERVICEService code (gateway prefix), e.g. tsm-ticket. Default: every service in the Microservice register.
tsm --context dev service health
tsm --context dev service health tsm-ticket
tsm --context dev service health --wait --wait-timeout 600

tsm service version​

List microservices and their build version. With --compare-with compares the commits against a second environment.

OptionDescription
--compare-withSecond environment alias (stored with 'tsm auth login') to compare with.
--fail-on-diffWith --compare-with: exit 1 when a service differs between the environments. Default: false.
ArgumentDescription
SERVICEService code (gateway prefix), e.g. tsm-ticket. Default: every service in the Microservice register.
tsm --context dev service version
tsm --context dev service version --compare-with test --fail-on-diff

tsm service info​

Print the full actuator info of a service: build, git and its runtime configuration.

ArgumentDescription
SERVICEService code, e.g. tsm-ticket. Required.
tsm --context dev service info tsm-ticket

tsm service env​

Without PROPERTY list the property sources of a service, with PROPERTY its effective value and source. Values are masked by the service unless its actuator is configured to show them.

ArgumentDescription
SERVICEService code, e.g. tsm-ticket. Required.
PROPERTYProperty name, e.g. spring.datasource.url.
tsm --context dev service env tsm-ticket spring.datasource.url

tsm service loggers​

Without LOGGER list the loggers with a configured level; with LOGGER show it, or change it with --level / --reset. A change reaches only the one instance the gateway routes to; other replicas keep their level.

OptionDescription
--allList every logger, not only those with a configured level. Default: false.
--levelSet the level: TRACE, DEBUG, INFO, WARN, ERROR, OFF.
--resetDrop the configured level, so the logger inherits again.
ArgumentDescription
SERVICEService code, e.g. tsm-ticket. Required.
LOGGERLogger name, e.g. cz.datalite.tsm or ROOT.
tsm --context dev service loggers tsm-ticket cz.datalite.tsm --level DEBUG
tsm --context dev service loggers tsm-ticket cz.datalite.tsm --reset

tsm service logs​

Print the end of a service log file (actuator logfile). Services in Kubernetes usually log to stdout only and expose no log file; use Kibana or the cluster logs there.

OptionDescription
--tailNumber of last lines to print (default: 200, 0 = whole file). Default: 200.
ArgumentDescription
SERVICEService code, e.g. tsm-ticket. Required.
tsm --context dev service logs tsm-ticket --tail 100

tsm help​

Show help for a command. With '-o json' or '-o yaml' print the description of the command (options, arguments, examples, subcommands) as data instead. Hidden commands are not included.

ArgumentDescription
COMMANDCommand to describe, e.g. package download. Default: the whole CLI.
tsm help package download
tsm help -o json

Generated from tsm-config source cecd36d93.