2301 Classroom room illustration
Room4 conference days
2301 ClassroomWorkshops, protocol deep dives, and implementation-heavy sessions.
Workshop Day #1Preshow · Vancouver time (PDT)
OAuth Masterclass
9:30 AM - 12:30 PM
Abstracting the Appview Workshop
2:00 PM - 4:00 PM

Chad's workshop dives into AppViews, what they are, how they work, and the different ways to implement them. He'll explore how tools like quickslice can abstract away the complexity so you can stay focused on your Lexicons and UI/UX. We'll also look at additional tools, including Tap, AIP, Constellation, and more, covering approaches from getting started all the way to production. Bring your questions. Many answers are 'it depends', shaped by your specific product and Lexicon design.

Verified Human Users, game changer in the atmosphere
4:00 PM - 5:00 PM

Bots are swarming on most social media, and dominating in some. Social media has become asocial. How can we bring sanity and social exchange back again? W Social makes a strong bet on verified human users, meaning passport scanning in order to get a W Social account. But do we always want to know who is behind every account? We propose a model with a user information firewall. One side knows exactly who each user is, but not which social media account belongs to her. The other knows everything about the user's friends, likes and followers, but not her true identity.

Workshop Day #2Preshow · Vancouver time (PDT)
Consuming the ATmosphere
9:30 AM - 12:30 PM

This will be an introductory workshop for developers who may have some JS/TS experience but almost no AT experience, who want to learn how to read posts and other data from the Atmosphere.

Creating the ATmosphere
1:30 PM - 4:30 PM

This will be an intermediate workshop on designing AT Lexicons to support new apps, with an emphasis on reusing the social graph data that already exists in the network.

Atmospheric Publishing Discussion
4:30 PM - 6:30 PM

Join Brendan, the Leaflet team, and publisher and platform friends to map out the emergent ecosystem of social publishing on AT Protocol and sketch where it's headed next. As the atmosphere meets the blogosphere, atproto offers potential for stronger audience relationships and richer social interactions, and standard.site https://standard.site makes it easier to coordinate across both publishing platforms and individual sites anywhere on the web. We'll cover a micro-history of publishing in the atmosphere, the emergence of standard.site, and what it means for readers, writers and publishers. And we'll get into what we need to build next: new lexicons? New interfaces? Discovery tools? Monetization? Collaborative publishing primitives? For those interested, we'll have a few slots for lightning demos — reach out to Brendan @schlage.town if you'd like to share something you're working on!

Conference Day #1Conference · Vancouver time (PDT)
Feature / Product / Business: A Framework for Sustainable ATProto Projects
10:00 AM - 10:30 AM

The ATProto community built a ton of great features and products over the past year! For our next trick, let's mature them into products and businesses. In this talk, you'll get a practical framework for understanding whether what you're building should be a feature, product, or business, plus concrete funding models at each layer to keep your work going and growing. (More in this thread: https://bsky.app/profile/mosh.bsky.social/post/3mckiat2ne22q)

Did Lexicon just accidentally solve the enterprise data problem?
10:30 AM - 11:00 AM

One of the core ideas behind the Data Mesh architecture is that data products should be decentralized and domain-oriented. The main barrier to successfully implementing Data Mesh is that decades of data tooling have assumed that data governance and engineering teams are centralized. ATProto’s Lexicon data definition language, however, deftly balances both the “nouns” and “verbs” of data modeling, making it a promising candidate for implementing a decentrally-managed data architecture.

Building Future of Artificial Intelligence on AT Protocol
11:00 AM - 11:30 AM

The future of AI is collective intelligence, not a single superintelligent model. The infrastructure to support that collective already exists: portable identity, public reputation, federated coordination. My talk uses evidence from months of running social AI to argue that ATProtocol is uniquely suited to be the foundation for AI collective intelligence, and what I expect to come next.

Understanding the Landscape of Custom Feeds on Bluesky
11:30 AM - 12:00 PM

