Claude-skill-registry harness-step-schema

Creates or updates pipeline step schemas in the harness-schema repository. Use when the user wants to add a new step, modify an existing step's fields, or make a step available in different stages. Triggers for requests about "create step", "add step", "new step schema", "update step", or "step available in stage".

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/harness-step-schema" ~/.claude/skills/majiayu000-claude-skill-registry-harness-step-schema && rm -rf "$T"
manifest: skills/data/harness-step-schema/SKILL.md
source content

Harness Pipeline Step Schema Management

This skill helps create or update pipeline step schemas in the harness-schema repository.

Before Starting - Ask These Questions

When creating a new step, gather this information from the user:

  1. Step name: PascalCase name (e.g.,

    FmeFlagDelete
    ,
    MyCustomStep
    )

  2. Step category: Where to place it?

    • cd
      - CD (Continuous Deployment) specific steps
    • ci
      - CI (Continuous Integration) specific steps
    • common
      - Shared across multiple stages
    • custom
      - Custom steps (approvals, FME flags, HTTP, etc.)
    • cvng
      - Continuous Verification steps
    • iacm
      - Infrastructure as Code Management steps
    • idp
      - Internal Developer Portal steps
  3. Step fields: What properties does the step spec need?

    • Field name, type, required/optional, description
    • Should fields support runtime input (
      <+input>
      ) and expressions?
  4. Target stages: Which stages should have this step? (select multiple)

    • approval
      - Approval stage
    • cd
      - Deployment stage
    • cf
      - Feature Flag stage
    • ci
      - Build/CI stage
    • custom
      - Custom stage
    • iacm
      - IACM stage
    • idp
      - IDP stage
    • security
      - Security stage

    Note: Steps can be added to multiple stages. For example, FME flag steps are available in cd, cf, and custom stages simultaneously.

  5. Include in templates?: Should this step be available as a step template?

File Structure

Each step requires these files:

1. Step Info YAML

v0/pipeline/steps/{category}/{step-name}-step-info.yaml

Defines the step's spec properties.

2. Step Node YAML

v0/pipeline/steps/{category}/{step-name}-step-node.yaml

Defines the step wrapper with type, identifier, name, timeout, etc.

3. Stage Execution Configs

v0/pipeline/stages/{stage}/execution-wrapper-config.yaml

Add reference to make step available in each target stage.

4. Template Config (if templates enabled)

v0/template/template_config.yaml

Add to

step_template_types:
list.

5. Bundled JSON Files

  • v0/pipeline.json
    - Add definitions + stage references
  • v0/template.json
    - Add definitions + template/stage references

Step Creation Process

  1. Create
    {step-name}-step-info.yaml
    in
    v0/pipeline/steps/{category}/
  2. Create
    {step-name}-step-node.yaml
    in
    v0/pipeline/steps/{category}/
  3. Add reference to each target stage's
    execution-wrapper-config.yaml
  4. Add to
    v0/template/template_config.yaml
    if templates enabled
  5. Add definitions to
    v0/pipeline.json
    :
    • {StepName}StepNode
      definition
    • {StepName}StepInfo
      definition
    • References in stage ExecutionWrapperConfig oneOf arrays
  6. Add definitions to
    v0/template.json
    :
    • {StepName}StepNode_template
      definition (no identifier/name required)
    • {StepName}StepNode
      definition
    • {StepName}StepInfo
      definition
    • Reference in step template spec oneOf
    • References in stage ExecutionWrapperConfig oneOf arrays

Reference Files

See TEMPLATES.md for YAML/JSON templates. See EXAMPLES.md for existing step examples.