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".

290 stars

Best use case

multi-program-manager is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

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".

Teams using multi-program-manager 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

$curl -o ~/.claude/skills/multi-program-manager/SKILL.md --create-dirs "https://raw.githubusercontent.com/Affitor/affiliate-skills/main/skills/automation/multi-program-manager/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/multi-program-manager/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How multi-program-manager Compares

Feature / Agentmulti-program-managerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

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".

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

# Multi-Program Manager

Manage and compare multiple affiliate programs as a portfolio — overview, performance comparison, diversification strategy, program switching decisions, and revenue allocation. Output is a portfolio dashboard with strategic recommendations and a weekly action plan.

## Stage

S7: Automation — Most affiliates either promote too few programs (concentration risk) or too many (effort dilution). This skill applies portfolio thinking to affiliate marketing: analyze your programs like investments, identify which to double down on, maintain, or drop, and allocate your limited time for maximum ROI.

## When to Use

- User manages multiple affiliate programs and wants a strategic overview
- User asks "which program should I focus on?" or "should I drop this program?"
- User wants to diversify their affiliate income
- User says "compare my programs", "portfolio review", "program strategy"
- User is deciding whether to add or remove programs
- Chaining from S6.3 (performance-report): take performance data and make strategic decisions

## Input Schema

```yaml
programs:
  - name: string               # REQUIRED — program name
    affiliate_url: string      # OPTIONAL — affiliate link
    reward_value: string       # OPTIONAL — commission (e.g., "30% recurring")
    reward_type: string        # OPTIONAL — "cps_recurring" | "cps_one_time" | "cpl" | "cpc"
    monthly_revenue: number    # OPTIONAL — avg monthly revenue ($)
    monthly_clicks: number     # OPTIONAL — avg monthly clicks
    niche: string              # OPTIONAL — product category
    status: string             # OPTIONAL — "active" | "paused" | "new" | "considering"

goal: string                   # OPTIONAL — "maximize_revenue" | "diversify"
                               # | "reduce_risk" | "find_gaps"
                               # Default: "maximize_revenue"

budget_hours: number           # OPTIONAL — weekly hours available for content
                               # Default: 10
```

**Chaining context**: If S1 program research or S6.3 performance data exists in conversation, pull program details and metrics automatically.

## Workflow

### Step 1: Build Portfolio Overview

Compile all programs into a dashboard:
- Program name, niche, commission type, commission value
- Monthly revenue, clicks, EPC
- Status (active/paused/new)
- Revenue share (% of total)

### Step 2: Calculate Per-Program Metrics

For each program with data:
- **EPC**: revenue / clicks
- **Revenue Share**: program revenue / total revenue × 100
- **Effort-to-Revenue Ratio**: estimated hours spent / revenue generated
- **Commission Quality Score**: recurring > one-time > per-lead > per-click

### Step 3: Apply Portfolio Analysis

**Concentration Risk**:
- If top program > 50% of revenue → HIGH RISK
- If top 2 programs > 80% → MODERATE RISK
- If no program > 30% → WELL DIVERSIFIED

**Niche Overlap**:
- Multiple programs in same niche → competing for same audience
- Different niches → healthy diversification

**Revenue Stability**:
- Recurring commissions → stable
- One-time commissions → volatile (need constant new traffic)

### Step 4: Generate Recommendations

For each program, assign an action:
- **Double Down**: High EPC, room to grow → create more content, scale traffic
- **Maintain**: Solid performer, no changes needed → keep existing content fresh
- **Optimize**: High traffic but low conversion → improve CTAs, landing pages, test variants
- **Phase Out**: Low EPC, low growth potential → redirect effort to better programs
- **Add**: Gap identified → research new programs with S1

### Step 5: Create Action Plan

Based on `budget_hours`, allocate weekly time:
- Double-down programs get 50% of time
- Maintain programs get 20%
- Optimize programs get 20%
- New program research gets 10%

Provide specific weekly tasks tied to Affitor skills.

### Step 6: Self-Validation

Before presenting output, verify:

- [ ] Revenue share percentages sum to ~100%
- [ ] EPC calculations correct (revenue ÷ clicks per program)
- [ ] Concentration risk accurate (flag if top program >50% of revenue)
- [ ] Actions match performance: double_down (Star), maintain (Cash Cow), optimize (Question Mark), phase_out (Dog)
- [ ] Weekly time allocation sums to user's stated hours budget

If any check fails, fix the output before delivering. Do not flag the checklist to the user — just ensure the output passes.

## Output Schema

