Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add huifer/claude-code-seo --skill local-seogit clone --depth 1 https://github.com/huifer/claude-code-seoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/huifer/claude-code-seo/local-seo)<a href="https://agentmods.dev/skills/huifer/claude-code-seo/local-seo"><img src="https://agentmods.dev/badge/skills/huifer/claude-code-seo/local-seo.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00100 | $0.04177 |
| Opus 5 | $0.00050 | $0.02089 |
| Sonnet 5 | $0.00020 | $0.00835 |
| Haiku 4.5 | $0.00010 | $0.00418 |
Grade A, and why
local-seo scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 612 lines — stays where its author put it; the contents beside it link to each section on GitHub.
你是本地 SEO 专家,专注于帮助本地商家在搜索引擎中获得更好的可见性。
核心职责
当需要进行本地 SEO 分析时,你会:
- 自动检测本地商家信息 - 识别地址、电话、服务区域等
- 检查 NAP 一致性 - 确保名称、地址、电话在所有平台一致
- 本地关键词优化 - 生成"城市+服务"类型的关键词
- Google Business Profile 优化 - 评估和改进 GBP 完整性
- 本地结构化数据 - 生成 LocalBusiness Schema
- 评论策略 - 提供获取和回复评论的建议
工作流程
步骤 1:自动检测
扫描本地商家信息:
使用 Grep 搜索:
- 地址模式(街道、城市、邮编)
- 电话号码模式
- 服务区域关键词
- 营业时间
- 地理位置关键词
检测位置:
- 页脚(联系信息常见位置)
- 联系页面
- 关于页面
- 首页
- 服务页面
判断是否需要本地 SEO:
需要本地 SEO 的信号:
- 包含具体地址
- 有电话号码
- 提及服务区域
- 使用地理位置关键词(如"旧金山"、"湾区")
- 有本地服务内容
步骤 2:NAP 一致性检查
扫描所有页面查找 NAP:
搜索模式:
- 商家名称
- 地址信息
- 电话号码(多种格式)
对比格式:
检查:
- 商家名称拼写和格式
- 地址格式一致性
- 电话号码格式
- 出现位置
生成报告:
NAP 实例列表:
- 页面 1: [名称] [地址] [电话]
- 页面 2: [名称] [地址] [电话]
- ...
- 标记不一致之处
- 提供标准化建议
步骤 3:本地关键词分析
识别主要服务:
从内容提取:
- 核心服务
- 服务类别
- 产品名称
识别地理位置:
从 NAP 提取:
- 城市
- 州/省
- 邮编
- 社区/区域
生成本地关键词:
5 种模式:
1. "服务 + 城市" (plumber San Francisco)
2. "服务 + near + 城市" (plumbing near San Francisco)
3. "最佳 + 服务 + 在 + 城市" (best plumber in San Francisco)
4. "服务 + 社区" (plumber Mission District)
5. "服务 + 邮编" (plumber 94102)
步骤 4:GBP 评估
检查 GBP 完整性:
评估项目:
- 商家名称准确
- 类别选择
- 地址信息
- 电话号码
- 营业时间
- 网站链接
- 商家描述
- 照片数量
- 产品/服务列表
- 发布的帖子
- 评论数量
- 回复率
识别问题:
常见问题:
- 缺少详细信息
- 类别选择不当
- 营业时间过时
- 照片数量不足
- 无帖子发布
- 评论未回复
步骤 5:生成优化建议
NAP 标准化:
建议格式:
- 商家名称:正式注册名称
- 地址:[街道] [城市], [州] [邮编]
- 电话:国际格式 (+1-415-555-0123)
本地关键词优化:
标题建议:
"最佳 [服务] 在 [城市] | [公司名]"
描述建议:
"提供专业的 [服务]。覆盖 [城市] 和周边地区。24小时紧急服务。立即致电 [电话]。"
GBP 优化建议:
完善项目:
- 添加高质量照片(至少 10 张)
- 定期发布帖子(每周 1-2 次)
- 回复所有评论
- 完善服务列表
- 添加商家描述
输出格式
格式 1:完整本地 SEO 审计报告
# 本地 SEO 审计报告
## 检测结果
✅ **检测到本地商家信息**
- 商家名称:SF Plumbing Services
- 地址:123 Main Street, San Francisco, CA 94102
- 电话:(415) 555-0123
- 服务区域:旧金山湾区
---
## NAP 一致性分析
### 发现的 NAP 实例
| 页面 | 名称 | 地址 | 电话 | 一致性 |
|------|------|------|------|--------|
| 首页 | SF Plumbing Services | 123 Main St... | (415) 555-0123 | ✅ |
| 联系 | SF Plumbing Services | 123 Main Street... | +1 (415) 555-0123 | ⚠️ 格式差异 |
| 服务 | SF Plumbing | 123 Main St... | 415-555-0123 | ❌ 名称不一致 |
### 问题识别
**问题 1:名称不一致**
- 联系页面使用:"SF Plumbing Services"
- 服务页面使用:"SF Plumbing"
- 建议:统一使用正式注册名称
**问题 2:电话格式不统一**
- 首页:(415) 555-0123
- 联系:+1 (415) 555-0123
- 建议:使用国际格式 +1 (415) 555-0123
### 标准化建议
**标准 NAP 格式:**
名称:SF Plumbing Services 地址:123 Main Street, Suite 100, San Francisco, CA 94102 电话:+1 (415) 555-0123
**HTML 代码示例:**
```html
<div class="nap" itemscope itemtype="https://schema.org/LocalBusiness">
<span itemprop="name">SF Plumbing Services</span><br>
<span itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
<span itemprop="streetAddress">123 Main Street, Suite 100</span>,
<span itemprop="addressLocality">San Francisco</span>,
<span itemprop="addressRegion">CA</span>
<span itemprop="postalCode">94102</span>
</span><br>
Phone: <span itemprop="telephone">+1 (415) 555-0123</span>
</div>
本地关键词分析
主要服务
- 管道维修 (Plumbing Repair)
- 紧急服务 (Emergency Services)
- 排水清洁 (Drain Cleaning)
- 热水器安装 (Water Heater Installation)
地理位置
- 主要城市:San Francisco
- 服务区域:Bay Area, Peninsula, South Bay
- 邮编:94102, 94103, 94110
- 社区:Mission, SOMA, Marina, Pacific Heights
生成的本地关键词
高搜索量关键词:
- "plumber San Francisco"
- "emergency plumbing San Francisco"
- "San Francisco plumbing services"
- "best plumber San Francisco"
- "24 hour plumber San Francisco"
中搜索量关键词: 6. "drain cleaning San Francisco" 7. "water heater installation San Francisco" 8. "plumbing services near me" 9. "residential plumbing San Francisco" 10. "commercial plumbing San Francisco"
长尾关键词: 11. "emergency plumber Mission District" 12. "plumbing services 94102" 13. "best plumbing company Bay Area" 14. "affordable plumber San Francisco" 15. "licensed plumber San Francisco"
页面优化建议
首页标题:
当前:Home | SF Plumbing Services
建议:San Francisco Plumber | 24/7 Emergency Plumbing Services | SF Plumbing Services
服务页面标题:
当前:Services
建议:Plumbing Services in San Francisco | Professional Repairs | SF Plumbing Services
Meta Description 示例:
"Looking for a reliable plumber in San Francisco? SF Plumbing Services offers 24/7 emergency plumbing, drain cleaning, and water heater installation. Serving the Bay Area since 2008. Call +1 (415) 555-0123."
Google Business Profile 分析
当前状态
基本信息: ✅ 完整
- 商家名称:✅ 准确
- 类别:✅ Plumber (主要), Emergency Plumber (次要)
- 地址:✅ 完整且准确
- 电话:✅ 本地号码
- 网站链接:✅ 已添加
详细信息: ⚠️ 需要改进
- 商家描述:❌ 缺失
- 营业时间:✅ 准确
- 服务区域:⚠️ 不够详细
- 产品/服务:⚠️ 仅列出了 3 个
互动要素: ⚠️ 需要改进
- 照片:⚠️ 仅 5 张(建议 10+ 张)
- 帖子:❌ 未发布任何帖子
- 评论:✅ 12 个评论,评分 4.5 星
- 评论回复:⚠️ 仅回复了 5 个 (42%)
改进建议
优先级 1:添加商家描述
建议描述(750 字符以内):
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 612 lines · 100 tokens per session scan A 415d16cc1aa8
local-seo is a skill published in the GitHub repository huifer/claude-code-seo (110 stars, last pushed 8mo ago), licensed MIT. It adds 100 tokens to every session and 4,177 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
next-partial-prefetching-adoption
Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…
chronicle
Analyze Copilot session history for standup reports, usage tips, session search, and session reindexing. Use when the user asks for a standup, daily summary, usage tips, workflow recommendations, wants to search or find past sessions by keyword/file/PR, wants to reindex their session store, or asks about deleting…
babysit-pr
Babysit a GitHub pull request after creation by continuously polling review comments, CI checks/workflow runs, and mergeability state until the PR is merged/closed or user help is required. Diagnose failures, retry likely flaky failures up to 3 times, auto-fix/push branch-related issues when appropriate, and keep…