Install
openclaw skills install daily-mediumFetch and summarize Medium Daily Digest emails from Gmail. Extracts article URLs, generates Freedium links to bypass paywalls, and provides article summaries. Use when the user wants to check their Medium Daily Digest, read Medium articles without paywall, or get summaries of Medium content from their email.
openclaw skills install daily-mediumFetch Medium Daily Digest emails from Gmail and extract article information with paywall-free links.
This skill connects to Gmail via IMAP, retrieves the latest Medium Daily Digest email, extracts article URLs, and provides Freedium mirror links to bypass Medium's paywall.
Environment Variables Required:
EMAIL_ADDRESS - Gmail address (e.g., user@gmail.com)EMAIL_PASSWORD - Gmail App Password (not regular password)How to get Gmail App Password:
from scripts.fetch_medium import fetch_medium_digest
# Fetch today's Medium digest
result = fetch_medium_digest()
if result:
print(f"Digest: {result['digest_title']}")
for article in result['articles']:
print(f"- {article['title']}")
print(f" Freedium: {article['freedium_url']}")
result = fetch_medium_digest(
email_address="user@gmail.com",
password="xxxx xxxx xxxx xxxx"
)
The fetch_medium_digest() function returns:
{
'digest_date': 'Mon, 16 Feb 2026 12:30:00 +0000',
'digest_title': '10 OpenClaw Use Cases for a Personal AI Assistant | Balazs Kocsis',
'articles': [
{
'title': 'Article Title Here',
'author': 'username',
'url': 'https://medium.com/@username/article-slug',
'freedium_url': 'https://freedium-mirror.cfd/https://medium.com/@username/article-slug'
},
# ... more articles
]
}
To generate article summaries, fetch the content via Freedium and summarize:
import requests
from bs4 import BeautifulSoup
def summarize_article(freedium_url):
response = requests.get(freedium_url)
soup = BeautifulSoup(response.content, 'html.parser')
text = soup.get_text(separator=' ', strip=True)
# Return first 300 chars as summary
return text[:300] + "..."
max_articles parameter)