Add CI workflow to validate agent file format

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.
This commit is contained in:
jiangnan
2026-03-06 04:37:53 +08:00
parent 53feda4d4e
commit 976c08e4c3
2 changed files with 158 additions and 0 deletions

44
.github/workflows/lint-agents.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
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 }}