Validation Scripts
Description
This skill is the entry point for the repository's PowerShell 5.1 validation workflow. It tells agents which scripts to run, how to interpret the results, when approval is required, and where the detailed per-script reference material lives.
Use it when you need validation cadence guidance or quick script selection during implementation, review, or conductor pause points. Keep deeper syntax and troubleshooting details in the bundled references instead of re-expanding this file into a monolith.
When to Use
- Use when validating asset structure after editing agents, prompts, instructions, or skills.
- Use when deciding which validation scripts to run before review or completion.
- Use when interpreting pass/fail status, warnings, and pause conditions from validation output.
- Use when checking whether a validation script is read-only or approval-gated.
When NOT to Use
- Do not use for general PowerShell scripting questions unrelated to repository validation.
- Do not use when the task is purely about terminal formatting; use
instructions/global/terminal-formatting.instructions.md instead.
- Do not use when you already need full per-script details; go straight to the bundled references.
Entry Points
- Trigger phrases: "validate changes", "run lint check", "run smoke tests", "check frontmatter", "generate token report"
- Implementation context: after phase work, before review handoff, after adding prompts, after changing instructions or skills
- Conductor context: before pause points, before workflow completion, after structural repository changes
- Expected outcome: choose the right validation sequence, run it in PowerShell 5.1, and interpret whether to proceed or stop
Core Knowledge
Validation scripts overview
| Script |
Purpose |
Auto-Approved |
Exit Code |
validate-copilot-assets.ps1 |
Validate frontmatter, YAML, and asset structure |
✓ Yes |
0 pass, 1 fail |
run-lint.ps1 |
Check markdown and repository formatting issues |
✓ Yes |
0 pass, 1 fail |
run-smoke-tests.ps1 |
Confirm critical repository paths still work |
✓ Yes |
0 pass, 1 fail |
token-report.ps1 |
Generate token budget totals and warnings |
✓ Yes |
0 success |
add-prompt-metadata.ps1 |
Add or normalize prompt metadata |
✗ No |
0 success, 1 fail |
init-artifacts.ps1 |
Create local workflow artifact folders |
✗ No |
0 success |
Terminal auto-approve behavior
Read-only validation scripts are typically safe to run without modification approval:
powershell -File scripts/validate-copilot-assets.ps1 -RepositoryRoot .
powershell -File scripts/run-lint.ps1 -RepositoryRoot .
powershell -File scripts/run-smoke-tests.ps1 -RepositoryRoot .
powershell -File scripts/token-report.ps1 -Path . -ConfigPath token-thresholds.json
Scripts that write to disk require approval because they modify repository state:
powershell -File scripts/add-prompt-metadata.ps1 -RepositoryRoot .
powershell -File scripts/init-artifacts.ps1
Validation cadence guidance
- After implementation: run asset validation, then lint.
- Before completion or release readiness: run asset validation, lint, smoke tests, then token report.
- After adding prompts: check or add metadata, then re-run asset validation.
- When any blocking script fails: stop, fix the cause, and re-run before proceeding.
Examples
Example: Phase completion validation
powershell -File scripts/validate-copilot-assets.ps1 -RepositoryRoot .
powershell -File scripts/run-lint.ps1 -RepositoryRoot .
If asset validation passes and lint shows only non-blocking warnings, proceed to the next quality gate.
Example: Handling validation failure
powershell -File scripts/validate-copilot-assets.ps1 -RepositoryRoot .
Write-Host "Exit code: $LASTEXITCODE"
If $LASTEXITCODE is 1, fix the structural issue first. Do not continue to review or completion checks until the validation script returns 0.
References
- references/script-catalog.md — detailed per-script syntax, parameters, exit codes, and troubleshooting
- references/workflow-patterns.md — validation sequences, priorities, and pause guidance
- references/example-outputs.md — expected pass/fail output examples
- ../../../scripts/ — script sources
- ../../agents/conductor.agent.md — conductor workflow context
- ../../../docs/templates/phase-complete.md — completion template referenced by validation workflows
1---2name: validation-scripts3description: PowerShell 5.1 validation script operations for asset validation, lint checks, smoke tests, and pause-point verification.4---56# Validation Scripts78## Description910This skill is the entry point for the repository's PowerShell 5.1 validation workflow. It tells agents which scripts to run, how to interpret the results, when approval is required, and where the detailed per-script reference material lives.1112Use it when you need validation cadence guidance or quick script selection during implementation, review, or conductor pause points. Keep deeper syntax and troubleshooting details in the bundled references instead of re-expanding this file into a monolith.1314## When to Use1516- Use when validating asset structure after editing agents, prompts, instructions, or skills.17- Use when deciding which validation scripts to run before review or completion.18- Use when interpreting pass/fail status, warnings, and pause conditions from validation output.19- Use when checking whether a validation script is read-only or approval-gated.2021### When NOT to Use2223- Do not use for general PowerShell scripting questions unrelated to repository validation.24- Do not use when the task is purely about terminal formatting; use `instructions/global/terminal-formatting.instructions.md` instead.25- Do not use when you already need full per-script details; go straight to the bundled references.2627## Entry Points2829- **Trigger phrases:** "validate changes", "run lint check", "run smoke tests", "check frontmatter", "generate token report"30- **Implementation context:** after phase work, before review handoff, after adding prompts, after changing instructions or skills31- **Conductor context:** before pause points, before workflow completion, after structural repository changes32- **Expected outcome:** choose the right validation sequence, run it in PowerShell 5.1, and interpret whether to proceed or stop3334## Core Knowledge3536### Validation scripts overview3738| Script | Purpose | Auto-Approved | Exit Code |39|--------|---------|---------------|-----------|40| `validate-copilot-assets.ps1` | Validate frontmatter, YAML, and asset structure | ✓ Yes | `0` pass, `1` fail |41| `run-lint.ps1` | Check markdown and repository formatting issues | ✓ Yes | `0` pass, `1` fail |42| `run-smoke-tests.ps1` | Confirm critical repository paths still work | ✓ Yes | `0` pass, `1` fail |43| `token-report.ps1` | Generate token budget totals and warnings | ✓ Yes | `0` success |44| `add-prompt-metadata.ps1` | Add or normalize prompt metadata | ✗ No | `0` success, `1` fail |45| `init-artifacts.ps1` | Create local workflow artifact folders | ✗ No | `0` success |4647### Terminal auto-approve behavior4849Read-only validation scripts are typically safe to run without modification approval:5051```powershell52powershell -File scripts/validate-copilot-assets.ps1 -RepositoryRoot .53powershell -File scripts/run-lint.ps1 -RepositoryRoot .54powershell -File scripts/run-smoke-tests.ps1 -RepositoryRoot .55powershell -File scripts/token-report.ps1 -Path . -ConfigPath token-thresholds.json56```5758Scripts that write to disk require approval because they modify repository state:5960```powershell61powershell -File scripts/add-prompt-metadata.ps1 -RepositoryRoot .62powershell -File scripts/init-artifacts.ps163```6465### Validation cadence guidance6667- **After implementation:** run asset validation, then lint.68- **Before completion or release readiness:** run asset validation, lint, smoke tests, then token report.69- **After adding prompts:** check or add metadata, then re-run asset validation.70- **When any blocking script fails:** stop, fix the cause, and re-run before proceeding.7172## Examples7374### Example: Phase completion validation7576```powershell77powershell -File scripts/validate-copilot-assets.ps1 -RepositoryRoot .78powershell -File scripts/run-lint.ps1 -RepositoryRoot .79```8081If asset validation passes and lint shows only non-blocking warnings, proceed to the next quality gate.8283### Example: Handling validation failure8485```powershell86powershell -File scripts/validate-copilot-assets.ps1 -RepositoryRoot .87Write-Host "Exit code: $LASTEXITCODE"88```8990If `$LASTEXITCODE` is `1`, fix the structural issue first. Do not continue to review or completion checks until the validation script returns `0`.9192## References9394- [references/script-catalog.md](references/script-catalog.md) — detailed per-script syntax, parameters, exit codes, and troubleshooting95- [references/workflow-patterns.md](references/workflow-patterns.md) — validation sequences, priorities, and pause guidance96- [references/example-outputs.md](references/example-outputs.md) — expected pass/fail output examples97- [../../../scripts/](../../../scripts/) — script sources98- [../../agents/conductor.agent.md](../../agents/conductor.agent.md) — conductor workflow context99- [../../../docs/templates/phase-complete.md](../../../docs/templates/phase-complete.md) — completion template referenced by validation workflows