I would like to give an update on "federation" on Bluesky.
-
Fediverse defederation forces a degree of soft group consensus on moderation: it's possible to say "if you're talking to X, I don't want to talk to you".
How? If server A blocks server B, and neither server blocks server C, server C can still interact with both servers A and B. Server A could of course choose to also block server C for not blocking server B, but this would have to be done manually (you can't necessarily tell if server C blocks server B, since blocklists are often not public and not all interactions are public either) and I don't see how it's forced.
@noisytoot It's possible for A to figure out C's blocks and take action. C might choose to make that hard, but A might choose to treat hiding the blocks as suspicious. Or just talk to people and ask them what the blocks are.
By contrast on Bluesky it's not possible to do any of this. Not "it's not automatic", not "it's potentially hard", it's impossible. Any account can be on any PDS can be on any appview, there are no walls or fences, the instance is not present as a moderation abstraction.
-
:frogsiren: BLUESKY HAS OFFICIALLY NETSPLIT :frogsiren:
There has always been more than one Fediverse. Different instances make different moderation decisions so some instances can't see posts by some users.
There has only ever been one Bluesky because every ATProto frontend uses the same Appview.
It is January 2026 and that's no longer true; Blacksky's Appview is available for beta use and there is at least 1 user banned on Bluesky but not Blacksky. And vice versa.
Rudy wants revolution. (@rude1.blacksky.team)
Bluesky runs an appview. Blacksky runs an appview. A complete appview is a several terabytes sized database of the >18 billion follows, likes and posts of all bsky users, ever and forever. To run a different appview is to make a fork in bsky’s timeline. One has new posts from Łink. One doesn’t.
Bluesky Social (bsky.app)
@mcc oh that's sick. congrats to blacksky for making it
-
This is why—although, now Blacksky is letting me "see through" Bluesky's worst moderation decisions, I'm glad, because Bluesky's moderation is weird and arbitrary—I think it's a downside of the network, and Mastodon made the right decision not offering this feature. Fediverse defederation forces a degree of soft group consensus on moderation: it's possible to say "if you're talking to X, I don't want to talk to *you*". On Bluesky we are all ghosts walking through walls and this can't be enforced
@mcc I read your thread only now, and I wanted to thank you for posting all that. I am no fan of Bluesky and their one-instance federation, but I have a phony account there, to follow how it's going for them. Threads like yours fill in additional context.

-
t yet
-
@lrhodes Depends on how you do it I imagine. But remember that's several terabytes for the like what, three years or something Bluesky has been running. We will expect it to grow endlessly, and we should expect the growth to grow endlessly as Bluesky becomes more popular.
-
What I saw happen when Black Twitter came to Fediverse is attempts to build community resources— like shared cross-instance blocklist infrastructure— get demonized by white queers as being anti-queer (because they, personally, wound up moderated— due to, as far as I saw, entirely real racism). I saw multiple projects shut down or hobbled by this and good people driven off fedi. I don't know if any devs from that era are involved in the new Bluesky efforts. But the Bluesky efforts *are* thriving.
@mcc sad stuff
Thanks for the history lesson and analysis. -
@mcc Do you not find the login UI for https://blacksky.community and https://bsky.app a bit concerning? Because if you fill in a “custom server” you are now sending your password from one app view to a different server? If you host your own PDS do you only ever send that pw to your own servers?
@poswald@mastodon.social @mcc@mastodon.social This is a really unfortunate thing in the Bluesky UI not using OAuth yet. It looks like there is a PR work in progress for it, but it hasn't seen activity in a few months: -> https://github.com/bluesky-social/social-app/pull/8665
You might want to use a different client in the meantime and set the appview to blacksky's. -
@mcc Do you not find the login UI for https://blacksky.community and https://bsky.app a bit concerning? Because if you fill in a “custom server” you are now sending your password from one app view to a different server? If you host your own PDS do you only ever send that pw to your own servers?
@poswald It's weird! It's one of a dozen things in the design of bluesky that makes it clear bluesky only ever intended for anyone to use the bluesky services and the federation was either a "look at our party trick" or an idea they abandoned very early
-
I would like to give an update on "federation" on Bluesky.
My expectation was it was unlikely we'd ever see this happen because "federation" on ATProto means basically reproducing the entirety of the Bluesky software stack. In old Big Data terms, on ActivityPub your instance is a "horizontal shard" of the network; ATProto forces full DB replicas only.
Still, we're seeing movement on this front, which I'd split into two categories:
1. Your fault (you reading this)
2. Aaron Rodericks's fault@mcc a in terms of DB replication could it be kind of Scuttlebutt, but with VC backing them? hehehe
-
I would like to give an update on "federation" on Bluesky.
My expectation was it was unlikely we'd ever see this happen because "federation" on ATProto means basically reproducing the entirety of the Bluesky software stack. In old Big Data terms, on ActivityPub your instance is a "horizontal shard" of the network; ATProto forces full DB replicas only.
Still, we're seeing movement on this front, which I'd split into two categories:
1. Your fault (you reading this)
2. Aaron Rodericks's fault@mcc People love to call the fediverse hard and complicated but ATProto looks so overengineered to me
-
:frogsiren: BLUESKY HAS OFFICIALLY NETSPLIT :frogsiren:
There has always been more than one Fediverse. Different instances make different moderation decisions so some instances can't see posts by some users.
There has only ever been one Bluesky because every ATProto frontend uses the same Appview.
It is January 2026 and that's no longer true; Blacksky's Appview is available for beta use and there is at least 1 user banned on Bluesky but not Blacksky. And vice versa.
Rudy wants revolution. (@rude1.blacksky.team)
Bluesky runs an appview. Blacksky runs an appview. A complete appview is a several terabytes sized database of the >18 billion follows, likes and posts of all bsky users, ever and forever. To run a different appview is to make a fork in bsky’s timeline. One has new posts from Łink. One doesn’t.
Bluesky Social (bsky.app)
@mcc Nice! I seem to recall a prediction that ATProto would slowly evolve to become closer to ActivityPub because the supposed "bugs" of the fediverse are actually features to make it manageable. Eventually, once they strip it of all its oddities, they may be able to reimplement BS in ActivityPub.
-
:frogsiren: BLUESKY HAS OFFICIALLY NETSPLIT :frogsiren:
There has always been more than one Fediverse. Different instances make different moderation decisions so some instances can't see posts by some users.
There has only ever been one Bluesky because every ATProto frontend uses the same Appview.
It is January 2026 and that's no longer true; Blacksky's Appview is available for beta use and there is at least 1 user banned on Bluesky but not Blacksky. And vice versa.
Rudy wants revolution. (@rude1.blacksky.team)
Bluesky runs an appview. Blacksky runs an appview. A complete appview is a several terabytes sized database of the >18 billion follows, likes and posts of all bsky users, ever and forever. To run a different appview is to make a fork in bsky’s timeline. One has new posts from Łink. One doesn’t.
Bluesky Social (bsky.app)
If I'm not completely mistaken, any community on a social network that longs for a competent moderation, and wants to avoid the risk of their platform being pulled away from under their feet, needs to take things into their own hands.
It might be hosted by another community, but insisting on its own needs may create conflict, and a perception of it coming up with whataboutisms, on the hosting platform.
The Fediverse answer is to spin up a community-focused server.
Am I completely mistaken thinking that the ATProto answer is, ultimately, to take running an instance of the complete stack into its own hands?
Still struggling to understand how many communities would have the stamina to do it this way, compared to, lets say, firing up its own Mastodon instance and be good.
What am I missing?
-
If I'm not completely mistaken, any community on a social network that longs for a competent moderation, and wants to avoid the risk of their platform being pulled away from under their feet, needs to take things into their own hands.
It might be hosted by another community, but insisting on its own needs may create conflict, and a perception of it coming up with whataboutisms, on the hosting platform.
The Fediverse answer is to spin up a community-focused server.
Am I completely mistaken thinking that the ATProto answer is, ultimately, to take running an instance of the complete stack into its own hands?
Still struggling to understand how many communities would have the stamina to do it this way, compared to, lets say, firing up its own Mastodon instance and be good.
What am I missing?
@katzenberger Bluesky has a concept of a "labeler" or "composable moderation". Without running the entire stack, you can run a server that "adds" moderation. Someone can subscribe to your "labeler", and anyone you've modded as banned or "allowed, but apply a clickthrough warning on their posts" shows up as modded that way to your subscriber. Bluesky PBLLC believes this fixes all problems. They think they can do flippant moderation, and anyone who wants more moderation can layer it on themselves.
-
@katzenberger Bluesky has a concept of a "labeler" or "composable moderation". Without running the entire stack, you can run a server that "adds" moderation. Someone can subscribe to your "labeler", and anyone you've modded as banned or "allowed, but apply a clickthrough warning on their posts" shows up as modded that way to your subscriber. Bluesky PBLLC believes this fixes all problems. They think they can do flippant moderation, and anyone who wants more moderation can layer it on themselves.
@katzenberger In practice, I think this does not work, and Bluesky PBLLC is abdicating duty. There are several problems with the approach.
1. The labeler concept is *additive*, not *subtractive*. You cannot unsubscribe from Bluesky's default moderation server UNLESS you create your own, complete, stack…
2. …and MANY of the default moderation decisions are weird.
3. The "3000 friends" problem; someone moderated by a labeler can easily recruit people not yet "labeled" from Bluesky's larger pool
-
@katzenberger In practice, I think this does not work, and Bluesky PBLLC is abdicating duty. There are several problems with the approach.
1. The labeler concept is *additive*, not *subtractive*. You cannot unsubscribe from Bluesky's default moderation server UNLESS you create your own, complete, stack…
2. …and MANY of the default moderation decisions are weird.
3. The "3000 friends" problem; someone moderated by a labeler can easily recruit people not yet "labeled" from Bluesky's larger pool
@mcc @katzenberger
4. It still doesn't prevent bluesky from seeing everything that is happening, which is how tech companies make money. I'm pretty sure this is by design -
@mcc @coracinho @falken This is the best writeup on bluesky's decentralization I've seen which gets very in the weeds. Christine is an expert on decentralized communication and one of the authors of the ActivityPub spec that powers fedi so I don't think you'll find a better analysis
https://dustycloud.org/blog/how-decentralized-is-bluesky/ -
@gbargoud Sure. You could do that. I'm aware of a patch to the PDS (backend) software that allows it to flat out publish via ActivityPub. I haven't seen a *frontend* that merges the streams yet though.
There's also the problem that you can't reeeallly monitor *just part* of the Bluesky network. To follow part of it you're supposed to drink the entire firehose and filter out the parts you care about.
-
This post is 4 months old hehe.
At this moment we are making our own red dwarf style post fetching, wich is done directly on the PDS
-
The biggest movement on this front has come from the community formerly known as Black Twitter, which now has complete, viable alternative dupes of the whole stack:
Rudy wants revolution. (@rude1.blacksky.team)
blacksky.app → pds atproto.africa → relay blacksky.community → app @blackskyweb.xyz → moderation @tektite.cc → migration assembly.blacksky.community → governance blackskyweb.xyz → marketing website rsky.satnav.dev → exported data explorer https://blacksky.community
Blacksky (blacksky.community)
This makes intuitive sense to me! My first question, looking at ATP, is "why do free dev for this protocol, controlled by one corporation, when Fediverse is right there and is more complete?". But the black dev community, from everything I saw, tried to adopt Fediverse *first* and basically got harassed off.
Worth noting that Blacksky has a unique lineage from Black Twitter. Rudy mentions in interviews that he wasn't much of a social media user before starting work on Blacksky and, if I recall right, didn't know much about Twitter or the community there.
-
Worth noting that Blacksky has a unique lineage from Black Twitter. Rudy mentions in interviews that he wasn't much of a social media user before starting work on Blacksky and, if I recall right, didn't know much about Twitter or the community there.
@whattheflux This is true but the thing is what makes blacksky blacksky is the broader community, if he wasn't acting in concert with a community rudy would just be Northsky