```yaml
output_schema_version: "1.0.0"  # Semver — bump major on breaking changes
portfolio:
  total_programs: number
  active_programs: number
  total_monthly_revenue: number
  concentration_risk: string   # "high" | "moderate" | "low"
  niche_diversification: string # "good" | "overlapping" | "single_niche"
  revenue_stability: string    # "stable" | "moderate" | "volatile"

programs:
  - name: string
    niche: string
    reward_type: string
    monthly_revenue: number
    epc: number
    revenue_share: number
    action: string             # "double_down" | "maintain" | "optimize" | "phase_out"
    reason: string

recommendations:
  - action: string
    program: string
    skill: string              # which Affitor skill to use
    task: string               # specific task
    priority: number           # 1 = highest

weekly_plan:
  total_hours: number
  allocation:
    - program: string
      hours: number
      tasks: string[]
```

## Output Format

1. **Portfolio Dashboard** — table with all programs, revenue, EPC, revenue share
2. **Portfolio Health** — concentration risk, diversification, stability assessment
3. **Program Scorecards** — per-program action (double down / maintain / optimize / phase out) with reason
4. **Strategic Recommendations** — prioritized list of actions with Affitor skill references
5. **Weekly Action Plan** — hour-by-hour allocation with specific tasks

## Error Handling

- **Only one program**: "You have a single program. That's 100% concentration risk. I'll analyze it and recommend 2-3 complementary programs using S1 (affiliate-program-search)."
- **No revenue data**: "Without revenue data, I'll analyze based on commission structure and niche overlap. For deeper analysis, run S6.3 (performance-report) first to get your numbers."
- **All programs in same niche**: "All your programs are in [niche]. You're diversified by product but not by market. If [niche] declines, all your income is at risk. Consider adding programs in adjacent niches."

## Examples

### Example 1: Portfolio with clear winner

**User**: "I promote HeyGen ($450/mo), Semrush ($320/mo), Notion ($125/mo), Canva ($80/mo). Which should I focus on?"
**Action**: HeyGen is the star (46% revenue, likely highest EPC). Recommend: Double down on HeyGen (more blog content, S7 content-repurposer). Maintain Semrush. Optimize Notion (high conversion rate potential). Evaluate Canva (low revenue, is it worth the effort?). Weekly plan: 5h HeyGen, 2h Semrush, 2h Notion, 1h research.

### Example 2: Diversification analysis

**User**: "I make $2K/month from 3 SaaS tools. How do I reduce risk?"
**Action**: All income from one niche (SaaS) = moderate risk. Recommend: Add 1-2 programs in adjacent niches (e.g., online courses, hosting). Check commission types — if all one-time, recommend adding recurring programs. Use S1 to research programs in new niches.

### Example 3: Program switching decision

**User**: "Should I drop Canva ($80/mo, 500 clicks) and replace it with Jasper?"
**Action**: Canva EPC = $0.16 (low). Calculate opportunity cost: 500 clicks redirected to a $0.50+ EPC program = $250/mo potential. Research Jasper commission (likely $100+ per sale). Recommend: Yes, switch. Use S1 to evaluate Jasper, then S3 for a comparison blog post.

## References

- `shared/references/affiliate-glossary.md` — Portfolio and commission terminology. Referenced in Step 2.
- `shared/references/flywheel-connections.md` — master flywheel connection map

## Flywheel Connections

### Feeds Into
- `commission-calculator` (S1) — managed programs for portfolio calculation
- `funnel-planner` (S8) — portfolio data for funnel planning

### Fed By
- `affiliate-program-search` (S1) — new programs to add to portfolio
- `conversion-tracker` (S6) — performance data per program
- `performance-report` (S6) — portfolio performance trends

### Feedback Loop
- `performance-report` (S6) reveals underperforming programs → recommend swaps or investment reallocation

```yaml
chain_metadata:
  skill_slug: "multi-program-manager"
  stage: "automation"
  timestamp: string
  suggested_next:
    - "commission-calculator"
    - "performance-report"
    - "affiliate-program-search"
```

Related Skills

list-affitor-program

290
from Affitor/affiliate-skills

Research an affiliate program and create a verified listing for list.affitor.com. Use this skill when the user asks anything about listing a program, adding an affiliate program to the directory, submitting a program to list, creating a listing, documenting an affiliate program, sharing an affiliate program, writing a program profile, posting a program to list.affitor.com, or contributing a new program. Also trigger for: "list a program", "add affiliate program", "submit program to list", "create listing for X", "document affiliate program", "share affiliate program", "write a listing", "post to list.affitor.com", "add X to the directory", "register an affiliate program", "publish affiliate program", "new program listing", "profile this affiliate program", "catalog this program".

affiliate-program-search

290
from Affitor/affiliate-skills

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".

your-skill-name

290
from Affitor/affiliate-skills

