SEO contentGitHub source
SEO content calendar
/content-calendarCreate a monthly editorial calendar, dated and organized around groups of topics, keywords, and a posting frequency, based on
// skill content
Content Calendar Command Generate a dated, month-long content calendar mapped to topic clusters, keywords, and publishing cadence using existing research data. ## Usage /content-calendar - Generate calendar for current month (2 posts/week) /content-calendar [posts-per-week] - Custom cadence (e.g., /content-calendar 3) /content-calendar [posts-per-week] [month] - Custom cadence and month (e.g., /content-calendar 3 next-month) /content-calendar [posts-per-week] [month] [focus-cluster] - Filter to a specific cluster (e.g., /content-calendar 2 april "content marketing") ## What This Command Does Bridges the gap between /priorities (what to work on) and execution (when to publish). Produces a dated publishing schedule with: - Specific publish dates assigned to each piece - Content categorized by type (quick win, rewrite, new article, trending) - Week-by-week strategy (quick wins first, cluster building later) - Exact commands to run for each piece - Parking lot for next month's opportunities ## Parameters | Parameter | Default | Description | |-----------|---------|-------------| | Posts per week | 2 | Number of pieces to publish each week | | Month | Current month | Target month name or "next-month" | | Focus cluster | None | Optional topic cluster filter | ## Process ### 1. Parse Parameters Extract from user input: - Posts per week: Number (default: 2). Calculate total pieces = postsperweek × weeks in target month. - Target month: Parse month name (e.g., "april", "next-month", "june"). Default to current month. Determine the year, first day, last day, and number of weeks. - Focus cluster: Optional text filter. If provided, prioritize items matching this cluster. ### 2. Run Research Scripts Check if today's reports already exist before running each script. Skip any script whose report for today is already in research/. ``bash python3 research_quick_wins.py ` Generates research/quick-wins-YYYY-MM-DD.md `bash python3 research_topic_clusters.py ` Generates research/topic-clusters-YYYY-MM-DD.md `bash python3 research_performance_matrix.py ` Generates research/performance-matrix-YYYY-MM-DD.md `bash python3 research_trending.py ` Generates research/trending-topics-YYYY-MM-DD.md Also check for recent competitor gap reports: - Read research/competitor-gaps-*.md if any exist (use most recent) **Important**: If a report for today already exists, skip that script to save API credits. Read the existing report instead. ### 3. Read and Parse All Reports Read each generated report and extract: **From Quick Wins:** - Keywords ranking positions 11-20 - Current URLs (existing content) - Opportunity scores, search volume, impressions - Commercial intent ratings **From Topic Clusters:** - Cluster names and authority scores - Weak clusters (biggest opportunities) - Coverage gaps within each cluster - Keywords per cluster **From Performance Matrix:** - Declining content (needs refresh) - Underperforming content - Content health categories **From Trending Topics:** - Rising search trends - Time-sensitive opportunities - Trend velocity scores **From Competitor Gaps (if available):** - Keywords competitors rank for that we don't - Gap difficulty and volume data ### 4. Categorize Each Item Assign every extracted opportunity to one of four content types: **Quick Win Update** (Position 11-20, existing content) - Has a ranking URL - Needs optimization to move from page 2 to page 1 - Effort: Low-Medium - Command: /rewrite [topic] or /optimize [file] **Rewrite/Refresh** (Declining or underperforming content) - Performance dropping over time - Content is stale or outdated - Effort: Medium - Command: /rewrite [topic] **New Article** (Gaps, cluster building, unranked opportunities) - No existing content for this keyword - Fills a cluster gap or competitor gap - Effort: Medium-High - Command: /article [topic] or /write [topic] **Trending** (Time-sensitive, rising searches) - Search volume increasing - Seasonal or news-driven - Effort: Medium (speed matters) - Command: /article [topic]` Deduplication: If a keyword appears in multiple reports, keep the highest-priority categorization and note all data sources. ### 5. Build the Calendar Assign items to specific dates within the target month, using these weekly strategies: Week 1: Quick Wins + Trending (Fastest ROI) - Prioritize quick win updates (low effort, high impact) - Include any time-sensitive trending topics - These show results fastest for early momentum Week 2: Mix of Updates + New Articles - Remaining quick wins - Begin new article pipeline - Balance effort across the week Week 3: Cluster-Focused (Topical Authority) - Group related pieces from the same topic cluster - Build topical authority through cluster coverage - Include cluster pillar pieces if needed Week 4+: Strategic New Articles + Rewrites - Longer-form new content targeting gaps - Rewrites of declining
// original public source
TheCraigHewitt/seomachine/.claude/commands/content-calendar.md
License: MIT License
Independent project, not affiliated with Anthropic. This skill remains the property of its original author.