mirror of
https://github.com/msitarzewski/agency-agents
synced 2026-04-25 11:18:05 +00:00
Adds a lint script and GitHub Actions workflow that checks agent markdown files for required YAML frontmatter fields (name, description, color) and recommends standard sections. Only changed files in PRs are validated to avoid blocking on pre-existing issues.
45 lines
1.2 KiB
YAML
45 lines
1.2 KiB
YAML
name: Lint Agent Files
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- 'design/**'
|
|
- 'engineering/**'
|
|
- 'marketing/**'
|
|
- 'product/**'
|
|
- 'project-management/**'
|
|
- 'testing/**'
|
|
- 'support/**'
|
|
- 'spatial-computing/**'
|
|
- 'specialized/**'
|
|
|
|
jobs:
|
|
lint:
|
|
name: Validate agent frontmatter and structure
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Get changed agent files
|
|
id: changed
|
|
run: |
|
|
FILES=$(git diff --name-only --diff-filter=ACMR origin/${{ github.base_ref }}...HEAD -- \
|
|
'design/*.md' 'engineering/*.md' 'marketing/*.md' 'product/*.md' \
|
|
'project-management/*.md' 'testing/*.md' 'support/*.md' \
|
|
'spatial-computing/*.md' 'specialized/*.md')
|
|
echo "files=$FILES" >> "$GITHUB_OUTPUT"
|
|
if [ -z "$FILES" ]; then
|
|
echo "No agent files changed."
|
|
else
|
|
echo "Changed files:"
|
|
echo "$FILES"
|
|
fi
|
|
|
|
- name: Run agent linter
|
|
if: steps.changed.outputs.files != ''
|
|
run: |
|
|
chmod +x scripts/lint-agents.sh
|
|
./scripts/lint-agents.sh ${{ steps.changed.outputs.files }}
|