From outputai
Analyzes Output SDK workflow execution traces to debug step failures, examine inputs/outputs, understand flow/timing, and identify errors using CLI commands and Temporal UI. Use with workflow IDs.
npx claudepluginhub growthxai/output --plugin outputaiThis skill is limited to using the following tools:
This skill provides guidance on retrieving and analyzing workflow execution traces using the Output CLI. Traces show the complete execution history including step inputs, outputs, errors, and timing information.
Lists Output SDK workflow execution history to find failed runs, review past executions, identify workflow IDs for debugging, filter by workflow type, or check recent activity.
Debugs orchestration workflow execution issues including syntax errors, agent failures, variable problems, parallel hangs, and checkpoints. Use when workflows fail or produce unexpected results.
Creates durable, resumable workflows using Vercel's Workflow SDK. Use for surviving restarts, pausing on external events, retrying failures, or coordinating multi-step operations over time.
Share bugs, ideas, or general feedback.
This skill provides guidance on retrieving and analyzing workflow execution traces using the Output CLI. Traces show the complete execution history including step inputs, outputs, errors, and timing information.
Basic trace (text format, may be truncated):
npx output workflow debug <workflowId>
Full trace (JSON format, recommended for detailed analysis):
npx output workflow debug <workflowId> --format json
Tip: Always use --format json when you need complete trace data. The text format truncates long values which can hide important debugging information.
Follow this checklist when examining a trace:
Open http://localhost:8080 in your browser for a visual workflow inspection:
| Error Message | Likely Cause |
|---|---|
| "incompatible schema" | Zod import issue - using zod instead of @outputai/core |
| "non-deterministic" | Using Math.random(), Date.now(), etc. in workflow code |
| "FatalError" with retry context | Try-catch wrapping step calls |
| "undefined is not a function" | Missing schema definitions |
| "workflow must be deterministic" | Direct I/O in workflow function |
| "ECONNREFUSED" or timeout | Services not running or network issues |
When examining JSON traces, focus on these fields:
steps[].name: Step identifiersteps[].status: Execution resultsteps[].input: Data passed to the stepsteps[].output: Data returned from the stepsteps[].error: Error details if failedsteps[].attempts: Number of execution attemptssteps[].duration: How long the step tookScenario: Debug a failed workflow
# Get the workflow ID from runs list
npx output workflow runs list --limit 5 --format json
# Get detailed trace
npx output workflow debug abc123xyz --format json
# Look for the failing step in the output
# Example output structure:
# {
# "workflowId": "abc123xyz",
# "status": "FAILED",
# "steps": [
# { "name": "fetchData", "status": "COMPLETED", ... },
# { "name": "processData", "status": "FAILED", "error": "..." }
# ]
# }
Scenario: Investigate retry behavior
npx output workflow debug abc123xyz --format json | jq '.steps[] | select(.attempts > 1)'
Scenario: Check inputs to a specific step
npx output workflow debug abc123xyz --format json | jq '.steps[] | select(.name == "processData") | .input'
workflow-quality subagent for best practicesnpx output workflow run <workflowName> <input>