Agent skill

Create Pipeline

by harness in harness/harness-skills

Generate Harness v0 Pipeline YAML for CI/CD workflows and create them via MCP.

Apache-2.0Auto-check passedDevOps & Cloud

Install Create Pipeline

skills CLI
$ npx skills add harness/harness-skills --skill create-pipeline -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install harness/harness-skills create-pipeline --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/harness/harness-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/create-pipeline .claude/skills/create-pipeline && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-pipeline
GitHub stars
115
Token cost
~5.2k tokens
SKILL.md length
1,157 words
Files
4 (incl. references)
Skills in repo
24
Repo updated
First seen
Licence
Apache-2.0

At a glance

Generate Harness v0 Pipeline YAML for CI/CD workflows and create them via MCP.

  • Works in 5 steps: Analyze codebase (if source code is… → Clarify requirements - Confirm detected… → Select native steps - Always prefer… → …
  • Asked to create a pipeline
  • SKILL.md covers Instructions, Pipeline Structure, Stage Types and Common Step Types, plus 11 more sections
  • Calls docker

What it does

Create Pipeline is an agent skill from harness/harness-skills. Generate Harness v0 Pipeline YAML for CI/CD workflows and create them via MCP. Supports CI stages (build, test, Docker push), CD stages (Kubernetes, Helm, ECS, serverless), approval gates, parallel execution, matrix strategies, and failure rollback. Use when asked to create a pipeline, build pipeline, deployment pipeline, CI/CD workflow, or set up Harness pipelines. Do NOT use for v1 simplified pipelines (use create-pipeline-v1) or FME flag rollout stages (use fme-pipeline). Trigger phrases: create pipeline…

Its SKILL.md is about 5.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `references/codebase-analysis.md`, `references/native-steps.md` and `references/v0-pipeline-schema.md`). Compatibility notes: Requires Harness MCP v2 server (harness-mcp-v2)

It sits in DevOps & Cloud, covering CI/CD, Container orchestration and Containers. It works with Kubernetes, Docker and Model Context Protocol. The repository describes itself as: A collection of structured AI agent skills that enable Claude Code, Cursor, GitHub Copilot, and other AI coding assistants to create, operate, debug, and govern Harness CI/CD… The licence is Apache-2.0.

