#!/usr/bin/env sh

message_file="$1"
subject="$(head -n 1 "$message_file")"

if printf '%s' "$subject" | grep -Eq '^(Merge|Revert )'; then
  exit 0
fi

if printf '%s' "$subject" | grep -Eq '^(feat|fix|docs|style|refactor|perf|test|build|ci|chore|revert)(\([a-z0-9._/-]+\))?(!)?: .+'; then
  exit 0
fi

echo "Invalid commit message format."
echo "Expected Conventional Commits, for example:"
echo "  feat: add MCP file management tools"
echo "  fix(cli): handle missing vault config"
exit 1
