Agent skill

Multi Program Manager

by Affitor in Affitor/affiliate-skills

Manage and compare multiple affiliate programs as a portfolio.

MITAuto-check passedMarketing & SEO

Install Multi Program Manager

skills CLI
$ npx skills add Affitor/affiliate-skills --skill multi-program-manager -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Affitor/affiliate-skills multi-program-manager --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Affitor/affiliate-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/automation/multi-program-manager .claude/skills/multi-program-manager && rm -rf skills-src

Use ~/.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/

Facts

Skill name
multi-program-manager
GitHub stars
699
Token cost
~2.3k tokens
SKILL.md length
850 words
Files
2
Skills in repo
50
Repo updated
First seen
Licence
MIT

At a glance

Manage and compare multiple affiliate programs as a portfolio.

  • Works in 6 steps: Build Portfolio Overview → Calculate Per-Program Metrics → Apply Portfolio Analysis → …
  • : manage my affiliate programs
  • SKILL.md covers Stage, When to Use, Input Schema and Workflow, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Multi Program Manager is an agent skill from Affitor/affiliate-skills. 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".

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file. Compatibility notes: Claude Code, ChatGPT, Gemini CLI, Cursor, Windsurf, OpenClaw, any AI agent

It sits in Marketing & SEO, covering Influencer and creator marketing. The repository describes itself as: 50 AI agent skills for affiliate marketing. Research trending content, write data-backed posts, generate infographics, build landing pages, deploy — full flywheel with social… The licence is MIT.

When your agent uses it

  • : manage my affiliate programs
  • Compare my programs
  • Portfolio overview
  • Which program should I focus on

Example prompts

  • “manage my affiliate programs”
  • “compare my programs”
  • “portfolio overview”
  • “/multi-program-manager”

Requirements

  • Compatibility (from SKILL.md): Claude Code, ChatGPT, Gemini CLI, Cursor, Windsurf, OpenClaw, any AI agent

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Build Portfolio Overview
  2. Calculate Per-Program Metrics
  3. Apply Portfolio Analysis
  4. Generate Recommendations
  5. Create Action Plan
  6. Self-Validation

What it can do on your machine

Read from SKILL.md and the folder at commit e43bfae. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are yaml).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Claude Code, ChatGPT, Gemini CLI, Cursor, Windsurf, OpenClaw, any AI agent

    From compatibility in the SKILL.md frontmatter.

Context cost

Multi Program Manager loads about 2.3k tokens when it runs. Until then it costs about 102 tokens; SKILL.md has 850 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~102
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

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.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

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.

SKILL.md

The full file from Affitor/affiliate-skills at commit e43bfae, republished under its MIT licence (© Affitor). 850 words, ~2,342 tokens.

Download SKILL.mdSave it as .claude/skills/multi-program-manager/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
multi-program-manager
description
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".
compatibility
Claude Code, ChatGPT, Gemini CLI, Cursor, Windsurf, OpenClaw, any AI agent
license
MIT
version
1.0.0
tags
affiliate-marketing, automation, scaling, workflow, portfolio, multi-program
metadata.author
affitor
metadata.version
1.0
metadata.stage
S7-Automation

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
Show full SKILL.md (334 more words)Show less

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"

© Affitor, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/automation/multi-program-manager of Affitor/affiliate-skills.

  • SKILL.md
  • LICENSE.txt

Open the folder on GitHubat commit e43bfae

Compare with similar skills

Multi Program Manager 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.

Multi Program Manager compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Multi Program Manager this skillAffitor/affiliate-skills699—~2.3kAutomated safety check: PassMIT
Influencer Discoverytigerless-labs/influencer-discovery211—~2.5kAutomated safety check: NotesNone
Opencloneteam-attention/openclone130—~2.6kAutomated safety check: NotesMIT
Reelclaw Adsdansugc/reelclaw145—~3.9kAutomated safety check: NotesMIT
Audience ResearchScrapeCreators/social-media-research-skills3.3k—~635Automated safety check: NotesMIT
Effect Monitoringvivy-yi/xiaohongshu-skills4741 repos~4.5kAutomated safety check: PassNone

