> Find intersection niches where you're the ONLY voice. Thiel's "competition is for losers" lens. "where am I the only one", "zero competition niche", "untapped niche", "category of one", "Thiel monopoly", "dominate a niche", "niche nobody else covers", "cross two domains", "find a niche with no competition", "monopoly positioning", "unique angle for affiliate".
npx skills add https://github.com/Affitor/affiliate-skills --skill monopoly-niche-finder
Find intersection niches where you're the ONLY voice. Based on Peter Thiel's "competition is for losers" — instead of fighting for market share in "AI tools" or "SaaS reviews," cross two domains to create a niche where you're the default authority. Example: "AI video tools for real estate agents" — specific enough to own, broad enough to monetize.
S1: Research — Finding your monopoly niche IS research. This happens before you pick a program, before you write content. It's the strategic foundation that makes everything downstream easier.
affiliate-program-search to narrow the search spacedomain_1: string # OPTIONAL — first area of expertise/interest
# e.g., "real estate", "fitness", "accounting"
# Default: ask user
domain_2: string # OPTIONAL — second area to cross with
# e.g., "AI tools", "no-code", "automation"
# Default: suggest options
existing_audience: string # OPTIONAL — who already follows/reads you
# e.g., "small business owners", "developers"
# Default: none
monetization_goal: string # OPTIONAL — "affiliate" | "info-product" | "both"
# Default: "affiliate"
If domains not provided:
If one domain provided, suggest 3-5 complementary domains to cross with.
For each domain pair, generate 3-5 intersection niches:
Format: [Domain 1] × [Domain 2] = [Intersection Niche]
For each intersection:
For each top intersection niche:
web_search for "[intersection niche]" site:reddit.com — are people asking about this?web_search for "[intersection niche]" blog — how many dedicated resources exist? (fewer = better)web_search for "[intersection niche]" affiliate program — monetization potentialScore each niche on:
| Factor | Weight | Scoring |
|---|---|---|
| Monopoly potential | 30% | 1-10: how few competitors |
| Monetization | 25% | 1-10: affiliate program quality |
| Audience size | 20% | 1-10: search volume + community size |
| Your fit | 15% | 1-10: expertise + passion |
| Content potential | 10% | 1-10: can you create 50+ pieces |
For the #1 scored niche:
output_schema_version: "1.0.0"
monopoly_niche:
domain_1: string
domain_2: string
intersection: string # The winning niche
monopoly_score: number # 1-100 composite
competition_level: string # "none" | "minimal" | "moderate" | "high"
audience_size: string # Estimated monthly search interest
affiliate_programs: string[] # Programs that fit this niche
niche_candidates: # All evaluated niches
- intersection: string
score: number
competition: string
monetization: string
content_roadmap:
ideal_reader: string
first_topics: string[] # First 3 content pieces
total_topics: number # How many topics mapped
chain_metadata:
skill_slug: "monopoly-niche-finder"
stage: "research"
timestamp: string
suggested_next:
- "affiliate-program-search"
- "niche-opportunity-finder"
- "keyword-cluster-architect"
- "category-designer"
## Monopoly Niche Analysis
### Your Domains
- Domain 1: [domain]
- Domain 2: [domain]
### Intersection Niches Evaluated
| # | Intersection | Monopoly | Monetization | Audience | Fit | Content | Score |
|---|---|---|---|---|---|---|---|
| 1 | [niche] | X/10 | X/10 | X/10 | X/10 | X/10 | XX/100 |
| 2 | ... | | | | | | |
### Winner: [Top Niche]
**Why this is a monopoly niche:**
[Explanation — why you can be the ONLY voice here]
**Competition check:**
[What exists today — and why it's not enough]
**Affiliate programs:**
[3-5 programs that fit, with commission data]
**Your ideal reader:**
[Persona description]
### Content Roadmap (first 3 pieces)
1. [Topic] — [why this first]
2. [Topic] — [builds on #1]
3. [Topic] — [establishes authority]
### Next Steps
- Run `affiliate-program-search` filtered to [niche] programs
- Run `keyword-cluster-architect` to map the full content opportunity
- Run `category-designer` to name and own your category
Example 1: "I know real estate and I'm into AI tools"
→ Intersections: "AI tools for real estate agents", "AI property photography", "AI-powered real estate marketing", "Automated real estate content creation", "AI virtual staging tools". Validate each, score, deep-dive the winner.
Example 2: "I'm a developer struggling to stand out in the SaaS review space"
→ Cross "developer" with "SaaS": "Developer tools for non-technical founders", "DevOps tools for solo SaaS builders", "API-first marketing tools". Find the gap where dev expertise adds credibility.
Example 3: "Find me a niche with no competition"
→ Ask about domains/interests first, then generate intersections, validate with search data, prove low competition with evidence.
affiliate-program-search (S1) — narrowed niche for program discoveryniche-opportunity-finder (S1) — validated niche to explore furtherkeyword-cluster-architect (S3) — niche defines keyword universecontent-pillar-atomizer (S2) — niche positioning for content anglescategory-designer (S8) — niche to formalize into a categoryseo-audit (S6) — ranking data reveals niches you're already winning inperformance-report (S6) — performance data shows which niche content convertsconversion-tracker (S6) shows which niche topics convert best → double down on highest-converting intersection anglesshared/references/affiliate-glossary.md — Terminologyshared/references/case-studies.md — Real niche success storiesshared/references/flywheel-connections.md — Master connection mapCreate beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Improves the quality of images, especially screenshots, by enhancing resolution, sharpness, and clarity. Perfect for preparing images for presentations, documentation, or social media posts.
Downloads videos from YouTube and other platforms for offline viewing, editing, or archival. Handles various formats and quality options.
Lightweight WSI tile extraction and preprocessing. Use for basic slide processing tissue detection, tile extraction, stain normalization for H&E images. Best for simple pipelines, dataset preparation, quick tile-based analysis. For advanced spatial proteomics, multiplexed imaging, or deep learning pipelines use pathml.
Microscopy data management platform. Access images via Python, retrieve datasets, analyze pixels, manage ROIs/annotations, batch processing, for high-content screening and microscopy workflows.
Python library for working with DICOM (Digital Imaging and Communications in Medicine) files. Use this skill when reading, writing, or modifying medical imaging data in DICOM format, extracting pixel data from medical images (CT, MRI, X-ray, ultrasound), anonymizing DICOM files, working with DICOM metadata and tags, converting DICOM images to other formats, handling compressed DICOM data, or processing medical imaging datasets. Applies to tasks involving medical image analysis, PACS systems, radiology workflows, and healthcare imaging applications.
This skill should be used when working with pre-trained transformer models for natural language processing, computer vision, audio, or multimodal tasks. Use for text generation, classification, question answering, translation, summarization, image classification, object detection, speech recognition, and fine-tuning models on custom datasets.
Take affitor/monopoly-niche-finder from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.