output-workflow-stop
Stop a running Output SDK workflow execution. Use when cancelling a workflow, stopping a long-running process, terminating a stuck workflow, or when you need to abort a workflow in progress.
When & Why to Use This Skill
The output-workflow-stop skill provides essential control over Output SDK workflow executions, allowing developers to immediately terminate running processes. It is a critical utility for managing stuck workflows, cancelling redundant tasks, and ensuring system resource efficiency by preventing the execution of remaining steps in a workflow sequence.
Use Cases
- Terminating stuck processes: Stop workflows that have exceeded their expected runtime or appear to be in an infinite loop.
- Cancelling incorrect executions: Abort a high-resource workflow immediately if it was started with incorrect input parameters or configurations.
- Emergency stop: Halt workflows displaying unexpected behavior or side effects to prevent data inconsistency or system errors.
- Resource optimization: Manually stop long-running background tasks that are no longer needed to free up processing power for higher-priority jobs.
| name | output-workflow-stop |
|---|---|
| description | Stop a running Output SDK workflow execution. Use when cancelling a workflow, stopping a long-running process, terminating a stuck workflow, or when you need to abort a workflow in progress. |
| allowed-tools | [Bash] |
Stop Running Workflow
Overview
This skill stops a running workflow execution. The workflow will be marked as TERMINATED and will not complete its remaining steps. Use this carefully as it cannot be undone.
When to Use This Skill
- Cancelling a workflow that's no longer needed
- Stopping a workflow that appears stuck
- Terminating a long-running workflow to free resources
- Aborting a workflow with incorrect input
- Emergency stop during unexpected behavior
When NOT to Use This
- If the workflow is about to complete (let it finish)
- If you're unsure whether stopping is safe
- For debugging (use
npx output workflow debuginstead) - If the workflow has side effects that may leave data in an inconsistent state
Instructions
Stop a Workflow
npx output workflow stop <workflowId>
Safety Considerations
Before stopping, consider:
- Side effects: Has the workflow made changes that need to be rolled back?
- Partial completion: Are there steps that completed with side effects?
- Dependencies: Are other workflows or systems waiting on this result?
- Recovery: Do you need to restart or clean up after stopping?
Examples
Scenario: Stop a stuck workflow
# Check status - workflow has been running too long
npx output workflow status abc123xyz
# Status: RUNNING (for 2 hours)
# Decide to stop it
npx output workflow stop abc123xyz
# Workflow abc123xyz has been stopped
# Verify it's terminated
npx output workflow status abc123xyz
# Status: TERMINATED
Scenario: Cancel a workflow started with wrong input
# Realized input was wrong immediately after starting
npx output workflow start expensive-job '{"wrong": "input"}'
# Workflow ID: job-abc123
# Stop before it processes too much
npx output workflow stop job-abc123
# Start again with correct input
npx output workflow start expensive-job '{"correct": "input"}'
Scenario: Stop multiple workflows
# Get list of running workflows
npx output workflow runs list --format json | jq '.[] | select(.status == "RUNNING") | .workflowId'
# Stop each one (carefully review first!)
for id in abc123 def456; do
echo "Stopping $id"
npx output workflow stop $id
done
After Stopping a Workflow
Check the State
npx output workflow status <workflowId>
# Status: TERMINATED
Review What Happened
npx output workflow debug <workflowId> --format json
This shows:
- Which steps completed before termination
- Any partial results or side effects
- The point at which the workflow was stopped
Clean Up If Needed
If the workflow made partial changes:
- Review the debug output to see what completed
- Manually revert any side effects if necessary
- Consider creating a cleanup workflow for this scenario
Restart If Appropriate
# Start a fresh execution
npx output workflow start <workflowName> '<input>'
What Happens When You Stop
- The Temporal server receives the termination request
- The currently executing step may complete or abort
- No further steps are executed
- The workflow status changes to TERMINATED
- The result will not be available (workflow didn't complete)
Troubleshooting
"Workflow not found"
- Check the workflow ID is correct
- Use
npx output workflow runs listto find valid IDs
"Workflow already completed"
- The workflow finished before the stop command
- Check status and get result if needed
"Workflow already terminated"
- The workflow was already stopped
- No action needed
Stop command hangs
- The Temporal server may be unresponsive
- Check if services are running:
docker ps | grep output - May need to restart services
Best Practices
- Always check status first: Confirm the workflow is actually RUNNING
- Review before stopping: Use
npx output workflow debugto understand state - Document why: Note why you stopped the workflow for future reference
- Plan for cleanup: Know what side effects may need manual handling
- Consider alternatives: Sometimes waiting is better than stopping
Related Commands
npx output workflow status <id>- Check current statusnpx output workflow debug <id>- Review execution detailsnpx output workflow start <name>- Start a new executionnpx output workflow runs list- View execution history