Skip to content

Feeds

Feeds is the signal layer. X accounts you follow, RSS feeds you subscribe to, newsletters you forward in. Everything Sadie watches to construct Today lives here first.

You open Feeds when you want to see the raw stream: what came in today, what a specific handle has been posting, what a theme is clustering around. Most of the time you will not need to.

  • X accounts. Read-only. Sadie uses the X adapter (@repo/x-adapter) to pull recent search results, filtered streams, and post counts. There is no posting path; none will be added.
  • RSS. Any feed URL. Ingested on compile and deduplicated across users.
  • Newsletters. Forwarded email, parsed into feed items. Bring your own forwarding address.

Each tracked feed has a status: active, paused, error, or connecting. You can pause a feed without losing history; Sadie will stop ingesting new items but the old ones remain available for synthesis.

Each X-account feed shows a sparkline of post volume over time. This is not vanity analytics; it is the signal Sadie uses to detect a voice going quiet, a thread blowing up, or a seasonal spike. When Today says “why now,” the sparkline is often what’s behind it.

Feed items are stored in two places: feedItems per user, and globalFeedItems across all users. Two people following the same X account do not ingest the same post twice. The userFeedItemLinks join table connects your feeds to the global items they have surfaced.

Every feed item carries a detectedThemes array. These roll up into feedThemeCounts, which track how often a theme appears across items, days, and distinct authors.

When a theme crosses the promotion threshold, Sadie can automatically create a new wiki entry. You do not have to do anything. The threshold is tunable through Sadie’s evolution config (see the SEPL loop); the default rewards patterns that are both frequent and diverse in origin.

Briefs are generated from clusters of feed items. If you open a brief in Memory, its sourceFeedItemIds point back to the exact feed items Sadie used. The chain is traceable end to end: feed item to theme to cluster to brief to wiki entry to discourse opportunity.