From cowork-social
Monthly retrospective on the content engine. Reads last 30 days of calendar-log, memory, grade history, and pickup rates. Surfaces what worked, what didn't, proposed tuning. Saves report to reviews/YYYY-MM-review.md. Foundation B + C applied.
How this skill is triggered — by the user, by Claude, or both
Slash command
/cowork-social:content-engine-reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Monthly retrospective on the cowork-social engine. Runs ~10 minutes. Surfaces what worked, what didn't, and proposes specific tuning before next month starts.
Monthly retrospective on the cowork-social engine. Runs ~10 minutes. Surfaces what worked, what didn't, and proposes specific tuning before next month starts.
Live skill (not headless). Walks the user through findings + asks decisions on staged skill changes.
⚡ NEXT MOVEprints in chat, varies by verdict (3 states).
Read on every run:
| File | Why |
|---|---|
projects/social-media-content/calendar-log.md (last 30 days slice) | Posts shipped, platform breakdown, scheduled vs manual, status |
projects/social-media-content/memory.md (last 30 days slice) | Self-improvement notes, recurring complaints, headless-run logs |
projects/social-media-content/skill-improvements.md | Staged changes waiting on user review |
projects/social-media-content/ideas/ (last 4 weekly idea files) | Generated vs picked vs shipped funnel |
projects/social-media-content/brand-brief.md | Current brand state — is the wedge stale? |
_aibos/state-social.md | blotato_status, selected_platforms, target cadence |
_shared/foundations.md | Foundation B + C |
If calendar-log.md has fewer than 5 rows in the last 30 days → surface:
"Less than 5 posts shipped in the last 30 days. The retrospective will be light. Continue, or block 2 hours for
/weekly-content-sessionfirst?"
If user says "block 2 hours" → halt. If "continue" → proceed with whatever data exists.
Aggregate from each input file:
From calendar-log.md (last 30 days):
From memory.md (last 30 days):
/generate-weekly-ideasFrom skill-improvements.md:
reviewed: no — these are staged changes the user hasn't yet decided onFrom ideas/<last 4 weekly files>:
calendar-log.md against idea hooks (substring overlap >= 50%)outputs/ but not in calendar-log.mdcalendar-log.md with status: scheduled or published or manualSurface the patterns the user might miss:
Platform performance:
selected_platforms entrycalendar-log.md (Step 3 of /weekly-content-session logs grades), compute avg grade per platformHook pattern wins:
outputs/social-media-content/ drafts this monthCadence adherence:
_aibos/state-social.md or scheduling-defaults.md)Self-improvement recurrence:
memory.mdskill-improvements.md — auto-stage per Foundation BIdea pickup funnel:
Brand-brief staleness:
brand-brief.md last_updated fieldcontrarian_belief in their hook pattern → flagBefore writing the report file, show the user a summary table + ask approval:
Last 30 days at a glance:
─────────────────────────
Posts shipped: <N> across <M> platforms
Top platform: <X> (<N> posts, avg grade <X>)
Worst platform: <Y> (<N> posts, avg grade <X>) — flag for tuning
Top hook pattern: <name> (<count> uses, avg grade <X>)
Cadence: <actual>/week vs <target>/week target → <adherence %>
Idea funnel: 40 generated → <N> picked (<X%>) → <N> drafted → <N> shipped
Staged tuning: <N> skill-improvements rows waiting on you
Approve writing the full report to reviews/<YYYY-MM>-review.md?
Reply 'go' to write, or 'skip' to keep this conversation-only.
Plan-then-approve is non-negotiable for the file write. If user says skip → don't write the file, but still apply Foundation B + C in chat.
If approved, resolve path: projects/social-media-content/reviews/<YYYY-MM>-review.md.
Create reviews/ directory if missing.
Write:
---
type: cowork-social-monthly-review
plugin: cowork-social
plugin_version: 0.1.0
review_month: <YYYY-MM>
generated_date: <ISO>
posts_shipped: <N>
adherence_pct: <X>
source_skill: /content-engine-review
---
# Content Engine Review — <Month Year>
## Summary
- **Posts published:** <N>
- **Platform breakdown:** linkedin <N>, twitter <N>, instagram <N>, tiktok <N>, threads <N>, facebook <N>
- **Avg posts/week:** <X>
- **Target posts/week:** <X>
- **Adherence:** <X>%
- **Blotato success rate:** <X>% (if connected) | not connected — manual posting can't be measured
## What worked
- **Top hook pattern:** #<N> <pattern_name> — <count> uses, avg grade <X>/100
- **Top platform:** <platform> — <count> posts, avg grade <X>/100, <highest engagement signal if any>
- **Standout posts (top 3 by score):**
- <post_slug> — <platform>, grade <X> — <1-line why it worked>
- <post_slug> — <platform>, grade <X> — <1-line why it worked>
- <post_slug> — <platform>, grade <X> — <1-line why it worked>
## What needs tuning
- **<platform> underperformed.** <count> posts, avg grade <X>. <Specific reason from grade reports.>
- **<skill_name> flagged improvements.** <N> entries in `skill-improvements.md` waiting review (see Staged section below).
- **Cadence gap:** <platform> missed <N> scheduled slots. <Reason if surface-able.>
- **Idea funnel bottleneck:** <stage>. <X>% of <upstream> never became <downstream>. <One specific reason.>
- **Brand-brief staleness:** Last updated <date>. <Recommendation if stale.>
## Staged skill improvements (review + decide)
<List from skill-improvements.md where reviewed=no — render as table:>
| skill | pattern | first_seen | recurrence | suggested_change |
|---|---|---|---|---|
| /<skill> | <pattern> | <date> | <N> | <change> |
## Recommendations for next month
1. **<Specific tuning action>** — <one-line rationale + deadline>
2. **<Specific tuning action>** — <one-line rationale + deadline>
3. **<Specific tuning action>** — <one-line rationale + deadline>
---
Generated by `/content-engine-review` on <ISO>.
For EACH row in skill-improvements.md where reviewed: no, ask the user:
"Apply this change to
/<skill>? Pattern: '' recurred times. Suggested change: '<suggested_change>'. Reply Y / N / defer."
Branch:
reviewed: yes — approved <ISO>. Open the target SKILL.md for editing (or surface the file path for the user to edit). Append the approval to memory.md.reviewed: yes — declined <ISO> | reason: <user's one-liner>.reviewed: no. It'll show up in next month's review.If 5+ rows are pending, batch: ask the user "5+ staged. Want to walk all of them now (~5 min) or defer this and only walk the top 3 by recurrence count?"
If brand-brief staleness flagged in Step 2, ask:
"Brand-brief was last updated — days ago. <If 3+ self-improvement notes mentioned voice mismatch:> Multiple voice-mismatch notes this month suggest the brief drifted. Run
/brand-briefnow to refresh? Y / N / defer."
If Y → hand off to /brand-brief (the user's next skill invocation).
If N or defer → log in memory.md and move on.
See _shared/foundations.md → Foundation B. After delivering the report + the ⚡ NEXT MOVE block, ask the user:
"What would've made this review 10% better?"
Append the answer to projects/social-media-content/memory.md:
<YYYY-MM-DD> | /content-engine-review | <answer verbatim>
Recurrence patterns to watch for this skill specifically:
If any pattern hits 3+ → flag in skill-improvements.md per Foundation B rules.
⚡ NEXT MOVE block (verdict-aware, 3 variants)See _shared/foundations.md → Foundation C. Pick the variant based on the month's verdict:
⚡ NEXT MOVE: Schedule a 30-minute /brand-brief refresh this week.
Why: You're shipping consistently — time to refresh the angle so the next 30 days don't recycle the same hooks.
⚡ NEXT MOVE: Block 2 hours Monday for /weekly-content-session.
Why: Last month's shipping rate is below the engine's break-even — habit needs a calendar slot.
⚡ NEXT MOVE: Re-run /brand-brief on the recent_proof_story field this week.
Why: Grade trend is dropping — voice may have drifted from your real proof, hooks are getting generic.
Priority order:
Validation pattern (same as canonical): ⚡ NEXT MOVE: .+ .+ .+\n Why: .+
If the block doesn't match → regenerate before printing.
projects/social-media-content/reviews/ — create if missing, never overwrite past months._shared/foundations.md rather than duplicating foundation text.The retrospective's voice: direct, opinionated, willing to tell the user a platform isn't working. Not flattery, not hype.
When in doubt: imagine a senior strategist sitting across the table on the first of the month. They've read the data. They have an opinion. They give it in plain words.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
npx claudepluginhub automatedmarketer/cowork-social --plugin cowork-social