[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7C579ESRCQDX7BFJDXKBJAT":3,"skill-same:01M7C579ESRCQDX7BFJDXKBJAT":56},{"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":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":32,"commitSha":33,"skillDirectory":5,"forksCount":14,"repositoryHtmlUrl":34,"repositoryHomepageUrl":6,"ownerHtmlUrl":35,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":36,"install":37,"resources":49},"01M7C579ESRCQDX7BFJDXKBJAT","seo-drift",null,"SEO drift monitoring: capture baselines of SEO-critical elements, detect changes, and track regressions over time. Git for SEO: baseline, diff, and track changes to your on-page SEO. Use when user says \"SEO drift\", \"baseline\", \"track changes\", \"did anything break\", \"SEO regression\", \"compare SEO\", \"before and after\", \"monitor SEO changes\", or \"deployment check\".","susantedit\u002Fclaude-skills","susantedit","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F192408503?v=4","01M7C4A1834JZ5GN4HZY57ZNV6","Susant edit","01M7C4A18RENMDYZV7918MQEZM",0,"MIT","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-drift\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: seo-drift\ndescription: >\n  SEO drift monitoring: capture baselines of SEO-critical elements, detect changes,\n  and track regressions over time. Git for SEO: baseline, diff, and track changes\n  to your on-page SEO. Use when user says \"SEO drift\", \"baseline\", \"track changes\",\n  \"did anything break\", \"SEO regression\", \"compare SEO\", \"before and after\",\n  \"monitor SEO changes\", or \"deployment check\".\nuser-invocable: true\nargument-hint: \"baseline|compare|history \u003Curl>\"\nlicense: MIT\nmetadata:\n  author: AgriciDaniel\n  original_author: \"Dan Colta (Pro Hub Challenge)\"\n  version: \"2.2.4\"\n  category: seo\n---\n\n# SEO Drift Monitor (April 2026)\n\nGit for your SEO. Capture baselines, detect regressions, track changes over time.\n\n---\n\n## Commands\n\n| Command | Purpose |\n|---------|---------|\n| `\u002Fseo drift baseline \u003Curl>` | Capture current SEO state as a \"known good\" snapshot |\n| `\u002Fseo drift compare \u003Curl>` | Compare current page state to stored baseline |\n| `\u002Fseo drift history \u003Curl>` | Show change history and past comparisons |\n\n---\n\n## What It Captures\n\nEvery baseline records these SEO-critical elements:\n\n| Element | Field | Source |\n|---------|-------|--------|\n| Title tag | `title` | `parse_html.py` |\n| Meta description | `meta_description` | `parse_html.py` |\n| Canonical URL | `canonical` | `parse_html.py` |\n| Robots directives | `meta_robots` | `parse_html.py` |\n| H1 headings | `h1` (array) | `parse_html.py` |\n| H2 headings | `h2` (array) | `parse_html.py` |\n| H3 headings | `h3` (array) | `parse_html.py` |\n| JSON-LD schema | `schema` (array) | `parse_html.py` |\n| Open Graph tags | `open_graph` (dict) | `parse_html.py` |\n| Core Web Vitals | `cwv` (dict) | `pagespeed_check.py` |\n| HTTP status code | `status_code` | `fetch_page.py` |\n| HTML content hash | `html_hash` (SHA-256) | Computed |\n| Schema content hash | `schema_hash` (SHA-256) | Computed |\n\n---\n\n## How Comparison Works\n\nThe comparison engine applies **17 rules across 3 severity levels**. Load\n`references\u002Fcomparison-rules.md` for the full rule set with thresholds,\nrecommended actions, and cross-skill references.\n\n### Severity Levels\n\n| Level | Meaning | Response Time |\n|-------|---------|---------------|\n| **CRITICAL** | SEO-breaking change, likely traffic loss | Immediate |\n| **WARNING** | Potential impact, needs investigation | Within 1 week |\n| **INFO** | Awareness only, may be intentional | Review at convenience |\n\n---\n\n## Storage\n\nAll data is stored locally in SQLite:\n\n```\n~\u002F.cache\u002Fclaude-seo\u002Fdrift\u002Fbaselines.db\n```\n\n### Tables\n\n- **baselines**: Captured snapshots with all SEO elements\n- **comparisons**: Diff results with triggered rules and severities\n\nURL normalization ensures consistent matching: lowercase scheme\u002Fhost, strip\ndefault ports (80\u002F443), sort query parameters, remove UTM parameters, strip\ntrailing slashes.\n\n---\n\n## Command: `baseline`\n\nCaptures the current state of a page and stores it.\n\n**Steps:**\n1. Validate URL (SSRF protection via `google_auth.validate_url()`)\n2. Fetch page via `scripts\u002Ffetch_page.py`\n3. Parse HTML via `scripts\u002Fparse_html.py`\n4. Optionally fetch CWV via `scripts\u002Fpagespeed_check.py` (use `--skip-cwv` to skip)\n5. Hash HTML body and schema content (SHA-256)\n6. Store snapshot in SQLite\n\n**Execution:**\n```bash\nclaude-seo run drift_baseline.py \u003Curl>\nclaude-seo run drift_baseline.py \u003Curl> --skip-cwv\n```\n\n**Output:** JSON with baseline ID, timestamp, URL, and summary of captured elements.\n\n---\n\n## Command: `compare`\n\nFetches the current page state and diffs it against the most recent baseline.\n\n**Steps:**\n1. Validate URL\n2. Load most recent baseline from SQLite (or specific `--baseline-id`)\n3. Fetch and parse current page state\n4. Run all 17 comparison rules\n5. Classify findings by severity\n6. Store comparison result\n7. Output JSON diff report\n\n**Execution:**\n```bash\nclaude-seo run drift_compare.py \u003Curl>\nclaude-seo run drift_compare.py \u003Curl> --baseline-id 5\nclaude-seo run drift_compare.py \u003Curl> --skip-cwv\n```\n\n**Output:** JSON with all triggered rules, old\u002Fnew values, severity, and actions.\n\nAfter comparison, offer to generate an HTML report:\n```bash\nclaude-seo run drift_report.py \u003Ccomparison_json_file> --output drift-report.html\n```\n\n---\n\n## Command: `history`\n\nShows all baselines and comparisons for a URL.\n\n**Execution:**\n```bash\nclaude-seo run drift_history.py \u003Curl>\nclaude-seo run drift_history.py \u003Curl> --limit 10\n```\n\n**Output:** JSON array of baselines (newest first) with timestamps and comparison summaries.\n\n---\n\n## Cross-Skill Integration\n\nWhen drift is detected, recommend the appropriate specialized skill:\n\n| Finding | Recommendation |\n|---------|----------------|\n| Schema removed or modified | Run `\u002Fseo schema \u003Curl>` for full validation |\n| CWV regression | Run `\u002Fseo technical \u003Curl>` for performance audit |\n| Title or meta description changed | Run `\u002Fseo page \u003Curl>` for content analysis |\n| Canonical changed or removed | Run `\u002Fseo technical \u003Curl>` for indexability check |\n| Noindex added | Run `\u002Fseo technical \u003Curl>` for crawlability audit |\n| H1\u002Fheading structure changed | Run `\u002Fseo content \u003Curl>` for E-E-A-T review |\n| OG tags removed | Run `\u002Fseo page \u003Curl>` for social sharing analysis |\n| Status code changed to error | Run `\u002Fseo technical \u003Curl>` for full diagnostics |\n\n---\n\n## Error Handling\n\n| Scenario | Action |\n|----------|--------|\n| URL unreachable | Report error from `fetch_page.py`. Do not guess state. Suggest user verify URL. |\n| No baseline exists for URL | Inform user and suggest running `baseline` first. |\n| SSRF blocked (private IP) | Report `validate_url()` rejection. Never bypass. |\n| SQLite database missing | Auto-create on first use. No error. |\n| CWV fetch fails (no API key) | Store `null` for CWV fields. Skip CWV rules during comparison. |\n| Page returns 4xx\u002F5xx | Still capture as baseline (status code IS a tracked field). |\n| Multiple baselines exist | Use most recent unless `--baseline-id` specified. |\n\n---\n\n## Security\n\n- **All URL fetching** goes through `scripts\u002Ffetch_page.py` which enforces SSRF protection\n  (blocks private IPs, loopback, reserved ranges, GCP metadata endpoints)\n- **No curl, no subprocess HTTP calls** -- only the project's validated fetch pipeline\n- **All SQLite queries** use parameterized placeholders (`?`), never string interpolation\n- **TLS always verified** -- no `verify=False` anywhere in the pipeline\n\n---\n\n## Typical Workflows\n\n### Pre\u002FPost Deployment Check\n```\n\u002Fseo drift baseline https:\u002F\u002Fexample.com     # Before deploy\n# ... deploy happens ...\n\u002Fseo drift compare https:\u002F\u002Fexample.com      # After deploy\n```\n\n### Ongoing Monitoring\n```\n\u002Fseo drift baseline https:\u002F\u002Fexample.com     # Initial capture\n# ... weeks later ...\n\u002Fseo drift compare https:\u002F\u002Fexample.com      # Check for drift\n\u002Fseo drift history https:\u002F\u002Fexample.com      # Review all changes\n```\n\n### Investigating a Traffic Drop\n```\n\u002Fseo drift compare https:\u002F\u002Fexample.com      # What changed?\n\u002Fseo drift history https:\u002F\u002Fexample.com      # When did it change?\n```\n","# SEO Drift Monitor (April 2026)\n\nGit for your SEO. Capture baselines, detect regressions, track changes over time.\n\n---\n\n## Commands\n\n| Command | Purpose |\n|---------|---------|\n| `\u002Fseo drift baseline \u003Curl>` | Capture current SEO state as a \"known good\" snapshot |\n| `\u002Fseo drift compare \u003Curl>` | Compare current page state to stored baseline |\n| `\u002Fseo drift history \u003Curl>` | Show change history and past comparisons |\n\n---\n\n## What It Captures\n\nEvery baseline records these SEO-critical elements:\n\n| Element | Field | Source |\n|---------|-------|--------|\n| Title tag | `title` | `parse_html.py` |\n| Meta description | `meta_description` | `parse_html.py` |\n| Canonical URL | `canonical` | `parse_html.py` |\n| Robots directives | `meta_robots` | `parse_html.py` |\n| H1 headings | `h1` (array) | `parse_html.py` |\n| H2 headings | `h2` (array) | `parse_html.py` |\n| H3 headings | `h3` (array) | `parse_html.py` |\n| JSON-LD schema | `schema` (array) | `parse_html.py` |\n| Open Graph tags | `open_graph` (dict) | `parse_html.py` |\n| Core Web Vitals | `cwv` (dict) | `pagespeed_check.py` |\n| HTTP status code | `status_code` | `fetch_page.py` |\n| HTML content hash | `html_hash` (SHA-256) | Computed |\n| Schema content hash | `schema_hash` (SHA-256) | Computed |\n\n---\n\n## How Comparison Works\n\nThe comparison engine applies **17 rules across 3 severity levels**. Load\n`references\u002Fcomparison-rules.md` for the full rule set with thresholds,\nrecommended actions, and cross-skill references.\n\n### Severity Levels\n\n| Level | Meaning | Response Time |\n|-------|---------|---------------|\n| **CRITICAL** | SEO-breaking change, likely traffic loss | Immediate |\n| **WARNING** | Potential impact, needs investigation | Within 1 week |\n| **INFO** | Awareness only, may be intentional | Review at convenience |\n\n---\n\n## Storage\n\nAll data is stored locally in SQLite:\n\n```\n~\u002F.cache\u002Fclaude-seo\u002Fdrift\u002Fbaselines.db\n```\n\n### Tables\n\n- **baselines**: Captured snapshots with all SEO elements\n- **comparisons**: Diff results with triggered rules and severities\n\nURL normalization ensures consistent matching: lowercase scheme\u002Fhost, strip\ndefault ports (80\u002F443), sort query parameters, remove UTM parameters, strip\ntrailing slashes.\n\n---\n\n## Command: `baseline`\n\nCaptures the current state of a page and stores it.\n\n**Steps:**\n1. Validate URL (SSRF protection via `google_auth.validate_url()`)\n2. Fetch page via `scripts\u002Ffetch_page.py`\n3. Parse HTML via `scripts\u002Fparse_html.py`\n4. Optionally fetch CWV via `scripts\u002Fpagespeed_check.py` (use `--skip-cwv` to skip)\n5. Hash HTML body and schema content (SHA-256)\n6. Store snapshot in SQLite\n\n**Execution:**\n```bash\nclaude-seo run drift_baseline.py \u003Curl>\nclaude-seo run drift_baseline.py \u003Curl> --skip-cwv\n```\n\n**Output:** JSON with baseline ID, timestamp, URL, and summary of captured elements.\n\n---\n\n## Command: `compare`\n\nFetches the current page state and diffs it against the most recent baseline.\n\n**Steps:**\n1. Validate URL\n2. Load most recent baseline from SQLite (or specific `--baseline-id`)\n3. Fetch and parse current page state\n4. Run all 17 comparison rules\n5. Classify findings by severity\n6. Store comparison result\n7. Output JSON diff report\n\n**Execution:**\n```bash\nclaude-seo run drift_compare.py \u003Curl>\nclaude-seo run drift_compare.py \u003Curl> --baseline-id 5\nclaude-seo run drift_compare.py \u003Curl> --skip-cwv\n```\n\n**Output:** JSON with all triggered rules, old\u002Fnew values, severity, and actions.\n\nAfter comparison, offer to generate an HTML report:\n```bash\nclaude-seo run drift_report.py \u003Ccomparison_json_file> --output drift-report.html\n```\n\n---\n\n## Command: `history`\n\nShows all baselines and comparisons for a URL.\n\n**Execution:**\n```bash\nclaude-seo run drift_history.py \u003Curl>\nclaude-seo run drift_history.py \u003Curl> --limit 10\n```\n\n**Output:** JSON array of baselines (newest first) with timestamps and comparison summaries.\n\n---\n\n## Cross-Skill Integration\n\nWhen drift is detected, recommend the appropriate specialized skill:\n\n| Finding | Recommendation |\n|---------|----------------|\n| Schema removed or modified | Run `\u002Fseo schema \u003Curl>` for full validation |\n| CWV regression | Run `\u002Fseo technical \u003Curl>` for performance audit |\n| Title or meta description changed | Run `\u002Fseo page \u003Curl>` for content analysis |\n| Canonical changed or removed | Run `\u002Fseo technical \u003Curl>` for indexability check |\n| Noindex added | Run `\u002Fseo technical \u003Curl>` for crawlability audit |\n| H1\u002Fheading structure changed | Run `\u002Fseo content \u003Curl>` for E-E-A-T review |\n| OG tags removed | Run `\u002Fseo page \u003Curl>` for social sharing analysis |\n| Status code changed to error | Run `\u002Fseo technical \u003Curl>` for full diagnostics |\n\n---\n\n## Error Handling\n\n| Scenario | Action |\n|----------|--------|\n| URL unreachable | Report error from `fetch_page.py`. Do not guess state. Suggest user verify URL. |\n| No baseline exists for URL | Inform user and suggest running `baseline` first. |\n| SSRF blocked (private IP) | Report `validate_url()` rejection. Never bypass. |\n| SQLite database missing | Auto-create on first use. No error. |\n| CWV fetch fails (no API key) | Store `null` for CWV fields. Skip CWV rules during comparison. |\n| Page returns 4xx\u002F5xx | Still capture as baseline (status code IS a tracked field). |\n| Multiple baselines exist | Use most recent unless `--baseline-id` specified. |\n\n---\n\n## Security\n\n- **All URL fetching** goes through `scripts\u002Ffetch_page.py` which enforces SSRF protection\n  (blocks private IPs, loopback, reserved ranges, GCP metadata endpoints)\n- **No curl, no subprocess HTTP calls** -- only the project's validated fetch pipeline\n- **All SQLite queries** use parameterized placeholders (`?`), never string interpolation\n- **TLS always verified** -- no `verify=False` anywhere in the pipeline\n\n---\n\n## Typical Workflows\n\n### Pre\u002FPost Deployment Check\n```\n\u002Fseo drift baseline https:\u002F\u002Fexample.com     # Before deploy\n# ... deploy happens ...\n\u002Fseo drift compare https:\u002F\u002Fexample.com      # After deploy\n```\n\n### Ongoing Monitoring\n```\n\u002Fseo drift baseline https:\u002F\u002Fexample.com     # Initial capture\n# ... weeks later ...\n\u002Fseo drift compare https:\u002F\u002Fexample.com      # Check for drift\n\u002Fseo drift history https:\u002F\u002Fexample.com      # Review all changes\n```\n\n### Investigating a Traffic Drop\n```\n\u002Fseo drift compare https:\u002F\u002Fexample.com      # What changed?\n\u002Fseo drift history https:\u002F\u002Fexample.com      # When did it change?\n```\n",{"name":5,"license":15,"metadata":24,"description":29,"argument-hint":30,"user-invocable":31},{"author":25,"version":26,"category":27,"original_author":28},"AgriciDaniel","2.2.4","seo","Dan Colta (Pro Hub Challenge)","SEO drift monitoring: capture baselines of SEO-critical elements, detect changes, and track regressions over time. Git for SEO: baseline, diff, and track changes to your on-page SEO. Use when user says \"SEO drift\", \"baseline\", \"track changes\", \"did anything break\", \"SEO regression\", \"compare SEO\", \"before and after\", \"monitor SEO changes\", or \"deployment check\".\n","baseline|compare|history \u003Curl>",true,"main","e53589ef82615852f3c1465c81f84248be6a540d","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills","https:\u002F\u002Fgithub.com\u002Fsusantedit","2026-10-12 22:39:26",{"source":8,"skillName":5,"commands":38,"prompt":48,"zipAvailable":31},[39,42,45],{"tool":40,"command":41},"npx","npx skills add susantedit\u002Fclaude-skills --skill seo-drift",{"tool":43,"command":44},"bunx","bunx skills add susantedit\u002Fclaude-skills --skill seo-drift",{"tool":46,"command":47},"pnpm","pnpm dlx skills add susantedit\u002Fclaude-skills --skill seo-drift","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-drift\u002FSKILL.md",[50],{"path":51,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":54,"sourceHtmlUrl":55},"references\u002Fcomparison-rules.md","REFERENCE","参考文档",5723,"https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-drift\u002Freferences\u002Fcomparison-rules.md",[57,65,72,80,87,95],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":61,"sourceHtmlUrl":62,"categories":63,"keywords":64,"publishedAt":19},"01M7C5XFR6FX0Z4GWM1Y9JFT1N","ui-styling","Create beautiful, accessible user interfaces with shadcn\u002Fui components (built on Radix UI + Tailwind), Tailwind CSS utility-first styling, and canvas-based visual designs. Use when building user interfaces, implementing design systems, creating responsive layouts, adding accessible components (dialogs, dropdowns, forms, tables), customizing themes and colors, implementing dark mode, generating visual designs and posters, or establishing consistent styling patterns across applications.","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fui-styling\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fui-styling\u002FSKILL.md",[],[],{"skillNo":66,"name":27,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":68,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":19},"01M7C5QDRC7E3HCT7D7GEG0M6S","Comprehensive SEO analysis for any website or business type. Full site audits, single-page analysis, technical SEO (crawlability, indexability, Core Web Vitals with INP), schema markup, content quality (E-E-A-T), image optimization, sitemap analysis, and GEO for AI Overviews\u002FChatGPT\u002FPerplexity. Industry detection for SaaS, e-commerce, local, publishers, agencies. Triggers on: SEO, audit, schema, Core Web Vitals, sitemap, E-E-A-T, AI Overviews, GEO, technical SEO, content quality, page speed.","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo\u002FSKILL.md",[],[],{"skillNo":73,"name":74,"nameZh":6,"description":75,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":76,"sourceHtmlUrl":77,"categories":78,"keywords":79,"publishedAt":19},"01M7C5P67VHTWC2VXZQW9TY6TX","seo-technical","Technical SEO audit across 9 categories: crawlability, indexability, security, URL structure, mobile, Core Web Vitals, structured data, JavaScript rendering, and IndexNow protocol. Use when user says \"technical SEO\", \"crawl issues\", \"robots.txt\", \"Core Web Vitals\", \"site speed\", or \"security headers\".","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-technical\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-technical\u002FSKILL.md",[],[],{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":19},"01M7C5N0NK6KK4ZJB6E4XSG5QB","seo-sxo","Search Experience Optimization: reads Google SERPs backwards to detect page-type mismatches, derives user stories from search intent signals, and scores pages from multiple persona perspectives. Identifies why well-optimized pages fail to rank by analyzing what Google rewards for each keyword. Use when user says \"SXO\", \"search experience\", \"page type mismatch\", \"SERP analysis\", \"user story\", \"persona scoring\", \"why isn't my page ranking\", \"intent mismatch\", or \"wireframe\".","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-sxo\u002FSKILL.md",[],[],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":91,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":19},"01M7C5MDWRE0SHEEWHD13P6D63","seo-sitemap","Analyze existing XML sitemaps or generate new ones with industry templates. Validates format, URLs, and structure. Use when user says \"sitemap\", \"generate sitemap\", \"sitemap issues\", or \"XML sitemap\".","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-sitemap\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-sitemap\u002FSKILL.md",[],[],{"skillNo":96,"name":97,"nameZh":6,"description":98,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":99,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":19},"01M7C5KCKSQFTKC80SA9K2EDJS","seo-schema","Detect, validate, and generate Schema.org structured data. JSON-LD format preferred. Use when user says \"schema\", \"structured data\", \"rich results\", \"JSON-LD\", or \"markup\".","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-schema\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fsusantedit\u002Fclaude-skills\u002Fblob\u002Fmain\u002Fseo-schema\u002FSKILL.md",[],[]]