When your agent uses it

  • Asked to create a pipeline
  • Deployment pipeline
  • Set up Harness pipelines
  • V1 simplified pipelines (use create-pipeline-v

Example prompts

  • “/create-pipeline”

Requirements

  • Python 3
  • Node.js
  • Docker
  • Compatibility (from SKILL.md): Requires Harness MCP v2 server (harness-mcp-v2)

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Analyze codebase (if source code is available) - Scan the project to auto-detect language, build tools, test frameworks, containerization…
  2. Clarify requirements - Confirm detected settings with the user. Ask about anything that couldn't be auto-detected — do not guess or use…
  3. Select native steps - Always prefer Harness native steps over Run or ShellScript steps. Consult references/native-steps.md for the full…
  4. Generate valid YAML following the structure below, using the detected build/test/deploy commands. Validation rules: (a) Stage names must…
  5. Optionally create via MCP — First verify the project exists (see "Creating via MCP" section below), then use harness_create with…

What it can do on your machine

Read from SKILL.md and the folder at commit c25faee. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • docker

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use docker, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Requires Harness MCP v2 server (harness-mcp-v2)

    From compatibility in the SKILL.md frontmatter.

Context cost

Create Pipeline loads about 5.2k tokens when it runs, and up to ~13k if it reads all its reference files. Until then it costs about 155 tokens; SKILL.md has 1,157 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~155
When it runs · the whole SKILL.md, loaded when a task matches
~5.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~13k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from harness/harness-skills at commit c25faee, republished under its Apache-2.0 licence (© harness). 1,157 words, ~5,195 tokens.

Download SKILL.mdSave it as .claude/skills/create-pipeline/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
create-pipeline
description
Generate Harness v0 Pipeline YAML for CI/CD workflows and create them via MCP. Supports CI stages (build, test, Docker push), CD stages (Kubernetes, Helm, ECS, serverless), approval gates, parallel execution, matrix strategies, and failure rollback. Use when asked to create a pipeline, build pipeline, deployment pipeline, CI/CD workflow, or set up Harness pipelines. Do NOT use for v1 simplified pipelines (use create-pipeline-v1) or FME flag rollout stages (use fme-pipeline). Trigger phrases: create pipeline, build pipeline, deployment pipeline, CI/CD, Harness pipeline, Kubernetes deploy pipeline.
compatibility
Requires Harness MCP v2 server (harness-mcp-v2)
metadata.author
Harness
metadata.version
2.2.0
metadata.mcp-server
harness-mcp-v2
license
Apache-2.0

Create Pipeline

Generate Harness v0 Pipeline YAML and optionally push to Harness via MCP.

Instructions

  1. Analyze codebase (if source code is available) - Scan the project to auto-detect language, build tools, test frameworks, containerization, deployment manifests, and target infrastructure. Use the detection tables and decision tree in references/codebase-analysis.md to determine:
    • Language and runtime version (package.json → Node.js, go.mod → Go, pom.xml → Java, etc.)
    • Build commands and base images
    • Test framework and report format (Jest → JUnit, pytest → JUnit XML, etc.)
    • Linter and formatter (ESLint, Prettier, Ruff, etc.)
    • Dockerfile presence and registry type (Docker Hub, ECR, GCR, ACR)
    • Deployment manifests → Harness service/deployment type (k8s manifests → Kubernetes, Chart.yaml → NativeHelm, task-definition.json → ECS, serverless.yml → ServerlessAwsLambda)
    • Existing CI/CD configs for migration (GitHub Actions, Jenkins, GitLab CI, etc.)
  2. Clarify requirements - Confirm detected settings with the user. Ask about anything that couldn't be auto-detected — do not guess or use placeholders. If the user's request is ambiguous, ask before generating YAML. Examples of what to ask when missing:
    • Deployment target / infrastructure: region (e.g. us-east-1), cluster name or ID, account ID (e.g. AWS account for ECR/ECS)
    • Registry: which registry (Docker Hub, ECR, GCR, ACR), registry identifier/URL, repo path
    • Cloud provider: which account, region, and resource identifiers for connectors/infrastructure
    • Approval gates, notification channels if relevant Critical rule: Never hardcode placeholder values (e.g. 123456789012, us-east-1, my-cluster) for deployment target, region, registry, or cluster when the user did not specify them — ask the user instead. If the user did not specify region, account ID, cluster, or registry (e.g. "deploys to ECS" with no region or cluster), ask the user for those values before generating YAML.
  3. Select native steps - Always prefer Harness native steps over Run or ShellScript steps. Consult references/native-steps.md for the full mapping. Key rules:
    • Docker build/push → use BuildAndPushDockerRegistry / BuildAndPushECR / BuildAndPushGCR / BuildAndPushACR (never Run: docker build && docker push)
    • K8s deploy → use K8sRollingDeploy / K8sBlueGreenDeploy / K8sCanaryDeploy (never Run: kubectl apply)
    • Helm deploy → use HelmDeploy (never Run: helm upgrade --install)
    • ECS deploy → use EcsRollingDeploy (never Run: aws ecs update-service)
    • Terraform → use TerraformPlan / TerraformApply (never Run: terraform apply)
    • Security scanning → use native STO steps (AquaTrivy, Snyk, Sonarqube, Semgrep, etc.)
    • Uploads → use S3Upload / GCSUpload (never Run: aws s3 cp)
    • Approvals → use HarnessApproval / JiraApproval (never polling scripts)
    • Ticketing → use JiraCreate / ServiceNowCreate (never Run: curl)
    • Use Run steps only for custom build/test/lint commands with no native equivalent
    • Test steps: Any Run step that runs unit or integration tests must include a reports block (e.g. type: JUnit, spec.paths) so Harness can capture results; see references/codebase-analysis.md for framework → report path.
  4. Generate valid YAML following the structure below, using the detected build/test/deploy commands. Validation rules: (a) Stage names must match ^[a-zA-Z_0-9-.][-0-9a-zA-Z_\\s.]{0,127}$ — use only letters, numbers, spaces, hyphens, underscores, or periods (no commas). (b) Every CI and CD stage must include a failureStrategies array (Approval stages do not require one). For CI use MarkAsFailure (never Ignore — it hides failures); for CD use StageRollback.
  5. Optionally create via MCP — First verify the project exists (see "Creating via MCP" section below), then use harness_create with resource_type pipeline and body: { yamlPipeline: "<YAML string>" }

Pipeline Structure

yaml
pipeline:
  identifier: my_pipeline       # ^[a-zA-Z_][0-9a-zA-Z_]{0,127}$
  name: My Pipeline
  orgIdentifier: default
  projectIdentifier: my_project
  tags: {}
  properties:
    ci:
      codebase:                  # Required for CI stages
        connectorRef: github_connector
        repoName: my-repo
        build:
          type: branch
          spec:
            branch: <+trigger.branch>
  stages:
    - stage: ...

Stage Types

CI Stage (type: CI)
yaml
- stage:
    identifier: build
    name: Build
    type: CI
    spec:
      cloneCodebase: true
      platform:
        os: Linux
        arch: Amd64
      runtime:
        type: Cloud    # Cloud, Kubernetes, VM, Docker
        spec: {}
      execution:
        steps:
          - step: ...
    failureStrategies:
      - onFailure:
          errors: [AllErrors]
          action:
            type: MarkAsFailure
CD Stage (type: Deployment)
yaml
- stage:
    identifier: deploy
    name: Deploy
    type: Deployment
    spec:
      deploymentType: Kubernetes  # Kubernetes, NativeHelm, ECS, ServerlessAwsLambda, Ssh, WinRm, AzureWebApp
      service:
        serviceRef: my_service
      environment:
        environmentRef: dev
        infrastructureDefinitions:
          - identifier: k8s_dev
      execution:
        steps:
          - step: ...
        rollbackSteps:
          - step: ...
    failureStrategies:
      - onFailure:
          errors: [AllErrors]
          action:
            type: StageRollback
Approval Stage (type: Approval)

HarnessApproval requires approvers.disallowPipelineExecutor (required by the API). Set it to true so the pipeline executor cannot approve their own run; omit it and the API returns "disallowPipelineExecutor: is missing but it is required".

yaml
- stage:
    identifier: approval
    name: Approval
    type: Approval
    spec:
      execution:
        steps:
          - step:
              identifier: approve
              name: Approve
              type: HarnessApproval
              spec:
                approvalMessage: "Please review and approve"
                approvers:
                  userGroups: [prod_approvers]
                  minimumCount: 1
                  disallowPipelineExecutor: true
                includePipelineExecutionHistory: true
              timeout: 1d
    failureStrategies:
      - onFailure:
          errors: [AllErrors]
          action:
            type: Abort

Common Step Types

Run Step
yaml
- step:
    identifier: run_tests
    name: Run Tests
    type: Run
    spec:
      shell: Bash          # Sh, Bash, Powershell, Pwsh, Python
      command: |
        npm ci
        npm test
      envVariables:
        NODE_ENV: test
      reports:
        type: JUnit
        spec:
          paths: ["junit.xml"]
Build and Push Docker
yaml
- step:
    identifier: docker_push
    name: Build and Push
    type: BuildAndPushDockerRegistry
    spec:
      connectorRef: dockerhub
      repo: myorg/myimage
      tags: [latest, <+pipeline.sequenceId>]
      dockerfile: Dockerfile
K8s Rolling Deploy
yaml
- step:
    identifier: rollout
    name: Rollout
    type: K8sRollingDeploy
    spec:
      skipDryRun: false
    timeout: 10m
K8s Rolling Rollback
yaml
- step:
    identifier: rollback
    name: Rollback
    type: K8sRollingRollback
    spec: {}
    timeout: 10m

For the complete catalog of 300+ native step types (cloud deployments, security scanners, IaC, ticketing, approvals, GitOps, and more), consult references/native-steps.md. Always check this reference before using a Run step.

Variables and Expressions

yaml
pipeline:
  variables:
    - name: env
      type: String
      default: dev
    - name: api_key
      type: Secret
      value: <+secrets.getValue("api_key")>

Common expressions:

  • <+pipeline.variables.env> - Pipeline variable
  • <+stage.variables.VAR> - Stage variable
  • <+steps.step_id.output.outputVariables.VAR> - Step output
  • <+trigger.branch>, <+trigger.commitSha> - Trigger info
  • <+secrets.getValue("name")> - Secret reference
  • <+pipeline.sequenceId> - Build number

Parallel Execution

yaml
# Parallel steps
- parallel:
    - step: ...
    - step: ...

# Parallel stages
stages:
  - parallel:
      - stage: ...
      - stage: ...

Failure Strategies

yaml
failureStrategies:
  - onFailure:
      errors: [AllErrors]     # AllErrors, Timeout, Authentication, Connectivity
      action:
        type: StageRollback   # Ignore, Retry, MarkAsSuccess, Abort, StageRollback, PipelineRollback

Conditional Execution

yaml
- stage:
    when:
      pipelineStatus: Success
      condition: <+pipeline.variables.deploy> == "true"

Matrix Strategy

Placement: strategy must be at the stage level, as a sibling of spec, not inside spec. If you put strategy under spec, the matrix will not be applied and the UI will not show matrix iterations.

Reference matrix values in steps with <+stage.matrix.TAG> (e.g. <+stage.matrix.python_version>). Use hyphen-free dimension names (e.g. python_version not python-version).

yaml
- stage:
    identifier: test_matrix
    name: Test Matrix
    type: CI
    spec:
      cloneCodebase: true
      platform:
        os: Linux
        arch: Amd64
      runtime:
        type: Cloud
        spec: {}
      execution:
        steps:
          - step:
              type: Run
              spec:
                image: node:<+stage.matrix.node_version>
                command: npm test
    strategy:
      matrix:
        node_version: ["16", "18", "20"]
        os: [linux, macos]
      maxConcurrency: 3
    failureStrategies:
      - onFailure:
          errors: [AllErrors]
          action:
            type: Abort
Show full SKILL.md (480 more words)Show less

Creating via MCP

After generating the YAML, create it in Harness:

  1. Verify the project exists — List projects with harness_list (resource_type: project, org_id) to confirm. If the project does not exist, create it first with harness_create (resource_type: project, body: { identifier, name }) or ask the user.
  2. Create the pipeline — Use harness_create with the pipeline YAML serialized as a yamlPipeline string in the body. Do not pass a nested JSON pipeline object; it causes serialization errors.
Call MCP tool: harness_create
Parameters:
  resource_type: "pipeline"
  org_id: "<organization>"
  project_id: "<project>"
  body: { yamlPipeline: "<full pipeline YAML string, including 'pipeline:' root key>" }

Example body (abbreviated):

json
{
  "yamlPipeline": "pipeline:\n  identifier: nodejs_ci\n  name: Node.js CI\n  projectIdentifier: my_project\n  orgIdentifier: default\n  stages:\n    - stage:\n        identifier: build\n        ..."
}

To update an existing pipeline, use the same yamlPipeline format:

Call MCP tool: harness_update
Parameters:
  resource_type: "pipeline"
  resource_id: "<pipeline_identifier>"
  org_id: "<organization>"
  project_id: "<project>"
  body: { yamlPipeline: "<full updated pipeline YAML string>" }

To verify it was created:

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

Complete CI Example

yaml
pipeline:
  identifier: nodejs_ci
  name: Node.js CI
  projectIdentifier: my_project
  orgIdentifier: default
  properties:
    ci:
      codebase:
        connectorRef: github_connector
        repoName: my-app
        build:
          type: branch
          spec:
            branch: <+trigger.branch>
  stages:
    - stage:
        identifier: build_and_test
        name: Build and Test
        type: CI
        spec:
          cloneCodebase: true
          platform:
            os: Linux
            arch: Amd64
          runtime:
            type: Cloud
            spec: {}
          execution:
            steps:
              - step:
                  identifier: install
                  name: Install
                  type: Run
                  spec:
                    shell: Bash
                    command: npm ci
              - parallel:
                  - step:
                      identifier: lint
                      name: Lint
                      type: Run
                      spec:
                        shell: Bash
                        command: npm run lint
                  - step:
                      identifier: test
                      name: Test
                      type: Run
                      spec:
                        shell: Bash
                        command: npm test
                        reports:
                          type: JUnit
                          spec:
                            paths: ["junit.xml"]
              - step:
                  identifier: docker_push
                  name: Build and Push
                  type: BuildAndPushDockerRegistry
                  spec:
                    connectorRef: dockerhub
                    repo: myorg/my-app
                    tags: [<+pipeline.sequenceId>, latest]
        failureStrategies:
          - onFailure:
              errors: [AllErrors]
              action:
                type: MarkAsFailure

Complete CD Example

yaml
pipeline:
  identifier: k8s_deploy
  name: K8s Deploy
  projectIdentifier: my_project
  orgIdentifier: default
  stages:
    - stage:
        identifier: deploy_staging
        name: Deploy Staging
        type: Deployment
        spec:
          deploymentType: Kubernetes
          service:
            serviceRef: my_service
          environment:
            environmentRef: staging
            infrastructureDefinitions:
              - identifier: k8s_staging
          execution:
            steps:
              - step:
                  identifier: rollout
                  name: Rollout
                  type: K8sRollingDeploy
                  spec:
                    skipDryRun: false
                  timeout: 10m
            rollbackSteps:
              - step:
                  identifier: rollback
                  name: Rollback
                  type: K8sRollingRollback
                  spec: {}
                  timeout: 10m
        failureStrategies:
          - onFailure:
              errors: [AllErrors]
              action:
                type: StageRollback
    - stage:
        identifier: approval
        name: Production Approval
        type: Approval
        spec:
          execution:
            steps:
              - step:
                  identifier: approve
                  name: Approve Prod
                  type: HarnessApproval
                  spec:
                    approvalMessage: "Approve production deployment?"
                    approvers:
                      userGroups: [prod_approvers]
                      minimumCount: 1
                      disallowPipelineExecutor: true
                    includePipelineExecutionHistory: true
                  timeout: 1d
        failureStrategies:
          - onFailure:
              errors: [AllErrors]
              action:
                type: Abort
    - stage:
        identifier: deploy_prod
        name: Deploy Production
        type: Deployment
        spec:
          deploymentType: Kubernetes
          service:
            serviceRef: my_service
          environment:
            environmentRef: prod
            infrastructureDefinitions:
              - identifier: k8s_prod
          execution:
            steps:
              - step:
                  identifier: rollout
                  name: Rollout
                  type: K8sRollingDeploy
                  spec:
                    skipDryRun: false
                  timeout: 10m
            rollbackSteps:
              - step:
                  identifier: rollback
                  name: Rollback
                  type: K8sRollingRollback
                  spec: {}
                  timeout: 10m
        failureStrategies:
          - onFailure:
              errors: [AllErrors]
              action:
                type: StageRollback

Examples

Create a CI pipeline
/create-pipeline
Create a CI pipeline for a Node.js app that builds, runs tests, and pushes to Docker Hub
Create a CD pipeline with approvals
/create-pipeline
Create a Kubernetes deployment pipeline with staging, manual approval, and production stages
Create a combined CI/CD pipeline
/create-pipeline
Build a pipeline that runs tests, pushes a Docker image, and deploys to ECS with rollback
Create a matrix build pipeline
/create-pipeline
Create a CI pipeline that tests across Node 16, 18, and 20 on both Linux and macOS
Create a pipeline with parallel stages
/create-pipeline
Create a pipeline with parallel test stages for unit tests, integration tests, and linting

Performance Notes

  • Always check references/native-steps.md before using a Run step. Native steps provide better error handling and UI integration.
  • Verify the target project exists (harness_list, resource_type: project) before creating the pipeline.
  • Validate that all referenced connectors, services, and environments exist before creating the pipeline.
  • For CD pipelines, confirm the deployment type matches the service definition type.
  • Quality of generated YAML is more important than speed. Verify structure before submitting.

Troubleshooting

YAML Validation Errors
  • Pipeline/step identifier: must match ^[a-zA-Z_][0-9a-zA-Z_]{0,127}$ (letters, numbers, underscores only).
  • Stage name: must match ^[a-zA-Z_0-9-.][-0-9a-zA-Z_\\s.]{0,127}$ — no commas; use letters, numbers, spaces, hyphens, underscores, or periods (e.g. use "Build Test and Push" not "Build, Test and Push").
  • Every CI and CD stage must include a failureStrategies array (Approval stages do not require one); omit it and the API returns "failureStrategies: is missing but it is required". For CI use type: MarkAsFailure; for CD use type: StageRollback.
  • Stage type is case-sensitive: CI, Deployment, Approval, Custom
  • Every stage must have a spec field
  • Matrix not applied / not visible in UI: strategy must be a sibling of spec on the stage, not inside spec. Use strategy.matrix at the stage level and reference values as <+stage.matrix.TAG>.
  • HarnessApproval: "disallowPipelineExecutor: is missing but it is required" — add approvers.disallowPipelineExecutor: true to the step spec.
MCP Creation Errors
  • Project not found — Verify the project exists with harness_list (resource_type: project, org_id). Create it first with harness_create (resource_type: project, body: { identifier, name }) or confirm org_id/project_id are correct.
  • Missing required fields for pipeline: pipeline — Pass the body as { yamlPipeline: "<full pipeline YAML string>" } instead of a nested JSON pipeline object. Nested JSON causes serialization errors.
  • DUPLICATE_IDENTIFIER — Pipeline already exists; use harness_update instead
  • CONNECTOR_NOT_FOUND — Create the connector first or fix connectorRef
  • ACCESS_DENIED — Check API key permissions
Ambiguous or Incomplete Requests
  • "Deploys to ECS" / "K8s deploy" / "push to registry" with no specifics — Ask the user for region, account ID, cluster name/ID, and which registry (ECR, Docker Hub, etc.) before generating YAML. Do not insert placeholder values (e.g. us-east-1, 123456789012).
Execution Failures
  • Missing <+input> values - provide via input sets or runtime inputs
  • Connector auth expired - test with harness_execute (resource_type: "connector", action: "test_connection")
  • Delegate offline - check with harness_status

© harness, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in skills/create-pipeline of harness/harness-skills.

  • SKILL.md
  • references/codebase-analysis.md
  • references/native-steps.md
  • references/v0-pipeline-schema.md

Open the folder on GitHubat commit c25faee

Compare with similar skills

Create Pipeline next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Create Pipeline compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create Pipeline this skillharness/harness-skills115—~5.2kAutomated safety check: PassApache-2.0
Ksaildevantler-tech/ksail165—~1.1kAutomated safety check: PassCustom licence
Data Processingaiskillstore/marketplace4301 repos~720Automated safety check: NotesMIT
Gem Devops Guidelinesgithub/awesome-copilot40k1 repos~743Automated safety check: PassMIT
Performing Container Security Scanning With Trivymukul975/Anthropic-Cybersecurity-Skills34k—~818Automated safety check: PassApache-2.0
Devops Automationrohitg00/awesome-claude-code-toolkit2.7k—~1.6kAutomated safety check: PassApache-2.0

Similar skills

  • Ksail

    devantler-tech/ksail

    Use the ksail CLI to spin up and manage Kubernetes clusters (Kind/K3d/Talos/vCluster/KWOK — local via Docker; EKS — cloud via AWS) and GitOps workloads declaratively.

    165 GitHub stars~1.1k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Data Processing

    aiskillstore/marketplace

    Process JSON with jq and YAML/TOML with yq. An agent skill from aiskillstore/marketplace.

    430 GitHub starsUsed in 1 repo~720 tokens
    DevOps & CloudAuto-check: notes
  • Gem Devops Guidelines

    github/awesome-copilot

    Official

    Design or review infrastructure, deployment, CI/CD, Docker, Kubernetes, health checks, rollback, feature flags, production readiness, and mobile release workflows.

    40k GitHub starsUsed in 1 repo~743 tokens
    DevOps & CloudAuto-check passed
  • Performing Container Security Scanning With Trivy

    mukul975/Anthropic-Cybersecurity-Skills

    Runs Trivy across every target type it supports - container images, filesystems, Git repositories, and Kubernetes clusters - for OS and dependency vulnerabilities, IaC misconfiguration, exposed…

    34k GitHub stars~818 tokensUpdated 1 mo ago
    DevOps & CloudAuto-check passed
  • Devops Automation

    rohitg00/awesome-claude-code-toolkit

    CI/CD pipeline design with GitHub Actions, Docker, Kubernetes, Helm, and GitOps patterns

    2.7k GitHub stars~1.6k tokensUpdated 4 mo ago
    DevOps & CloudAuto-check passed
  • Devops Excellence

    majiayu000/spellbook

    DevOps and CI/CD expert. An agent skill from majiayu000/spellbook.

    286 GitHub stars~2.4k tokensUpdated today
    DevOps & CloudAuto-check: notes

More from harness/harness-skills

All 24 skills in this repo
  • Audit Report

    harness/harness-skills

    Generate audit reports and compliance trails using Harness audit trail data via MCP v2 tools.

    115 GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • Chaos Dr Test

    harness/harness-skills

    A skill your agent uses when working with Chaos Engineering steps inside a Harness pipeline.

    115 GitHub stars~2.6k tokensUpdated yesterday
    Auto-check passed
  • Chaos Experiment

    harness/harness-skills

    A skill your agent uses when the user asks to create, edit, update, design, or configure a Harness Chaos Experiment — including faults, probes, actions, experiment YAML, fault injection, pod-delete…

    115 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed
  • Cleanup Feature Flags

    harness/harness-skills

    Remove a launched Harness FME feature flag from application code, keeping the treatment FME serves today, and open a pull request.

    115 GitHub stars~2.4k tokensUpdated yesterday
    Auto-check passed
  • Configure Repo Scan

    harness/harness-skills

    Configure code scanning in Harness pipelines using STO security scanners.

    115 GitHub stars~2.2k tokensUpdated yesterday
    Auto-check passed
  • Create Agent Template

    harness/harness-skills

    Generate Harness Agent Template files for AI-powered automation agents.

    115 GitHub stars~2.2k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Create Pipeline

What does Create Pipeline do?

Generate Harness v0 Pipeline YAML for CI/CD workflows and create them via MCP. Create Pipeline is an agent skill from harness/harness-skills. Generate Harness v0 Pipeline YAML for CI/CD workflows and create them via MCP.

When should I use Create Pipeline?

Create Pipeline fits situations like: asked to create a pipeline; deployment pipeline; set up Harness pipelines; V1 simplified pipelines (use create-pipeline-v.

How do I install Create Pipeline in Claude Code?

Run `npx skills add harness/harness-skills --skill create-pipeline -a claude-code`. Or copy the skill folder (skills/create-pipeline in harness/harness-skills) into .claude/skills/create-pipeline in your project. Claude Code loads it when a task matches its description.

How do I install Create Pipeline in Codex?

Run `npx skills add harness/harness-skills --skill create-pipeline -a codex`. Or copy the skill folder (skills/create-pipeline in harness/harness-skills) into .agents/skills/create-pipeline in your project. Codex loads it when a task matches its description.

Can I use Create Pipeline in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add harness/harness-skills --skill create-pipeline -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-pipeline, .gemini/skills/create-pipeline, .github/skills/create-pipeline and .opencode/skills/create-pipeline in your project.

What does Create Pipeline need to run?

Going by SKILL.md and its folder, Create Pipeline needs the command-line tools its instructions call (docker). Our summary lists: Python 3; Node.js; Docker. Compatibility (from SKILL.md): Requires Harness MCP v2 server (harness-mcp-v2).

Does Create Pipeline access the network?

SKILL.md contains no URLs. Its commands use docker, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Create Pipeline safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Create Pipeline use?

Create Pipeline is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Pipeline use?

About 5.2k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8k tokens, read only when the agent opens those files.

What are the alternatives to Create Pipeline?

Skills that share tags, products or a category with Create Pipeline: Ksail (devantler-tech/ksail, 165 stars), Data Processing (aiskillstore/marketplace, 430 stars), Gem Devops Guidelines (github/awesome-copilot, 40k stars) and Performing Container Security Scanning With Trivy (mukul975/Anthropic-Cybersecurity-Skills, 34k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create Pipeline?

harness (a GitHub organization) maintains it in harness/harness-skills, which has 115 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 6, 2026.

Source: harness/harness-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.