Common CLI operations
This page walks through the operations you're most likely to reach for when using the Temporal CLI. For the full set of commands, see the command reference.
Run a development server
Start a local Temporal Service for development.
The Temporal Service is available on localhost:7233 and the Web UI at http://localhost:8233.
To keep Workflow data between restarts, specify a database file.
See Install and configure for more development server options.
temporal server start-dev
temporal server start-dev --db-filename temporal.db
Start a Workflow
Start a Workflow Execution with temporal workflow start.
To start a Workflow and wait for the result, use temporal workflow execute instead.
temporal workflow start \
--task-queue my-task-queue \
--type MyWorkflow \
--workflow-id my-workflow-id \
--input '"my-input-value"'
temporal workflow execute \
--task-queue my-task-queue \
--type MyWorkflow \
--workflow-id my-workflow-id \
--input '"my-input-value"'
Check Workflow status
List running Workflows.
Get details about a specific Workflow Execution.
View the Event History for a Workflow Execution.
temporal workflow list
temporal workflow describe --workflow-id my-workflow-id
temporal workflow show --workflow-id my-workflow-id
Send Signals and Queries
Send a Signal to a running Workflow.
Query a running Workflow for its current state.
temporal workflow signal \
--workflow-id my-workflow-id \
--name my-signal \
--input '"signal-value"'
temporal workflow query \
--workflow-id my-workflow-id \
--name my-query
Cancel or Terminate a Workflow
Cancel a Workflow Execution. Cancellation allows cleanup logic to run before the Workflow completes.
Terminate a Workflow Execution. Termination stops the Workflow immediately with no cleanup.
temporal workflow cancel --workflow-id my-workflow-id
temporal workflow terminate --workflow-id my-workflow-id
Work with Schedules
Create a Schedule that starts a Workflow on an interval.
List all Schedules.
Pause and unpause a Schedule.
temporal schedule create \
--schedule-id my-schedule \
--interval 1h \
--task-queue my-task-queue \
--type MyScheduledWorkflow
temporal schedule list
temporal schedule toggle \
--schedule-id my-schedule \
--pause --reason "maintenance"
temporal schedule toggle \
--schedule-id my-schedule \
--unpause --reason "maintenance complete"
temporal operator namespace list
temporal operator namespace create --namespace my-namespace
Next steps
- Use with Temporal Cloud to connect the CLI to Temporal Cloud.
- Command reference for the full set of commands and options.