Bluesky’s custom feeds allow users to create, govern, and share their own algorithmic feeds, shifting curation away from platform control. To understand how this ecosystem works in practice, we interviewed 26 Bluesky feed creators and third-party tool developers and analyzed 97,719 existing custom feeds. We find that hobbyist labor is central to sustaining the ecosystem, but creators face recurring challenges around maintenance, visibility, and long-term viability. Based on these findings, we lay out design implications for designing usable decentralized social media.

Building Cirrus: a single-user, serverless PDS
1:30 PM - 2:00 PM

The reference PDS implementation is a powerful Node.js monolith designed for scale, but it's overkill for a single user who just wants to own their data. This talk introduces Cirrus, an alternative PDS built on Cloudflare Workers that scales to zero and costs pennies to run. We'll explore the technical challenges of implementing the AT Protocol in a serverless environment – you'll learn how to handle long-lived firehose connections using Durable Objects with WebSocket hibernation, and maintain repository consistency with embedded SQLite.

Rethinking the Client: Why User Choice is the Key to Growth for ATProto
2:00 PM - 2:30 PM

To grow the ATProto user base, the developer community needs to offer client experiences that surpass the Web 2.0 experience. Tyler Fisher, the creator of Sill and [Tyler's Currently Untitled Sports Client], will present the challenges and opportunities around building better clients that entice users to leave existing social platforms. Attendees will learn about strategies for building new clients on top of existing lexicons and opportunities for shared infrastructure.

Account logic in ATProto using Trusted Execution Environments
2:30 PM - 3:00 PM

ATProto is fundamentally verifiable - identities have cryptographic keys attached to them, posts are signed and integrity is upheld by authenticated data structure. This is the core of what enables the trustless decentralized nature of ATProto. What if we could go beyond signatures and add verifiable end-to-end logic attached to accounts? We present a recent project, exploring the use of Trusted Execution Environments to manage cryptographic keys that only sign records under specific rules. We show a couple of examples of possible rules for Bluesky accounts: 1. One that requires 2-out-of-3 signatures, allowing company and group accounts 2. Another that uses an LLM to analyze each post before posting We further discuss how end-to-end verifiability is achieved with TEEs, through reproducible builds and remote attestation. This project was done with Nick Gerakines, a prominent ATProto contributor, utilizing Nick Gerakines’s recent work on adding attestations to ATProto records. # Cryptography in the service of ATProto The ATProto ecosystem is maturing has the desire to add functionalities in a way that preserves its ethos of decentralization and user protection. With an ecosystem having tens of millions of users, these solutions have to be both scalable and secure. We review work on mutual contact discovery (and discovery in general), identity, anonymous credentials and payments, and different ways to achieve them using advanced cryptography and trusted execution environments. We discuss the assumptions and trust models the community needs to keep in mind and what is possible to do, and gradual deployment methods to be able to experiment with different ideas. We hope it can be a call to action to explore these ideas in ATProto more deeply.

Stop Hallucinating the Protocol: Grounding your AI Agents with the Official ATproto Docs
4:00 PM - 4:10 PM

Unleash the full power of the AT Protocol documentation for your AI agents. In this lightning talk, Jessie will show you how to feed your agent the exact documentation it needs when it needs it. You will learn how to query the current official documentation through a remote MCP server, making it quicker and easier to build ATproto apps.

How (de)centralized is Bluesky, really?
4:10 PM - 4:20 PM

In this presentation, I will discuss a working paper on the functional (de)centralization of Bluesky. This includes the extent to which AT Protocol infrastructure is owned and operated by entities other than Bluesky Social (through a computational mapping of ownership of PDS endpoints), the implications this (de)centralization has for Bluesky Social's goals, and what might be done. Following the presentation of quantitative results and associated theory, there will be time for a Q&A and discussion. Looking forward to hearing from attendees about efforts to further decentralize AT Protocol infrastructure!

E2EE DMs for Solidarity Social
4:20 PM - 4:30 PM

Demonstrate E2EE DMs in the Solidar App (https://solidar.app), which enables Solidarity Social (https://solidarity.social), a Bluesky community and a hub for coordination across communities. Explain the benefits of integrating Matrix into Bluesky, to aid progress on social justice, human rights, human dignity and democracy.

Pollen: Prototyping a toolkit for journalists and researchers to restore source transparency in an AI-saturated feed
4:30 PM - 4:40 PM

Pollen is a technical prototype by Hypha that enables journalists and researchers to anchor authenticated claims, such as photographer attribution and trusted timestamps, directly to their Personal Data Server. By attending this session, media professionals will learn how authenticated claims can protect the integrity of their reporting against generative AI "slop" and how a shared provenance layer empowers the community to collectively maintain digital facticity.

How Streamplace Works: VODs
4:45 PM - 5:15 PM

Here's a hard-won lesson from a video engineer: if you're gonna do both livestreaming and VOD, do livestreaming first, it's harder. And hey, livestreaming is working pretty good. Here's how we're going to do VOD, and here's why the architecture looks pretty much like building a globally-distributed fleet of atproto PDS and Relays. And here's how you can join!

Hypercerts on ATProto: Collective Funding, Evaluation, and Ownership as Social Data
5:15 PM - 5:45 PM

This talk introduces hypercerts as a primitive for collective funding. It shows how activities, evidence, and plural evaluations can be published as durable records without relying on centralized platforms or single metrics. Attendees will learn how ATProto’s identity, record, and graph model enables new allocation mechanisms in which information production is endogenous and reusable across applications. The session connects protocol architecture with real-world funding workflows, offering concrete patterns others can adapt for funding public goods and collective action.

Conference Day #2Conference · Vancouver time (PDT)
Roomy and community organizing for system change
10:00 AM - 10:30 AM

Roomy is a group messaging app that gives online communities tools for autonomous collaboration — designable spaces not just for chat, but for cultivating a web of shared understanding together. We show how cheap, user-controlled, interoperable data on ATProto can enable online communities to channel impassioned mobilizing into sustained organizing in the shadow of Big Tech's empire.

How to have more non-english speaking users
10:30 AM - 11:00 AM

This panel will reveal some common mistakes that make it harder for your app to be used by non-English speakers around the world. Following a few tips and guidelines can help new apps avoid falling into the same problems. Expect to see some real examples from across the Atmosphere. English speakers are welcome to bring any questions, and non-English speakers are welcome to join the discussion and bring additional points of view.

Blousques: Case Study on the Challenges in Translating Bluesky's UI
11:00 AM - 11:30 AM

Translating Bluesky's user interface into French was the easy part. Making it feel ‘native’ to users is something else entirely! I18n is common in software, yet Bluesky has specific challenges: should we translate it using gender-neutral terms? How to translate names embedded on-protocol? How to translate features not yet released, as an external, voluntary contributor? Translating the UI is also a good way to spot what is really missing in the daily lives of non-English users of the platform.

Content Moderation Futures
11:30 AM - 12:00 PM

Contemporary social media platforms wield extraordinary influence over public discourse—yet their governance practices are frequently characterized as opaque, unfair, and ineffective. While experts agree that successful content moderation is principled, consistent, contextual, proactive, transparent, and accountable, technology companies repeatedly fail to achieve these goals at scale. Drawing on participatory research with various content moderation professionals, this talk identifies structural barriers to effective platform governance and explores potential solutions. Attendees will gain a more intimate understanding of the values, challenges, and contradictions that ultimately determine how platforms are governed, including practical strategies for promoting more equitable social media futures.

Creating a Safer Web: Blacksky's Moderation Tool
1:30 PM - 2:00 PM

In this presentation, I will discuss our moderation service, how we use Polis to bring the community in to make decisions on creating new labels, and some of the best practices among our volunteer moderators and Trust and Safety team. The goal is to give others (communities and developers) on the protocol some ideas to think about when spinning up their own moderation tools.

Two Years of Skywatch: Lessons Learned for Community Moderation
2:00 PM - 2:30 PM

What has it been like to run a large community labeler over the course of two years? I'll focus heavily on lessons learned, including reflections on what and who it serves, the missteps and pitfalls made along the way, and what I would do differently if I were to start all over again. I'll reflect on how I've come to view community labeling is distinct from Trust & Safety or moderation and the role it can still play in the ecosystem, along with thoughts on what directions the labeler ecosystem might explore in the future.

Coop: Open source Trust & Safety infrastructure for all
2:30 PM - 3:00 PM

As protocols and platforms grow, so do the demands of trust and safety dashboards, human review queues, and automated policy enforcement—yet most trust and safety solutions remain closed, proprietary, reinvented in isolation, and too often out of reach for smaller and decentralized platforms. Robust Open Online Safety Tools (ROOST) is building a different future: one where the trust and safety tools that form this critical layer of Internet infrastructure are open, transparent, community-governed, and usable by platforms and organizations of all sizes. Attendees will get a quick refresher on what “trust and safety” means, hear how ROOST is succeeding with a non-profit and open source approach; see a demo of the open source Coop review tool in action; and finally, learn how to adopt and contribute to Coop and other open source trust and safety tools with ROOST.

WebTiles Showcase
3:00 PM - 3:30 PM
Keywords vs Embeddings
4:00 PM - 4:10 PM

Insights from building discovery feeds: from naive keyword extraction to naive embedder usage to better insights into how both work and might be combined to understand and match Bluesky posts(-ers). Based on your feedback I can make this more or less ATproto specific (e.g. scraping pitfalls), also more or less technical, leaning towards less technical. A light intro to TF-IDF (sparse) vs EmbeddingGemma (dense) vectors.

Scaling the Atmosphere
4:10 PM - 4:20 PM

Lessons learned from building and scaling atproto and bsky.app. How do you move beyond an appview powered by a single sqlite? How are we at Bluesky PBC building scalable and reliable infrastructure that can A) be provided as a service and B) be run by self-hosters. What's next for us and the ecosystem scaling-wise?

