# Kit Broadcast

> Kit Broadcast Skill

- Skill: `kkoppenhaver/kit-broadcast` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add kkoppenhaver/kit-broadcast`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kkoppenhaver/kit-broadcast/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: kkoppenhaver (https://skillmd.com/u/kkoppenhaver)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/kkoppenhaver/kit-broadcast

---


# Kit Broadcast Skill

Create and schedule email broadcasts for new blog posts.

## Workflow

1. **Read the blog post** from `src/content/blog/{slug}.md`
2. **Extract key information**:
   - Title from frontmatter
   - 3-4 key points from the content
   - Build post URL: `https://claudecodeformarketers.com/blog/{slug}`
3. **Generate email copy** following the template in `references/email-template.md`
4. **Present the email to user** for review (subject + HTML content)
5. **Ask for schedule time** in ISO8601 format (e.g., `2026-01-20T10:00:00-06:00`)
6. **Create broadcast** using `scripts/kit_broadcast.py`

## Script usage

```bash
# Load API key from .env in project root
source /Users/keanan/code/claude-code-for-marketers/.env && export KIT_API_KEY

# Dry run (test without sending)
python scripts/kit_broadcast.py \
  --subject "[CC4M] Post Title" \
  --content "<p>HTML content here</p>" \
  --send-at "2026-01-20T10:00:00-06:00" \
  --dry-run

# Create scheduled broadcast
python scripts/kit_broadcast.py \
  --subject "[CC4M] Post Title" \
  --content "<p>HTML content here</p>" \
  --send-at "2026-01-20T10:00:00-06:00"
```

## Timezone

User is in US Central time. When they say "10am tomorrow", convert to ISO8601 with `-06:00` offset (CST) or `-05:00` (CDT during daylight saving).

## Subscriber targeting

Broadcasts use the "CC4M broadcast audience" **segment** (ID: 544062), which is configured in the Kit UI to:
- **Include:** Subscribers with the "CC4M" tag
- **Exclude:** Subscribers currently in the "Welcome to CC4M" onboarding sequence

This ensures new subscribers complete their onboarding emails before receiving broadcast announcements. The segment ID is hardcoded in the script.

**Why a segment?** The Kit API v4 only supports `tag` and `segment` filter types, and only one filter group type (`all`, `any`, or `none`) per API call. Sequence exclusion requires a pre-built segment that combines both filters in the Kit UI.

## After scheduling

Report back:
- Broadcast ID from API response
- Scheduled send time
- Audience: CC4M tag subscribers
- Suggest user verify in Kit dashboard at https://app.kit.com/broadcasts

