← Back to Skills Marketplace
neeravmakwana

Email Newsletter Digest

by Neerav Makwana · GitHub ↗ · v1.0.1 · MIT-0
cross-platform ✓ Security Clean
162
Downloads
1
Stars
0
Active Installs
2
Versions
Install in OpenClaw
/install email-newsletter-digest
Description
Summarizes recent newsletter emails received in Gmail into a single newsletter digest. This skill identifies newsletter emails using configured labels or sen...
README (SKILL.md)

Email Newsletter Digest

Use this skill to send a digest of newsletter emails received within the last 1 day.

Read settings.json at the start of every invocation. For settings structure and maintainer notes, see REFERENCE.md.

When To Use

Use this skill when the user wants to:

  • send a newsletter digest email
  • send the newsletter digest to multiple people
  • schedule the digest every morning or on another cadence
  • update which labels count as newsletters
  • update which senders count as newsletters
  • update who receives the digest

Settings

Read settings.json at the start of every invocation.

The settings file contains:

  • newsletter_labels_csv
  • newsletter_senders_csv
  • digest_recipient_emails_csv
  • recipient_delivery_mode

Rules:

  • newsletter_labels_csv may be null or empty if newsletter_senders_csv is populated
  • newsletter_senders_csv may be null or empty if newsletter_labels_csv is populated
  • both cannot be null or empty at the same time
  • if both are populated, the Gmail search must use OR semantics across both groups
  • digest_recipient_emails_csv may contain one or more comma-separated email addresses
  • recipient_delivery_mode controls how emails are sent to multiple recipients
  • supported values:
    • individual to send one email per recipient
    • group to send one email with all recipients in To
  • if recipient_delivery_mode is omitted, default to group

Agent Workflow

  1. Immediately send a short acknowledgement such as: "I'm preparing the email newsletter digest now."
  2. Read settings.json.
  3. Validate that at least one newsletter filter is populated and at least one recipient email is configured.
  4. Run the bundled runner at ~/.openclaw/skills/email-newsletter-digest/scripts/newsletter-digest.py in a single blocking command with a generous timeout so you can wait for its stdout result. Do not background it and do not rely on follow-up polling for this skill.
  5. Summarize each matching newsletter, build the digest, and send it using the configured recipient_delivery_mode.
  6. When the run finishes, send a short completion message naming the recipients and the newsletter count.

If the user asks to update labels, senders, recipients, or recipient delivery mode:

  • edit settings.json
  • preserve the comma-separated format
  • remove duplicates and empty entries

If the user asks to schedule it:

  • use OpenClaw's normal scheduling or cron mechanism
  • do not ask the user to write shell commands
  • if the user says "every morning" and does not specify a time, use a reasonable morning time in the system timezone

Core Rules

  • Use gog gmail messages search to fetch individual newsletter emails.
  • Use gog gmail thread get --full first for body extraction.
  • If the body looks like a placeholder, fall back to gog gmail get --json and extract the best MIME part.
  • Use summarize to turn each newsletter into bullet points.
  • Unless the user explicitly asks for a different summarizer model, let summarize use its own configured/default model.
  • Deduplicate by Gmail message id so each newsletter is summarized once per run.
  • Only include matching emails from the last 1 day.
  • If no newsletters are found, report that plainly and do not send anything.
  • If the run fails or all summaries fail, send a failure email to the configured recipients with the likely cause when possible.
  • If only some newsletters fail to summarize, still send the digest and then send a warning email describing the failures.
  • Keep user interaction natural-language-first. Do not tell the user to run Python or shell commands themselves.

Query Construction

Construct the Gmail search from the settings file:

Reporting Back

  • Always acknowledge the request before starting work.
  • For a successful run, report which recipients were sent the digest and how many newsletters were included.
  • For settings changes, summarize exactly what changed.
  • For scheduled runs, confirm the cadence in plain language.
  • If gog or summarize fails, surface the error instead of hiding it.
  • Never fail silently. If the digest cannot be sent, tell the user plainly what went wrong.
Usage Guidance
This skill will read your Gmail (via the gog CLI) and send emails to the recipients listed in settings.json; it uses a local summarize tool which may call OpenAI (hence OPENAI_API_KEY). Before installing: (1) confirm you have and trust the gog CLI account configured on the host (or set GOG_ACCOUNT intentionally); the skill will use that account to read/send messages; (2) be comfortable that email content will be sent to the summarization provider (OpenAI or whatever summarize uses) — review privacy implications; (3) inspect settings.json and the bundled scripts if you want to confirm no extra behavior; and (4) test with a non-sensitive/dummy mailbox first. If you’re uncomfortable exposing email content to an external summarizer, do not install or disable the summarize/OpenAI integration.
Capability Analysis
Type: OpenClaw Skill Name: email-newsletter-digest Version: 1.0.1 The email-newsletter-digest skill is designed to aggregate, summarize, and mail out a digest of recent Gmail newsletters. It utilizes the 'gog' and 'summarize' CLI tools to perform its core functions. The Python script (newsletter-digest.py) demonstrates good security practices, such as using list-based subprocess calls to prevent shell injection and implementing a redaction function (sanitize_error_text) to prevent API keys from leaking into logs or error messages. No evidence of data exfiltration, unauthorized persistence, or malicious prompt injection was found.
Capability Assessment
Purpose & Capability
The name/description (Gmail newsletter digest) aligns with requested binaries and env: python3 to run the bundled runner, gog to access Gmail, and summarize (plus OPENAI_API_KEY) for summarization. Nothing requested appears unrelated to summarizing and sending Gmail newsletters.
Instruction Scope
SKILL.md instructs the agent to read settings.json and to run the bundled script which in turn uses `gog gmail ...` to read/send messages and `summarize` to create summaries. This is in-scope. One minor note: the reference material and script mention an optional GOG_ACCOUNT environment variable (to choose which Gog account to use); that env var is not listed in requires.env, so the skill may use whatever gog account is configured on the host if GOG_ACCOUNT is present.
Install Mechanism
There is no external install spec or downloads; this is an instruction-only skill with a bundled Python script. No arbitrary remote archive downloads or package installs are performed by the skill itself.
Credentials
Requesting only OPENAI_API_KEY is reasonable because summarization uses a provider. However, the skill relies on the gog CLI and the host's Gog/Gmail credentials (and will use GOG_ACCOUNT if set). Those Gmail credentials are not listed as required env vars but are necessary for functionality; users should understand the skill will read and send email from the gog-configured Gmail account.
Persistence & Privilege
always is false and the skill does not request persistent/privileged platform hooks. It runs when invoked and does not modify other skills or system-wide configs.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install email-newsletter-digest
  3. After installation, invoke the skill by name or use /email-newsletter-digest
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.1
Harden the skill for ClawHub scanning by removing direct home-config reads, removing bundled third-party tap installers, and reducing error output exposure.
v1.0.0
Initial release.
Metadata
Slug email-newsletter-digest
Version 1.0.1
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 2
Frequently Asked Questions

What is Email Newsletter Digest?

Summarizes recent newsletter emails received in Gmail into a single newsletter digest. This skill identifies newsletter emails using configured labels or sen... It is an AI Agent Skill for Claude Code / OpenClaw, with 162 downloads so far.

How do I install Email Newsletter Digest?

Run "/install email-newsletter-digest" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Email Newsletter Digest free?

Yes, Email Newsletter Digest is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Email Newsletter Digest support?

Email Newsletter Digest is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Email Newsletter Digest?

It is built and maintained by Neerav Makwana (@neeravmakwana); the current version is v1.0.1.

💬 Comments