Add missing Bluesky graph features (starter packs, thread/post gating, mute threads) #26

Closed
opened 2026-04-12 17:29:35 +00:00 by Grandiras · 0 comments
Owner

Summary

ATProto.NET is missing support for several Bluesky graph record types and endpoints that are part of the current Bluesky Lexicon specification.

Missing features

Starter Packs

  • app.bsky.graph.starterpack record type - Curated list of accounts for new users
  • app.bsky.graph.getStarterPack - Get a specific starter pack
  • app.bsky.graph.getStarterPacks - Batch get starter packs
  • app.bsky.graph.getActorStarterPacks - Get starter packs by actor
  • app.bsky.graph.searchStarterPacks - Search starter packs

Thread/Post Gating

  • app.bsky.feed.threadgate record type - Controls who can reply to a thread
  • app.bsky.feed.postgate record type - Controls post interaction (quote gating, embedding controls)
  • These records are created alongside posts to restrict interactions

List Blocks

  • app.bsky.graph.listblock record type - Block an entire list of accounts
  • app.bsky.graph.getListBlocks is partially present but list block creation/management may be incomplete

Mute Threads

  • app.bsky.graph.muteThread - Mute a specific thread
  • app.bsky.graph.unmuteThread - Unmute a thread

Relationships

  • app.bsky.graph.getRelationships - Get relationships between accounts (follower/following status)
  • app.bsky.graph.getKnownFollowers - Get mutual followers between accounts

Actor Status

  • app.bsky.actor.status record type - Account status indicator (e.g., "on vacation")

Context

These features are actively used on Bluesky and clients are expected to support them for a complete user experience.

## Summary ATProto.NET is missing support for several Bluesky graph record types and endpoints that are part of the current Bluesky Lexicon specification. ## Missing features ### Starter Packs - `app.bsky.graph.starterpack` record type - Curated list of accounts for new users - `app.bsky.graph.getStarterPack` - Get a specific starter pack - `app.bsky.graph.getStarterPacks` - Batch get starter packs - `app.bsky.graph.getActorStarterPacks` - Get starter packs by actor - `app.bsky.graph.searchStarterPacks` - Search starter packs ### Thread/Post Gating - `app.bsky.feed.threadgate` record type - Controls who can reply to a thread - `app.bsky.feed.postgate` record type - Controls post interaction (quote gating, embedding controls) - These records are created alongside posts to restrict interactions ### List Blocks - `app.bsky.graph.listblock` record type - Block an entire list of accounts - `app.bsky.graph.getListBlocks` is partially present but list block creation/management may be incomplete ### Mute Threads - `app.bsky.graph.muteThread` - Mute a specific thread - `app.bsky.graph.unmuteThread` - Unmute a thread ### Relationships - `app.bsky.graph.getRelationships` - Get relationships between accounts (follower/following status) - `app.bsky.graph.getKnownFollowers` - Get mutual followers between accounts ### Actor Status - `app.bsky.actor.status` record type - Account status indicator (e.g., "on vacation") ## Context These features are actively used on Bluesky and clients are expected to support them for a complete user experience.
Sign in to join this conversation.
No description provided.