keryx social¶
Compose the per-platform supporting copy (social.json) — text, hashtags, link,
title — plus each platform's posting status/schedule/result
(contract §4.4).
keryx social set <platform> --text "…" [--tags "#a,#b"] [--title …] [--link …] --workspace <slug>
keryx social show --workspace <slug>
keryx social gen --workspace <slug> [--platform <p>]
set— the inject path: set a platform's fields directly (Instagram, YouTube, TikTok, LinkedIn). Partial updates preserve untouched fields. Prints constraint warnings (text/title overflow, link clickability).show— display the social set with per-platform constraint checks (R-SOC-1/2).gen— the LLM path: generate platform-appropriate copy from the workspace storyboard via the configured chat provider (providers.chat.*), one tailored draft per platform (R-SOC-4), not one caption everywhere.
Per-platform constraints (caps, hashtag norms, link handling) are defaults today
and become config-tunable with the posting layer (R-SOC-5). Status flows
draft → approved → posted; approval + posting land in Phase 2.