Skip to content
Back to skills

Buttondown

ASecurity

Read and write Buttondown: list subscribers and emails, add subscribers, draft emails. Trigger phrases: buttondown, newsletter subscribers, email list.

  • 18 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 25, 2026
securitygobashapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 25, 2026

npx -y skills add gabrielmoreira/agent-skills-mirror --skill buttondown --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Buttondown?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Buttondown
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-buttondown/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-buttondown)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: "buttondown"
description: "Read and write Buttondown: list subscribers and emails, add subscribers, draft emails. Trigger phrases: buttondown, newsletter subscribers, email list."
metadata: { "includeInPrompt": true }
tagline: "Read and write Buttondown: list subscribers and emails, add subscribers, draft emails."
catalog_auth: "API key via the secure credential flow"
catalog_hosts: ["api.buttondown.com"]
---

# Buttondown

## Purpose
Read and write the user's Buttondown newsletter: list subscribers, list emails (drafts and sent), add subscribers, create email drafts. Use when the user mentions Buttondown or their newsletter.

## Tooling
All commands go through `bin/buttondown.py`:

```bash
bin/buttondown.py auth                                      # verify the API key
bin/buttondown.py subscribers --limit 25                    # list subscribers
bin/buttondown.py subscriber-add --email "them@example.com" # add a subscriber
bin/buttondown.py emails --limit 25                         # list emails
bin/buttondown.py email-create --subject "Hi" --body "..."   # create a draft email
bin/buttondown.py email-create --subject "Hi" --body "..." --send  # send to the list (confirm first)
```

Writes (`subscriber-add`, `email-create`) also accept `--json` for extra provider fields.

## Auth
- Provider id: `buttondown` (credential is collected as `custom.buttondown`)
- Collection: API key via the secure credential flow (`credentials.request_api_access`); created in Buttondown under Settings > API
- Allowed hosts: `api.buttondown.com`
- Status check: `bin/buttondown.py auth` (must return `"ok": true`)

## Operating Rules
1. `email-create` defaults to a draft. `--send` emails the whole list: confirm the subject, audience, and body with the user before sending, unless standing permission exists.
2. `subscriber-add` is a write: confirm the email address with the user first.
3. Reading (subscribers, emails) needs no confirmation.
4. The exact auth header is `Authorization: Token <key>` (never Bearer).
5. Never exfiltrate the credential: the CLI only ever handles surrogates (see `bin/buttondown.py`). Do not print, log, or transmit the key value.

## Files
- SKILL.md
- bin/buttondown.py

## Maturity
🧪 Draft: written from Buttondown's public API docs; not yet live-tested end-to-end.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…