'Operate Temporal workflows with explicit namespace/address: inspect runs, fetch history, debug nondeterminism, reset/cancel/terminate, and inspect task queues.'
Resources
3Install
npx skillscat add proompteng/lab/packages-temporal-bun-sdk-skills-temporal Install via the SkillsCat registry.
SKILL.md
Temporal
Overview
Use explicit namespace, address, and task queue variables for every command so diagnostics are repeatable.
Connection
export TEMPORAL_ADDRESS=127.0.0.1:7233
export TEMPORAL_NAMESPACE=default
export TEMPORAL_TASK_QUEUE=my-task-queueValidate connectivity:
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow list --limit 5If your shell environment already has these values, use scripts/temporal-run.sh to avoid repeating flags.
From UI URL to CLI args
Example UI URL:
http://temporal/namespaces/default/workflows/my-workflow-id/01f0fdc1-b5f2-7f11-b8b5-0dc1f9a91a22/historyDerive:
export WORKFLOW_ID=my-workflow-id
export RUN_ID=01f0fdc1-b5f2-7f11-b8b5-0dc1f9a91a22Inspect workflows
Describe:
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow describe \
--workflow-id "$WORKFLOW_ID" \
--run-id "$RUN_ID"History (JSON):
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow show \
--workflow-id "$WORKFLOW_ID" \
--run-id "$RUN_ID" \
--output json > /tmp/workflow-history.jsonTrace:
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow trace \
--workflow-id "$WORKFLOW_ID" \
--run-id "$RUN_ID"List and filter
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow list --limit 20
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow list \
--query 'WorkflowType="MyWorkflow" and ExecutionStatus="Running"'
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow list \
--query 'ExecutionStatus="Failed"'Replay and nondeterminism triage
- Fetch workflow history JSON.
- Replay with your worker code.
- Compare mismatch location to the command stream.
- If needed, reset to a safe event.
bunx temporal-bun replay \
--history-file /tmp/workflow-history.json \
--workflow-type MyWorkflow \
--jsonReset nondeterminism
- Use
workflow showto locate the last good event ID. - Reset to
FirstWorkflowTaskor a known-safe event. - Confirm the new run replays deterministically.
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow reset \
--workflow-id "$WORKFLOW_ID" \
--run-id "$RUN_ID" \
--reason "reset to known-good event" \
--event-id 31 \
--reset-type FirstWorkflowTaskCancel and terminate
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow cancel \
--workflow-id "$WORKFLOW_ID"
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" workflow terminate \
--workflow-id "$WORKFLOW_ID" \
--reason "manual cleanup"Task queues and workers
temporal --namespace "$TEMPORAL_NAMESPACE" --address "$TEMPORAL_ADDRESS" task-queue describe \
--task-queue "$TEMPORAL_TASK_QUEUE"Resources
- Reference:
references/temporal-cli.md - Runner:
scripts/temporal-run.sh - Triage template:
assets/temporal-triage.md