From buttondown-skill
This skill should be used when the user asks to "manage newsletters", "create an email draft", "list my drafts", "schedule a newsletter", "get email analytics", "check newsletter stats", "send a newsletter", "create buttondown draft", or mentions Buttondown newsletter management. Provides tools for creating, scheduling, and analyzing newsletter emails via the Buttondown API.
How this skill is triggered — by the user, by Claude, or both
Slash command
/buttondown-skill:buttondownThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill provides newsletter management through the Buttondown API. Use the included TypeScript client script to create drafts, schedule sends, list emails, and retrieve analytics.
This skill provides newsletter management through the Buttondown API. Use the included TypeScript client script to create drafts, schedule sends, list emails, and retrieve analytics.
The API client script is located at:
${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts
All commands should be run using this full path:
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts <command> [options]
Set the BUTTONDOWN_API_KEY environment variable before running commands:
export BUTTONDOWN_API_KEY=your_api_key
List emails with optional status filtering.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts list
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts list --status draft
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts list --status scheduled
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts list --status sent
Returns JSON with email IDs, subjects, status, created/sent dates, and basic analytics.
Create a new email draft.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts create "Subject Line" "Email body content in markdown"
Important: Always confirm with the user before creating drafts. Show them the subject and content first.
Get full details for a specific email.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts get <email-id>
Retrieve analytics for a specific email.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts analytics <email-id>
Returns opens, clicks, unsubscribes, and rate percentages.
Schedule an email for future delivery.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts schedule <email-id> "2024-03-27T10:00:00Z"
Important: Always confirm the scheduled time with the user. Show both the ISO timestamp and local time equivalent.
Revert a scheduled email back to draft status.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts unschedule <email-id>
Update an existing email's subject or body.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts update <email-id> --subject "New Subject"
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts update <email-id> --body "New content"
Delete an email permanently.
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/buttondown/scripts/buttondown.ts delete <email-id>
Important: Always confirm deletion with the user - this action cannot be undone.
list --status sentanalytics <id>list --status draftget <id>update <id> --subject "..."schedule <id> <datetime>All commands output JSON. Example list response:
{
"total": 5,
"emails": [
{
"id": "abc123",
"subject": "Weekly Update",
"status": "sent",
"created": "2024-03-20T10:00:00Z",
"sent_at": "2024-03-20T14:00:00Z",
"scheduled_for": null,
"analytics": {
"recipients": 150,
"opens": 75,
"clicks": 12
}
}
]
}
${CLAUDE_PLUGIN_ROOT}/skills/buttondown/references/api-types.md - Complete TypeScript type definitions${CLAUDE_PLUGIN_ROOT}/skills/buttondown/examples/workflow.md - Detailed workflow examplesnpx claudepluginhub the-focus-ai/claude-marketplace --plugin buttondown-skillCreates, curates, and grows email newsletters across 6 formats (curated, story-driven, educational, interview, data-driven, personal update) with editorial structure, content sourcing, commentary writing, and subscriber growth guidance.
Writes email newsletter editions with subject line formulas, section structure, link placement, and growth tactics. Activates on 'newsletter', 'weekly digest', or 'open rates'.
Writes targeted re-engagement emails for inactive newsletter subscribers to recover attention or prompt clean unsubscribes before deliverability suffers.