pre-commit prefixes only entry[0] with the hook-repo clone path (cmd = (prefix.path(cmd[0]), *cmd[1:])), so the --config argument in .pre-commit-hooks.yaml resolved against the *consuming* repo's root and hard-failed every external run with E100. Two of the three hooks ADR-0014 promises were unusable. vale-wrap.sh now self-locates its config from BASH_SOURCE when no --config is supplied; an explicit --config still wins in all three argv forms and stays cwd-relative. Both manifests drop the argument and are kept byte-identical: the local repo: local config resolved --config correctly only because the consuming repo *was* this repo, and that divergence is why three review rounds missed the defect. Also in the wrapper: - replace GNU-only `realpath -m` with a portable abspath helper; -m is load-bearing (dest does not exist yet), so BSD realpath aborted the script under set -e on macOS - walk directory arguments instead of passing them through unflattened, which reported a clean 0-error run for files that fail when named explicitly - read/write with errors='surrogateescape' so one non-UTF-8 .md under a directory argument cannot abort the hook New test-vale-hooks-consumer.sh builds the hook repo from the working tree and points a file:// consumer at it, covering the manifest as a hook repo for the first time. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MCQ648fLSFXPHGZdQ8gn58
21 lines
925 B
YAML
21 lines
925 B
YAML
- id: kyberforge-vale-audit-skill
|
|
name: Kyberforge Vale prose audit (SKILL.md)
|
|
description: Deterministic prose-pattern prefilter for kyberforge's skill-audit, via its own bundled Vale config/styles
|
|
entry: plugins/kyberforge/skills/skill-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 agent-audit, via its own bundled Vale config/styles
|
|
entry: plugins/kyberforge/skills/agent-audit/scripts/vale-wrap.sh
|
|
language: script
|
|
files: '(^|/)agents/[^/]+\.md$|\.agent\.md$'
|
|
|
|
- id: kyberforge-skill-size-check
|
|
name: SKILL.md size ceiling
|
|
description: Enforce agentskills.io's 500-line/5,000-token SKILL.md size ceiling
|
|
entry: scripts/skill-size-check.sh
|
|
language: script
|
|
files: '(^|/)SKILL\.md$'
|