# PUBLISHED CONTRACT. External repos consume these IDs with `rev: `, so an # ID or a `files:` regex here may not change without breaking them on upgrade. # ADR-0025 merged skill-audit and agent-audit into factory-audit and re-pointed # both `entry:` paths at its single vale-wrap.sh; both IDs and both regexes are # unchanged, deliberately. Collapsing them into one was considered and rejected: # it breaks every consumer pinning kyberforge-vale-audit-agent, and it re-creates # ADR-0014's measured failure where one hook against one config silently scanned # 0 files of the other type. Two IDs are what keep both file scopes addressable. - id: kyberforge-vale-audit-skill name: Kyberforge Vale prose audit (SKILL.md) description: Deterministic prose-pattern prefilter for kyberforge's factory-audit skill flow, via its own bundled Vale config/styles entry: plugins/kyberforge/.apm/skills/factory-audit/scripts/vale-wrap.sh language: script files: '(^|/)SKILL\.md$' - id: kyberforge-vale-audit-agent name: Kyberforge Vale prose audit (agent files) description: Deterministic prose-pattern prefilter for kyberforge's factory-audit agent flow, via its own bundled Vale config/styles entry: plugins/kyberforge/.apm/skills/factory-audit/scripts/vale-wrap.sh language: script files: '(^|/)agents/[^/]+\.md$|\.agent\.md$' - id: kyberforge-skill-size-check name: SKILL.md size and context-budget ceilings description: Enforce agentskills.io's 500-line/2,770-whole-file-word spec ceilings plus ADR-0020's context budget (description 250 chars SUGGESTION / 400 FAIL, body-only 600 words SUGGESTION / 900 FAIL, resolvable boundary-clause routing targets) entry: scripts/skill-size-check.sh language: script files: '(^|/)SKILL\.md$' # verbose so the SUGGESTION tier reaches a human -- pre-commit prints # nothing for a passing hook, and a SUGGESTION deliberately does not fail. verbose: true