Skip to content

Instantly share code, notes, and snippets.

@iameli
Created February 13, 2026 19:32
Show Gist options
  • Select an option

  • Save iameli/77dac0f52404003ad402f61d0bf33a4f to your computer and use it in GitHub Desktop.

Select an option

Save iameli/77dac0f52404003ad402f61d0bf33a4f to your computer and use it in GitHub Desktop.
atproto private data spam from chat

Chat's private data use cases:

  • Private Bluesky accounts
  • Shooting the shit
  • Different circles/audiences
  • Streamplace mods talking shop in a non-totally-public setting
  • Only trusting certain apps to handle certain data
  • Nate's medical records
  • Fuckin' everything?
    • What would we NOT want on atproto even if very good private/permissioned data ships?
      • E2EE chats?

Why on-protocol:

  • Consistent Identity
  • Prevent lock-in on appview layer (tyrannical Mastodon admin problem)
    • Arguably "billionaire-proof" is atproto's raison d'etre
  • Data handling norms

atproto-takes.social

  • Forum run by Eli
  • Uses atproto private data
  • "At this point, users expect to be able to search within a group, get notifications, see aggregate views (“trending in this community”), have sensible moderation tooling, get recommendations, and more. All of these features require backend services to read, process, and index the data."
  • "Authorize atproto-takes.social to read/write your social.atproto-takes.bad-opinion records?"
  • Then: I go evil and start banning you all for your bad opinions
  • Someone forks to atproto-takes-fork-without-eli.social (like a blacksky/witchsky/deer fork)
  • EVERY USER has to log in to that to get back to where we were

Alternatives to private data

  • Self-destructing data {$expiresAt: "2026-02-13T18:59:20.367Z"}
    • If you're trusting the same consumer with private data, what's the difference?
  • Maybe "JSON Gap" data where the app just doesn't show the data unless you're allowed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment