By aadarshvelu
Run and diagnose the syndicate personal news digest pipeline from Claude Code.
Run the T1–T4 dedup pipeline to cluster near-duplicate items across the rolling window.
Export today's + last 3 days of digest items to the news-archive repo and push. External side-effect (git push).
Diagnose syndicate health — ollama reachability, disk free, env vars, git state. Reports remediation hints; does NOT auto-fix.
Fetch Gmail newsletters from the last N days into syndicate's snapshot.db. Writes to DB.
Fetch RSS feeds from the last N days into syndicate's snapshot.db. Writes to DB.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Personal AI news archiver. Runs on your laptop, summarizes with a local model, stores and serves through Git. Zero monthly cost.
Every morning I'd open Gmail, scroll Twitter, hop over to Hacker News — and somehow read the same OpenAI announcement over and over while missing the small Anthropic update that actually mattered. Tabs full of the same story, none of the signal.
Syndicate is the fix.
The constraint that shaped the architecture was simple: no server, no monthly bill. Which meant re-inventing the usual "Postgres + cron + S3 + CDN + Vercel" stack as things I already had at home:
| 🧠 | Compute | My laptop, on a regular schedule via launchd. No daemon, no always-on box. A missed cycle catches up cleanly within the rolling ingest window — longer absences lose older items. |
| 🤖 | AI | A local small language model (Ollama-served gemma4) for summarization, a local embedding model for dedup. Zero API spend. |
| 📦 | Storage | A second Git repo (news-archive) holds the daily JSON output. Versioned for free, no DB to host. |
| 🌐 | Hosting | GitHub Pages serves the PWA. It fetches its data straight out of news-archive. No backend, no CDN bill. |
Total operational cost: electricity. Total infrastructure: my laptop and two Git repos.
| How to use it | What you run |
|---|---|
| 🧑💻 Claude Code plugin conversational, agent-driven |
|
| ⚙️ Direct CLI cron-friendly text output |
|
| 📱 Read on phone/desktop PWA, no install |
aadarshvelu.github.io/syndicate Works offline. Add to Home Screen for native-app feel. |
Long-form install walkthrough, env-loading mechanics, and publishing notes live in INSTALL.md.
aadarshvelu.github.io/syndicate — static React/Vite PWA on GitHub Pages. Reads per-day JSON straight from the news-archive repo, caches in IndexedDB, works offline once loaded. No accounts, no backend, no data leaves the device.
Install it as a phone app (takes 10 seconds):
| 📱 iOS Safari | Open the link → Share → Add to Home Screen → Add |
| 🤖 Android Chrome | Open the link → ⋮ menu → Install app (or Add to Home screen) |
| 💻 Desktop Chrome / Edge | Open the link → address-bar install icon (⊕ in the right side) → Install |
After install, the PWA launches full-screen like a native app. The service worker caches the bundle so subsequent opens work without network — only the day's feed JSON is fetched fresh.
npx claudepluginhub aadarshvelu/syndicate --plugin syndicate-pipelineUltra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Frontend design skill for UI/UX implementation
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Marketing skills for AI agents — conversion optimization, copywriting, SEO, paid ads, ad creative, and growth
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.