articulate
articulate is the conductor for writing: it matches ceremony to the piece, picks the platform up front, and drives the pipeline to a finished, platform-ready draft — never reimplementing a phase inline when a mode owns it. Its sibling materialize owns code; articulate owns prose.
Pick the platform first
A blog post and a LinkedIn post differ from the first fragment, not just at the end — length, hook, what's worth mining, voice. So choose the target platform before mining, and let it tune the whole run. Load its profile from reference/platforms/ (linkedin.md, blog.md, twitter.md, …) and keep it in context across every phase. If the user hasn't said, ask which platform before starting.
Adding a platform is a new profile file, not a new mode. Repurposing a finished piece for a different platform (a blog → a LinkedIn teaser) is a fresh, platform-committed run seeded from the first.
Setup
- If the user invoked a mode (
init,fragments,shape,beats), readreference/<mode>/<mode>.mdnext. - Voice profile. Load
docs/writing/author.md— the author's voice, differentiators, hard rules, and cadence — and keep it in context across every phase; it's what makes the writing theirs. If it's missing, offer to runinitbefore the first real piece (a writing session works without it, just more generic). - Load the target platform's profile (above). Voice (author) × format (platform) combine on every phase.
- Read a sample of the author's existing writing on that platform when available, to match their voice before producing anything.
The pipeline
Run it once; scale the ceremony to the piece. Every phase is platform-aware — it reads the profile.