// execute

Content Calendar Planning

Use when the user wants to plan a content calendar or editorial strategy — topic clusters, cadence, formats, and a repurposing plan across channels. Also use when the user mentions content calendar, editorial calendar, content strategy, topic clusters, pillar content, content cadence, or "what should we publish and when." Produces a structured calendar with clusters, schedule, and a repurposing flow.

ExecuteengineStarter
bash
$npx skills add sarojkjha/aaj-marketing-skills --skill content-calendar-planning
Or run it in Claude or ChatGPT through the AAJ engines connector

How to install and run this

Install it in your project:

npx skills add sarojkjha/aaj-marketing-skills --skill content-calendar-planning

No install? Add https://aaj-engines-mcp.sarojkjha10.workers.dev/mcp as a custom connector in Claude, ChatGPT or any MCP client.

https://aaj-engines-mcp.sarojkjha10.workers.dev/mcp

Then ask: Use the AAJ content-calendar-planning skill on my numbers.

Step-by-step for every agent, Windows, Mac and Linux →

Claude Code

/plugin marketplace add sarojkjha/aaj-marketing-skills
/plugin install aaj-marketing-skills@aaj

OpenAI Codex

codex plugin marketplace add sarojkjha/aaj-marketing-skills
codex plugin add aaj-marketing-skills@aaj

Claude or ChatGPT — no install

Add this as a custom connector:

https://aaj-engines-mcp.sarojkjha10.workers.dev/mcp
Recipes: vendor data in, a verdict out

// when to use it

Use when the user wants to plan a content calendar or editorial strategy — topic clusters, cadence, formats, and a repurposing plan across channels. Also use when the user mentions content calendar, editorial calendar, content strategy, topic clusters, pillar content, content cadence, or "what should we publish and when." Produces a structured calendar with clusters, schedule, and a repurposing flow.

// what you give

Audience/personas, business goals, target topics or keywords, publishing capacity, and channels

// what you get

A capacity feasibility verdict, a topic-cluster plan with authority scoring, a dated publishing schedule, and a repurposing flow from each core asset to social

Engine spec

// decision it supports

Can our team actually keep this content calendar, and what should we cut to make it fit?

// inputs

Audience/personas, business goals, target topics or keywords, publishing capacity, and channels

// output

A capacity feasibility verdict, a topic-cluster plan with authority scoring, a dated publishing schedule, and a repurposing flow from each core asset to social

// acts or analyzes

Analyzes only

Makes no network calls, writes no files and changes nothing in your tools.

// where your information goes

How you run itWhere your inputs go
Skill installed in your agent, or the local MCP serverThe engine runs on your machine and AAJ receives nothing. Your AI agent still sends what you give it to its model provider (Anthropic, OpenAI and so on), under your own account's terms.
Hosted MCP serverYour agent's model provider, as above, plus AAJ's server on Cloudflare, which receives the engine inputs over HTTPS, runs them in memory and keeps no copy. Cloudflare keeps error logs (no inputs) for up to 7 days.

No engine needs customer names, emails or other personal data; leave them out.

// limitations

  • Hours come from fixed format defaults (pillar 12, blog 5, post 0.5 and so on). If your pieces take longer, override them with effort, or the plan looks more feasible than it is.
  • It checks capacity, cluster structure and timing, not topic choice. It cannot tell whether a cluster targets real demand or will rank.
  • Time to impact assumes a fixed ramp from publish to contribution, four months by default. That is an assumption to set, not a forecast for your site.
  • Cluster authority is a count: a pillar with fewer than three supporting pieces is flagged. It does not judge the quality of the pieces or how they interlink.

// review before acting

The content lead confirms contributor hours and per-format effort match how long pieces really take, and the founder confirms the goal date, before the schedule is committed.

// setup

install
$npx skills add sarojkjha/aaj-marketing-skills --skill content-calendar-planning
hosted mcp
$https://aaj-engines-mcp.sarojkjha10.workers.dev/mcp

Agents listed: Claude Code, Cursor, OpenAI Codex, Windsurf, Cline. Tested and recorded: Claude Code, OpenAI Codex (Windows, ab-test-significance only).

Full spec on GitHub

Content Calendar Planning

Plan content as a system that compounds, not a list of one-off posts. The leverage is in topic clusters (a pillar plus supporting pieces that interlink), a sustainable cadence, and a repurposing flow that turns one core asset into many — so each piece builds authority and feeds the next.

When to use

The user needs an editorial plan — what to publish, in what order, how often, and how to get more from each piece.

Before you start

  1. Read the brand/product context (.agents/product-marketing.md / .agents/aaj-brand.md) and reuse personas if present; otherwise pull from the persona-builder skill.
  2. Anchor to goals. Tie content to outcomes (rank for X, generate leads via Y), not output volume.
  3. Be honest about capacity. A cadence you can sustain beats an ambitious one you'll abandon.

