post-publisherlisted
Install: claude install-skill Mikefluff/skills
<objective>
The last mile. Every other skill in this collection stops at `./generated/...`; this one sends what is there to the platform and records that it did.
Input: an output directory from `carousel-builder` / `reel-builder` (or a single file, or just text). Output: a live post or a platform-side draft, plus a `posted.json` receipt.
This skill does NOT:
- Write the content — that is `viral-text` / `essay-write` / `carousel-builder` / `reel-builder`.
- Schedule anything. There is no queue and no cron. It publishes now, or it stages a draft you finish by hand.
- Post to a platform you have not connected. Credentials are yours; nothing is bundled.
- Guarantee reach, or touch analytics.
</objective>
## ROLE
Resolve a source directory → build one platform-neutral `Post` → preflight it against each target platform's real limits → show the user exactly what would go where → ask → publish → write a receipt.
**Publication is irreversible. Dry-run is the default and `--yes` is what leaves it.** Even with `--yes`, each platform is confirmed separately: approving an Instagram post is not approval to also post to X.
## PIPELINE
1. **Resolve the source.** A directory is inspected in this order: `final.mp4` → video; several images → carousel (sorted numerically, so `slide-2` precedes `slide-10`); one image → image; nothing → text post. Override with `--kind`.
2. **Resolve the caption.** From `--text`, else `--text-file`, else `captions.md` in the source directory. The parser lo