validate-frontmatter.yml 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. name: Validate Frontmatter
  2. on:
  3. pull_request:
  4. paths:
  5. - '**/agents/*.md'
  6. - '**/skills/*/SKILL.md'
  7. - '**/commands/*.md'
  8. jobs:
  9. validate:
  10. runs-on: ubuntu-latest
  11. steps:
  12. - uses: actions/checkout@v4
  13. - uses: oven-sh/setup-bun@v2
  14. - name: Install dependencies
  15. run: cd .github/scripts && bun install yaml
  16. - name: Get changed frontmatter files
  17. id: changed
  18. run: |
  19. # Use diff-filter=AMRC to exclude deleted files (D) - only Added, Modified, Renamed, Copied
  20. FILES=$(gh pr diff ${{ github.event.pull_request.number }} --name-only --diff-filter=AMRC | grep -E '(agents/.*\.md|skills/.*/SKILL\.md|commands/.*\.md)$' || true)
  21. echo "files<<EOF" >> "$GITHUB_OUTPUT"
  22. echo "$FILES" >> "$GITHUB_OUTPUT"
  23. echo "EOF" >> "$GITHUB_OUTPUT"
  24. env:
  25. GH_TOKEN: ${{ github.token }}
  26. - name: Validate frontmatter
  27. if: steps.changed.outputs.files != ''
  28. run: |
  29. echo "${{ steps.changed.outputs.files }}" | xargs bun .github/scripts/validate-frontmatter.ts