add-competitor
Add a new competitor to the AI Visibility Tool Directory — researches the tool, generates data, takes a screenshot, and inserts into the codebase
Skill by EthanYoQ
Chalk Labs
Need help deploying add-competitor?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/ethanyoq-add-competitor
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Nov 1, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/add-competitor
What's inside
- Skill name
add-competitor- Description
- Add a new competitor to the AI Visibility Tool Directory — researches the tool, generates data, takes a screenshot, and inserts into the codebase
- License
- MIT
- Instructions
- 149 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (1)
- SKILL.md
SKILL.md (first lines)
Add a new competitor to the AI visibility tool directory at `apps/www/src/lib/competitors/data.ts`.
The user will provide a URL. Follow these steps:
**Important: Write objective, factual descriptions.** Do not use marketing language, exaggerations, or the competitor's own promotional claims at face value. Describe what the tool does and how it works in neutral terms. Avoid superlatives like "industry-leading", "best-in-class", "revolutionary", etc. Stick to verifiable facts — features offered, platforms tracked, pricing tiers. Highlights should be factual differentiators, not praise.
## 1. Research the competitor
Use WebFetch to read the competitor's website at `$ARGUMENTS`. Gather:
- Product name
- Domain
- What the tool does (tagline + longer description)
- Which category it fits: `tracking`, `content`, `api-developer`, `ecommerce`, `seo-traditional`, `open-source`, or `other`
- Pricing info (free tier? starting price? enterprise?)
- Status: `active`, `shutting-down`, `acquired`, or `beta`
- 3 highlights (short bullet points about what makes it notable)
## 2. Determine feature flags
Read the feature definitions in `apps/www/src/lib/competitors/types.ts` (the `FEATURE_CATEGORIES` constant). Based on your research, determine which features the competitor supports. Set each to `true` or omit it (defaults to `false`). The features are:
- `multiLlmTracking` — tracks across multiple AI platforms (ChatGPT, Claude, Gemini, etc.)
- `visibilityScore` — provides an aggregate AI visibility score
- `citationAnalytics` — tracks citation sources in AI responses
- `competitorBenchmarking` — compare visibility against competitors
- `brandMentionTracking` — monitor brand mentions in AI responses
- `promptVolumeEstimates` — estimated search/prompt volumes
- `sentimentAnalysis` — brand sentiment in AI responses
- `crawlerAnalytics` — track AI bot visits to your site
- `geographicTracking` — visibility by region/country
- `socialMediaTracking` — Reddit and social platform monitoring
- `shoppingTracking` — product visibility in AI shopping
- `multiLanguage` — multi-language support
- `actionRecommendations` — prioritized action items
- `contentGapAnalysis` — detect content gaps vs competitors
- `siteAudits` — AI site readiness audits
- `keywordResearch` — AI keyword/prompt discovery
- `emailAlerts` — automated alerts
- `dataExportApi` — CSV export or API access
- `biConnectors` — Looker Studio, NinjaCat, etc.
- `whiteLabelAgency` — white-label or agency features
- `openSource` — source code available
- `contentGeneration` — AI content creation
Be conservative — only mark features as `true` if you can confirm them from the website.
## 3. Fetch the domain rating
Extract the domain from the URL (e.g. `https://www.example.com/foo` → `example.com`). Then run:
```bash
cd apps/www && node scripts/fetch-domain-rating.mjs "<domain>"
```
This returns JSON with `ahrefsDR`, from Ahrefs' free public API (no API key required). Use it for the competitor entry.
## 4. Generate the slug
Create a URL-friendly slug from the product name (lowercase, hyphens, no special chars). For example: "Otterly.ai" → "otterly", "SE Ranking" → "se-ranking".
## 5. Take the screenshot and upload
Run the screenshot script:
```bash
cd apps/www && node scripts/screenshot-competitor.mjs "<slug>" "<url>"
```
This requires `SCREENSHOT_ONE_ACCESS_KEY` and `BLOB_READ_WRITE_TOKEN` in `apps/www/.env`.
If the script fails, inform the user and continue with the data entry — the screenshot can be added later.
**Verify the capture — don't trust it blindly.** ScreenshotOne uploads whatever the site serves, and sites with bot protection (Cloudflare, etc.) frequently return a captcha or block page to the headless browser, which then gets stored as the "screenshot." After a successful upload, download the blob URL the script printed and actually view the image:
```bash
curl -s -o /tmp/<slug>.jpg "<blob URL printed by the script>"
```
Open `/tmp/<slug>.jpg` and confirm it's genuinely the competitor's homepage/product — **not** a bot challenge ("Checking your browser…", "Select all squares with…", "verify you are human"), an access-denied / 403 page, or a blank/error page. If it's a challenge or error page, do NOT keep it: tell the user automated capture was blocked and ask them to send a real screenshot to upload manually (the script sets `allowOverwrite: true`, so re-uploading replaces the bad image).
## 6. Insert into data.ts
Read `apps/www/src/lib/competitors/data.ts` and insert the new `Competitor` object into the `competitors` array (position in this array doesn't matter for display order).
Use the same code style as the existing entries. Example entry:
```typescript
{
slug: "example-tool",
name: "Example Tool",
domain: "example.com",
url: "https://example.com",
tagline: "Short one-line description of what they do",
description:
"Longer 2-3 sentence description of the tool, its approach, and what makes it notable.",
category: "tracking",
ahrefsDR: 55,
status: "active",
features: {
multiLlmTracking: true,
visibilityScore: true,
citationAnalytics: true,
},
pricing: { hasFree: true, startingPrice: "$49/mo", hasEnterprise: false },
highlights: [
"First highlight",
"Second highlight",
"Third highlight",
],
},
```
## 7. Add to AEO popularity ranking
In the same file (`data.ts`), find the `aeoPopularityRanking` array. This is a hardcoded list of slugs ordered from most popular to least popular **as an AEO tool specifically**. It determines both the display order in the directory and the A–F popularity grade.
Insert the new tool's slug at the appropriate position based on these criteria (in priority order):
1. **Is AI visibility / AEO the tool's PRIMARY product?** Pure AEO trackers rank above SEO suites or content platforms that bolted on AEO features.
2. **Market traction as an AEO tool** — funding rounds, notable enterprise customers, press coverage (Fortune, WSJ, TechCrunch, etc.), user counts, industry recognition (G2, Gartner, etc.).
3. **Feature depth in core AEO capabilities** — multi-LLM tracking, visibility scores, citation analytics, competitor benchmarking, brand mention tracking.From EthanYoQ/Skill-hub, MIT.
More from EthanYoQ/Skill-hub
- 0.597score
contract-elicitor
EthanYoQ
Use FIRST when user requests any disease market sizing report (e.g.
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
cite-bound-content-generator
EthanYoQ
Phase 4 Turn 1 of disease-market-sizing-orchestration.
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
aact-bulk-trials
EthanYoQ
使用 AACT (Aggregate Analysis of ClinicalTrials.gov) PostgreSQL 数据仓库进行批量、历史、聚合性临床试验数据挖掘。Use this skill when the user requests bulk SQL analysis over the full…
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
content-verification-layer
EthanYoQ
Phase 4 Turn 2 of disease-market-sizing-orchestration (A6' upgrade).
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
aliyun-swas-manage
EthanYoQ
Use when managing Alibaba Cloud Simple Application Server (SWAS OpenAPI 2020-06-01) resources end-to-end, including querying instances…
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
agent-reach
EthanYoQ
MUST USE when user wants to 调研/research/搜索/search/查/找/look up anything on the internet — e.g.
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
baoyu-image-gen
EthanYoQ
AI image generation with OpenAI GPT Image 2, Azure OpenAI, Google, OpenRouter, DashScope, Z.AI GLM-Image, MiniMax, Jimeng, Seedream, Replicate and Agnes APIs.
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
bioc-fulltext-fetch
EthanYoQ
给定 PMID/PMCID 取结构化全文(NLM BioC XML/JSON)。封装 BioC PubMed(标题+摘要)和 BioC PMC OA(开放获取全文)端点,输出按章节切分的段落、表格上下文、RAG 友好 chunk,适合大批量入向量库。Fetches structured fulltext from…
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
agent-reach
EthanYoQ
MUST USE when user wants to 调研/research/搜索/search/查/找/look up anything on the internet — e.g.
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
citation-anchor-resolver
EthanYoQ
Cite-or-Block 架构的基石原子 skill。把报告里的 citation 锚点 (例如 [guideline:CSCO-2024-NSCLC:§5.5.2] / [pmid:12345678:abstract]) 解析为源文件片段,并核对事实声明里的关键词是否在引用源原文里出现。 Foundation…
SkillBFreshness: B★ 11Claude Code +9 - 0.594score
drug-citation-verifier
EthanYoQ
Cite-or-Block 架构下的药名 cross-check 原子 skill。给定报告文本与 .cache/<slug>/sources/,扫描每个药品提及 → 找最近 citation 锚点 → 核对锚点指向的源里是否真的提到了此药(通用名 + 商品名)。无字典、无 fallback、源里没 =…
SkillBFreshness: B★ 11Claude Code +9 - 0.592score
adaptive-quality-gate
EthanYoQ
Use when work produces a deliverable, factual claim, dataset, code change, decision, publication, deployment, automation, or irreversible action whose failure…
SkillBFreshness: B★ 11Claude Code +9
Signals
- Stars
- 11
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- Sep 19, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/EthanYoQ/Skill-hub
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from EthanYoQ
- 0.597score
baoyu-image-gen
EthanYoQ
AI image generation with OpenAI GPT Image 2, Azure OpenAI, Google, OpenRouter, DashScope, Z.AI GLM-Image, MiniMax, Jimeng, Seedream, Replicate and Agnes APIs.
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
bioc-fulltext-fetch
EthanYoQ
给定 PMID/PMCID 取结构化全文(NLM BioC XML/JSON)。封装 BioC PubMed(标题+摘要)和 BioC PMC OA(开放获取全文)端点,输出按章节切分的段落、表格上下文、RAG 友好 chunk,适合大批量入向量库。Fetches structured fulltext from…
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
aact-bulk-trials
EthanYoQ
使用 AACT (Aggregate Analysis of ClinicalTrials.gov) PostgreSQL 数据仓库进行批量、历史、聚合性临床试验数据挖掘。Use this skill when the user requests bulk SQL analysis over the full…
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
agent-reach
EthanYoQ
MUST USE when user wants to 调研/research/搜索/search/查/找/look up anything on the internet — e.g.
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
aliyun-swas-manage
EthanYoQ
Use when managing Alibaba Cloud Simple Application Server (SWAS OpenAPI 2020-06-01) resources end-to-end, including querying instances…
SkillBFreshness: B★ 11Claude Code +9 - 0.597score
citation-anchor-resolver
EthanYoQ
Cite-or-Block 架构的基石原子 skill。把报告里的 citation 锚点 (例如 [guideline:CSCO-2024-NSCLC:§5.5.2] / [pmid:12345678:abstract]) 解析为源文件片段,并核对事实声明里的关键词是否在引用源原文里出现。 Foundation…
SkillBFreshness: B★ 11Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get add-competitor running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
add-competitor skill. Agent Mart. https://agentmart.dev/skills/ethanyoq-add-competitor (last updated 2026-10-24)