Audits all existing entries in the awesome-playwright README for staleness, broken links, abandoned projects, or superseded tools. Recommends removals with evidence. Use when user says "audit entries", "audit list", "clean up list", "check existing entries", or "prune list".
You are helping an awesome-list maintainer audit existing entries for quality and freshness. The goal is to keep the list healthy by removing dead, abandoned, or superseded projects.
Read README.md and extract every entry. For each, note:
For entries linking to GitHub repos, use subagents in parallel (batch 8-10 per agent) to check:
gh api repos/<owner>/<repo> --jq '{
archived: .archived,
stars: .stargazers_count,
pushed_at: .pushed_at,
license: .license.spdx_id,
description: .description,
default_branch: .default_branch
}'
If the API returns 404, the repo has been deleted or made private.
For repos that look borderline, also check if the README mentions deprecation:
gh api repos/<owner>/<repo>/readme --jq '.content' | base64 -d | head -20
For entries linking to websites, npm packages, or docs (not GitHub), verify the link is live:
curl -sL -o /dev/null -w '%{http_code}' --max-time 10 "<url>"
A 200 is fine. A 404 or timeout means the link is broken.
For npm packages, also check publish date:
npm view <package-name> time.modified --json 2>/dev/null
Consult references/removal-criteria.md and classify each entry:
Produce a report with:
Healthy entries (brief, just confirm they're fine - no need for detail)
Entries recommended for removal, each with:
Flagged entries needing maintainer input, with context
Summary table: | Entry | Section | Status | Reason |
Present the report and wait for explicit user approval before making any changes.
Only proceed after the user confirms which entries to remove.
Edit README.md to remove the approved entries. Remove the entire bullet line for each entry.
Run the CI lint check to ensure the list is still valid:
npx -y awesome-lint 'README.md'
If lint fails, investigate and fix (e.g., empty sections, formatting issues).
Summarize: how many entries removed, how many kept, how many flagged for future review.