What problem does it solve? Following updates across blogs, news sites, YouTube channels, and forums requires different tools per platform, producing inconsistent data that downstream digest or labeling pipelines cannot consume uniformly. ## Core Features & Use Cases - Adapter-based ingestion: Choose from youtube (yt-dlp metadata and transcripts), rss (feedparser-based feed parsing), or generic (curl + trafilatura extraction with Jina Reader fallback) adapters, all login-free. - Unified S1 schema: Every adapter mirrors raw content to $AVA_HOME/state/mirrors/ and projects it onto one shared item schema, so downstream consumers never care which adapter produced an item. - Mirror-as-cursor deduplication: An item counts as seen iff its mirror post.json exists, making re-runs idempotent with no separate state file. - Use Case: Subscribe to an AI lab's blog RSS feed and a YouTube conference playlist; run each adapter's sync to collect new entries as uniform S1 items for a daily digest. ## Quick Start Ask the agent to sync a feed or channel, for example: fetch the latest entries from this RSS feed URL and project them to S1 items using the web-sources rss adapter.