harness-step-schema
Creates or updates pipeline step schemas in the harness-schema repository. ALWAYS use this skill when user mentions ANY of these: - Step operations: "create step", "add step", "new step", "update step", "modify step", "edit step", "implement step", "define step", "build step" - Schema files: "step-info.yaml", "step-node.yaml", "StepInfo", "StepNode", "step schema", "step definition", "step spec" - Stage availability: "add to stage", "enable in stage", "available in stage", "register step", "execution-wrapper-config" - Template support: "step template", "template_config.yaml", "enable as template" - JSON updates: "pipeline.json", "template.json", "add definition", "update schema" - Field work: "add field", "add property", "new field", "step property", "step field", "modify field" - Expression support: "runtime input", "JEXL", "expression support", "<+input>", "common-jexl" - Category mentions: "CD step", "CI step", "custom step", "FME step", "feature flag step", "approval step" If user is working with files
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Harness Pipeline Step Schema Management
This skill helps create or update pipeline step schemas in the harness-schema repository.
Reference Documentation:
-
v0/AGENTS.md- Directory structure, common schema files, and field patterns -
TEMPLATES.md- Full YAML/JSON templates for step creation -
EXAMPLES.md- Existing step examples
Before Starting - Ask These Questions
When creating a new step, gather this information from the user:
-
Step name: PascalCase name (e.g.,
FmeFlagDelete,MyCustomStep) -
Step category: Where to place it? (see
v0/AGENTS.mdfor directory structure)-
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
-
-
Step fields: What properties does the step spec need?
- Field name, type, required/optional, description
- Should fields support runtime input (
<+input>) and expressions? - See
v0/AGENTS.md"Common Schema Files" section for available field patterns
-
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. See
v0/AGENTS.md"Stage-Step Availability" for common patterns. -
-
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. See v0/AGENTS.md "Common Field Patterns" for available patterns.
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
- Create
{step-name}-step-info.yamlinv0/pipeline/steps/{category}/ - Create
{step-name}-step-node.yamlinv0/pipeline/steps/{category}/ - Add reference to each target stage's
execution-wrapper-config.yaml - Add to
v0/template/template_config.yamlif templates enabled - Add definitions to
v0/pipeline.json:-
{StepName}StepNodedefinition -
{StepName}StepInfodefinition - References in stage ExecutionWrapperConfig oneOf arrays
-
- Add definitions to
v0/template.json:-
{StepName}StepNode_templatedefinition (no identifier/name required) -
{StepName}StepNodedefinition -
{StepName}StepInfodefinition - Reference in step template spec oneOf
- References in stage ExecutionWrapperConfig oneOf arrays
-
Reference Files
- v0/AGENTS.md - Common schema files, field patterns, directory structure
- TEMPLATES.md - YAML/JSON templates for step definitions
- EXAMPLES.md - Existing step examples (FmeFlagDelete, FmeFlagCreate)
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-01-26
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!