Replace with when the AI should activate this skill. Be pushy — cover multiple phrasings so the AI activates for a wide range of user prompts.

trending-content-scout

290
from Affitor/affiliate-skills

Scan social platforms for top-performing content by engagement before you create anything. Use this skill when the user wants to see what content is winning in a niche, find viral content patterns, research what's working on YouTube/TikTok/X/Reddit, benchmark engagement, discover content gaps, or says "what content is working for [topic]", "show me top performing content about [keyword]", "what's trending in [niche]", "find viral content about [product]", "content research for [keyword]", "what gets views in [niche]", "engagement analysis for [topic]", "scout the competition", "what videos are getting the most views about [keyword]", "social listening for [topic]", "trending content in [niche]", "top content analysis", "what hooks work for [keyword]", "content intelligence", "find winning formats".

traffic-analyzer

290
from Affitor/affiliate-skills

Analyze website traffic, global rank, engagement metrics, and traffic sources for any domain. Use this skill to evaluate affiliate program websites, compare competitor traffic, assess advertiser strength, or understand where an audience comes from. Triggers on: "analyze traffic for [domain]", "how much traffic does [site] get", "compare traffic between [site A] and [site B]", "is [program] worth promoting based on traffic", "traffic analysis", "website analytics for [domain]", "where does [site] get traffic", "check if [advertiser] is legit", "evaluate [program] website health", "SimilarWeb analysis", "traffic sources for [domain]", "how popular is [site]", "website rank", "domain authority check", "compare affiliate program websites".

purple-cow-audit

290
from Affitor/affiliate-skills

Score product remarkability 1-10 to decide if it's worth promoting. Seth Godin's Purple Cow test. Triggers on: "is this product worth promoting", "should I promote", "product audit", "purple cow", "remarkable product", "is it remarkable", "rate this product", "product quality check", "worth my reputation", "product evaluation", "would I recommend without commission", "product remarkability score", "evaluate this affiliate product", "quality gate for promotion".

niche-opportunity-finder

290
from Affitor/affiliate-skills

Find untapped affiliate niches with real earning potential. Use this skill when the user asks about picking a niche, finding a niche to start affiliate marketing, what niche to get into, niche research, niche ideas, beginner niche selection, low competition niches, profitable niches, or says "I don't know what to promote", "help me pick a niche", "what niche should I start with", "find me a niche with less competition", "niche ideas for affiliate", "is X a good niche for affiliate marketing", "best niches 2024", "untapped niches".

monopoly-niche-finder

290
from Affitor/affiliate-skills

Find intersection niches where you're the ONLY voice. Thiel's "competition is for losers" lens. Triggers on: "find my monopoly niche", "blue ocean niche", "unique niche", "niche intersection", "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".

content-angle-ranker

290
from Affitor/affiliate-skills

Rank content angles by engagement data, competition level, and platform fit. Data-driven angle selection instead of guesswork. Use this skill when the user has a keyword or product and needs to decide WHAT to create, which angle to take, which format to use, or which platform to target. Triggers on: "what angle should I use", "rank content ideas for [keyword]", "best angle for [product]", "which content idea will perform best", "help me pick an angle", "what should I write about", "content angle for [topic]", "rank my content ideas", "which approach will get the most views", "data-driven content planning", "angle ranker", "content scoring", "which hook should I use", "compare these content ideas", "prioritize my content angles", "what video should I make".

competitor-spy

290
from Affitor/affiliate-skills

Reverse-engineer successful affiliate strategies from competitors. Use this skill when the user asks about spying on competitors, researching what other affiliates promote, analyzing competitor affiliate sites, understanding how top affiliates in a niche make money, or says "what programs does X promote", "how does [site] make money", "what affiliate strategy does this site use", "spy on competitor affiliates", "reverse engineer affiliate site", "copy what works in my niche", "who are the top affiliates in X niche", "what content gets traffic in my niche", "competitor affiliate analysis".

commission-calculator

290
from Affitor/affiliate-skills

Calculate realistic affiliate earnings projections before committing to a program. Use this skill when the user asks about affiliate earnings, projecting income, calculating commissions, estimating how much they can make, comparing program payouts, or says "how much can I make promoting X", "calculate my affiliate income", "is this commission worth it", "how long to first $1000", "compare earnings between programs", "traffic to income calculator", "what conversion rate should I expect", "earnings estimate for affiliate program", "how many sales do I need".

skill-finder

290
from Affitor/affiliate-skills

Find the right Affitor skill for your goal. Triggers on: "which skill should I use", "find me a skill", "what skills are available", "help me choose a skill", "skill for SEO", "skill for email", "explore skills", "I'm new to Affitor", "what can Affitor do", "search skills", "skill for blog writing", "skill for landing pages", "skill for analytics".