Catch up on RSS feeds by auto-summarizing new articles.
Prerequisites
Requires feedparser :
pip install feedparser
Helper Script
Use scripts/rss_helper.py for fetching data:
List recent articles from a feed
python3 scripts/rss_helper.py feed URL [limit]
Get article content (fetches full page)
python3 scripts/rss_helper.py article URL
Workflow
Load configuration
-
Read feed list from references/feeds.json
-
Read last run timestamp from references/state.json
-
If first run: go back ~3 months
-
Otherwise: only articles since last run
For each enabled feed:
-
Run: python3 scripts/rss_helper.py feed "FEED_URL" 20
-
Filter to articles published since last run
-
Deduplicate against existing notes: grep -rl "media: {article_url}" "my-vault/07 Knowledge Base/Capture/Articles/"
-
If a note with that URL exists: skip (already processed, may be missing from state)
For each new article:
-
If feed provides full content, use that
-
Otherwise, run: python3 scripts/rss_helper.py article "ARTICLE_URL" to fetch full text
-
Summarize the content into bullet points (3-8 based on length/density)
-
Create article note with status: Summarized
-
Extract discoveries (see below)
Create discovery notes:
-
While summarizing, identify any products, services, frameworks, tools, libraries, or technologies mentioned that might be worth exploring
-
Search my-vault to check if a note already exists for each discovery
-
For new discoveries, create a note in my-vault/01 Inbox/
-
Link the discovery note from the article's Related field
Update state
-
Write current timestamp to references/state.json
-
Report summary of what was processed
Tagging
IMPORTANT: Read my-vault/09 System/Tag Index.md before processing to verify valid tags.
Tags MUST come from the canonical list - do not invent new tags. Common valid tags for this skill:
-
#ai
-
LLMs, agents, prompting, AI tools
-
#llm
-
Large Language Models, model comparisons
-
#dev-tools
-
IDEs, Git tooling, developer productivity
-
#python , #javascript , #typescript
-
language-specific
-
#devops , #api , #databases
-
infrastructure topics
-
#atlassian , #jira , #confluence
-
Atlassian products
Each feed in references/feeds.json has a tags array specifying default tags. Use these for article notes. Format: tags: ["tag1", "tag2"]
For discovery notes, choose tags based on what the discovery is (e.g., a Python library gets #python , an AI tool gets #ai ).
Article Note Format
Create in: my-vault/07 Knowledge Base/Capture/Articles/[Feed Name]/[Title].md
Sanitize filenames: remove special characters, limit length to ~80 chars.
class: Article media: https://example.com/article-url publishDate: YYYY-MM-DD status: Summarized author: Author Name reviewFrequency: lastReviewedDate: review: aliases: tags: ["tag1", "tag2"] cssclasses: archived:
Related:
Summary
Capture the actual conclusions and insights - what would someone learn from reading this? Not topic labels or "this article discusses X" but the substance:
Good: "Multi-agent systems outperform single agents when context exceeds what fits in one prompt - Anthropic's research system with Opus 4 lead + Sonnet 4 subagents beat single-agent Opus 4 by 90.2%"
Bad: "Discusses multi-agent architectures and when to use them"
Aim for 4-8 substantive bullets that capture the key takeaways, conclusions, data points, and actionable insights.
Discoveries
- [[Product Name]] - brief context from article
- (or "None" if nothing noteworthy)
Why Read?
[One sentence on whether this seems worth actually reading in full]
Feed Config
Edit references/feeds.json :
{ "feeds": [ { "name": "Feed Display Name", "url": "https://example.com/feed", "folder": "Folder Name", "tags": ["tag1", "tag2"], "priority": "high", "enabled": true } ] }
Tags should be from the canonical list in my-vault/09 System/Tag Index.md .
Discovery Note Format
Create in: my-vault/01 Inbox/[Name].md
class: Note reviewFrequency: lastReviewedDate: review: aliases: tags: ["tag1", "tag2"] cssclasses: archived:
Up: Related: [[Article Title]]
What is it?
[One sentence description of the product/service/framework]
Why look into it?
[Brief note on why it seemed interesting from the article context]
Links
- [Official site or docs if mentioned]
What counts as a discovery:
-
Products or services (SaaS tools, apps, platforms)
-
Frameworks or libraries (programming, ML, etc.)
-
Technologies or protocols
-
Notable companies or projects
-
Methodologies or techniques worth researching
Skip creating notes for:
-
Well-known mainstream things (e.g., "Python", "AWS", "React")
-
Generic concepts that don't warrant their own note
-
Things already covered extensively in existing notes
Processing Tips
-
Process one feed at a time and report progress
-
For long articles, focus on main arguments/takeaways
-
If article content can't be fetched, summarize from title/description
-
Skip articles that already exist in my-vault
-
Keep summaries concise - this is for deciding what to read, not replacing reading
-
When extracting discoveries, be selective - only create notes for things genuinely worth exploring
-
Deduplicate by URL - some articles may appear in multiple feeds
Path Handling
CRITICAL - Never escape spaces with backslashes:
-
Use paths exactly as shown: my-vault/07 Knowledge Base/... (with literal spaces)
-
The Write tool handles spaces correctly - backslash escaping creates literal
characters in directory names -
When using Bash commands, wrap paths in double quotes: "my-vault/07 Knowledge Base/..."