Your post isn’t underperforming. It’s being graded on the wrong scoreboard.
Every platform rewards a different action, so one formula pasted into five boxes and measured by likes reads a number that barely counts anywhere. post-writer drafts each post against the scoreboard that platform actually uses, checks it with three scripts that return PASS or FAIL, and knows the cases where it should add nothing at all.
For founders and small teams posting on more than one platform, who suspect cross-posting is costing them reach but do not want a tool that turns every human moment into a funnel.

opvs-skills install @di-atomic/post-writerThen say: “draft a LinkedIn post about this” or “score this post”
Why cross-posting quietly caps your reach
write once → paste ×5 → publish check likes ✓ feels efficient (X ranks replies + bookmarks, Threads ranks reply-to-like ratio, Instagram ranks saves, LinkedIn ranks dwell + comments)
Likes rank lowest on most of them. The post did not fail. You read the one number that platform cares about least.
pick platform → load its recipe → structure + CTA tuned to ITS KPI verify-post-structure PASS lint-ai-slop PASS lint-tone-drift PASS → or: no-mechanics-mode, add nothing
A save request on LinkedIn is noise. A comment request on Instagram is a wasted line. The CTA changes because the KPI changes.
Every platform keeps its own scoreboard. One formula cannot win them all.
What you actually get
A different post per platform, on purpose
Seven recipes covering LinkedIn, X and threads, Instagram caption and carousel, Threads, and Facebook. Structure, length band and call-to-action all move with the platform, because what that platform counts moves too.
It knows when to stop optimizing
The most-liked posts ever recorded carry no hook framework, no call to action and no growth mechanic. For emotional, reactive or announcement posts the skill drops its own machinery, because adding it there makes the post worse.
Three scripts that will tell your agent no
Length band and hook truncation, a 38-entry zero-tolerance slop blacklist, and a tone check against your own voice file. They exit 1 and print the numbers, so a draft cannot talk its way to shipped.
The two rules that make it different


A real run — same news, two platforms, two answers
> draft a post about our new pricing page. LinkedIn and Threads.
read voice.md ........ first person, short sentences ✓
LinkedIn → recipes/linkedin-post.md
KPI: dwell + comments → longer setup, CTA asks a question
verify-post-structure .. 1 CTA, hook survives 140c PASS
lint-ai-slop ........... 0 of 38 banned terms PASS
lint-tone-drift ........ Flesch 68, first-person 4.1 PASS
Threads → recipes/threads-post.md
KPI: reply-to-like ratio → shorter, self-reply planned (+42%)
3 scripts .............. PASS
Two posts. Different length, different CTA, same voice.
post-writer is guidance-only. Your agent writes the words following SKILL.md; the scripts grade them. Nothing is sent to a model of mine.
I built this to run my own channels, in seven languages.
post-writer is one skill in the system behind Di-Atomic — the marketing and compliance agency that runs cognitoAI, SpiderIQ and OPVS. The slop blacklist is English-only and the skill says so instead of pretending, which is the same honesty I owe a client. If you want this run properly for your brand, that is the day job. Let’s talk.
Book a 30-min call with Di-AtomicJust want the skill? Install @di-atomic/post-writer free.