Skylimit: A curating web client with fine-grained controls to mimic the newspaper experience
4:20 PM - 4:30 PM

The goal of many social media platforms is to maximize your screen time. Skylimit is a curation algorithm designed to optimize your limited screen time. It attempts to answer the following question: If I decide to limit myself to viewing, say, 500 posts per day (on average), what is the best way to manage my Following Feed? As a Bluesky user who follows many people, I would like to view the most relevant and interesting posts in my feed. This is similar to the decisions editors make when populating a fixed number of pages in a printed newspaper—they must choose from news items on numerous topics, regular pieces by columnists, and more. Skylimit aims to mimic aspects of the print news reading experience in the digital world by creating a curated version of the Following Feed with statistical settings for each followee that go beyond just muting. The talk will discuss the various trade-offs involved in achieving this goal and demonstrate a prototype Bluesky web client (skylimit.dev) that implements the curation algorithm. Issues to be discussed include: how to (statistically) select and display “important” posts, handling “quiet posters,” and presenting periodic digest editions.

AT Transparency Logs: accountable record collections
4:30 PM - 4:40 PM

atproto lets us delete and modify records, which for social media is definitely good. But there are cases where you'd like to instead ensure everyone is seeing the same append-only set of records, forever: software releases, for example. That's what tlogs are for! tlogs are the technology that makes Certificate Transparency, the Go Checksum Database, Sigstore and Sigsum possible. atproto gives us everything we need to make a tlog: canonically hashed records and a global mechanism to access them. We can even make the tlog configuration in-protocol, letting multiple tlog operators work like any other AppView.

Matadata! Publishing scientific data straight to AT
4:40 PM - 4:50 PM

Project Matadata is a project to publish and read science metadata directly to AT. This makes scientific data accessible in verified ways and widely disseminated.

DID:PLC War Games
5:00 PM - 5:30 PM

- What the current DID:PLC design does and doesn't protect - What could possibly go wrong - How we can strengthen the social layer - Some approaches to making the technology more robust