GEO-First SEO Audit Tool
zubair-trabzada/geo-seo-claude
Audits a website for AI search visibility across ChatGPT, Claude, Perplexity and Google AI Overviews while checking traditional SEO, schema and E-E-A-T content quality.
Track whether a brand and its competitors get cited or mentioned across Google AI Overviews, Google AI Mode, ChatGPT Search, Perplexity, Microsoft Copilot, and Google Gemini for a defined set of…
$ npx skills add apify/awesome-skills --skill apify-ai-search-visibility-tracker -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install apify/awesome-skills apify-ai-search-visibility-tracker --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/apify/awesome-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/apify-ai-search-visibility-tracker .claude/skills/apify-ai-search-visibility-tracker && 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 "apify-ai-search-visibility-tracker" agent skill from https://github.com/apify/awesome-skills/tree/main/skills/apify-ai-search-visibility-tracker into .claude/skills/apify-ai-search-visibility-tracker/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "apify-ai-search-visibility-tracker", 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/apify/awesome-skills/tree/main/skills/apify-ai-search-visibility-trackerType 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 apify/awesome-skills --skill apify-ai-search-visibility-tracker -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install apify/awesome-skills apify-ai-search-visibility-tracker --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/apify/awesome-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/apify-ai-search-visibility-tracker .agents/skills/apify-ai-search-visibility-tracker && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "apify-ai-search-visibility-tracker" agent skill from https://github.com/apify/awesome-skills/tree/main/skills/apify-ai-search-visibility-tracker into .agents/skills/apify-ai-search-visibility-tracker/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "apify-ai-search-visibility-tracker", 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 apify/awesome-skills --skill apify-ai-search-visibility-tracker -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install apify/awesome-skills apify-ai-search-visibility-tracker --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/apify/awesome-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/apify-ai-search-visibility-tracker .cursor/skills/apify-ai-search-visibility-tracker && 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 "apify-ai-search-visibility-tracker" agent skill from https://github.com/apify/awesome-skills/tree/main/skills/apify-ai-search-visibility-tracker into .cursor/skills/apify-ai-search-visibility-tracker/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "apify-ai-search-visibility-tracker", 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/apify/awesome-skills.git --path skills/apify-ai-search-visibility-tracker--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 apify/awesome-skills --skill apify-ai-search-visibility-tracker -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install apify/awesome-skills apify-ai-search-visibility-tracker --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/apify/awesome-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/apify-ai-search-visibility-tracker .gemini/skills/apify-ai-search-visibility-tracker && 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 "apify-ai-search-visibility-tracker" agent skill from https://github.com/apify/awesome-skills/tree/main/skills/apify-ai-search-visibility-tracker into .gemini/skills/apify-ai-search-visibility-tracker/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "apify-ai-search-visibility-tracker", 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 apify/awesome-skills apify-ai-search-visibility-trackerInstalls 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 apify/awesome-skills --skill apify-ai-search-visibility-tracker -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/apify/awesome-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/apify-ai-search-visibility-tracker .github/skills/apify-ai-search-visibility-tracker && 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 "apify-ai-search-visibility-tracker" agent skill from https://github.com/apify/awesome-skills/tree/main/skills/apify-ai-search-visibility-tracker into .github/skills/apify-ai-search-visibility-tracker/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "apify-ai-search-visibility-tracker", 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 apify/awesome-skills --skill apify-ai-search-visibility-tracker -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install apify/awesome-skills apify-ai-search-visibility-tracker --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/apify/awesome-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/apify-ai-search-visibility-tracker .opencode/skills/apify-ai-search-visibility-tracker && 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 "apify-ai-search-visibility-tracker" agent skill from https://github.com/apify/awesome-skills/tree/main/skills/apify-ai-search-visibility-tracker into .opencode/skills/apify-ai-search-visibility-tracker/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "apify-ai-search-visibility-tracker", 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.
apify-ai-search-visibility-trackerTrack whether a brand and its competitors get cited or mentioned across Google AI Overviews, Google AI Mode, ChatGPT Search, Perplexity, Microsoft Copilot, and Google Gemini for a defined set of…
Apify AI Search Visibility Tracker is an agent skill from apify/awesome-skills, published by the product's own GitHub organization. Track whether a brand and its competitors get cited or mentioned across Google AI Overviews, Google AI Mode, ChatGPT Search, Perplexity, Microsoft Copilot, and Google Gemini for a defined set of prompts, on a recurring schedule. Use when user asks to track AI visibility, monitor brand mentions in AI search, track ChatGPT citations, do AI search SEO tracking, GEO tracking (Generative Engine Optimization), AEO tracking (Answer Engine Optimization), monitor Perplexity citations, track AI Overviews mentions, see if…
Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files (for example `examples/example-dataset-rows.json`, `examples/example-setup.md` and `examples/example-snapshot-report.md`).
It sits in Marketing & SEO, covering AI search optimization and Web scraping. It works with Apify, OpenAI, Perplexity and Google Gemini. The repository describes itself as: Community collection of Apify agent skills for AI coding assistants. The licence is Apache-2.0.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1eb0cd0. 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.
Ships script files (Shell and Python), which the agent can run.
Shell commands in SKILL.md call:
pip3geminibashpython3From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
apify.comAlso links to:
console.apify.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
APIFY_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Apify AI Search Visibility Tracker loads about 3.7k tokens when it runs. Until then it costs about 180 tokens; SKILL.md has 1,471 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 noted patterns worth knowing about, such as sudo or a known installer.
- `APIFY_TOKEN` saved in a `.env` file next to `config.json` (the runner auto-loads it).- [ ] Step 3: Write config.json + .env, then install the OS schedule### Step 3: Write `config.json` + `.env`, Then Install the OS Schedule.env # APIFY_TOKEN=apify_api_xxx (chmod 600)echo 'APIFY_TOKEN=your_token_here' > ./.envchmod 600 ./.envot found` -- Tell the user to put it in `.env` next to `config.json` (`echo 'APIFY_TOKEN=...' > .env && chmod 600 .env`)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 apify/awesome-skills at commit 1eb0cd0, republished under its Apache-2.0 licence (© apify). 1,471 words, ~3,720 tokens.
.claude/skills/apify-ai-search-visibility-tracker/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.Four workflows covering the full AI visibility lifecycle: discover which prompts matter → find citation opportunities → audit your site → track over time.
All workflows use apify/google-search-scraper for AI search. Workflow C also uses apify/website-content-crawler.
Recommended flow: Run Workflow A to discover prompts → Workflow B to find citation opportunities → Workflow C to audit your site → Workflow D to track everything on a schedule.
Goal: Find which queries surface a competitor in AI search answers, so you know which prompts are worth monitoring.
| # | Input | Notes |
|---|---|---|
| 1 | Competitor domain(s) | e.g. brightdata.com, scraperapi.com |
| 2 | Seed topic keywords | e.g. "web scraping", "data extraction API" |
| 3 | AI sources | Default: all six (AI Overviews, AI Mode, ChatGPT, Perplexity, Copilot, Gemini) |
Generate 15–30 candidate queries from seed keywords using these templates:
best [topic], [topic] tools, how to [topic], [topic] for [use case][topic] vs [competitor brand], [competitor brand] alternative[topic] API, [topic] pricing, [topic] tutorialRun apify/google-search-scraper for each candidate query. For each result, extract:
aiOverview.sources[], aiMode.sources[], chatGptAnswer.sources[], perplexityAnswer.sources[], copilotAnswer.sources[], geminiAnswer.sources[]answer_text / aiOverview.text for competitor brand name mentions (word-boundary match: \bBrand\b)For each (query, source) pair where the competitor domain or brand appears: record a hit.
Output a prompt-major table sorted by total hit count descending:
| Query | ChatGPT | Perplexity | AI Overviews | AI Mode | Copilot | Gemini | Total |
|-------|---------|------------|--------------|---------|---------|--------|-------|
| "best web scraping API" | ✓ | ✓ | — | ✓ | — | ✓ | 4 |
| "how to scrape Google" | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | 6 |config.json prompts.Goal: For a target topic, identify which domains and content types AI engines most often cite — revealing where to publish or pitch content.
| # | Input | Notes |
|---|---|---|
| 1 | Target topic / industry | e.g. "web scraping", "ecommerce automation" |
| 2 | Seed queries | 5–20 queries covering the topic space |
| 3 | AI sources | Default: all six |
| 4 | Deep-crawl top cited? | Optional: crawl top-3 cited pages with website-content-crawler for structure patterns |
Run apify/google-search-scraper for each seed query across selected AI sources.
Collect every URL from sources[] across all results. Normalise to registrable domain (blog.example.com → example.com).
Aggregate:
/docs/, /reference/; blog → /blog/; news → known news domains)Rank by total citation count. Output:
Top-cited domains for "web scraping" (42 queries × 6 sources):
| Domain | Citations | AI Sources | Inferred type |
|--------|-----------|------------|--------------|
| docs.apify.com | 38 | ChatGPT, Perplexity, AI Mode | Documentation |
| scraperapi.com/blog | 21 | AI Overviews, Gemini | Long-form blog |If deep-crawl enabled: run apify/website-content-crawler on the top-3 cited URLs per domain. From the markdown output, extract:
Summarise patterns: "AI engines in this topic prefer [long-form docs / short direct-answer posts]. Typical cited page: [word count range], [has/lacks direct-answer H2], [has/lacks code example above the fold]."
Goal: Check whether a specific website's content is structured for AI citation; compare it against what AI engines actually cite for your target prompts.
| # | Input | Notes |
|---|---|---|
| 1 | Your website URL | e.g. https://apify.com |
| 2 | Target prompts | Use Workflow A output, or supply 5–10 directly |
| 3 | AI sources | Default: all six |
Run apify/google-search-scraper for each target prompt. For each (prompt × source) record whether your registrable domain appears in sources[].
For prompts where your domain is not cited: identify the top-cited competitor URL for that prompt.
Run apify/website-content-crawler on:
For each un-cited prompt, produce a gap card:
Prompt: "how to scrape Google search results"
Your page: apify.com/blog/scraping-google → NOT cited on ChatGPT, Perplexity, AI Mode
Top-cited: docs.brightdata.com/scraping/google (cited 5/6 sources)
Structural gaps:
✗ Your page: answer buried after 900 words, no direct-answer H2
✓ Competitor: H2 "How to scrape Google in 3 steps" at word 120 + code block at word 180
Recommended actions (priority order):
1. Add H2 that mirrors the query phrase within first 300 words
2. Move code example above the fold
3. Add a "Quick answer" summary box at the topGoal: Snapshot brand citations and mentions across all six AI surfaces on a recurring schedule and track changes over time.
(No need to check upfront)
APIFY_TOKEN saved in a .env file next to config.json (the runner auto-loads it).pip3 install requests (only third-party dependency); pip3 install tldextract recommended for accurate registrable-domain matching on multi-part TLDs.schtasks instructions.Copy this checklist and track progress:
Task Progress:
- [ ] Step 1: Load or collect the seven required inputs
- [ ] Step 2: Confirm AI sources and cadence
- [ ] Step 3: Write config.json + .env, then install the OS schedule
- [ ] Step 4: Run a snapshot now so the user sees the first report
- [ ] Step 5: Deliver the history report (diff vs. all prior runs)If config.json exists in the user's working directory, load it and skip to Step 4 unless the user asks to reconfigure. On first run, ask all seven anchors before any Actor call:
| # | Input | Why it matters |
|---|---|---|
| 1 | Brand URL | Primary domain. Drives registrable-domain citation matching (blog.apify.com -> apify.com). |
| 2 | Brand name(s) | Surface forms for text-mention matching (e.g., Apify, apify.com, @apify). URL-only matching misses mentions without links. |
| 3 | Competitor brands | Ask explicitly: "Which competitors do you want tracked alongside your brand?" Accept name + domain pairs. Zero is allowed; the question must still be asked on first run. |
| 4 | Prompts to monitor | One or more search queries. Each runs through every enabled AI source. If you don't know which prompts to use yet, run Workflow A first — it discovers competitor-visible prompts you can paste here. |
| 5 | Cadence | daily / weekly / monthly. Drives the schedule entry that install_cron.sh writes. |
| 6 | Which AI sources | Present the six (AI Overviews, AI Mode, ChatGPT, Perplexity, Copilot, Gemini), all enabled by default. Each adds per-result cost -- current pricing on the Actor page (https://apify.com/apify/google-search-scraper). |
| 7 | Apify Dataset name | The named dataset to append to. If absent, created on first run; the name is recorded in config.json. |
After those seven, ask optional follow-ups: countryCode, languageCode, location (UULE), preferred run hour (default 09:00 local).
Then one verbosity question -- save as config.json:include_full_answers:
on_demand (default): report shows short quoted snippets around each surface-form match. Full LLM answers live in the named KV store; user can ask later.always: report embeds the full LLM answer verbatim whenever any entity is mentioned. Useful for one prompt; gets unwieldy at 5+ prompts.Echo back the user's seven choices in a single paragraph for confirmation. If the user toggles sources, update the in-memory config before writing.
config.json + .env, Then Install the OS ScheduleCreate the working directory layout next to where the user wants reports to land:
working-dir/
config.json # copied from the skill's config.example.json, edited with collected values
.env # APIFY_TOKEN=apify_api_xxx (chmod 600)cp ${CLAUDE_PLUGIN_ROOT}/reference/scripts/config.example.json ./config.json
# then edit with the collected values, save
echo 'APIFY_TOKEN=your_token_here' > ./.env
chmod 600 ./.envThen install the OS schedule:
bash ${CLAUDE_PLUGIN_ROOT}/reference/scripts/install_cron.sh --cadence daily --hour 9Cron expression mapping:
| Cadence | Cron expression | When |
|---|---|---|
| daily | 0 H * * * | every day at H:00 local |
| weekly | 0 H * * 1 | every Monday at H:00 |
| monthly | 0 H 1 * * | the 1st of every month at H:00 |
macOS:
launchctl kickstart "gui/$(id -u)/com.apify.ai-visibility-tracker"
tail -f ~/Library/Logs/ai-visibility-tracker.logLinux / generic:
python3 ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_snapshot.py --config ./config.jsonBoth paths:
apify/google-search-scraper with the configured prompts + AI-source toggles.reference/output-schema.md).reports/snapshot-<ISO-date>.md next to config.json.Open reports/snapshot-<ISO-date>.md and surface the top findings in chat. Lead with:
Snapshot summaries are entity-major: one Markdown table per tracked entity (brand, then competitors), one row per AI source, columns Source | Cited | Mentioned | SoV% | Matched URLs | History.
| Actor | Used in | Key input fields |
|---|---|---|
apify/google-search-scraper | A, B, C, D | queries[], aiOverview, chatGptSearch, perplexitySearch, googleAiMode, bingCopilotSearch, googleGeminiSearch |
apify/website-content-crawler | B (optional), C | startUrls[], maxCrawlPages, outputMarkdown: true |
Pricing changes; check the pricing tab before quoting numbers. Disable unused AI sources to reduce cost.
Telemetry. Workflow D runs through reference/scripts/run_snapshot.py, which already sets User-Agent: apify-awesome-skills/ai-search-visibility-tracker-... on every Apify API call. When calling these Actors ad-hoc in Workflows A-C, pass the matching flags so usage is attributed: --user-agent apify-awesome-skills/apify-ai-search-visibility-tracker and --json (use --format json for apify datasets get-items), and append 2>/dev/null. Example:
apify actors call apify/google-search-scraper \
--user-agent apify-awesome-skills/apify-ai-search-visibility-tracker \
--json 2>/dev/nullrun_snapshot.py -- launchd / cron has no stdin.\bbrand\b, case-insensitive). See reference/citation-matching.md.blog.apify.com counts as apify.com). See reference/citation-matching.md.cited: false, mentioned: false, answer_text: "[no answer returned]".APIFY_TOKEN not found -- Tell the user to put it in .env next to config.json (echo 'APIFY_TOKEN=...' > .env && chmod 600 .env). Token at https://console.apify.com/account/integrations.
config.json not found -- Run Step 3 first to create it from the template.
Dataset name not set -- Ask the user for a name; the runner will create the dataset on first append.
Actor run FAILED -- Print the console link from the runner output and ask the user to inspect it.
AI source returned no answer -- The row is still written with [no answer returned]. Not an error.
website-content-crawler returns no markdown -- Page may be JS-heavy; try with useBrowserCrawler: true.
Schedule not firing -- See reference/scheduling.md troubleshooting section.
No previous run to diff against -- First run only. The report renders the snapshot without a history section.
© apify, Apache-2.0. 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 12 other files in skills/apify-ai-search-visibility-tracker of apify/awesome-skills.
Open the folder on GitHubat commit 1eb0cd0
Apify AI Search Visibility Tracker 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 |
|---|---|---|---|---|---|---|
| Apify AI Search Visibility Tracker this skillapify/awesome-skills | 266 | — | ~3.7k | Automated safety check: Notes | Apache-2.0 | |
| GEO-First SEO Audit Toolzubair-trabzada/geo-seo-claude | 11k | — | ~2.8k | Automated safety check: Notes | MIT | |
| Orangeo AI Visibility SkillOranAi-Ltd/orangeo-ai-visibility-skill | 140 | — | ~1.5k | Automated safety check: Pass | MIT | |
| GEO Platform Optimizerzubair-trabzada/geo-seo-claude | 11k | 2 repos | ~4.7k | Automated safety check: Notes | MIT | |
| AI Discoverability AuditBrianRWagner/ai-marketing-claude-code-skills | 441 | — | ~2.3k | Automated safety check: Pass | None | |
| Nuxt Geo Best Practicesvinayakkulkarni/nxui | 212 | — | ~1.9k | Automated safety check: Pass | MIT |
zubair-trabzada/geo-seo-claude
Audits a website for AI search visibility across ChatGPT, Claude, Perplexity and Google AI Overviews while checking traditional SEO, schema and E-E-A-T content quality.
OranAi-Ltd/orangeo-ai-visibility-skill
Audit brand AI visibility readiness and prepare OranGEO-style GEO, AEO, LLM SEO, and AI search optimization action plans.
zubair-trabzada/geo-seo-claude
Audits a site for AI search visibility one platform at a time, scoring Google AI Overviews, ChatGPT, Perplexity, Gemini and Bing Copilot and listing gaps to fix.
BrianRWagner/ai-marketing-claude-code-skills
Audits how a brand is described by AI search tools such as ChatGPT, Perplexity and Gemini, then produces a scored report, action plan and re-audit schedule.
vinayakkulkarni/nxui
Nuxt GEO (Generative Engine Optimization) guidelines for getting cited by ChatGPT, Perplexity, Claude, Google AI Overviews, and Gemini.
LeoYeAI/openclaw-master-skills
Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.
apify/awesome-skills
Set up a recurring buying-signal detection pipeline that finds companies showing buying intent across three signal types — job postings (hiring for the persona), fundraising events (recent raises)…
apify/awesome-skills
Score and enrich a CSV of B2B leads using Apify Actors. An agent skill from apify/awesome-skills.
apify/awesome-skills
Pull structured Apple App Store and Google Play data — app metadata, price, rating, the 1–5★ ratings histogram, version, developer, and reviews — and watch it for changes over time.
apify/awesome-skills
Scrape Ashby jobs or discover companies using Ashby with the Apify Ashby Job Board API Actor (johnvc/ashby-job-board-scraper).
apify/awesome-skills
Pull structured B2B company data from Clutch.co with the Clutch.co Agency API Actor (johnvc/clutch-agency-api).
apify/awesome-skills
Build a local-business lead database from Google Maps in one Apify pipeline: search by target audience + geography, enrich each place with company contacts from its website, leads enrichment (names…
Works with
Categories
Track whether a brand and its competitors get cited or mentioned across Google AI Overviews, Google AI Mode, ChatGPT Search, Perplexity, Microsoft Copilot, and Google Gemini for a defined set of…. Apify AI Search Visibility Tracker is an agent skill from apify/awesome-skills, published by the product's own GitHub organization. Track whether a brand and its competitors get cited or mentioned across Google AI Overviews, Google AI Mode, ChatGPT Search, Perplexity, Microsoft Copilot, and Google Gemini for a defined set of prompts, on a recurring schedule.
Apify AI Search Visibility Tracker fits situations like: user asks to track AI visibility; monitor brand mentions in AI search; track ChatGPT citations; do AI search SEO tracking.
Run `npx skills add apify/awesome-skills --skill apify-ai-search-visibility-tracker -a claude-code`. Or copy the skill folder (skills/apify-ai-search-visibility-tracker in apify/awesome-skills) into .claude/skills/apify-ai-search-visibility-tracker in your project. Claude Code loads it when a task matches its description.
Run `npx skills add apify/awesome-skills --skill apify-ai-search-visibility-tracker -a codex`. Or copy the skill folder (skills/apify-ai-search-visibility-tracker in apify/awesome-skills) into .agents/skills/apify-ai-search-visibility-tracker 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 apify/awesome-skills --skill apify-ai-search-visibility-tracker -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/apify-ai-search-visibility-tracker, .gemini/skills/apify-ai-search-visibility-tracker, .github/skills/apify-ai-search-visibility-tracker and .opencode/skills/apify-ai-search-visibility-tracker in your project.
Going by SKILL.md and its folder, Apify AI Search Visibility Tracker needs a shell and Python for the scripts in its folder, the command-line tools its instructions call (pip3, gemini, bash and python3) and credentials named APIFY_TOKEN. Our summary lists: Python 3; A Bash shell; A credential in APIFY_TOKEN.
SKILL.md names 2 domains. In commands or code: apify.com; the agent is likely to contact it when it follows the instructions. As links in the text: console.apify.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Apify AI Search Visibility Tracker is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.7k tokens (SKILL.md is roughly 15k 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 Apify AI Search Visibility Tracker: GEO-First SEO Audit Tool (zubair-trabzada/geo-seo-claude, 11k stars), Orangeo AI Visibility Skill (OranAi-Ltd/orangeo-ai-visibility-skill, 140 stars), GEO Platform Optimizer (zubair-trabzada/geo-seo-claude, 11k stars) and AI Discoverability Audit (BrianRWagner/ai-marketing-claude-code-skills, 441 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
apify (a GitHub organization, an official publisher) maintains it in apify/awesome-skills, which has 266 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on September 22, 2026.
Source: apify/awesome-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.