ProPost
Começar
Todos os skills

Ofício e operação

Performance review

propost-performance-review

Quando ajuda

Runs a weekly or monthly performance review from a person's ProPost data, using get_channel_stats for 7, 30 and 90 day ranges and list_posts for published posts with engagement, finding top and weak posts and patterns in format, topic, time and media, and turning findings into next actions (ideas, pillar changes, schedule changes). Use whenever someone asks "how did my posts do", "monthly review", "what worked this month", "which posts performed best", "why is my reach down", "what should I post more of", or "give me a content report", for personal or company channels.

Os skills funcionam com o conector do ProPost, disponível no Pro e no Premium. Configurar o conector

Produces an honest, short report of what the data shows, what it does not, and three concrete changes to try next. Never invents a number.

Before you start

  1. get_account: time zone (to state periods correctly), autonomy (only needed if you will also change things).
  2. list_channels: pick channels with needs_reconnect false first; a disconnected channel will have stale stats. Ask which channels matter if there are many.
  3. Decide the window: weekly review uses range: "7d", monthly "30d", quarterly "90d". Default to 30d.

Workflow

  1. Channel level. For each channel call get_channel_stats with channel_id and range. Note: followers now and gained; the totals (impressions, reach, likes, comments, shares, saves, clicks, views, engagement rate, where present); the previous period's totals for comparison; and source / via (network analytics, LinkedIn account stats, or engagement stored on posts). Different sources mean different fields: report only what came back and say which source it was.
  2. Post level. list_posts with status: "published", channel_id, from (start of the window, ISO with offset) and limit up to 100. Each post has engagement (impressions, reactions, comments, reposts, saves, sends, link_clicks, followers_gained, profile_views, updated_at, source) or null. For one post, get_post re-reads it.
  3. Check the data is enough. Count posts with non-null engagement. Fewer than about 8 on a channel, or all numbers null, or updated_at long before the window: say the data is thin and give observations as hunches, not findings. Mixing channels with different metrics (e.g. impressions vs views) means comparing within a channel only.
  4. Rank within a channel. Use one primary metric per channel that exists for most posts (impressions or reactions plus comments), then list the top 3 and bottom 3 with date, first line, and the numbers as returned. Add engagement rate only when impressions exist (reactions + comments + reposts divided by impressions, shown as a computed figure).
  5. Look for patterns, each backed by at least 2 posts:
    Format: story, how-to, opinion, list, question; with or without image, video, multi-image.
    Topic or pillar.
    Length (short vs long).
    Time: weekday and hour from published_at, compared with suggest_posting_times.
    Hook style: number, claim, question, scene. Separate correlation from cause; one viral post is a sample of one.
  6. Compare with the previous period using the returned previous totals; quote the change as given, do not extrapolate.
  7. Write the report (format below) and propose actions. Offer to carry them out:
    Ideas: add_idea for the winning angles ("follow-up to the post on X").
    Pillars: suggest more of the top two, fewer of the bottom one; see propost-weekly-content-plan.
    Schedule: propost-posting-schedule-optimizer if timing differs.
    Voice: update_persona only with an explicit yes.

Report format

  • Period and channels, and the data sources used.
  • Headline in one sentence (what moved, honestly).
  • Table per channel: followers (now, change), key totals, vs previous.
  • Top 3 and weak 3 posts with a one-line reason each, labelled as a guess.
  • Patterns (max 4), each with the evidence count.
  • Next actions (max 3), concrete: "Post two how-to posts next week at 08:30 Tuesday and Thursday and compare."
  • Caveats: missing data, null engagement, channels not connected.

Writing guidance

  • Plain numbers with units and the period ("12 posts, 30 days"). Round nothing the source gave exactly; do not add percentages you computed without saying you computed them.
  • Prefer "no data yet" to a plausible estimate. Say what would fix it (reconnect the channel, wait a week, publish more).
  • Keep the tone factual and kind. A weak post is information, not a verdict on the person.
  • Example finding: "Your 4 posts with an image got more reactions than your 4 text-only posts on LinkedIn (numbers below), but 8 posts is a small sample. Next test: put an image on every other post for two weeks."

Guardrails

  • No made-up benchmarks ("average LinkedIn engagement is 2%") unless the person supplies them.
  • Do not compare across networks as if the metrics matched.
  • Do not delete posts or change schedules as part of a review without a yes.
  • Do not report competitors' or other people's data; the tools do not have it.
  • Reading never needs schedule autonomy; if you change anything, respect the connection's level (../CONVENTIONS.md).

If something fails

  • channel_not_found: re-read list_channels.
  • channel_needs_reconnect or empty stats: the channel has no fresh data; report that and continue with other channels.
  • rate_limited: fewer calls; one list_posts for all channels (omit channel_id), then group by channel_id yourself.
  • All engagement null: say stats are not recorded yet; do not guess.
  • Others: see ../CONVENTIONS.md.

Como adicionar um skill

  1. Claude (web e desktop): baixe o skill em .zip e adicione em Configurações, Capacidades, Skills.
  2. Claude Code: descompacte em ~/.claude/skills/ (ou em .claude/skills/ do seu projeto).
  3. Outros assistentes: abra o SKILL.md e cole nas instruções personalizadas ou no conhecimento do projeto.

Os skills estão em inglês. Seu assistente responde e escreve os posts no seu idioma.