Publish a newsletter draft to your email platform (Kit, Mailchimp, Gmail) or format it for manual copy-paste.
Today: !date +%Y-%m-%d
Purpose: Take a finished newsletter draft and publish it to your email platform, or format it for manual sending. When to use: When you have a reviewed, approved newsletter draft ready to send. Cowork compatible: Partially. Manual fallback works in Cowork mode.
Load these files before starting:
[active-business]/brand.md (Section 4: Brand Voice) — writing voice (for final review)[active-business]/lessons.md — rules from past feedbackIf multiple brands exist and none is specified, ask which brand to use.
Check [active-business]/output/newsletters/drafts/ for recent draft files.
/newsletter-write first.Show the full draft with:
Ask: "Here's the newsletter for final review. Does everything look good, or do you want to make changes before publishing?"
If changes are requested, apply them first.
Ask explicitly: "Ready to publish this newsletter? (yes/no)"
Do NOT proceed without a clear yes.
Check for available email platforms in this order:
.env for EMAIL_PLATFORM setting.Tell the user which platform was detected: "I see you have [Kit/Gmail/etc.] connected. I'll create the broadcast there."
kit_create_broadcast toolgmail_create_draft toolIf no email platform is connected, present the newsletter in a clean copy-paste format:
SUBJECT: [Subject line]
PREVIEW TEXT: [Preview/preheader text]
---
[Full email content, formatted and ready to paste]
---
Notes:
- Paste this into your email platform's editor
- Set the subject line and preview text as shown above
- Preview before sending to check formatting
Tell the user: "No email platform connected. Here's your newsletter formatted for copy-paste. You can set up an integration in system/config/integrations.md."
After publishing or formatting:
[active-business]/output/newsletters/drafts/ to [active-business]/output/newsletters/sent/YYYY-MM-DD-[slug].md[active-business]/output/newsletters/. Create the file if it doesn't exist.Add an entry to sent-index.md:
| YYYY-MM-DD | [Subject line] | [Email type] | [Platform used] |
If sent-index.md is new, create it with a header:
# Sent Newsletters
| Date | Subject | Type | Platform |
|------|---------|------|----------|
| YYYY-MM-DD | [Subject line] | [Email type] | [Platform] |
Summarize what happened:
"Newsletter '[subject line]' has been [created as a draft in Kit / formatted for copy-paste / created as a Gmail draft]. Moved to sent/ folder and updated sent-index.md."
After completing, ask: "Want to change anything? If you give feedback, I'll apply it and add a lesson to your lessons.md so I remember next time."