#!/bin/sh set -eu repo=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd -P) count=0 for skill in "$repo"/skills/*/SKILL.md; do [ -f "$skill" ] || continue directory=$(basename -- "$(dirname -- "$skill")") name=$(sed -n 's/^name:[[:space:]]*//p' "$skill" | sed -n '1p') [ "$name" = "$directory" ] || { printf 'name mismatch: %s != %s\n' "$name" "$directory" >&2 exit 1 } grep '^description:' "$skill" >/dev/null count=$((count + 1)) done [ "$count" -eq 3 ] || { printf 'expected 3 skills, found %s\n' "$count" >&2 exit 1 } configure=$repo/skills/configure-ink-agent/SKILL.md grep 'access.*read.*write' "$configure" >/dev/null grep 'named agent policy is metadata-only' "$configure" >/dev/null grep 'no `INK_AGENT_HOME` contract' "$configure" >/dev/null grep 'applied as a restriction' "$configure" >/dev/null audit_cli=$repo/skills/audit-ink-cli/SKILL.md grep 'ink agent catalog' "$audit_cli" >/dev/null grep 'frozen `tool delegate` subject' "$audit_cli" >/dev/null grep 'additive alternatives' "$audit_cli" >/dev/null grep 'automatically trusted' "$audit_cli" >/dev/null create_tool=$repo/skills/create-ink-tool/SKILL.md grep 'stage/match/apply' "$create_tool" >/dev/null grep 'projection' "$create_tool" >/dev/null grep 'approved global and ancestor-project rows' "$create_tool" >/dev/null grep 'requires digest approval' "$create_tool" >/dev/null grep 'Empty project policy adds nothing' "$repo/README.md" >/dev/null printf 'ok\n'