Local Legal SEO Audit
sickn33/agentic-awesome-skills
Audit and improve local SEO for law firms, attorneys, forensic experts and legal/professional services sites with local presence, focusing on GBP, directories, E-E-A-T and practice/location pages.
When a law firm or attorney wants to benchmark its public reviews and local-pack presence against competing firms, or understand why it's losing the map pack for attorney searches.
$ npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install unifapi-agent/agents attorney-reputation-benchmark --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/unifapi-agent/agents.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/law-firm-marketing/attorney-reputation-benchmark .claude/skills/attorney-reputation-benchmark && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "attorney-reputation-benchmark" agent skill from https://github.com/unifapi-agent/agents/tree/main/skills/law-firm-marketing/attorney-reputation-benchmark into .claude/skills/attorney-reputation-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "attorney-reputation-benchmark", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/unifapi-agent/agents/tree/main/skills/law-firm-marketing/attorney-reputation-benchmarkType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install unifapi-agent/agents attorney-reputation-benchmark --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/unifapi-agent/agents.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/law-firm-marketing/attorney-reputation-benchmark .agents/skills/attorney-reputation-benchmark && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "attorney-reputation-benchmark" agent skill from https://github.com/unifapi-agent/agents/tree/main/skills/law-firm-marketing/attorney-reputation-benchmark into .agents/skills/attorney-reputation-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "attorney-reputation-benchmark", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install unifapi-agent/agents attorney-reputation-benchmark --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/unifapi-agent/agents.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/law-firm-marketing/attorney-reputation-benchmark .cursor/skills/attorney-reputation-benchmark && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "attorney-reputation-benchmark" agent skill from https://github.com/unifapi-agent/agents/tree/main/skills/law-firm-marketing/attorney-reputation-benchmark into .cursor/skills/attorney-reputation-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "attorney-reputation-benchmark", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/unifapi-agent/agents.git --path skills/law-firm-marketing/attorney-reputation-benchmark--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install unifapi-agent/agents attorney-reputation-benchmark --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/unifapi-agent/agents.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/law-firm-marketing/attorney-reputation-benchmark .gemini/skills/attorney-reputation-benchmark && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "attorney-reputation-benchmark" agent skill from https://github.com/unifapi-agent/agents/tree/main/skills/law-firm-marketing/attorney-reputation-benchmark into .gemini/skills/attorney-reputation-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "attorney-reputation-benchmark", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install unifapi-agent/agents attorney-reputation-benchmarkInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/unifapi-agent/agents.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/law-firm-marketing/attorney-reputation-benchmark .github/skills/attorney-reputation-benchmark && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "attorney-reputation-benchmark" agent skill from https://github.com/unifapi-agent/agents/tree/main/skills/law-firm-marketing/attorney-reputation-benchmark into .github/skills/attorney-reputation-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "attorney-reputation-benchmark", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install unifapi-agent/agents attorney-reputation-benchmark --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/unifapi-agent/agents.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/law-firm-marketing/attorney-reputation-benchmark .opencode/skills/attorney-reputation-benchmark && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "attorney-reputation-benchmark" agent skill from https://github.com/unifapi-agent/agents/tree/main/skills/law-firm-marketing/attorney-reputation-benchmark into .opencode/skills/attorney-reputation-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "attorney-reputation-benchmark", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
attorney-reputation-benchmarkWhen a law firm or attorney wants to benchmark its public reviews and local-pack presence against competing firms, or understand why it's losing the map pack for attorney searches.
Attorney Reputation Benchmark is an agent skill from unifapi-agent/agents. When a law firm or attorney wants to benchmark its public reviews and local-pack presence against competing firms, or understand why it's losing the map pack for attorney searches. Also use on "law firm reviews," "attorney review benchmark," "why aren't we in the map pack for lawyers," "compare our rating to other firms," "Google reviews for law firm," "review velocity," or "law firm reputation." Reads public listing data only — marketing research, not legal advice.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `README.md`).
It sits in Marketing & SEO, covering Local SEO. The repository describes itself as: Open-source marketing agents for Claude, ChatGPT, Codex, OpenClaw & Hermes. One plugin: SEO audits, GEO / AI-visibility, local SEO, KOL pricing, social listening & competitive… The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit fb53247. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Attorney Reputation Benchmark loads about 1.9k tokens when it runs. Until then it costs about 125 tokens; SKILL.md has 909 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from unifapi-agent/agents at commit fb53247, republished under its MIT licence (© unifapi-agent). 909 words, ~1,892 tokens.
.claude/skills/attorney-reputation-benchmark/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.You are a local-reputation analyst for a law firm. For firms, reviews and a complete Google Business Profile are the biggest levers on local prominence — Google's ranking signal for the map pack — and on conversion: prospects searching "personal injury lawyer near me" or "family law attorney [city]" read reviews before they ever call, and a firm with 120 strong, recent reviews wins the click over one with 15 stale ones. This skill benchmarks a firm against competing firms and quantifies the net-new-reviews gap to the leader, read-only.
This is an enhanced skill: it reads live public data through UnifAPI.
Every gap is anchored to a real public listing record. Use the unifapi skill to connect (OAuth MCP), then call:
local/search, maps/search — run the firm's practice-area + city queries ("personal injury lawyer [city]", "DUI attorney [city]", "family law attorney [city]"). Each returns the firms in the 3-pack with name, place_id, rating, review_count, category, address, hours, attributes/photos, and position — the firm plus its 3–5 competitors in one call. Match the firm on place_id, not name; use the hours/attributes/photos fields for the Google Business Profile completeness signal.seo/serp — confirm whether the firm surfaces in the local block for each practice-area + city query (ranked elements + SERP features), so an absent finding is evidence, not an assumption.local/search, maps/search — read the most-recent reviews per firm and count those inside the trailing ~90 days, so a high lifetime total doesn't mask a stale base. If only a sample is exposed, treat velocity as a lower-bound estimate and say so.local/search — sample public review text for the share of reviews that name the city/neighborhood and the specific practice area.UnifAPI reads public data only — it never touches the firm's Google Business Profile. Keep any billing metadata so the report can state record cost.
.agents/product-marketing.md / .claude/product-marketing.md first if it exists. From the firm's city and top practice-area + city queries, run local/search / maps/search to pull the local-pack listings and identify the 3–5 competing firms that rank. Use seo/serp to confirm each firm's local-pack position per query (or absent).rating, review_count, the trailing-90-day review count (velocity), how complete each Google Business Profile looks (hours, categories, attributes, photos), and a review-text sample.volume_gap, velocity_per_quarter, rating_gap, language share, and the 0–100 prominence score so the table sorts; identify the local-pack leader. The exact math — trailing-90-day velocity, net-new-reviews-to-parity, and net-new-5-star-to-local-average — is the shared reputation-scoring methodology used by all four local-business reputation benchmarks. Apply it verbatim rather than re-deriving.target_per_quarter net-new reviews needed to catch it at the current relative pace, plus the net-new 5-star reviews to reach the local-average rating. If the leader is pulling away unrealistically fast, reset the target to the nearest beatable firm and say so. Layer in where the firm's profile completeness trails competitors.A benchmark table, leader to laggard, plus a catch-up plan. The firm-specific column is Google Business Profile completeness.
| Firm | Reviews | Rating | New/90d | Profile complete? | Prominence /100 |
|---|---|---|---|---|---|
| Firm (you) | 70 | 4.6 | 4 | hours + 6 photos | 41 |
| Leader (Smith PI) | 612 | 4.8 | 22 | full | 93 |
Then:
place_id) and stamped with the query/search point.Firm has 70 reviews at 4.6, ~4/quarter. The "personal injury lawyer Austin" pack leader has 612 at 4.8, ~22/quarter; local average rating 4.7. Volume gap 542; leader out-paces by ~18/quarter, so over a 4-quarter horizon the firm needs ~542/4 + 22 ≈ 158 net-new reviews/quarter to reach parity — unrealistic, so reset to the #3 firm (210 reviews, ~9/quarter), where parity needs ~44/quarter. Rating: to lift 4.6 → 4.7 needs ⌈70 × 0.1 / 0.3⌉ ≈ 24 net-new 5-star reviews. Profile gap: leader has 40+ photos and 9 attributes; firm has 6 photos and no attributes.
local/search, maps/search, and seo/serp operations this skill reads.© unifapi-agent, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in skills/law-firm-marketing/attorney-reputation-benchmark of unifapi-agent/agents.
Open the folder on GitHubat commit fb53247
Attorney Reputation Benchmark next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Attorney Reputation Benchmark this skillunifapi-agent/agents | 589 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Local Legal SEO Auditsickn33/agentic-awesome-skills | 47k | 2 repos | ~3.2k | Automated safety check: Pass | MIT | |
| FLOW SEO FrameworkAgriciDaniel/claude-seo | 19k | 2 repos | ~1.4k | Automated safety check: Pass | MIT | |
| Google Mapscablate/mcp-google-map | 469 | — | ~909 | Automated safety check: Pass | MIT | |
| Google Maps Local SEOcablate/mcp-google-map | 469 | — | ~633 | Automated safety check: Pass | MIT | |
| Google Maps Travel Planningcablate/mcp-google-map | 469 | — | ~710 | Automated safety check: Pass | MIT |
sickn33/agentic-awesome-skills
Audit and improve local SEO for law firms, attorneys, forensic experts and legal/professional services sites with local presence, focusing on GBP, directories, E-E-A-T and practice/location pages.
AgriciDaniel/claude-seo
Brings the FLOW framework's stage-specific SEO prompts into the agent, from keyword discovery through backlinks, on-page work and conversion to local SEO, loaded on demand.
cablate/mcp-google-map
Search places, resolve addresses, compare routes, inspect neighborhoods, and retrieve geographic or environmental facts through the standalone @cablate/mcp-google-map CLI.
cablate/mcp-google-map
Analyze Google Business Profile visibility, geographic grid rankings, local search keywords, and nearby competitors through the standalone Google Maps CLI.
cablate/mcp-google-map
Build evidence-backed day trips, multi-day itineraries, and efficient stop sequences with Google Maps data through the standalone CLI.
AgriciDaniel/claude-seo
Hub for site-wide SEO work: audits, technical checks, schema, content quality, local, hreflang and AI-search readiness, run through slash commands.
unifapi-agent/agents
When the user wants to track how often their brand or domain gets mentioned across ChatGPT and AI search engines over a set of prompts, and how that share of voice compares to named competitors over…
unifapi-agent/agents
When a seller or SDR wants to catch public buying intent on X/Twitter and LinkedIn — someone asking for a tool they sell, complaining about or switching off a competitor, or hiring for a role that…
unifapi-agent/agents
When the user wants to research customers from public communities, or synthesize customer language, pains, and objections.
unifapi-agent/agents
When the user wants to research keywords, find keyword opportunities, run a keyword gap analysis, build topic clusters, or compare what competitors rank for.
unifapi-agent/agents
When the user wants to add, fix, or optimize schema markup and structured data on their site.
unifapi-agent/agents
When the user wants to audit, review, or diagnose SEO issues on their site.
Categories
When a law firm or attorney wants to benchmark its public reviews and local-pack presence against competing firms, or understand why it's losing the map pack for attorney searches. Attorney Reputation Benchmark is an agent skill from unifapi-agent/agents. When a law firm or attorney wants to benchmark its public reviews and local-pack presence against competing firms, or understand why it's losing the map pack for attorney searches.
Attorney Reputation Benchmark fits situations like: tasks that involve Local SEO.
Run `npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a claude-code`. Or copy the skill folder (skills/law-firm-marketing/attorney-reputation-benchmark in unifapi-agent/agents) into .claude/skills/attorney-reputation-benchmark in your project. Claude Code loads it when a task matches its description.
Run `npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a codex`. Or copy the skill folder (skills/law-firm-marketing/attorney-reputation-benchmark in unifapi-agent/agents) into .agents/skills/attorney-reputation-benchmark in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add unifapi-agent/agents --skill attorney-reputation-benchmark -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/attorney-reputation-benchmark, .gemini/skills/attorney-reputation-benchmark, .github/skills/attorney-reputation-benchmark and .opencode/skills/attorney-reputation-benchmark in your project.
SKILL.md names no scripts, command-line tools or credentials: Attorney Reputation Benchmark is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Attorney Reputation Benchmark is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Attorney Reputation Benchmark: Local Legal SEO Audit (sickn33/agentic-awesome-skills, 47k stars), FLOW SEO Framework (AgriciDaniel/claude-seo, 19k stars), Google Maps (cablate/mcp-google-map, 469 stars) and Google Maps Local SEO (cablate/mcp-google-map, 469 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
unifapi-agent (a GitHub organization) maintains it in unifapi-agent/agents, which has 589 GitHub stars. The repository holds 47 skills in this directory. The repository was last updated on September 5, 2026.
Source: unifapi-agent/agents on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.