Building a Contextual Personal AI News Briefing System with Claude Code

How the System Works
The briefing system operates in two stages. Stage 1 uses Python to fetch data from 17 sources concurrently: Substacks, Reddit, Hacker News, arXiv, GitHub Trending, Bluesky, company blogs (Anthropic, OpenAI, Google, etc.), mainstream news (NYT, Verge, Ars Technica, TechCrunch), HuggingFace papers, MCP registries, and podcasts with Groq transcription. This stage performs basic time filtering and URL deduplication, dumping raw JSON with 200-300 items per run. No LLM calls occur here—it's purely data collection.
Stage 2 involves a Claude Code session launched via shell script with claude -p and tool access including file read/write, web search, and a personal memory system called maasv. This memory system maintains a graph of projects, decisions, and context over time via MCP.
Claude Session Process
The Claude session bootstraps memory to understand what the developer has been working on in the last 48-72 hours, reads the raw feed JSON from Stage 1, performs 5-10 targeted web searches to fill gaps based on current focus, reads previous briefs to avoid repeats and catch multi-week trends, and reads actual source code when news items connect to projects. It writes narrative briefs to .md and .html formats and logs everything to memory for future reference.
Brief Sections
- Front of Mind: Connects today's news to active work. If a dependency was switched yesterday and that vendor appears in today's news, it makes the connection.
- The Brief: 4-6 paragraphs of narrative analysis tying stories together, not in list format.
- Devil's Advocate: Challenges recent decisions with evidence. If a data source was dropped for ethical reasons, it specifies what coverage is being lost.
- Wife's Corner: Curates AI + finance news for the developer's wife who works in venture and M&A at a credit rating agency.
- Code Connections: Maps news to specific files and line numbers in the codebase. For example: "This new open-weight model's specs make it a candidate for your local fallback path at llm/providers/init.py:95-145." It reads the code to write these connections.
- Worth a Click: 10 overflow items that didn't make the narrative but are worth clicking.
Technical Implementation
The system runs M/W/F at 6:30 AM on a Mac Mini using launchd for scheduling. The tech stack includes Python (async httpx, feedparser, beautifulsoup4), Claude Code CLI (claude -p with --allowedTools), maasv (personal memory system via MCP), Groq (podcast transcription), and Markdown with a small HTML converter for mobile reading. Total cost is approximately $6-12/month.
The developer notes that the memory layer (maasv) is key to making the system work effectively, as it maintains context about projects, decisions, family interests, and reading history.
📖 Read the full source: r/ClaudeAI
👀 See Also

Using OpenClaw's SkyClaw bot for personal expense tracking via Discord and Google Sheets
A user describes using SkyClaw, a cloud-native bot powered by OpenClaw, to log expenses through Discord messages and receipt images, which are automatically added to a Google Sheet without needing access to sensitive personal accounts.

How an AI Personal Assistant Transformed Management of My Twitter Account
Discover how an AI personal assistant revolutionized the management of a Twitter account with increased engagement and efficiency. Learn from this real success story sourced from the OpenClaw community.

Emergency coding setup: Claude Code on OCI free VM with Termux on Android
A developer shares a setup using Oracle Cloud Infrastructure's free VM (24GB RAM, 4 vCPUs) with Claude Code installed, accessed via Termux on Android for emergency coding when a laptop isn't available. The setup requires Claude Pro ($20/month) or Max ($100/month) subscription.

OpenClaw and n8n Integration for Batch Image Generation
A developer shares a workflow using OpenClaw for intent understanding and n8n for batch image generation, with Google Sheets for organization. The setup uses MiniMax M2.7 via Atlas Cloud and saves tokens by separating planning from execution.