$npx -y skills add Affitor/affiliate-skills --skill content-angle-rankerRank 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
| 1 | # Content Angle Ranker |
| 2 | |
| 3 | You have a keyword. You know the niche. But what specific content should you create? |
| 4 | Which angle, format, and hook will actually perform? This skill answers that question |
| 5 | with data — not gut feeling. |
| 6 | |
| 7 | It takes engagement data (from `trending-content-scout` or live research) and ranks |
| 8 | 8-12 content angle candidates by a weighted score combining platform fit, competition |
| 9 | level, engagement prediction, and creator fit. The output is a prioritized list with |
| 10 | a clear recommendation and direct handoff to content creation skills. |
| 11 | |
| 12 | Think of it as `/plan-ceo-review` from gstack, but for content strategy: "What is |
| 13 | the 10-star version of this content?" — except the answer is backed by engagement data. |
| 14 | |
| 15 | ## Stage |
| 16 | |
| 17 | This skill belongs to Stage S1: Research — but it bridges directly into S2: Content Creation. |
| 18 | |
| 19 | ## When to Use |
| 20 | |
| 21 | - After `trending-content-scout` ran — use its data to pick the best angle |
| 22 | - User has a product/keyword but doesn't know what content to create |
| 23 | - User has multiple content ideas and wants to prioritize by data |
| 24 | - User wants to know: "If I only have time for ONE piece of content, what should it be?" |
| 25 | - Before running any S2 content skill (viral-post-writer, tiktok-script-writer, etc.) |
| 26 | |
| 27 | ## Input Schema |
| 28 | |
| 29 | ```yaml |
| 30 | keyword: string # (required if no scout_data) "AI video tools" |
| 31 | product: object # (optional) Affiliate product being promoted |
| 32 | name: string # "HeyGen" |
| 33 | description: string # What it does |
| 34 | url: string # Product URL or affiliate link |
| 35 | reward_value: string # Commission info — never shown in content |
| 36 | platform: string # (required) Target platform for content creation |
| 37 | # "youtube" | "tiktok" | "linkedin" | "x" | "reddit" | "blog" |
| 38 | creator_strengths: string[] # (optional) What the user is good at |
| 39 | # "storytelling" | "technical" | "humor" | "authority" | |
| 40 | # "visual" | "data" | "personal_experience" |
| 41 | audience: string # (optional) Target audience — "beginners", "developers", "small business owners" |
| 42 | time_budget: string # (optional) "30min" | "2hours" | "1day" — affects difficulty filter |
| 43 | custom_angles: string[] # (optional) User's own angle ideas to include in ranking |
| 44 | ``` |
| 45 | |
| 46 | **Auto-detection:** If `trending-content-scout` ran earlier in the conversation, |
| 47 | its output is automatically used as the data foundation. No need to pass it explicitly. |
| 48 | |
| 49 | ## Workflow |
| 50 | |
| 51 | ### Step 1: Gather Engagement Data |
| 52 | |
| 53 | **If `trending-content-scout` output exists in context:** |
| 54 | - Use `pattern_analysis` (winning formats, hooks, engagement benchmarks) |
| 55 | - Use `content_gaps` as angle candidates |
| 56 | - Use `top_content` for competition assessment |
| 57 | - Skip to Step 2 |
| 58 | |
| 59 | **If no scout data:** |
| 60 | Run a quick scout internally: |
| 61 | 1. `web_search "[keyword] site:youtube.com"` → top 10 videos, note formats and view counts |
| 62 | 2. `web_search "[keyword] site:tiktok.com"` OR `web_search "[keyword] tiktok viral"` → top TikTok content |
| 63 | 3. `web_search "[keyword] site:reddit.com top"` → top Reddit discussions |
| 64 | 4. `web_search "[keyword] [platform] best performing"` → meta-analysis of what works |
| 65 | 5. Extract: dominant formats, popular hooks, view count ranges, gaps |
| 66 | |
| 67 | This takes 30-60 seconds and provides enough signal for angle scoring. |
| 68 | |
| 69 | ### Step 2: Generate Angle Candidates (8-12) |
| 70 | |
| 71 | Generate 8-12 specific content angle candidates. Each angle must be concrete enough |
| 72 | to become a title — not vague ("write about HeyGen") but specific ("HeyGen vs Synthesia: |
| 73 | I tested both for 30 days — honest comparison for solo creators"). |
| 74 | |
| 75 | **Sources for angles:** |
| 76 | |
| 77 | 1. **Gap-based angles (from scout data or web_search):** |
| 78 | - Content gaps: topics nobody has covered well |
| 79 | - Format gaps: popular topic but missing in a specific format (e.g., comparison exists on YouTub |