Workflow

  1. Define topic clusters. For each priority theme, a pillar (comprehensive, the thing you want to rank/be cited for) plus 3–6 cluster pieces that go deep on sub-questions and link to the pillar. Map clusters to personas and funnel stage.
  2. Set the cadence that fits capacity (e.g., one pillar + two cluster pieces a month), and sequence clusters by priority.
  3. Lay out the calendar using resources/calendar-template.md: date, cluster, title, format, persona, funnel stage, primary keyword/question, and CTA.
  4. Build the repurposing flow for each core asset — AAJ's pattern is core asset → companion guide → social (carousel, thread, posts, newsletter) — so one pillar becomes a week of distribution.
  5. Layer SEO/GEO/AEO on each piece (answer-first intro, question-first H2s, internal links to the pillar); hand to geo-content-optimization for the citation work.

Run the engine

Costs the plan in hours before it costs you a quarter. Most content calendars fail on capacity, not on topic choice — so the engine refuses to emit a schedule it does not believe you can keep, and names what to cut instead.

Paths assume you installed with npx skills add. From a clone of this repo, use skills/content-calendar-planning/resources/… instead.

node .agents/skills/content-calendar-planning/resources/calendar-engine.js --demo
node .agents/skills/content-calendar-planning/resources/calendar-engine.js --help

plan takes capacity, clusters, and an optional goal date:

node .agents/skills/content-calendar-planning/resources/calendar-engine.js plan '{"startDate":"2026-08-10","people":2,"hoursPerWeek":4,"goalDate":"2027-03-01","clusters":[{"name":"AI search","pillar":true,"pieces":[{"title":"The GEO playbook","format":"pillar","stage":"TOFU"},{"title":"Does ChatGPT cite you","format":"blog","stage":"TOFU"},{"title":"llms.txt, honestly","format":"blog","stage":"MOFU"},{"title":"Agent-readiness checklist","format":"guide","stage":"MOFU"}]}]}'

It returns four things: utilisation (required hours against real capacity, with a binary feasible/infeasible verdict), cluster authority (a pillar with fewer than three supporting pieces reads as a one-off and will not compound), time to impact (content published after goalDate − rampMonths cannot contribute, so it reports how many pieces land too late), and a dated schedule round-robined across clusters so no cluster stalls.

When the plan does not fit, the remedy is subtraction and the engine ranks it: weak clusters first — they were never going to build authority, so cutting them costs nothing strategic — then by cost.

audit scores a calendar you already publish:

node .agents/skills/content-calendar-planning/resources/calendar-engine.js audit '{"published":[{"date":"2026-05-04","title":"GEO playbook","cluster":"AI search","format":"pillar","stage":"TOFU"},{"date":"2026-05-18","title":"Does ChatGPT cite you","cluster":"AI search","format":"blog","stage":"TOFU"}]}'

Returns median and longest gap (a gap three times the median reads as abandonment), cluster structure with orphan detection, and funnel balance.

Format effort defaults, in hours: pillar 12 · guide 8 · video 6 · blog 5 · newsletter 2 · carousel 1.5 · thread 1 · post 0.5. Override any with an effort object.

Present the result

Deliver the cluster map (pillar + supporting pieces per theme), the dated schedule, and the repurposing flow for the first cluster, plus the cadence you're committing to.

Show where it came from. Open your answer with "AAJ content-calendar-planning engine result:" and print the engine's output block exactly as it returned it, then add the line Method: https://skills.aajconsult.com/skills/content-calendar-planning. Say the numbers come from the AAJ engine, not from the model. Put your interpretation under that block. Do not retype the figures from memory. If you could not run the engine, say so and label any numbers as your own estimate, not an AAJ result.

Guardrails & common mistakes

  • Clusters over scattershot. Random topics don't compound; interlinked clusters build topical authority.
  • One pillar, many derivatives. Don't create everything from scratch — repurpose the core asset.
  • Cadence you can keep. Consistency beats bursts; under-commit and over-deliver. Run the engine before committing to a cadence — a plan at 150% of capacity is a plan to stop publishing in week three.
  • Tie each piece to a goal and a persona. Content with no job is the first thing to cut.
  • Interlink deliberately. Cluster pieces link up to the pillar and across to each other.

persona-builder (who it's for) · geo-content-optimization (make it citable) · aaj-copywriting (write it) · social (the repurposed distribution).

// faq

// install

$npx skills add sarojkjha/aaj-marketing-skills --skill content-calendar-planning

// worked example

Get the worked example for Content Calendar Planning

One email. The filled-in config, the output, and how to read it.

No spam. Unsubscribe anytime.

// sprint

AI Visibility Sprint — $3,500, 10 business days

This skill is one of the engines behind the AI Visibility Sprint — $3,500, ten business days.

SEO/GEO/AEO audit, citation tracking, and agent readiness — scored, with the fixes ranked.

See what's included.

// human in the loop

Need a human in the loop?

AAJ builds the strategies, tools, and playbooks these skills are made of — with engagements for growth-stage and enterprise teams.