affiliate-program-search
Research and evaluate affiliate programs to find the best ones to promote. Use this skill when the user asks anything about finding affiliate programs, comparing commission rates, evaluating affiliate opportunities, searching for products to promote, picking a niche, or mentions list.affitor.com. Also trigger for: "which SaaS should I promote", "best affiliate programs for X", "high commission programs", "recurring commission affiliate", "compare these affiliate programs", "is X affiliate program worth it", "find me something to promote", "what pays the most", "affiliate programs with long cookie duration".
Best use case
affiliate-program-search is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Research and evaluate affiliate programs to find the best ones to promote. Use this skill when the user asks anything about finding affiliate programs, comparing commission rates, evaluating affiliate opportunities, searching for products to promote, picking a niche, or mentions list.affitor.com. Also trigger for: "which SaaS should I promote", "best affiliate programs for X", "high commission programs", "recurring commission affiliate", "compare these affiliate programs", "is X affiliate program worth it", "find me something to promote", "what pays the most", "affiliate programs with long cookie duration".
Teams using affiliate-program-search should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/affiliate-program-search/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How affiliate-program-search Compares
| Feature / Agent | affiliate-program-search | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Research and evaluate affiliate programs to find the best ones to promote. Use this skill when the user asks anything about finding affiliate programs, comparing commission rates, evaluating affiliate opportunities, searching for products to promote, picking a niche, or mentions list.affitor.com. Also trigger for: "which SaaS should I promote", "best affiliate programs for X", "high commission programs", "recurring commission affiliate", "compare these affiliate programs", "is X affiliate program worth it", "find me something to promote", "what pays the most", "affiliate programs with long cookie duration".
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Affiliate Program Search
Help affiliate marketers research, evaluate, and pick winning programs to promote.
Data source: [list.affitor.com](https://list.affitor.com) — Affitor's community-driven affiliate program directory.
## Stage
This skill belongs to Stage S1: Research
## When to Use
- User wants to find affiliate programs to promote
- User wants to compare two or more affiliate programs
- User asks about commission rates, cookie duration, or earning potential
- User mentions list.affitor.com
- User is new to affiliate marketing and needs a starting point
## Input Schema
```
{
niche: string # (optional, default: "AI/SaaS tools") Category or niche interest
commission_pref: string # (optional, default: "recurring, 20%+") Commission preference
audience: string # (optional, default: "content creators") Target audience type
platform: string # (optional, default: "any") Platform they'll promote on
compare: string[] # (optional) Specific programs to compare head-to-head
}
```
## Workflow
### Step 1: Understand What the User Wants
Ask (if not clear from context):
- Niche/category interest? (AI tools, SEO, video, writing, automation...)
- Commission preference? (recurring vs one-time, minimum %)
- Audience type? (developers, marketers, beginners, enterprise...)
- Platform they'll promote on? (blog, LinkedIn, YouTube, X...)
If user says "just find me something good" → default to: AI/SaaS tools, recurring commission, 20%+, content creator audience.
### Step 2: Search list.affitor.com
See `references/list-affitor-api.md` for integration methods.
Two methods available:
- **API (preferred):** `GET /api/v1/programs` with API key auth — structured data, filterable
- **Web fetch (fallback):** `web_search "site:list.affitor.com [category]"` then `web_fetch` the page
Extract for each program: `name`, `reward_value`, `reward_type`, `cookie_days`, `stars_count`, `tags`, `description`.
### Step 3: Score Programs
Apply the scoring framework from `references/scoring-criteria.md`.
Score each program on 5 dimensions (1-10 scale):
1. **Earning Potential** (30%) — commission %, recurring vs one-time, product price
2. **Content Potential** (25%) — visual demo, free tier, content angles
3. **Market Demand** (20%) — search volume, trend direction, market size
4. **Competition Level** (15%) — fewer affiliates promoting = higher score
5. **Trust Factor** (10%) — product quality, reputation, stars on list.affitor.com
Overall = weighted average. Verdict: 7.5+ "Strong Pick" / 5.5-7.4 "Worth Testing" / <5.5 "Skip".
For dimensions that require external data (Market Demand, Competition Level), use `web_search` to check Google results count for "[product] review" and "[product] affiliate" queries.
### Step 4: Present Recommendation
## Output Schema
Other skills (viral-post-writer, affiliate-blog-builder, etc.) consume these fields from conversation context:
```
{
recommended_program: {
name: string # "HeyGen"
slug: string # "heygen"
reward_value: string # "30%"
reward_type: string # "cps_recurring"
reward_duration: string # "12 months"
cookie_days: number # 60
description: string # Short product description
tags: string[] # ["ai", "video"]
url: string # Product website
}
score: {
overall: number # 8.2
verdict: string # "Strong Pick"
reasoning: string # Why this is the top pick
}
runner_up: Program | null # Same structure, second choice
all_scored: ProgramScore[] # Full list of scored programs
}
```
## Output Format
```
## Programs Found
| Program | Commission | Type | Cookie | Stars | Score |
|---------|-----------|------|--------|-------|-------|
| HeyGen | 30% | Recurring | 60d | ⭐ 42 | 8.2/10 |
| ... | ... | ... | ... | ... | .../10 |
## Top Pick: [Program Name]
**Why:** [2-3 sentences explaining why this is the best fit]
| Dimension | Score | Note |
|-----------|-------|------|
| Earning Potential | 8/10 | 30% recurring on $24-48/mo |
| Content Potential | 9/10 | Visual AI video, easy to demo |
| Market Demand | 8/10 | AI video trending, high search volume |
| Competition | 6/10 | Growing number of affiliates |
| Trust Factor | 8/10 | Strong brand, 42 stars on list.affitor.com |
| **Overall** | **8.2/10** | **Strong Pick** |
## Runner-up: [Program Name]
**Why:** [1-2 sentences]
## Next Steps
1. Sign up for [Program] affiliate program → [search for signup page]
2. Run `viral-post-writer` to create content for this product
3. Run `affiliate-blog-builder` to write a review post
```
## Error Handling
- **API unavailable:** Fall back to web_fetch method (see `references/list-affitor-api.md` Method 2)
- **No programs match criteria:** Broaden search (remove strictest filter first), explain to user what was relaxed
- **Stale data (program updated_at > 6 months):** Flag with "Data may be outdated, verify on product website"
- **User gives no criteria:** Use defaults (AI/SaaS, recurring, 20%+, content creator audience)
- **Program not on list.affitor.com:** Use `web_search` to find program details directly, still apply scoring framework
## Examples
**Example 1:**
User: "I want to promote AI video tools, commission recurring, at least 20%"
→ Search list.affitor.com for programs tagged "ai" or "video"
→ Filter: reward_type = cps_recurring, reward_value ≥ 20%
→ Score and rank: HeyGen, Synthesia, ElevenLabs, InVideo AI...
→ Recommend top pick with full scorecard
**Example 2:**
User: "Compare HeyGen vs Synthesia for my LinkedIn audience"
→ Fetch both from list.affitor.com
→ Score both, emphasize Content Potential for LinkedIn
→ Side-by-side comparison table + recommendation
→ Note: LinkedIn audience = B2B, weight higher-price products
**Example 3:**
User: "I'm a beginner, what should I promote first?"
→ Default criteria: AI/SaaS, recurring, easy-to-demo products
→ Weight beginner-friendly factors: free tier, low payout threshold, strong brand
→ Recommend program with easiest path to first commission
## References
- `references/scoring-criteria.md` — the 5-dimension scoring framework with rubrics
- `references/list-affitor-api.md` — how to fetch data from list.affitor.com (API + fallback)
- `references/platform-rules.md` — platform-specific considerations when recommending programsRelated Skills
search
Full-text search implementation with Algolia, MeiliSearch, PostgreSQL pg_trgm, search UX patterns, autocomplete, and relevance tuning
research
Deep research with multi-source gathering, source evaluation, contradiction detection, and structured synthesis
research-loop
Iterative experiment loop — read spec, implement, run, evaluate, commit on success or reset and retry with learnings. Git-safe autonomous experimentation.
multi-program-manager
Manage and compare multiple affiliate programs as a portfolio. Triggers on: "manage my affiliate programs", "compare my programs", "portfolio overview", "which program should I focus on", "diversify my affiliate income", "program switching", "affiliate portfolio", "program comparison", "revenue allocation", "which programs to drop", "add new programs", "affiliate program strategy".
ultrathink
UltraThink Workflow OS — 4-layer skill mesh with persistent memory and privacy hooks for complex engineering tasks. Routes prompts through intent detection to activate the right domain skills automatically.
ultrathink_review
Multi-pass code review powered by UltraThink's quality gate — checks correctness, security (OWASP), performance, readability, and project conventions in a single structured pass.
ultrathink_memory
Persistent memory system for UltraThink — search, save, and recall project context, decisions, and patterns across sessions using Postgres-backed fuzzy search with synonym expansion.
ui-design
Comprehensive UI design system: 230+ font pairings, 48 themes, 65 design systems, 23 design languages, 30 UX laws, 14 color systems, Swiss grid, Gestalt principles, Pencil.dev workflow. Inherits ui-ux-pro-max (99 UX rules) + impeccable-frontend-design (anti-AI-slop). Triggers on any design, UI, layout, typography, color, theme, or styling task.
Zod
> TypeScript-first schema validation with static type inference.
webinar-registration-page
Build a webinar or live event registration page as a self-contained HTML file with countdown timer, speaker bio, agenda, and registration form. Triggers on: "build a webinar registration page", "create a webinar sign-up page", "event registration landing page", "live training registration page", "workshop sign-up page", "create a webinar page", "build an event page", "free webinar landing page", "live demo registration page", "online event page", "create a registration page for my webinar", "build a training event page".
webhooks
Webhook design patterns — delivery, retry with exponential backoff, HMAC signature verification, payload validation, idempotency keys
web-workers
Offload heavy computation from the main thread using Web Workers, SharedWorkers, and Comlink — structured messaging, transferable objects, and off-main-thread architecture patterns