What problem does it solve? Spec-driven development pipelines rely on a per-feature profile.yaml to configure gate modes, council tiers, and automation handshakes, and a malformed profile can silently break downstream phases. This Skill hard-blocks invalid profiles before planning, task generation, or implementation consumes them. ## Core Features & Use Cases - Schema Contract Validation: Shells out to the workforce extension's validate-profile.py to enforce every rule — schema_version, closed enums, unknown-key rejection, gate mapping shapes, and the full_auto P1-P4 handshake. - Context-Aware Resolution: Accepts an explicit --feature directory or profile path, otherwise resolves the active feature from .specify/feature.json, falling back to ./profile.yaml. - Hard-Block Gate Behavior: Any non-zero exit (invalid profile or usage error) is relayed verbatim as a blocking signal, while an absent profile.yaml is correctly treated as valid (P1 safest posture). - Use Case: Before running the plan or tasks phase on a new feature, invoke this Skill to confirm the feature's profile.yaml declares valid gate modes and council settings, catching typos like a scalar gates.council value before they corrupt the pipeline. ## Quick Start Ask the assistant to validate the current feature's profile.yaml using the speckit-validate-profile skill before proceeding with planning.