Similar skills

  • Influencer Discovery

    tigerless-labs/influencer-discovery

    Find the bloggers/creators who can help promote your work, capture their contact info, and append them to the target sheet in Google Sheets.

    211 GitHub stars~2.5k tokensUpdated 16 days ago
    Marketing & SEOAuto-check: notes
  • Openclone

    team-attention/openclone

    Create, manage, or talk to an openclone "clone" — a named AI persona with one or more categories (vc, tech, founder, expert, influencer, politician, celebrity) and attached knowledge.

    130 GitHub stars~2.6k tokensUpdated 1 mo ago
    Marketing & SEOAuto-check: notes
  • Reelclaw Ads

    dansugc/reelclaw

    Make short-form UGC video ads (TikTok, Reels, Shorts) for the product in the current repo with DansUGC ReelClaw and real human creator reactions from the DansUGC library.

    145 GitHub stars~3.9k tokensUpdated 9 days ago
    Marketing & SEOAuto-check: notes
  • Audience Research

    ScrapeCreators/social-media-research-skills

    A skill your agent uses when the user wants to evaluate a creator, influencer, or brand audience using public profile signals, TikTok audience demographics, follower/following data, comments…

    3.3k GitHub stars~635 tokensUpdated 1 mo ago
    Marketing & SEOAuto-check: notes
  • Effect Monitoring

    vivy-yi/xiaohongshu-skills

    A skill your agent uses when monitoring Xiaohongshu marketing campaign performance, tracking promotion effectiveness, analyzing advertising ROI, measuring influencer collaboration results…

    474 GitHub starsUsed in 1 repo~4.5k tokens
    Marketing & SEOAuto-check passed
  • Twitter Search

    juntoku9/claude-for-crypto-research

    Search Twitter/X for crypto sentiment, influencer opinions, and community discussions.

    106 GitHub stars~1k tokensUpdated 8 mo ago
    Marketing & SEOAuto-check passed

More from Affitor/affiliate-skills

All 50 skills in this repo
  • Performance Report

    Affitor/affiliate-skills

    Generate affiliate performance reports with KPIs and recommendations.

    699 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Affiliate Check

    Affitor/affiliate-skills

    Live affiliate program data from openaffiliate.dev. An agent skill from Affitor/affiliate-skills.

    699 GitHub stars~808 tokensUpdated 23 days ago
    Auto-check: notes
  • Affiliate Program Search

    Affitor/affiliate-skills

    Research and evaluate affiliate programs to find the best ones to promote.

    699 GitHub stars~2.4k tokensUpdated 23 days ago
    Auto-check passed
  • Bio Link Deployer

    Affitor/affiliate-skills

    Create a Linktree-style bio link hub page as a single self-contained HTML file.

    699 GitHub stars~3k tokensUpdated 23 days ago
    Auto-check passed
  • Conversion Tracker

    Affitor/affiliate-skills

    Set up affiliate conversion tracking with UTM parameters and link tagging.

    699 GitHub stars~2.1k tokensUpdated 23 days ago
    Auto-check passed
  • Product Showcase Page

    Affitor/affiliate-skills

    Build a single-product deep-dive showcase page as a self-contained HTML file.

    699 GitHub stars~3.6k tokensUpdated 23 days ago
    Auto-check passed

Categories

Questions about Multi Program Manager

What does Multi Program Manager do?

Manage and compare multiple affiliate programs as a portfolio. Multi Program Manager is an agent skill from Affitor/affiliate-skills. Manage and compare multiple affiliate programs as a portfolio.

When should I use Multi Program Manager?

Multi Program Manager fits situations like: : manage my affiliate programs; compare my programs; portfolio overview; which program should I focus on.

How do I install Multi Program Manager in Claude Code?

Run `npx skills add Affitor/affiliate-skills --skill multi-program-manager -a claude-code`. Or copy the skill folder (skills/automation/multi-program-manager in Affitor/affiliate-skills) into .claude/skills/multi-program-manager in your project. Claude Code loads it when a task matches its description.

How do I install Multi Program Manager in Codex?

Run `npx skills add Affitor/affiliate-skills --skill multi-program-manager -a codex`. Or copy the skill folder (skills/automation/multi-program-manager in Affitor/affiliate-skills) into .agents/skills/multi-program-manager in your project. Codex loads it when a task matches its description.

Can I use Multi Program Manager in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Affitor/affiliate-skills --skill multi-program-manager -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/multi-program-manager, .gemini/skills/multi-program-manager, .github/skills/multi-program-manager and .opencode/skills/multi-program-manager in your project.

What does Multi Program Manager need to run?

SKILL.md names no scripts, command-line tools or credentials: Multi Program Manager is instructions for the agent only. Compatibility (from SKILL.md): Claude Code, ChatGPT, Gemini CLI, Cursor, Windsurf, OpenClaw, any AI agent.

Does Multi Program Manager access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Multi Program Manager safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Multi Program Manager use?

Multi Program Manager is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Multi Program Manager use?

About 2.3k tokens (SKILL.md is roughly 9.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Multi Program Manager?

Skills that share tags, products or a category with Multi Program Manager: Influencer Discovery (tigerless-labs/influencer-discovery, 211 stars), Openclone (team-attention/openclone, 130 stars), Reelclaw Ads (dansugc/reelclaw, 145 stars) and Audience Research (ScrapeCreators/social-media-research-skills, 3.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Multi Program Manager?

Affitor (a GitHub organization) maintains it in Affitor/affiliate-skills, which has 699 GitHub stars. The repository holds 50 skills in this directory. The repository was last updated on September 15, 2026.

Source: Affitor/affiliate-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.