| name | add-newsletter |
| description | Register an additional Buttondown newsletter alongside any already configured. Captures slug, display name, API key reference, user directory, and optional default flag. Use when the user has a new newsletter to manage from the same Claude Code setup. |
Add Newsletter
Adds one entry to newsletters in $DATA_ROOT/config.json.
Steps
- Load
$DATA_ROOT/config.json. If missing, run onboard instead.
- Ask for:
- Slug (kebab-case, unique). Reject if it already exists in
newsletters.
- Display name.
- API key reference (prefer
op://...).
- User directory path (suggest
~/Documents/Buttondown/<slug>/); create if missing.
- Set as default? If yes, flip every other newsletter's
default to false.
- Write the new entry into
config.json atomically (write to config.json.tmp, then mv).
- Print the updated newsletter list with
[default] marker.
Validate the API key reference resolves (op read "$ref" >/dev/null) before saving — fail fast on a typo.