Ahah! Thank you that clarifies things for me.
19.11.2025 19:14 โ ๐ 3 ๐ 0 ๐ฌ 0 ๐ 0@jonathanwarden.com.bsky.social
Ahah! Thank you that clarifies things for me.
19.11.2025 19:14 โ ๐ 3 ๐ 0 ๐ฌ 0 ๐ 0Another takeaway from @eurosky.social live conference in Berlin: @rose.bsky.team says Bluesky does not hate advertising.
19.11.2025 16:25 โ ๐ 0 ๐ 0 ๐ฌ 0 ๐ 0@sherifea.com and @seabass.bsky.social just demoed EuroSkyโs moderation infrastructure.
But I'm wondering: how much of this work must be replicated?
Bluesky must comply with the DSA for EU users, and they already run a labeler for the posts distributed through the Bluesky app...
#euroskylive
@eurosky.social conference in Berlin just finished. One of the main themes seemed to be European independence from US big tech companies. Including from Bluesky. #euroskylive
19.11.2025 16:14 โ ๐ 5 ๐ 0 ๐ฌ 1 ๐ 0Looking forward to attending @eurosky.social on Nov 19th in Berlin. Anyone that wants to meet to talk about Community Notes for Bluesky and @bluenotes.social let me know.
04.11.2025 17:03 โ ๐ 2 ๐ 0 ๐ฌ 0 ๐ 0And you can watch all this happen in the "Network" tab of dev tools when you load this page: bluenotes.social/community-no...
You'll see calls to the app.bsky.feed.getFeed (the Bluesky app view), which returns posts with the 'annotation' label, then calls to org.opencommunitynotes.getProposals
Oh and a tip. Frontends should pass the DID of the Bluenotes labeler in the 'Atproto-accept-labelers' header when making calls to the Bluesky app view. This way, users don't have to describe to the labeler.
25.10.2025 20:18 โ ๐ 0 ๐ 0 ๐ฌ 1 ๐ 0And one small detail I forgot in the above: when you call the `getProposals` endpoint on a post that has the `annotation` tag, add `&status=rated_helpful` to get the note that was actually rated helpful (in case there are other proposed notes that weren't rated helpful).
25.10.2025 19:01 โ ๐ 0 ๐ 0 ๐ฌ 2 ๐ 0Once a note reaches "rated helpful" status, the proposed label becomes an actual label emitted by the labeler. But since labels can't include the note text (yet), frontends need to fetch the note text from the original proposal.
25.10.2025 18:58 โ ๐ 0 ๐ 0 ๐ฌ 1 ๐ 0The endpoint is getProposals, instead of getNotes, because when somebody submits a note, it always starts as a "proposal" record, from the social.pmsky.proposal schema.
github.com/johnwarden/o...
Example:
25.10.2025 18:54 โ ๐ 0 ๐ 0 ๐ฌ 1 ๐ 02. Next, since the annotation labeler doesn't include the actual text of the note, you need to call the getProposals xrpc endpoint from the community notes service API.
curl --get 'https://api.bluenotes.social/xrpc/org.opencommunitynotes.getProposals?uris={URI_OF_ANNOTATED_POST}'
Yes! I should write a blog post about this. But first, very briefly:
1. First: posts with attached Community Notes will be issued a 'annotation' label from the Bluenotes Labeler: bluenotes.social/profile/blue...
Thank you to whoever added a community note to this post!
25.10.2025 06:57 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0Hahah yes. I probably should come up with a better logo. Just haven't thought of one yet.
On the other hand, maybe I'll send up getting a lot of people using my app because they think it's Bluesky for musicians ;)
X adds an additional "Rater Impact Score", which I haven't yet implemented. Your rater impact is how many notes which you rate as helpful (or not helpful) that ultimately reach "rated helpful" (or "rated not helpful") status. You need a rater impact score of 5 before you can write notes.
24.10.2025 16:59 โ ๐ 1 ๐ 0 ๐ฌ 1 ๐ 0The Matrix Factorization algorithm Community Notes uses kind of has a built-in reputation system. Most people don't see it that way, but the fact is that if you consistently rate notes as helpful that ultimately reach helpful status, your future ratings will effectively have more weight.
24.10.2025 16:58 โ ๐ 1 ๐ 0 ๐ฌ 1 ๐ 0Oh thanks for testing that @zicklag.dev . I should mention the app password option in the beta guide.
@erlend.sh other than an app password there's no workaround. I was just going to make a list of people who were waiting for OAuth so I could notify them when it was ready.
@cnviolations.bsky.social Thought you might like to know, I've implemented the Community Notes feature in a fork of the main Bluesky app. The Phase 1 beta is live at bluenotes.social.
23.10.2025 18:36 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0I've built Bluenotes, a fork of the Bluesky app with Community Notes. Phase 1 beta is live.
bluenotes.social
Looking for thoughtful early testers. The algorithm needs data from diverse perspectives before it can identify helpful notes, so we're building that foundation first.
Interesting writeup, i think one idea that is sort of similar to the UUID approach would be just using Tags to create ad hoc community spaces without central authority. Posting a record with #Seattle (ideally not inline with the text) creates a sort of community space in the indexing of the tags
12.10.2025 05:22 โ ๐ 12 ๐ 1 ๐ฌ 2 ๐ 0Yes I call it "hate following" when people follow someone just to dunk on them. And it's often "behind their back", where they post a screenshot to Twitter or Reddit.
08.10.2025 17:25 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0I just created this starter kit for creating and deploying a Atproto labeler using the @skyware.js.org labeler and fly.io: github.com/johnwarden/a...
19.08.2025 22:44 โ ๐ 5 ๐ 0 ๐ฌ 1 ๐ 0Peopleโs perception of a problem are often have little relation to the reality. But how do you evaluate reality? Certainly not with trends. If something is a problem itโs a problem, whether it is getting better or worse.
17.08.2025 10:02 โ ๐ 2 ๐ 0 ๐ฌ 0 ๐ 0My latest blog post: jonathanwarden.com/quadratic-fu...
07.05.2025 19:10 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0One experiment I'd like to do is run the Community Notes algorithm on some Polis conversations, and vice versa, and see if they provide similar insights on group opinion.
01.05.2025 08:56 โ ๐ 0 ๐ 0 ๐ฌ 0 ๐ 0Hi, I'm very interested in this stuff! I've been doing some experiments with dimension reduction on community notes data and data from some of the deliberative experiments in the deliberative democracy world. Also working with metagov.
Sorry I couldn't make yesterday's call. How did it go?