gsc-index-triage
GSC index triage
Search Console limits manual "Request indexing" to roughly 10 URLs per property per day (sometimes fewer), and the API cannot request indexing at all. This skill makes those few clicks count: it finds every not-indexed URL, explains which ones a request won't fix, and hands the user a short, ranked list.
Script: scripts/gsc_triage.py (Python 3.9+). Run it with uv run scripts/gsc_triage.py <command> so that uv installs its two dependencies (google-auth and requests). Without uv, run pip install google-auth requests and use python3.
Setup (once per user)
Check first: uv run scripts/gsc_triage.py sites. If it lists the property, skip this.
Otherwise walk the user through creating a read-only service account. Tell them the steps; they click through them:
- In the Google Cloud console, open (or create) a project, go to APIs & Services > Library, and enable Google Search Console API. It's free and needs no billing.
- Go to IAM & Admin > Service accounts > Create, name it e.g.
gsc-reader, and skip the roles step. - Open the account, go to Keys > Add key > JSON, and download the file.
- Have the user move the file to
~/.config/gsc/key.jsonand runchmod 600on it. Never ask the user to paste the key into chat. - In Search Console, go to Settings > Users and permissions > Add user, enter the service account email, and choose Restricted (read-only is enough).
Then export GSC_KEY=~/.config/gsc/key.json (or pass --key). If the credential sees several properties, pass --site sc-domain:example.com or --site https://example.com/ (or set GSC_SITE).