CLI
Strøm provides two CLI binaries:
stroem— Local workspace tool for exploring and running tasks without a serverstroem-api— Remote server client for triggering jobs and querying a running Strøm server
stroem (Local)
Section titled “stroem (Local)”Local workspace commands. No server required.
# Set the workspace path (default: current directory)stroem --path /path/to/workspace <command>Run a task locally without a server. Loads the workspace, walks the task’s DAG, and executes each step via the local shell runner. Only type: script with runner: local (default) is supported — docker, pod, task, agent, and approval steps are rejected upfront.
# Run a task in the current directorystroem run my-task
# Run from a specific workspace pathstroem run my-task --path /path/to/workspace
# Run with inputstroem run deploy --input '{"env": "staging"}'Supports:
- DAG dependency ordering
- Template rendering (
{{ input.* }},{{ step.output.* }},{{ secret.* }}) whenconditions (skip steps based on expressions)for_eachloops (iterate over arrays)- Cascade-skip (downstream steps skipped when all dependencies are skipped)
Ctrl+Cgraceful cancellationOUTPUT: {json}parsing for step outputs
Limitations:
- Steps execute sequentially, even when the DAG allows parallelism
for_eachiterations always run sequentially regardless of thesequentialsetting- Only
type: scriptwith local runner is supported — docker, pod, task, agent, and approval steps are rejected
validate
Section titled “validate”Validate workflow YAML files before deploying.
# Validate current directorystroem validate
# Validate a specific pathstroem validate /path/to/workspace/.workflows/The validator checks:
- YAML syntax and structure
- Action type validity
- Runner field validity
- Flow step and dependency references
- DAG cycle detection
- Trigger cron expression syntax
- Hook action references
List all tasks in the workspace.
stroem tasksstroem --path /path/to/workspace tasksactions
Section titled “actions”List all actions in the workspace.
stroem actionstriggers
Section titled “triggers”List all triggers (scheduler and webhook) in the workspace.
stroem triggersinspect
Section titled “inspect”Show detailed information about a single task: input schema, flow steps with dependencies, hooks.
stroem inspect deploy-pipelinestroem-api (Remote)
Section titled “stroem-api (Remote)”Remote server commands. Requires a running Strøm server.
# Set the server URL (default: http://localhost:8080)export STROEM_URL=http://localhost:8080
# Set authentication token (optional)export STROEM_TOKEN=strm_your_api_keytrigger
Section titled “trigger”Execute a task and create a new job.
# Trigger with default inputstroem-api trigger hello-world
# Trigger with inputstroem-api trigger hello-world --input '{"name": "CLI"}'
# Trigger in a specific workspacestroem-api trigger etl-pipeline --workspace data-team --input '{"date": "2025-01-01"}'status
Section titled “status”Check the status of a job.
stroem-api status <job-id>View the logs of a job.
stroem-api logs <job-id>List recent jobs.
# List last 10 jobsstroem-api jobs --limit 10List tasks from the server (across workspaces).
# List all tasksstroem-api tasks
# Filter by workspacestroem-api tasks --workspace data-teamcancel
Section titled “cancel”Cancel a running or pending job.
stroem-api cancel <job-id>workspaces
Section titled “workspaces”List all configured workspaces on the server.
stroem-api workspaces