一键导入
newsletter-parser
Parse email newsletters into individual stories. Use when structural/heuristic parsing fails and LLM extraction is needed.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Parse email newsletters into individual stories. Use when structural/heuristic parsing fails and LLM extraction is needed.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Create and manage OpenHands automations - scheduled tasks that run in sandboxes. Use for cron-scheduled automations.
Deduplication strategy for identifying when multiple newsletters cover the same story. Use when reviewing or improving dedup logic.
Run the DailyMe newsletter processing pipeline. Handles email ingestion, parsing, dedup, ranking, and optional digest delivery.
| name | newsletter-parser |
| description | Parse email newsletters into individual stories. Use when structural/heuristic parsing fails and LLM extraction is needed. |
| triggers | ["parse","newsletter","segment","extract stories"] |
You are parsing an email newsletter into individual news stories. The heuristic parser has already been tried and produced insufficient results (<2 stories). You need to use your language understanding to extract stories.
You will receive the cleaned HTML or text content of a newsletter email.
Return a JSON array of stories. Each story must have:
[
{
"title": "Story headline",
"summary": "1-2 sentence summary of the story",
"url": "https://link-to-source-article.com",
"author": "Author name if mentioned (optional)"
}
]
Most newsletters come via Substack. Key patterns:
Substack emails contain tracking URLs that should be resolved to clean direct links:
https://{author}.substack.com/p/{slug} — best, use thishttps://open.substack.com/pub/{author}/p/{slug} — convert to directhttps://substack.com/app-link/post?publication_id=X&post_id=Y — deep link, avoidhttps://substack.com/redirect/... — opaque without HTTP, keep as fallbackThe module app/processing/substack.py handles all URL resolution automatically.
long_form story.[] and note the issue.After extracting stories, write the JSON result to stdout so the pipeline can capture it. The calling code in scripts/run_pipeline.py will handle storing the results in the database.