§5 Skill
Normative requirements for HARNESS.md: presence, content constraints, the copy on activate, and drift with the manifest.
The Skill is HARNESS.md at the pack root.
5.1 Presence#
- A pack MUST contain
HARNESS.md. Runtimes MUST fail lint otherwise (missing_harness). HARNESS.mdMUST be UTF-8 Markdown.- The manifest field
harness(inline Skill text) is deprecated. When both are present,HARNESS.mdtakes precedence.
5.2 Content#
- The Skill MUST NOT contain credential material of any kind, including placeholders formatted as credentials.
- The Skill MUST NOT contain host-absolute filesystem paths as normative steps.
- The Skill MUST NOT present an MCP tool list as the way to invoke the pack.
- Every command the Skill teaches MUST be a
verb_keydeclared in the manifest. - The Skill MUST NOT describe triggers the manifest does not declare.
- The Skill SHOULD fit on one screen and SHOULD follow this order: title, lead,
hot-path table, examples, setup (if Binding is not
public), anti-patterns, pointers. - The title SHOULD be
# HCP — <Name>. - Examples SHOULD use the CLI face with
--jsonand SHOULD show--confirm/--applyon gated writes.
5.3 Lead#
- The lead is the text between the title and the first
##heading. - Runtimes and hosts MAY truncate the lead for stable context. The reference default is 480 characters.
- Authors SHOULD write the lead so that, truncated, it still states what the pack does, whether it needs login, and the first command to run.
5.4 Copy on activate#
- On activate, a runtime SHOULD copy
HARNESS.mdto a Skill location hosts discover. The reference location is$HCP_HOME/skills/<pack_id>/SKILL.md. - The copy MUST be byte-identical to
HARNESS.mdor a faithful rendering; a runtime MUST NOT inject credentials, host paths, or policy into it. - Host adoption (
hcp adopt) MAY copy the Skill again into a host-specific location.
5.5 Drift#
Informative. Skill ↔ manifest ↔ Policy drift is a lint concern under the four-faces rule (§12.4). Runtimes SHOULD warn when a Skill's hot-path table names a command the manifest lacks or omits one it declares.
5.6 Relationship to Agent Skills#
Informative. HARNESS.md follows the Agent Skills principles of progressive
disclosure, examples, and anti-patterns. It is intentionally scoped to invocation.
When copied to SKILL.md it is a valid Agent Skill body; frontmatter, if a host
requires it, is added by the runtime at copy time from manifest fields.