Buttondown Mgmt

April 29, 2026 · View on GitHub

Manage one or more Buttondown newsletters from Claude Code. Each newsletter has its own API key reference and user directory, a shared template store provides reusable email starting points, and the official Buttondown docs are cloned locally and treated as the canonical source of truth for every API/CLI question.

Skills

Setup & docs

  • onboard — first-run setup: register one or more newsletters (each with API key reference + user directory), provision template store, clone docs
  • refresh-docs — pull latest buttondown/docs into the local cache
  • docs-lookup — query the cached docs before any API call or answer
  • cli-reference — wrapper notes for the official Buttondown CLI

Newsletters

  • add-newsletter — register an additional newsletter
  • list-newsletters — show registered newsletters and which is default

Templates

  • add-template — create a reusable email template (markdown + frontmatter)
  • update-template — edit an existing template
  • list-templates — list templates, filterable by scope

Email ops

  • list-emails — list drafts / scheduled / sent emails for a chosen newsletter
  • send-email — create a draft or send (with confirmation), optionally starting from a template

Data locations

${CLAUDE_USER_DATA:-${XDG_DATA_HOME:-$HOME/.local/share}/claude-plugins}/buttondown-mgmt/
├── config.json         # newsletters map (slug → name, api_key_ref, user_dir, default)
├── cache/docs/         # cloned buttondown/docs (canonical reference)
├── templates/          # shared email templates (markdown + YAML frontmatter)
├── data/
└── state/

User-owned content (drafts, sent archives, subscriber exports) lives per-newsletter under each newsletter's user-chosen user_dir (default ~/Documents/Buttondown/<slug>/) — never inside the plugin install directory.

Installation

claude plugins marketplace add danielrosehill/Claude-Code-Plugins
claude plugins install buttondown-mgmt@danielrosehill

Then invoke onboard to configure.

References

License

MIT