local-seo-execute
J&L Finishes LLC - House Painting Austin TX
Install / Use
npx skills add cbbkrd-tech/jl-finishesInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
MarketingSupported Platforms
Tags
Skill content
View source on GitHubname: local-seo-execute description: > Autonomously execute SEO work for a local business client following proven local SEO guidelines. Use when user says "zrob SEO dla [klient]", "zacznij z [klient]", "uruchom SEO", "zrob mi SEO", or provides client details and asks to start SEO work. Produces: on-page fixes, service pages, schema markup, and a prioritized human TODO list. allowed-tools: Bash, Read, Write, Edit, WebSearch, WebFetch
Goal
Do the maximum amount of SEO work autonomously. Return what's done + a prioritized TODO list for the human.
Required inputs -- ask before starting if missing
Minimum required:
- Business name
- City / primary market
- Primary service category
- Website URL
Important (ask if not provided):
- Phone number (needed for all pages -- flag as MISSING if not given)
- 1-2 sentences about the business (how long operating, any specialties)
- CMS: WordPress / custom / no website
Optional but valuable:
- GSC access (flag as missing -- explain what we lose without it)
- Pricing for main services (needed for realistic service pages)
- Additional cities/neighborhoods served
If critical info is missing, add it to the human TODO list with explanation. Never silently skip it.
Phase 1 -- Audit and Plan (~$0.10 DataForSEO)
- Check current rankings: DataForSEO SERP for 5-10 main keywords
- Fetch homepage: check title tag, H1, phone visibility, address in footer
- Check top 3 map pack competitors (review count, velocity, category)
- Build Core 30 list: one page per service + location combinations needed
- Identify which pages exist vs which need to be created
Phase 2 -- On-page fixes (do autonomously)
For each fix, note what was changed and why.
2.1 Title tag
Formula: [GBP Primary Category] in [City]
Keyword FIRST. Not brand name first. Not "Best" or "Top".
Example: "HVAC Repair in Dallas" not "Smith's Heating - HVAC Services Dallas TX"
2.2 H1 Must echo the title tag topic. Service + city.
2.3 Phone above fold Phone number must be visible without scrolling. On mobile must be a tap-to-call link. If phone number not provided: add to TODO [INFO NEEDED].
2.4 Address in footer NAP (Name, Address, Phone) must be in the footer of every page.
2.5 LocalBusiness schema on homepage Use specific @type (e.g. Plumber, HVACContractor, Roofer). Do NOT add AggregateRating unless using verified third-party data.
2.6 Service schema on each service page Add Service schema with name, description, areaServed.
2.7 GBP link target ONLY applies when client has multiple GBPs: each GBP should link to its specific location page. Single GBP = homepage link is fine.
Phase 3 -- Service pages (do autonomously)
For each missing page from Core 30:
Research process (do all three before writing):
- WebSearch "[service] [city]" -- find local pricing, local regulations, local facts
- WebSearch "site:reddit.com [service] [city]" or "[service] questions" -- find real customer questions
- Check top 2 competitors' pages for the same keyword -- what topics do they cover?
Page structure:
- H1: [Service] in [City]
- First 100 words: confirm service + city + phone number
- 800-1200 words total
- Include: local pricing range (research this), local-specific facts, process explanation
- FAQ section (minimum 4 questions) -- AI crawlers extract from these
- Embed Google Maps (note in page for human to add iframe)
- Address in footer
- Internal links to related service pages
Content rules:
- Real local data beats generic content
- Include specific pricing ranges based on research (not made up)
- No duplicate content -- each city page must have unique local information
- Do NOT use collapsed accordions for important content (Googlebot cannot click)
Save each page to: seo-pages/[client-slug]/[page-slug].md
Phase 4 -- Save content
Save all written pages to seo-pages/[client-name-slug]/ with frontmatter:
---
title: [H1]
keyword: [target keyword]
url-slug: [recommended URL]
status: ready-to-publish
---
Also save seo-pages/[client-name-slug]/index.md with summary of all pages created.
Phase 5 -- Human TODO list
Format as prioritized list. Most important first. Be specific.
HUMAN TODO -- [Business Name]
(do in this order)
[GBP] Check/set primary category to: [recommended category]
[GBP] Respond to all existing reviews with keywords naturally embedded
[GBP] Link to: [specific page URL]
[REVIEWS] Target: X reviews/month (currently ~Y, top competitor has ~Z at ~W/month)
- Review quality matters more than count: ask customers to mention the specific service + city
[CITATIONS] Add business to these directories:
Priority 1: Google Business Profile (verify), Yelp, BBB
Priority 2: HomeAdvisor, Angi, Houzz, Thumbtack
Priority 3: Local chamber of commerce, local business directories for [city]
[GSC] Grant access to Google Search Console -- we need this to find keyword gaps
URL: search.google.com/search-console
[INFO NEEDED] Phone number -- required for all pages, above fold placement
[INFO NEEDED] Pricing for [service] -- needed for service pages to be specific
[INFO NEEDED] What neighborhoods/cities do you serve besides [City]?
[CONTENT] Publish X service pages (saved to seo-pages/[client]/)
[CONTENT] Add Google Maps iframe to each location page
Proactive flags
Always flag these proactively even if user didn't ask:
- Missing phone number: "Phone number is critical -- it's a conversion factor AND ranking signal"
- Missing GSC access: "Without GSC we can't find which keywords Google already ranks the site for"
- Review velocity below 3/month: "Current velocity will lose ground to competitors -- need active review strategy"
- Review gap larger than 50: "Will take significant time to close -- be realistic with client about timeline"
- Competitor has active SEO agency: "Market has professional competition -- results will take longer"
Key principles (non-negotiable)
These come from analysis of 843 tweets from @theseoguy_ -- proven local SEO insights:
- GBP is the #1 asset, not the website
- Category > everything else on GBP
- Review velocity > review count
- Review quality > review velocity (10+ words, photos, keywords + city in text)
- Title tag: keyword first, not brand name
- One location page per city -- never one page for all cities
- No duplicate city pages -- each needs unique local content
- FAQ sections are critical for AI crawler indexing in 2026
- Domain Authority is irrelevant for map pack
- Goal completion (conversions) is itself a ranking signal
Related Skills
claude-skills
26.2k380 Claude Code skills & agent skills & plugins (30+ Agents, 70+ custom commands, 380+ skills, customizable references, scripts)for Claude Code, Codex, Gemini CLI, Cursor, and 8 more coding agents — engineering, marketing, product, compliance, C-level advisory, research, business operations, commerc…
claude-code
3.3kClaude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.
nextjs-tanstack-query-cursorrules-prompt-file
40.8kCursor rules for Next.js App Router with TanStack Query v5, covering the HydrationBoundary pattern, Server Actions as mutations, and optimistic updates.
tanstack-query-v5-cursorrules-prompt-file
40.8kCursor rules for TanStack Query v5 with query options, query key factories, mutations, optimistic updates, infinite queries, Suspense, and prefetching.
Security Score
Audited on Invalid Date
