Add SEO skills 19-28, 31-32 with full Python implementations

12 new skills: Keyword Strategy, SERP Analysis, Position Tracking,
Link Building, Content Strategy, E-Commerce SEO, KPI Framework,
International SEO, AI Visibility, Knowledge Graph, Competitor Intel,
and Crawl Budget. ~20K lines of Python across 25 domain scripts.
Updated skill 11 pipeline table and repo CLAUDE.md.
Enhanced skill 18 local SEO workflow from jamie.clinic audit.

Note: Skill 26 hreflang_validator.py pending (content filter block).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-13 12:05:59 +09:00
parent 159f7ec3f7
commit a3ff965b87
125 changed files with 25948 additions and 173 deletions

View File

@@ -62,10 +62,37 @@ python "$SKILLS/14-seo-core-web-vitals/code/scripts/pagespeed_client.py" --url $
# Stage 4: Schema Validation
python "$SKILLS/16-seo-schema-validator/code/scripts/schema_validator.py" --url $URL --json
# Stage 5: Local SEO (prompt-driven, use WebFetch + WebSearch)
# Stage 5: Local SEO (see detailed instructions below)
# Stage 6: Search Console (requires GSC API credentials)
```
### Stage 5: Local SEO — Detailed Instructions
Stage 5 is prompt-driven (no script). Follow this sequence:
1. **Extract Business Identity from website (MANDATORY FIRST)**
- WebFetch the homepage and parse JSON-LD `<script type="application/ld+json">` tags
- Extract from `Organization`, `Hospital`, or `LocalBusiness` schema: Korean name, English name, address, telephone
- Check `sameAs` array for GBP, Naver Place, Kakao Map URLs
2. **Check website for listing links**
- Scrape footer, contact page, about page for links matching:
- GBP: `maps.app.goo.gl/*`, `google.com/maps/place/*`, `g.page/*`
- Naver Place: `naver.me/*`, `map.naver.com/*/place/*`, `m.place.naver.com/*`
- Kakao Map: `place.map.kakao.com/*`, `kko.to/*`
- Check embedded iframes for Google Maps Place IDs or Naver Map embeds
3. **Layered search fallback (if links not found on website)**
- GBP: Search `"[Korean Name]" "[district]" Google Maps`, then `"[phone]" site:google.com/maps`
- Naver: Search `"[Korean Name]" site:map.naver.com`, then `"[Korean Name]" 네이버 지도 [district]`
- Kakao: Search `"[Korean Name]" site:place.map.kakao.com`
4. **Follow `18-seo-local-audit/code/CLAUDE.md` workflow** for the full audit (Steps 2-7)
5. **Important language**: Distinguish **"not discoverable via web search"** from **"does not exist."** GBP and Naver Map are JS-rendered; WebFetch cannot extract their listing data. Absence in search results does not confirm absence of the listing.
6. **Korean market priorities**: GBP and Naver Smart Place are both Critical. Kakao Map is High. US-centric directories (Yelp, Yellow Pages) are Low priority for Korean businesses.
## Health Score (Weighted 0-100)
| Category | Weight |