[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MECHAGGP10920ZE4MFSQQP":3,"skill-same:01M6MECHAGGP10920ZE4MFSQQP":151},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":16,"sourceHtmlUrl":17,"categories":18,"keywords":35,"publishedAt":56,"linkOnly":57,"markdownContent":58,"markdownBody":59,"frontMatter":60,"refName":67,"commitSha":68,"skillDirectory":69,"forksCount":70,"repositoryHtmlUrl":71,"repositoryHomepageUrl":72,"ownerHtmlUrl":73,"ownerBlogUrl":74,"ownerDescription":75,"updatedAt":76,"install":77,"resources":89},"01M6MECHAGGP10920ZE4MFSQQP","seo-google",null,"Google SEO APIs: Search Console (Search Analytics, URL Inspection, Sitemaps), PageSpeed Insights v5, CrUX field data with 25-week history, Indexing API v3, and GA4 organic traffic. Provides real Google field data for Core Web Vitals, indexation status, search performance, and organic traffic trends. Use when user says \"search console\", \"GSC\", \"PageSpeed\", \"CrUX\", \"field data\", \"indexing API\", \"GA4 organic\", \"URL inspection\", or \"real CWV data\".","hashgraph-online\u002Fawesome-codex-plugins","hashgraph-online","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F160371962?v=4","01M6CNB6NRJVNNGN14TR01Q6D3","HOL (Hashgraph Online)","01M6JT1HSKKG9V68KQAQGBA7XP",1559,"MIT","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002FSKILL.md",[19,24,27,32],{"categoryNo":20,"categoryName":21,"taxonomyType":22,"taxonomyTypeDesc":23},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":25,"categoryName":26,"taxonomyType":22,"taxonomyTypeDesc":23},"01JBSEEDCAT000000000000019","营销推广",{"categoryNo":28,"categoryName":29,"taxonomyType":30,"taxonomyTypeDesc":31},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",{"categoryNo":33,"categoryName":34,"taxonomyType":30,"taxonomyTypeDesc":31},"01JBSEEDCAT000000000000035","市场营销",[36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],"seo","seo google","google","for","core","history","analytics","data","status","command","ga4","indexing","api","URL","traffic","insights","gsc","search","performance","vitals","2026-11-10 10:12:30",false,"---\nname: seo-google\ndescription: >\n  Google SEO APIs: Search Console (Search Analytics, URL Inspection, Sitemaps),\n  PageSpeed Insights v5, CrUX field data with 25-week history, Indexing API v3,\n  and GA4 organic traffic. Provides real Google field data for Core Web Vitals,\n  indexation status, search performance, and organic traffic trends. Use when\n  user says \"search console\", \"GSC\", \"PageSpeed\", \"CrUX\", \"field data\",\n  \"indexing API\", \"GA4 organic\", \"URL inspection\", or \"real CWV data\".\nuser-invocable: true\nargument-hint: \"[command] [url|property]\"\nlicense: MIT\nmetadata:\n  author: AgriciDaniel\n  version: \"2.2.7\"\n  category: seo\n---\n\n# Google SEO APIs\n\nDirect access to Google's own SEO data. Bridges the gap between crawl-based\nanalysis (existing claude-seo skills) and Google's real-time field data: actual\nChrome user metrics, real indexation status, search performance, and organic traffic.\n\nAll APIs are free. Setup requires a Google Cloud project with API key and\u002For\nservice account -- run `\u002Fseo google setup` for step-by-step instructions.\n\n## Prerequisites\n\nBefore executing any command, check credentials:\n```bash\nclaude-seo run google_auth.py --check --json\n```\n\nConfig file: `~\u002F.config\u002Fclaude-seo\u002Fgoogle-api.json`\n```json\n{\n  \"service_account_path\": \"\u002Fpath\u002Fto\u002Fservice_account.json\",\n  \"api_key\": \"\u003CGOOGLE_API_KEY>\",\n  \"default_property\": \"sc-domain:example.com\",\n  \"ga4_property_id\": \"properties\u002F123456789\"\n}\n```\n\nIf missing, read `references\u002Fauth-setup.md` and walk the user through setup.\n\n### Credential Tiers\n\n| Tier | Detection | Available Commands |\n|------|-----------|-------------------|\n| **0** (API Key) | `api_key` present | `pagespeed`, `crux`, `crux-history`, `youtube`, `nlp` |\n| **1** (OAuth\u002FSA) | + OAuth token or service account | Tier 0 + `gsc`, `inspect`, `sitemaps`, `index` |\n| **2** (Full) | + `ga4_property_id` configured | Tier 1 + `ga4`, `ga4-pages` |\n| **3** (Ads) | + `ads_developer_token` + `ads_customer_id` | Tier 2 + `keywords`, `volume` |\n\nAlways communicate the detected tier before running commands.\n\n## Quick Reference\n\n| Command | What it does | Tier |\n|---------|-------------|------|\n| `\u002Fseo google setup` | Check\u002Fconfigure API credentials | -- |\n| `\u002Fseo google pagespeed \u003Curl>` | PSI Lighthouse + CrUX field data | 0 |\n| `\u002Fseo google crux \u003Curl>` | CrUX field data only (p75 metrics) | 0 |\n| `\u002Fseo google crux-history \u003Curl>` | 25-week CWV trend analysis | 0 |\n| `\u002Fseo google gsc \u003Cproperty>` | Search Console: clicks, impressions, CTR, position | 1 |\n| `\u002Fseo google inspect \u003Curl>` | URL Inspection: index status, canonical, crawl info | 1 |\n| `\u002Fseo google inspect-batch \u003Cfile>` | Batch URL Inspection from file | 1 |\n| `\u002Fseo google sitemaps \u003Cproperty>` | GSC sitemap status | 1 |\n| `\u002Fseo google index \u003Curl>` | Submit URL to Indexing API | 1 |\n| `\u002Fseo google index-batch \u003Cfile>` | Batch submit up to 200 URLs | 1 |\n| `\u002Fseo google ga4 [property-id]` | GA4 organic traffic report | 2 |\n| `\u002Fseo google ga4-pages [property-id]` | Top organic landing pages | 2 |\n| `\u002Fseo google youtube \u003Cquery>` | YouTube video search (views, likes, duration) | 0 |\n| `\u002Fseo google youtube-video \u003Cid>` | YouTube video details + top comments | 0 |\n| `\u002Fseo google nlp \u003Curl-or-text>` | NLP entity extraction + sentiment + classification | 0 |\n| `\u002Fseo google entities \u003Curl-or-text>` | Entity analysis only (for E-E-A-T) | 0 |\n| `\u002Fseo google keywords \u003Cseed>` | Keyword ideas from Google Ads Keyword Planner | 3 |\n| `\u002Fseo google volume \u003Ckeywords>` | Search volume lookup from Keyword Planner | 3 |\n| `\u002Fseo google entity \u003Cquery>` | Knowledge Graph entity check | 0 |\n| `\u002Fseo google safety \u003Curl>` | Web Risk URL safety check | 0 |\n| `\u002Fseo google quotas` | Show rate limits for all APIs | -- |\n\n---\n\n## PageSpeed + CrUX\n\n### `\u002Fseo google pagespeed \u003Curl>`\n\nCombined Lighthouse lab data + CrUX field data.\n\n**Script:** `claude-seo run pagespeed_check.py \u003Curl> --json`\n**Reference:** `references\u002Fpagespeed-crux-api.md`\n**Default:** Both mobile + desktop strategies, all Lighthouse categories.\n\nOutput merges lab scores (point-in-time Lighthouse) with field data (28-day\nChrome user metrics). CrUX tries URL-level first, falls back to origin-level.\n\n### `\u002Fseo google crux \u003Curl>`\n\nCrUX field data only (no Lighthouse run). Faster.\n\n**Script:** `claude-seo run pagespeed_check.py \u003Curl> --crux-only --json`\n\n### `\u002Fseo google crux-history \u003Curl>`\n\n25-week CrUX History trends. Shows whether CWV metrics are improving, stable, or degrading.\n\n**Script:** `claude-seo run crux_history.py \u003Curl> --json`\n**Reference:** `references\u002Fpagespeed-crux-api.md`\n\nOutput includes per-metric trend direction, percentage change, and weekly p75 values.\n\n---\n\n## Search Console\n\n### `\u002Fseo google gsc \u003Cproperty>`\n\nSearch Analytics: clicks, impressions, CTR, position for last 28 days.\n\n**Script:** `claude-seo run gsc_query.py --property \u003Cproperty> --json`\n**Reference:** `references\u002Fsearch-console-api.md`\n**Default:** 28 days, dimensions=query,page, type=web, limit=1000.\n\nIncludes quick-win detection: queries at position 4-10 with high impressions.\nThe `totals` block comes from a separate dimensionless aggregate query because\nquery-level rows can omit anonymized low-volume traffic. Treat totals as\nsite-wide only when `totals_complete` is true. `--limit` caps total returned\ndimension rows, not the size of every pagination request.\n\n> **AI surfaces in GSC (2026):**\n> - **Generative AI performance report** (launched 2026-06-03), a dedicated view of **AI Overviews + AI Mode** visibility. **Impressions only** (no clicks\u002FCTR\u002Fposition\u002Fquery); dimensions Pages\u002FCountries\u002FDevices\u002FDates (Pacific Time); 1,000-row limit; newest data preliminary; a separate Discover gen-AI report also exists. Rolling out to a subset of properties.\n> - **AI Mode already rolls into standard Performance totals** (Web search type), clicks (external-link clicks in AI Mode) and impressions are counted in the normal report, so you **cannot** cleanly split \"classic\" vs \"AI\" traffic from totals. Use the Generative AI report for impressions-only AI visibility.\n> - **Data-reliability caveat:** a GSC logging error made **impressions, CTR, and average position unreliable from 2025-05-13 to 2026-04-27** (clicks unaffected; fixed forward-only, **no backfill**). Treat impression\u002FCTR\u002Fposition trends spanning that window with caution; expect an apparent impressions drop after the fix.\n\n> **Platform properties (2026):** Search Console can expose verified TikTok,\n> Instagram, X, and YouTube accounts as individual properties. Verify each\n> account separately, unless it was already added through a claimed Search\n> profile. Use these properties for Google Search performance only, not as a\n> substitute for the platform's own analytics. Source:\n> developers.google.com\u002Fsearch\u002Fdocs\u002Fmonitor-debug\u002Fanalyze-social-video-content\n\n### `\u002Fseo google inspect \u003Curl>`\n\nURL Inspection: real indexation status from Google.\n\n**Script:** `claude-seo run gsc_inspect.py \u003Curl> --json`\n\nReturns: verdict (PASS\u002FFAIL), coverage state, robots.txt status, indexing state,\npage fetch state, canonical selection, mobile usability, rich results.\n\n### `\u002Fseo google inspect-batch \u003Cfile>`\n\nBatch inspection from a file (one URL per line). Rate limited to 2,000\u002Fday per site.\n\n**Script:** `claude-seo run gsc_inspect.py --batch \u003Cfile> --json`\n\n### `\u002Fseo google sitemaps \u003Cproperty>`\n\nList submitted sitemaps with status, errors, warnings. Sitemap contents report\nsubmitted counts only; URL Inspection API is the indexation truth for whether\nspecific URLs are indexed.\n\n**Script:** `claude-seo run gsc_query.py sitemaps --property \u003Cproperty> --json`\n\n---\n\n## Indexing API\n\n### `\u002Fseo google index \u003Curl>`\n\nNotify Google of a URL update.\n\n**Script:** `claude-seo run indexing_notify.py \u003Curl> --json`\n**Reference:** `references\u002Findexing-api.md`\n\nThe Indexing API is officially for JobPosting and BroadcastEvent\u002FVideoObject pages.\nAlways inform the user of this restriction. Daily quota: 200 publish requests.\n\n### `\u002Fseo google index-batch \u003Cfile>`\n\nBatch submit URLs from a file. Tracks quota usage.\n\n**Script:** `claude-seo run indexing_notify.py --batch \u003Cfile> --json`\n\n---\n\n## GA4 Traffic\n\n### `\u002Fseo google ga4 [property-id]`\n\nOrganic traffic report: daily sessions, users, pageviews, bounce rate, engagement.\n\n**Script:** `claude-seo run ga4_report.py --property \u003Cid> --json`\n**Reference:** `references\u002Fga4-data-api.md`\n**Consent diagnostics:** Read `references\u002Fdma-consent-mode-v2.md` when GA4\norganic traffic looks under-reported after March 2024 or when EU\u002FEEA consent\nmode may affect attribution.\n**Default:** 28 days, filtered to Organic Search channel group.\n\n> **GA4 \"AI Assistants\" channel (live ~2026-05-13):** GA4 added a native *AI Assistants* Default Channel Group. Sessions referred by a recognized AI assistant get `medium=ai-assistant`. Google's recognized sources are **ChatGPT, Gemini, Claude, Deepseek, Copilot, Grok** and the channel **excludes** Google AI Overviews \u002F AI Mode. **Verify Perplexity separately if needed**; unsupported sources may stay in Referral, and most AI sessions arrive referrer-less and fall into **Direct**, so this channel undercounts AI traffic. Forward-only, no backfill.\n\n### `\u002Fseo google ga4-pages [property-id]`\n\nTop organic landing pages ranked by sessions.\n\n**Script:** `claude-seo run ga4_report.py --property \u003Cid> --report top-pages --json`\n\n---\n\n## YouTube (Video SEO)\n\nSome third-party studies report a 0.737 correlation between YouTube mentions and AI visibility. Treat it as a methodology-dependent signal. Free, API key only.\n\n### `\u002Fseo google youtube \u003Cquery>`\n\nSearch YouTube for videos. Returns title, channel, views, likes, duration.\n\n**Script:** `claude-seo run youtube_search.py search \"\u003Cquery>\" --json`\n**Reference:** `references\u002Fyoutube-api.md`\n**Quota:** 100 units per search (10,000 units\u002Fday free).\n\n### `\u002Fseo google youtube-video \u003Cvideo_id>`\n\nDetailed video info + tags + top 10 comments.\n\n**Script:** `claude-seo run youtube_search.py video \u003Cvideo_id> --json`\n**Quota:** 2 units (video details + comments).\n\n---\n\n## NLP Content Analysis\n\nGoogle NLP entity\u002Fsentiment output for internal content-quality checks. Do not treat it as Google E-E-A-T scoring.\n\n### `\u002Fseo google nlp \u003Curl-or-text>`\n\nFull NLP analysis: entities, sentiment, content classification.\n\n**Script:** `claude-seo run nlp_analyze.py --url \u003Curl> --json` or `--text \"...\"`\n**Reference:** `references\u002Fnlp-api.md`\n**Free tier:** 5,000 units\u002Fmonth. Requires billing enabled on GCP project.\n\n### `\u002Fseo google entities \u003Curl-or-text>`\n\nEntity extraction only (faster, less quota).\n\n**Script:** `claude-seo run nlp_analyze.py --url \u003Curl> --features entities --json`\n\n---\n\n## Keyword Research (Google Ads)\n\nGold-standard keyword volume data. Requires Google Ads account.\n\n### `\u002Fseo google keywords \u003Cseed>`\n\nGenerate keyword ideas from seed terms.\n\n**Script:** `claude-seo run keyword_planner.py ideas \"\u003Cseed>\" --json`\n**Reference:** `references\u002Fkeyword-planner-api.md`\n**Requires:** Ads developer token + customer ID in config (Tier 3).\n\n### `\u002Fseo google volume \u003Ckeywords>`\n\nSearch volume for specific keywords (comma-separated).\n\n**Script:** `claude-seo run keyword_planner.py volume \"\u003Ckw1>,\u003Ckw2>\" --json`\n\n---\n\n## Supplementary\n\n### `\u002Fseo google entity \u003Cquery>`\n\nKnowledge Graph entity check. Verifies brand presence.\n\n**Reference:** `references\u002Fsupplementary-apis.md`\nUses Knowledge Graph Search API with API key.\n\n### `\u002Fseo google safety \u003Curl>`\n\nWeb Risk API check for malware\u002Fsocial engineering flags.\n\n**Reference:** `references\u002Fsupplementary-apis.md`\n\n### `\u002Fseo google quotas`\n\nDisplay rate limits table. Read `references\u002Frate-limits-quotas.md`.\n\n---\n\n## Reports\n\nAfter any analysis command, offer to generate a PDF\u002FHTML report.\n\n### `\u002Fseo google report \u003Ctype>`\n\nGenerate a professional PDF report with charts and analytics.\n\n**Script:** `claude-seo run google_report.py --type \u003Ctype> --data \u003Cjson> --domain \u003Cdomain> --format pdf`\n\n| Type | Input | Output |\n|------|-------|--------|\n| `cwv-audit` | PSI + CrUX + CrUX History data | Core Web Vitals audit with gauges, timelines, distributions |\n| `gsc-performance` | GSC query data | Search Console report with query tables, quick wins |\n| `indexation` | Batch inspection data | Indexation status with coverage donut chart |\n| `full` | All data combined | Comprehensive Google SEO report (all sections) |\n\n**Workflow:**\n1. Run data collection commands (pagespeed, gsc, inspect-batch, etc.)\n2. Save JSON output to file: `claude-seo run pagespeed_check.py \u003Curl> --json > data.json`\n3. Generate report: `claude-seo run google_report.py --type cwv-audit --data data.json --domain \u003Cdomain>`\n\n**Convention:** After completing analysis, suggest: \"Generate a report? Use `\u002Fseo google report \u003Ctype>`\"\n\n---\n\n## Rate Limits\n\n| API | Per-Minute | Per-Day | Auth |\n|-----|-----------|---------|------|\n| PSI v5 | 240 QPM | 25,000 QPD | API Key |\n| CrUX + History | 150 QPM (shared) | Unlimited | API Key |\n| GSC Search Analytics | 1,200 QPM\u002Fsite | 30M QPD | Service Account |\n| GSC URL Inspection | 600 QPM | 2,000 QPD\u002Fsite | Service Account |\n| Indexing API | 380 RPM | 200 publish\u002Fday | Service Account |\n| GA4 Data API | 10 concurrent | ~25K tokens\u002Fday | Service Account |\n\n## Cross-Skill Integration\n\n- **seo-audit**: Spawns `seo-google` agent for live CWV + indexation data (conditional)\n- **seo-technical**: Uses pagespeed_check.py for real CWV field data\n- **seo-performance**: CrUX field data supplements Lighthouse lab data\n- **seo-sitemap**: GSC sitemap status shows submitted counts, errors, and warnings; use URL Inspection for indexation truth\n- **seo-content**: GSC query data informs keyword targeting\n- **seo-geo**: Use GSC Generative AI performance reports and AI Overviews\u002FAI Mode\u002FDiscover gen-AI include\u002Fexclude controls where available\n\n## Output Format\n\n- CWV metrics: traffic-light rating (Good \u002F Needs Improvement \u002F Poor)\n- Performance reports: tables with sortable columns\n- Always include data freshness note\n- Save reports as `GOOGLE-API-REPORT-{domain}.md`\n- Markdown\u002FLLM templates in `assets\u002Ftemplates\u002F`: `cwv-audit-report.md`, `gsc-performance-report.md`, `indexation-status-report.md`; distinct from `google_report.py`'s PDF pipeline\n\n## Technical Notes\n\n- INP replaced FID on March 12, 2024. Never reference FID.\n- CLS values from CrUX are string-encoded (e.g., \"0.05\"). Scripts handle parsing.\n- CrUX 404 = insufficient traffic, not an auth error.\n- Search Analytics data has 2-3 day lag.\n- `round_trip_time` replaced `effectiveConnectionType` in CrUX (Feb 2025).\n- Custom Search JSON API is closed to new customers (2025).\n\n## Error Handling\n\n| Scenario | Action |\n|----------|--------|\n| No credentials configured | Run `\u002Fseo google setup`. List Tier 0 commands that work with just an API key. |\n| Service account lacks GSC access | Report error. Instruct: add `client_email` to GSC > Settings > Users > Add. |\n| CrUX data unavailable (404) | Report insufficient Chrome traffic. Suggest PSI lab data as fallback. |\n| GA4 property not found | Report error. Show how to find property ID in GA4 Admin > Property Details. |\n| Indexing API quota exceeded | Report 200\u002Fday limit. Suggest prioritizing most important URLs. |\n| Rate limit (429) | Wait and retry with exponential backoff. Report which API hit the limit. |\n","# Google SEO APIs\n\nDirect access to Google's own SEO data. Bridges the gap between crawl-based\nanalysis (existing claude-seo skills) and Google's real-time field data: actual\nChrome user metrics, real indexation status, search performance, and organic traffic.\n\nAll APIs are free. Setup requires a Google Cloud project with API key and\u002For\nservice account -- run `\u002Fseo google setup` for step-by-step instructions.\n\n## Prerequisites\n\nBefore executing any command, check credentials:\n```bash\nclaude-seo run google_auth.py --check --json\n```\n\nConfig file: `~\u002F.config\u002Fclaude-seo\u002Fgoogle-api.json`\n```json\n{\n  \"service_account_path\": \"\u002Fpath\u002Fto\u002Fservice_account.json\",\n  \"api_key\": \"\u003CGOOGLE_API_KEY>\",\n  \"default_property\": \"sc-domain:example.com\",\n  \"ga4_property_id\": \"properties\u002F123456789\"\n}\n```\n\nIf missing, read `references\u002Fauth-setup.md` and walk the user through setup.\n\n### Credential Tiers\n\n| Tier | Detection | Available Commands |\n|------|-----------|-------------------|\n| **0** (API Key) | `api_key` present | `pagespeed`, `crux`, `crux-history`, `youtube`, `nlp` |\n| **1** (OAuth\u002FSA) | + OAuth token or service account | Tier 0 + `gsc`, `inspect`, `sitemaps`, `index` |\n| **2** (Full) | + `ga4_property_id` configured | Tier 1 + `ga4`, `ga4-pages` |\n| **3** (Ads) | + `ads_developer_token` + `ads_customer_id` | Tier 2 + `keywords`, `volume` |\n\nAlways communicate the detected tier before running commands.\n\n## Quick Reference\n\n| Command | What it does | Tier |\n|---------|-------------|------|\n| `\u002Fseo google setup` | Check\u002Fconfigure API credentials | -- |\n| `\u002Fseo google pagespeed \u003Curl>` | PSI Lighthouse + CrUX field data | 0 |\n| `\u002Fseo google crux \u003Curl>` | CrUX field data only (p75 metrics) | 0 |\n| `\u002Fseo google crux-history \u003Curl>` | 25-week CWV trend analysis | 0 |\n| `\u002Fseo google gsc \u003Cproperty>` | Search Console: clicks, impressions, CTR, position | 1 |\n| `\u002Fseo google inspect \u003Curl>` | URL Inspection: index status, canonical, crawl info | 1 |\n| `\u002Fseo google inspect-batch \u003Cfile>` | Batch URL Inspection from file | 1 |\n| `\u002Fseo google sitemaps \u003Cproperty>` | GSC sitemap status | 1 |\n| `\u002Fseo google index \u003Curl>` | Submit URL to Indexing API | 1 |\n| `\u002Fseo google index-batch \u003Cfile>` | Batch submit up to 200 URLs | 1 |\n| `\u002Fseo google ga4 [property-id]` | GA4 organic traffic report | 2 |\n| `\u002Fseo google ga4-pages [property-id]` | Top organic landing pages | 2 |\n| `\u002Fseo google youtube \u003Cquery>` | YouTube video search (views, likes, duration) | 0 |\n| `\u002Fseo google youtube-video \u003Cid>` | YouTube video details + top comments | 0 |\n| `\u002Fseo google nlp \u003Curl-or-text>` | NLP entity extraction + sentiment + classification | 0 |\n| `\u002Fseo google entities \u003Curl-or-text>` | Entity analysis only (for E-E-A-T) | 0 |\n| `\u002Fseo google keywords \u003Cseed>` | Keyword ideas from Google Ads Keyword Planner | 3 |\n| `\u002Fseo google volume \u003Ckeywords>` | Search volume lookup from Keyword Planner | 3 |\n| `\u002Fseo google entity \u003Cquery>` | Knowledge Graph entity check | 0 |\n| `\u002Fseo google safety \u003Curl>` | Web Risk URL safety check | 0 |\n| `\u002Fseo google quotas` | Show rate limits for all APIs | -- |\n\n---\n\n## PageSpeed + CrUX\n\n### `\u002Fseo google pagespeed \u003Curl>`\n\nCombined Lighthouse lab data + CrUX field data.\n\n**Script:** `claude-seo run pagespeed_check.py \u003Curl> --json`\n**Reference:** `references\u002Fpagespeed-crux-api.md`\n**Default:** Both mobile + desktop strategies, all Lighthouse categories.\n\nOutput merges lab scores (point-in-time Lighthouse) with field data (28-day\nChrome user metrics). CrUX tries URL-level first, falls back to origin-level.\n\n### `\u002Fseo google crux \u003Curl>`\n\nCrUX field data only (no Lighthouse run). Faster.\n\n**Script:** `claude-seo run pagespeed_check.py \u003Curl> --crux-only --json`\n\n### `\u002Fseo google crux-history \u003Curl>`\n\n25-week CrUX History trends. Shows whether CWV metrics are improving, stable, or degrading.\n\n**Script:** `claude-seo run crux_history.py \u003Curl> --json`\n**Reference:** `references\u002Fpagespeed-crux-api.md`\n\nOutput includes per-metric trend direction, percentage change, and weekly p75 values.\n\n---\n\n## Search Console\n\n### `\u002Fseo google gsc \u003Cproperty>`\n\nSearch Analytics: clicks, impressions, CTR, position for last 28 days.\n\n**Script:** `claude-seo run gsc_query.py --property \u003Cproperty> --json`\n**Reference:** `references\u002Fsearch-console-api.md`\n**Default:** 28 days, dimensions=query,page, type=web, limit=1000.\n\nIncludes quick-win detection: queries at position 4-10 with high impressions.\nThe `totals` block comes from a separate dimensionless aggregate query because\nquery-level rows can omit anonymized low-volume traffic. Treat totals as\nsite-wide only when `totals_complete` is true. `--limit` caps total returned\ndimension rows, not the size of every pagination request.\n\n> **AI surfaces in GSC (2026):**\n> - **Generative AI performance report** (launched 2026-06-03), a dedicated view of **AI Overviews + AI Mode** visibility. **Impressions only** (no clicks\u002FCTR\u002Fposition\u002Fquery); dimensions Pages\u002FCountries\u002FDevices\u002FDates (Pacific Time); 1,000-row limit; newest data preliminary; a separate Discover gen-AI report also exists. Rolling out to a subset of properties.\n> - **AI Mode already rolls into standard Performance totals** (Web search type), clicks (external-link clicks in AI Mode) and impressions are counted in the normal report, so you **cannot** cleanly split \"classic\" vs \"AI\" traffic from totals. Use the Generative AI report for impressions-only AI visibility.\n> - **Data-reliability caveat:** a GSC logging error made **impressions, CTR, and average position unreliable from 2025-05-13 to 2026-04-27** (clicks unaffected; fixed forward-only, **no backfill**). Treat impression\u002FCTR\u002Fposition trends spanning that window with caution; expect an apparent impressions drop after the fix.\n\n> **Platform properties (2026):** Search Console can expose verified TikTok,\n> Instagram, X, and YouTube accounts as individual properties. Verify each\n> account separately, unless it was already added through a claimed Search\n> profile. Use these properties for Google Search performance only, not as a\n> substitute for the platform's own analytics. Source:\n> developers.google.com\u002Fsearch\u002Fdocs\u002Fmonitor-debug\u002Fanalyze-social-video-content\n\n### `\u002Fseo google inspect \u003Curl>`\n\nURL Inspection: real indexation status from Google.\n\n**Script:** `claude-seo run gsc_inspect.py \u003Curl> --json`\n\nReturns: verdict (PASS\u002FFAIL), coverage state, robots.txt status, indexing state,\npage fetch state, canonical selection, mobile usability, rich results.\n\n### `\u002Fseo google inspect-batch \u003Cfile>`\n\nBatch inspection from a file (one URL per line). Rate limited to 2,000\u002Fday per site.\n\n**Script:** `claude-seo run gsc_inspect.py --batch \u003Cfile> --json`\n\n### `\u002Fseo google sitemaps \u003Cproperty>`\n\nList submitted sitemaps with status, errors, warnings. Sitemap contents report\nsubmitted counts only; URL Inspection API is the indexation truth for whether\nspecific URLs are indexed.\n\n**Script:** `claude-seo run gsc_query.py sitemaps --property \u003Cproperty> --json`\n\n---\n\n## Indexing API\n\n### `\u002Fseo google index \u003Curl>`\n\nNotify Google of a URL update.\n\n**Script:** `claude-seo run indexing_notify.py \u003Curl> --json`\n**Reference:** `references\u002Findexing-api.md`\n\nThe Indexing API is officially for JobPosting and BroadcastEvent\u002FVideoObject pages.\nAlways inform the user of this restriction. Daily quota: 200 publish requests.\n\n### `\u002Fseo google index-batch \u003Cfile>`\n\nBatch submit URLs from a file. Tracks quota usage.\n\n**Script:** `claude-seo run indexing_notify.py --batch \u003Cfile> --json`\n\n---\n\n## GA4 Traffic\n\n### `\u002Fseo google ga4 [property-id]`\n\nOrganic traffic report: daily sessions, users, pageviews, bounce rate, engagement.\n\n**Script:** `claude-seo run ga4_report.py --property \u003Cid> --json`\n**Reference:** `references\u002Fga4-data-api.md`\n**Consent diagnostics:** Read `references\u002Fdma-consent-mode-v2.md` when GA4\norganic traffic looks under-reported after March 2024 or when EU\u002FEEA consent\nmode may affect attribution.\n**Default:** 28 days, filtered to Organic Search channel group.\n\n> **GA4 \"AI Assistants\" channel (live ~2026-05-13):** GA4 added a native *AI Assistants* Default Channel Group. Sessions referred by a recognized AI assistant get `medium=ai-assistant`. Google's recognized sources are **ChatGPT, Gemini, Claude, Deepseek, Copilot, Grok** and the channel **excludes** Google AI Overviews \u002F AI Mode. **Verify Perplexity separately if needed**; unsupported sources may stay in Referral, and most AI sessions arrive referrer-less and fall into **Direct**, so this channel undercounts AI traffic. Forward-only, no backfill.\n\n### `\u002Fseo google ga4-pages [property-id]`\n\nTop organic landing pages ranked by sessions.\n\n**Script:** `claude-seo run ga4_report.py --property \u003Cid> --report top-pages --json`\n\n---\n\n## YouTube (Video SEO)\n\nSome third-party studies report a 0.737 correlation between YouTube mentions and AI visibility. Treat it as a methodology-dependent signal. Free, API key only.\n\n### `\u002Fseo google youtube \u003Cquery>`\n\nSearch YouTube for videos. Returns title, channel, views, likes, duration.\n\n**Script:** `claude-seo run youtube_search.py search \"\u003Cquery>\" --json`\n**Reference:** `references\u002Fyoutube-api.md`\n**Quota:** 100 units per search (10,000 units\u002Fday free).\n\n### `\u002Fseo google youtube-video \u003Cvideo_id>`\n\nDetailed video info + tags + top 10 comments.\n\n**Script:** `claude-seo run youtube_search.py video \u003Cvideo_id> --json`\n**Quota:** 2 units (video details + comments).\n\n---\n\n## NLP Content Analysis\n\nGoogle NLP entity\u002Fsentiment output for internal content-quality checks. Do not treat it as Google E-E-A-T scoring.\n\n### `\u002Fseo google nlp \u003Curl-or-text>`\n\nFull NLP analysis: entities, sentiment, content classification.\n\n**Script:** `claude-seo run nlp_analyze.py --url \u003Curl> --json` or `--text \"...\"`\n**Reference:** `references\u002Fnlp-api.md`\n**Free tier:** 5,000 units\u002Fmonth. Requires billing enabled on GCP project.\n\n### `\u002Fseo google entities \u003Curl-or-text>`\n\nEntity extraction only (faster, less quota).\n\n**Script:** `claude-seo run nlp_analyze.py --url \u003Curl> --features entities --json`\n\n---\n\n## Keyword Research (Google Ads)\n\nGold-standard keyword volume data. Requires Google Ads account.\n\n### `\u002Fseo google keywords \u003Cseed>`\n\nGenerate keyword ideas from seed terms.\n\n**Script:** `claude-seo run keyword_planner.py ideas \"\u003Cseed>\" --json`\n**Reference:** `references\u002Fkeyword-planner-api.md`\n**Requires:** Ads developer token + customer ID in config (Tier 3).\n\n### `\u002Fseo google volume \u003Ckeywords>`\n\nSearch volume for specific keywords (comma-separated).\n\n**Script:** `claude-seo run keyword_planner.py volume \"\u003Ckw1>,\u003Ckw2>\" --json`\n\n---\n\n## Supplementary\n\n### `\u002Fseo google entity \u003Cquery>`\n\nKnowledge Graph entity check. Verifies brand presence.\n\n**Reference:** `references\u002Fsupplementary-apis.md`\nUses Knowledge Graph Search API with API key.\n\n### `\u002Fseo google safety \u003Curl>`\n\nWeb Risk API check for malware\u002Fsocial engineering flags.\n\n**Reference:** `references\u002Fsupplementary-apis.md`\n\n### `\u002Fseo google quotas`\n\nDisplay rate limits table. Read `references\u002Frate-limits-quotas.md`.\n\n---\n\n## Reports\n\nAfter any analysis command, offer to generate a PDF\u002FHTML report.\n\n### `\u002Fseo google report \u003Ctype>`\n\nGenerate a professional PDF report with charts and analytics.\n\n**Script:** `claude-seo run google_report.py --type \u003Ctype> --data \u003Cjson> --domain \u003Cdomain> --format pdf`\n\n| Type | Input | Output |\n|------|-------|--------|\n| `cwv-audit` | PSI + CrUX + CrUX History data | Core Web Vitals audit with gauges, timelines, distributions |\n| `gsc-performance` | GSC query data | Search Console report with query tables, quick wins |\n| `indexation` | Batch inspection data | Indexation status with coverage donut chart |\n| `full` | All data combined | Comprehensive Google SEO report (all sections) |\n\n**Workflow:**\n1. Run data collection commands (pagespeed, gsc, inspect-batch, etc.)\n2. Save JSON output to file: `claude-seo run pagespeed_check.py \u003Curl> --json > data.json`\n3. Generate report: `claude-seo run google_report.py --type cwv-audit --data data.json --domain \u003Cdomain>`\n\n**Convention:** After completing analysis, suggest: \"Generate a report? Use `\u002Fseo google report \u003Ctype>`\"\n\n---\n\n## Rate Limits\n\n| API | Per-Minute | Per-Day | Auth |\n|-----|-----------|---------|------|\n| PSI v5 | 240 QPM | 25,000 QPD | API Key |\n| CrUX + History | 150 QPM (shared) | Unlimited | API Key |\n| GSC Search Analytics | 1,200 QPM\u002Fsite | 30M QPD | Service Account |\n| GSC URL Inspection | 600 QPM | 2,000 QPD\u002Fsite | Service Account |\n| Indexing API | 380 RPM | 200 publish\u002Fday | Service Account |\n| GA4 Data API | 10 concurrent | ~25K tokens\u002Fday | Service Account |\n\n## Cross-Skill Integration\n\n- **seo-audit**: Spawns `seo-google` agent for live CWV + indexation data (conditional)\n- **seo-technical**: Uses pagespeed_check.py for real CWV field data\n- **seo-performance**: CrUX field data supplements Lighthouse lab data\n- **seo-sitemap**: GSC sitemap status shows submitted counts, errors, and warnings; use URL Inspection for indexation truth\n- **seo-content**: GSC query data informs keyword targeting\n- **seo-geo**: Use GSC Generative AI performance reports and AI Overviews\u002FAI Mode\u002FDiscover gen-AI include\u002Fexclude controls where available\n\n## Output Format\n\n- CWV metrics: traffic-light rating (Good \u002F Needs Improvement \u002F Poor)\n- Performance reports: tables with sortable columns\n- Always include data freshness note\n- Save reports as `GOOGLE-API-REPORT-{domain}.md`\n- Markdown\u002FLLM templates in `assets\u002Ftemplates\u002F`: `cwv-audit-report.md`, `gsc-performance-report.md`, `indexation-status-report.md`; distinct from `google_report.py`'s PDF pipeline\n\n## Technical Notes\n\n- INP replaced FID on March 12, 2024. Never reference FID.\n- CLS values from CrUX are string-encoded (e.g., \"0.05\"). Scripts handle parsing.\n- CrUX 404 = insufficient traffic, not an auth error.\n- Search Analytics data has 2-3 day lag.\n- `round_trip_time` replaced `effectiveConnectionType` in CrUX (Feb 2025).\n- Custom Search JSON API is closed to new customers (2025).\n\n## Error Handling\n\n| Scenario | Action |\n|----------|--------|\n| No credentials configured | Run `\u002Fseo google setup`. List Tier 0 commands that work with just an API key. |\n| Service account lacks GSC access | Report error. Instruct: add `client_email` to GSC > Settings > Users > Add. |\n| CrUX data unavailable (404) | Report insufficient Chrome traffic. Suggest PSI lab data as fallback. |\n| GA4 property not found | Report error. Show how to find property ID in GA4 Admin > Property Details. |\n| Indexing API quota exceeded | Report 200\u002Fday limit. Suggest prioritizing most important URLs. |\n| Rate limit (429) | Wait and retry with exponential backoff. Report which API hit the limit. |\n",{"name":5,"license":15,"metadata":61,"description":64,"argument-hint":65,"user-invocable":66},{"author":62,"version":63,"category":36},"AgriciDaniel","2.2.7","Google SEO APIs: Search Console (Search Analytics, URL Inspection, Sitemaps), PageSpeed Insights v5, CrUX field data with 25-week history, Indexing API v3, and GA4 organic traffic. Provides real Google field data for Core Web Vitals, indexation status, search performance, and organic traffic trends. Use when user says \"search console\", \"GSC\", \"PageSpeed\", \"CrUX\", \"field data\", \"indexing API\", \"GA4 organic\", \"URL inspection\", or \"real CWV data\".\n","[command] [url|property]",true,"main","40706766fd37c03ca624f5206741fef55dd2a684","plugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google",474,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins","https:\u002F\u002Fhol.org\u002Fplugins\u002Fbest-codex-plugins","https:\u002F\u002Fgithub.com\u002Fhashgraph-online","https:\u002F\u002Fhol.org","Open-source standards and developer tools for interoperable AI agents: discovery, identity, communication, payments, privacy and security.","2026-11-11 14:40:14",{"source":8,"skillName":5,"commands":78,"prompt":88,"zipAvailable":66},[79,82,85],{"tool":80,"command":81},"npx","npx skills add hashgraph-online\u002Fawesome-codex-plugins --skill seo-google",{"tool":83,"command":84},"bunx","bunx skills add hashgraph-online\u002Fawesome-codex-plugins --skill seo-google",{"tool":86,"command":87},"pnpm","pnpm dlx skills add hashgraph-online\u002Fawesome-codex-plugins --skill seo-google","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002FSKILL.md",[90,96,100,105,111,115,119,123,127,131,135,139,143,147],{"path":91,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":94,"sourceHtmlUrl":95},"assets\u002Ftemplates\u002Fgsc-performance-report.md","ASSET","资产文件",1440,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Fassets\u002Ftemplates\u002Fgsc-performance-report.md",{"path":97,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":98,"sourceHtmlUrl":99},"assets\u002Ftemplates\u002Findexation-status-report.md",1126,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Fassets\u002Ftemplates\u002Findexation-status-report.md",{"path":101,"resourceType":102,"resourceTypeDesc":103,"sizeBytes":104,"sourceHtmlUrl":16},"LICENSE.txt","LICENSE","许可证",143,{"path":106,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":109,"sourceHtmlUrl":110},"references\u002Fauth-setup.md","REFERENCE","参考文档",5238,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fauth-setup.md",{"path":112,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":113,"sourceHtmlUrl":114},"references\u002Fdma-consent-mode-v2.md",2668,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fdma-consent-mode-v2.md",{"path":116,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":117,"sourceHtmlUrl":118},"references\u002Fga4-data-api.md",5364,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fga4-data-api.md",{"path":120,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":121,"sourceHtmlUrl":122},"references\u002Findexing-api.md",3273,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Findexing-api.md",{"path":124,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":125,"sourceHtmlUrl":126},"references\u002Fkeyword-planner-api.md",2398,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fkeyword-planner-api.md",{"path":128,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":129,"sourceHtmlUrl":130},"references\u002Fnlp-api.md",2333,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fnlp-api.md",{"path":132,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":133,"sourceHtmlUrl":134},"references\u002Fpagespeed-crux-api.md",6958,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fpagespeed-crux-api.md",{"path":136,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":137,"sourceHtmlUrl":138},"references\u002Frate-limits-quotas.md",3379,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Frate-limits-quotas.md",{"path":140,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":141,"sourceHtmlUrl":142},"references\u002Fsearch-console-api.md",5448,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fsearch-console-api.md",{"path":144,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":145,"sourceHtmlUrl":146},"references\u002Fsupplementary-apis.md",2812,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fsupplementary-apis.md",{"path":148,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":149,"sourceHtmlUrl":150},"references\u002Fyoutube-api.md",1595,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Favalonreset\u002Fseo-dungeon\u002Fskills\u002Fseo-google\u002Freferences\u002Fyoutube-api.md",[152,161,168,175,201,226],{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":156,"licenseFileUrl":6,"sourceHtmlUrl":157,"categories":158,"keywords":159,"publishedAt":160},"01M746ZWACVKMZ1BJXJZHYJSSX","migrate-to-e2e","Moves an existing Playwright, Cypress, Selenium, Appium, Detox, Maestro, or TesterArmy suite to e2e one slice at a time, with the old suite running beside the new one until each ported test is proven. Keeps a MIGRATION.md progress file so any later session resumes where the last stopped. Optionally plants a defect to show both suites catch it. Use for \u002Fmigrate-to-e2e, \"migrate our tests to e2e\", \"port these Maestro flows\", \"move our TesterArmy tests\", or when a project has an e2e config and an older suite still running.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fmigrate-to-e2e\u002FSKILL.md",[],[],"2026-11-11 15:11:14",{"skillNo":162,"name":163,"nameZh":6,"description":164,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":156,"licenseFileUrl":6,"sourceHtmlUrl":165,"categories":166,"keywords":167,"publishedAt":160},"01M746ZPTAX1Q0FBKAB1CYND7E","e2e","Writes, runs, and debugs end-to-end tests for web and mobile apps with e2e, the agentic test runner, which mixes agent.act goals with exact locator assertions on a Playwright browser or an iOS or Android device. Also drives a project's running app live over the e2e MCP server to look at a screen, check a UI change, take a screenshot or record a video, and try a locator; and runs bug bashes, parallel e2e explore runs with each bug proven by a repro test. Use when a project depends on e2e or has an e2e.config.ts, when asked for end-to-end, browser, mobile, or agentic UI tests, to check a change in the running app, to QA or bug bash an app or branch, or when an e2e run fails.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fe2e\u002FSKILL.md",[],[],{"skillNo":169,"name":170,"nameZh":6,"description":171,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":156,"licenseFileUrl":6,"sourceHtmlUrl":172,"categories":173,"keywords":174,"publishedAt":160},"01M746ZJN784HVHMDP9MQGCSGG","create-verification-skill","Generate a project-local verify-\u003Capp> skill on top of e2e, so any coding agent can launch the app, check it is worth driving, exercise a feature the way a user does, keep evidence, and bug bash it. Writes the skill, a feature map with one explore charter per feature, and proves it once. Use for \u002Fcreate-verification-skill, \"make a verification skill for this repo\", or when a project has no scripted way to prove UI behavior.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftester-army\u002Fe2e\u002Fskills\u002Fcreate-verification-skill\u002FSKILL.md",[],[],{"skillNo":176,"name":177,"nameZh":6,"description":178,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":156,"licenseFileUrl":6,"sourceHtmlUrl":179,"categories":180,"keywords":181,"publishedAt":56},"01M716A6ETNB9B1SQ3GXZC75VR","deja-search","deja-vu memory — search the user's past AI coding sessions with the deja CLI. Holds what they already settled and never wrote into the repo (naming rules, banned or already-tried tools, required checks before merge, preferred values, who owns what). Use before your first edit in a task, before you call a change done or ready to merge, before you recommend a tool, library, design or reviewer, before re-debugging an error that may already be solved, when they say 'didn't we fix this before', 'what did we decide about X' or 'I already have that', and before telling them something on this machine does not exist.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-search\u002FSKILL.md",[],[53,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200],"deja search","never","error","ready","memory","re","decide","fix","design","debugging","when","you","done","reviewer","io","change","cli","merge","past",{"skillNo":202,"name":203,"nameZh":6,"description":204,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":156,"licenseFileUrl":6,"sourceHtmlUrl":205,"categories":206,"keywords":207,"publishedAt":56},"01M716A3J2W5SENSE9VGMXB375","deja-reflect","End-of-session reflection and memory curation with deja-vu. Review what was decided, what commands broke and what repaired them, and record durable project rules or decisions with deja remember so the next session starts with them.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fvshulcz\u002Fdeja-vu\u002Fskills\u002Fdeja-reflect\u002FSKILL.md",[],[208,209,210,196,211,212,213,214,215,216,217,218,219,220,186,221,222,223,224,225],"deja reflect","reflect","review","with","record","github","next","https","node","Rules","decisions","brew","remember","project rules","project","session","end","reflection",{"skillNo":227,"name":228,"nameZh":6,"description":229,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":156,"licenseFileUrl":6,"sourceHtmlUrl":230,"categories":231,"keywords":239,"publishedAt":56},"01M715T3RR4BAYSR57HPPTJ0PF","revid","Make, edit, export and post AI videos with Revid (revid.ai) through the Revid MCP server. Use whenever the user wants a short-form or long-form video made (from an idea, a script, a URL, an article, a PDF, a tweet, a product page, their own clips, or a song), wants to find what is going viral on TikTok, YouTube, Instagram or X before making something, wants to edit or re-export an existing Revid project, generate a standalone AI image or clip, make a series episode, or publish and schedule a finished video to connected social accounts. Covers setup (hosted MCP with OAuth, or an API key), the 36 tools, credits, polling and the rules for publishing. Routes to the more specific revid-* skills when one fits.","https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Ftmakersas\u002Frevid-skills\u002Fskills\u002Frevid\u002FSKILL.md",[232,235,238],{"categoryNo":233,"categoryName":234,"taxonomyType":22,"taxonomyTypeDesc":23},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":236,"categoryName":237,"taxonomyType":22,"taxonomyTypeDesc":23},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":20,"categoryName":21,"taxonomyType":22,"taxonomyTypeDesc":23},[228,49,240,241,242,243,244,222,245,187,246,247,248,249,192,250,251,252,48,253],"Video","short-form","standalone","PDF","viral","tiktok","short","social","MCP","song","image","mcp server","schedule","publish"]