From outputai
Starts Output SDK workflows asynchronously via npx output workflow start command. Returns workflow ID immediately for long-running tasks, parallel execution, background jobs, or later monitoring with status/result commands.
npx claudepluginhub growthxai/output --plugin outputaiThis skill is limited to using the following tools:
This skill starts a workflow asynchronously, meaning the command returns immediately with a workflow ID while the workflow executes in the background. Use this for long-running workflows or when you need to run multiple workflows in parallel.
Runs Output SDK workflows synchronously via npx output workflow run, waiting for immediate terminal results. For testing, debugging, quick executions with JSON inputs or scenario files.
Implements durable multi-step workflows on Cloudflare Workers with retries, state persistence, sleeps, event waiting, and NonRetryableError handling. Use for long-running tasks.
Provides expert guidance on Vercel Workflow DevKit for durable workflows, long-running tasks, API routes, agents with pause/resume, retries, step execution, crash-safe orchestration.
Share bugs, ideas, or general feedback.
This skill starts a workflow asynchronously, meaning the command returns immediately with a workflow ID while the workflow executes in the background. Use this for long-running workflows or when you need to run multiple workflows in parallel.
Consider using npx output workflow run (sync) when:
npx output workflow start <workflowName> --input '<json-input>'
npx output workflow start <workflowName> --input <path-to-json-file>
The --input flag is required when the workflow expects input data.
Pass JSON directly on the command line:
npx output workflow start data-migration --input '{"batchSize": 1000}'
Reference a JSON file containing the input:
npx output workflow start data-migration --input src/data_migration/scenarios/large_batch.json
This is the recommended approach because:
The command outputs the workflow ID which you'll need for:
npx output workflow status <id>npx output workflow result <id>npx output workflow debug <id>Scenario: Start a long-running workflow with scenario file
npx output workflow start data-migration --input src/data_migration/scenarios/full_migration.json
# Output:
# Started workflow: data-migration
# Workflow ID: abc123xyz
# Use 'npx output workflow status abc123xyz' to check progress
Scenario: Start multiple workflows in parallel using scenario files
# Start several workflows with different scenario files
npx output workflow start process-batch --input src/process_batch/scenarios/batch_1.json
npx output workflow start process-batch --input src/process_batch/scenarios/batch_2.json
npx output workflow start process-batch --input src/process_batch/scenarios/batch_3.json
# Note: Save the workflow IDs to check them later
Scenario: Create scenario then start workflow
# Create a scenario file
mkdir -p src/generate_report/scenarios
cat > src/generate_report/scenarios/annual_2024.json << 'EOF'
{
"year": 2024,
"includeCharts": true,
"format": "pdf"
}
EOF
# Start the workflow
npx output workflow start generate-report --input src/generate_report/scenarios/annual_2024.json
# Output: Workflow ID: report-2024-abc
# Check status periodically
npx output workflow status report-2024-abc
# Output: Status: RUNNING
# Later, check again
npx output workflow status report-2024-abc
# Output: Status: COMPLETED
# Get the result
npx output workflow result report-2024-abc
Scenario: Quick inline test for development
npx output workflow start quick-job --input '{"test": true}'
Scenario: Script for parallel execution
# Start workflows and capture IDs
ID1=$(npx output workflow start job --input src/job/scenarios/type_a.json | grep "Workflow ID" | cut -d: -f2 | tr -d ' ')
ID2=$(npx output workflow start job --input src/job/scenarios/type_b.json | grep "Workflow ID" | cut -d: -f2 | tr -d ' ')
# Wait and check results
npx output workflow result $ID1
npx output workflow result $ID2
npx output workflow status <workflowId>
Status values:
npx output workflow result <workflowId>
Only works for COMPLETED workflows. For FAILED workflows, use debug.
npx output workflow debug <workflowId> --format json
npx output workflow stop <workflowId>
When starting multiple workflows, keep track of IDs:
# Log IDs to a file
npx output workflow start batch-job --input src/batch_job/scenarios/id_1.json >> workflow-ids.txt
npx output workflow start batch-job --input src/batch_job/scenarios/id_2.json >> workflow-ids.txt
# Or use a naming convention in your workflow that makes IDs predictable
src/<workflow>/scenarios/ for reproducibilitynpx output workflow status to check progressnpx output workflow stopnpx output workflow run <name> --input - Execute synchronouslynpx output workflow status <id> - Check execution statusnpx output workflow result <id> - Get execution resultnpx output workflow stop <id> - Stop a running workflownpx output workflow debug <id> - Debug a workflow execution