Agent Skill · Harness

debug-pipeline

Diagnose Harness pipeline executions via MCP. Analyzes any execution (failed or successful) to produce structured reports with stage/step breakdown, timing, bottlenecks, failure details, chained pipeline drill-down, and execution logs. Use when asked to debug a pipeline, investigate a failure, find out why a build failed, analyze pipeline errors, check execution logs, review execution performance, or find bottlenecks. Trigger phrases: debug pipeline, pipeline failed, why did my build fail, analyze failure, pipeline error, execution logs, fix pipeline, execution bottleneck, slow pipeline.

Provider: Harness Path in repo: skills/debug-pipeline/SKILL.md

Skill body

Debug Pipeline

Diagnose pipeline executions and suggest fixes via MCP.

Instructions

Step 1: Diagnose Execution (Preferred)

Use the dedicated diagnosis tool. It accepts an execution_id, pipeline_id (auto-fetches latest execution), or a Harness URL:

Call MCP tool: harness_diagnose
Parameters:
  pipeline_id: "<pipeline_identifier>"   # or execution_id or url
  org_id: "<organization>"
  project_id: "<project>"

This returns a structured report with stage/step breakdown, timing, bottlenecks, and failure details in one call. It also automatically follows chained (child) pipeline failures.

Step 1b: Full Diagnostic Mode

For deeper analysis, request logs and pipeline YAML:

Call MCP tool: harness_diagnose
Parameters:
  execution_id: "<execution_id>"
  org_id: "<organization>"
  project_id: "<project>"
  summary: false               # raw diagnostic payload
  include_yaml: true           # include pipeline definition
  include_logs: true           # include failed step logs
  log_snippet_lines: 120       # tail N lines per step (0 = unlimited)
  max_failed_steps: 5          # cap number of steps to fetch logs for

Diagnose Parameters

Parameter Default Description
execution_id Specific execution to analyze
pipeline_id Fetch latest execution for this pipeline
url Harness UI URL (auto-extracts IDs)
summary true Structured report (true) or raw payload (false)
include_yaml false (summary) / true (raw) Include pipeline YAML definition
include_logs false (summary) / true (raw) Include failed step logs
log_snippet_lines 120 Max log lines per step (tail). 0 = unlimited
max_failed_steps 5 Max steps to fetch logs for. 0 = unlimited

Step 2: Project Health Overview

Check overall project health for context:

Call MCP tool: harness_status
Parameters:
  org_id: "<organization>"
  project_id: "<project>"

Shows recent failed executions, running executions, and deployment activity.

Step 3: Find Failed Executions (if needed)

Call MCP tool: harness_list
Parameters:
  resource_type: "execution"
  org_id: "<organization>"
  project_id: "<project>"
  search_term: "<pipeline name>"

Step 4: Get Execution Details

Call MCP tool: harness_get
Parameters:
  resource_type: "execution"
  resource_id: "<execution_id>"
  org_id: "<organization>"
  project_id: "<project>"

Step 5: Get Execution Logs

Call MCP tool: harness_get
Parameters:
  resource_type: "execution_log"
  resource_id: "<execution_id>"
  org_id: "<organization>"
  project_id: "<project>"

Step 6: Get Pipeline Definition

Call MCP tool: harness_get
Parameters:
  resource_type: "pipeline"
  resource_id: "<pipeline_identifier>"
  org_id: "<organization>"
  project_id: "<project>"

Analysis Framework

Categorize errors and provide targeted fixes:

Build Failures

Infrastructure Errors

Configuration Errors

Deployment Errors

Timeout Errors

Artifact Errors

Response Format

## Pipeline Failure Analysis

**Pipeline:** <name>
**Execution:** <id>
**Failed At:** <timestamp>

### Failure Summary
**Stage:** <failed_stage>
**Step:** <failed_step>
**Error:** <error message>

### Root Cause
<explanation>

### Fix
**Immediate:** <specific steps>
**Prevention:** <how to avoid in future>

Examples

Performance Notes

Troubleshooting

Logs Not Available

Cannot Find Execution

MCP Connection Issues

Skill frontmatter

metadata: {"author"=>"Harness", "version"=>"2.1.0", "mcp-server"=>"harness-mcp-v2"} license: Apache-2.0 compatibility: Requires Harness MCP v2 server (harness-mcp-v2)