Install
openclaw skills install @social-media-skills/platform-specs-and-validationPlatform specs and publish validation — per-platform requirements and the validate-before-publish step for multi-platform fan-out. Use when fanning a post out to multiple platforms, when a post is getting rejected, when mapping per-platform postType/required fields, or to run the validate-before-publish step. Encodes the per-platform postType enums, required-field matrices, and media rules from the OpenAPI spec, and runs POST /posts/validate so a post lands correctly on every target. Uses the CHECK framework. The keystone the per-platform format skills point to. WoopSocial validates + publishes atomically and has no update endpoint; the agent maps fields and fixes spec violations, but human-judgment calls (disclosure truthfulness, privacy intent) stay with the person; metrics never fabricated. Distinct from the per-platform format skills (one platform's content) and scheduling-and-queue (timing).
openclaw skills install @social-media-skills/platform-specs-and-validationThe cross-cutting publish-readiness skill — make a post correct on every target (required fields, media rules, limits) and run the validate-before-publish loop. It's the keystone the format skills point to. The agent maps fields + fixes spec violations + validates; WoopSocial validates and publishes; content craft and human-judgment calls stay elsewhere.
WoopSocial validates and publishes atomically — POST /posts checks every target together, and if
any one fails, nothing is created. There's no update endpoint, so a post that publishes wrong can't
be patched (edit = delete + recreate). That makes getting every target's fields right before
publish the whole game: the right postType, the required per-platform fields, the media rules, and
account-specific values (Pinterest board, TikTok privacy) resolved from platform-inputs — then
POST /posts/validate to catch what's left. This skill is where the format skills come to make sure it
will actually go through.
(Depth: references/the-check-framework.md.)
postType;
TikTok's eight; YouTube title+privacy; Pinterest pinterestBoardId); resolve account values from
GET /social-accounts/{id}/platform-inputs.contentOverride or separate posts where fan-out
conflicts; respect text limits.isBrandedContent/isYourBrand/madeForKids are truthful
declarations, not validation knobs — never flip them to clear an error; these stay with the person.POST /posts/validate → fix all errors, review warnings → create
(atomic). No update → delete + recreate (only while NOT_STARTED).Per-platform postType enums + required-field matrices + media rules + the platform-inputs discovery
endpoint + lifecycle facts (atomic create, no update, delivery status, schedule types):
references/woopsocial-publish-spec.md. The validate-then-create loop, the full ValidationField code
table + CreatePostErrorCode list + worked examples: references/validation-reference-and-recipes.md.
(The live OpenAPI spec / tools/integrations/woopsocial.md are the source of truth; enums and limits move.)
NOT_STARTED).isBrandedContent/isYourBrand/madeForKids) —
never flipped to pass validation; privacy intent + disclosure truthfulness stay with the person.platform-inputs — don't guess. Never fabricate
metrics — native analytics only. (Scope, distinctions + connections: references/scope-and-connections.md.)platform-specs-and-validation (this) = the cross-platform field/media/validation layer that makes a post
publish-ready on every target · the per-platform format skills (tiktok-photo-mode,
tiktok-video-publishing, threads-post, youtube-publishing-and-metadata, carousel-writer, …) =
craft one platform's content and point here for validation · scheduling-and-queue = timing/cadence,
not correctness · tools/integrations/woopsocial.md = the shared integration guide this applies post-level.
Receives from: every format skill (crafted content + chosen postType) and content-calendar (the
plan). Resolves with: GET /social-accounts/{id}/platform-inputs (boards, privacy options) + the
integration guide. Hands to: scheduling-and-queue → WoopSocial (POST /posts after isValid),
then webhooks/delivery status for confirmation. Supports: cross-platform-repurposing (per-target
contentOverride), analytics-and-reporting (native delivery readout), experimentation (valid
variants). Content craft + truthful declarations stay with the format skills + the person.
Every target collected and confirmed in one project; each target's required fields hydrated (postType /
privacy / board / disclosure / title as applicable) with account-specific values resolved from
platform-inputs; media + content rules enforced (no FB mix, IG-Story media, single Pinterest media, TikTok
field applicability) with contentOverride or separate posts where fan-out conflicts; disclosure/madeForKids
declarations left truthful (never flipped to pass); POST /posts/validate run with all errors resolved and
warnings reviewed before an atomic create; edits handled via delete+recreate, nothing fabricated and no
promised performance; correctly distinguished from the per-platform format skills and scheduling-and-queue.