Skip to content

Features ​

Trotsky provides comprehensive support for the Bluesky AT Protocol. Below is a list of currently implemented features and planned additions.

Implemented Features ​

NameStatusDescriptionExample
StepActor✅Get an actor by its DID or handle.Trotsky.init(agent).actor('bsky.app')
StepActorBlock✅Block an actor.Trotsky.init(agent).actor('bsky.app').block()
StepActorFollow✅Follow an actor.Trotsky.init(agent).actor('bsky.app').follow()
StepActorFollowers✅Get an actor's followers.Trotsky.init(agent).actor('bsky.app').followers().each()
StepActorFollowings✅Get an actor's followings.Trotsky.init(agent).actor('bsky.app').followings().each()
StepActorLikes✅Get an actor's likes.Trotsky.init(agent).actor('bsky.app').likes().each()
StepActorLists✅Get an actor's lists.Trotsky.init(agent).actor('bsky.app').lists().each()
StepActorMute✅Mute an actor.Trotsky.init(agent).actor('bsky.app').mute()
StepActorPosts✅Get an actor's posts.Trotsky.init(agent).actor('bsky.app').posts().each()
StepActors✅Get a list of actors by their DIDs or handles.Trotsky.init(agent).actors(['bsky.app', 'handle']).each()
StepActorStarterPacks✅Get an actor's starter packs.Trotsky.init(agent).actor('bsky.app').starterPacks().each()
StepActorStreamPosts🧪Stream an actor's posts.Trotsky.init(agent).actor('bsky.app').streamPosts().each()
StepActorUnblock✅Unblock an actor.Trotsky.init(agent).actor('bsky.app').unblock()
StepActorUnfollow✅Unfollow an actor.Trotsky.init(agent).actor('bsky.app').unfollow()
StepActorUnmute✅Unmute an actor.Trotsky.init(agent).actor('bsky.app').unmute()
StepCreatePost✅Create a post.Trotsky.init(agent).createPost({ text: "Hello!" })
StepList✅Get a list by its URI.Trotsky.init(agent).list("at://did:plc:example/app.bsky.graph.list/listid")
StepListMembers✅Get a list's members.Trotsky.init(agent).list("at://...").members().each()
StepLists✅Get a list of lists by their URIs.Trotsky.init(agent).lists([uri1, uri2]).each()
StepPost✅Get a post by its URI.Trotsky.init(agent).post("at://did:plc:example/app.bsky.feed.post/postid")
StepPostAuthor✅Get a post's author.Trotsky.init(agent).post("at://...").author()
StepPostLike✅Like a post.Trotsky.init(agent).post("at://...").like()
StepPostReply✅Reply to a post.Trotsky.init(agent).post("at://...").reply({ text: "Great!" })
StepPostRepost✅Repost a post.Trotsky.init(agent).post("at://...").repost()
StepPosts✅Get a list of posts by their URIs.Trotsky.init(agent).posts([uri1, uri2]).each()
StepSearchPosts✅Search posts.Trotsky.init(agent).searchPosts({ q: "TypeScript" }).each()
StepSearchStarterPacks✅Search starter packs.Trotsky.init(agent).searchStarterPacks({ q: "tech" }).each()
StepStarterPack✅Get a starter pack by its URI.Trotsky.init(agent).starterPack("at://...").run()
StepStarterPacks✅Get a list of starter packs by their URIs.Trotsky.init(agent).starterPacks([uri1, uri2]).each()
StepStreamPosts🧪Stream posts from the firehose.Trotsky.init(agent).streamPosts().each()
StepTimeline✅Get the authenticated user's timeline.Trotsky.init(agent).timeline().take(20).each()
StepSearchActors✅Search for actors by name/handle.Trotsky.init(agent).searchActors({ q: "typescript" }).each()
StepPostLikers✅Get actors who liked a post.Trotsky.init(agent).post("at://...").likers().each()
StepPostReposters✅Get actors who reposted a post.Trotsky.init(agent).post("at://...").reposters().each()
StepPostQuotes✅Get quote posts of a post.Trotsky.init(agent).post("at://...").quotes().each()
StepPostThread✅Get a full post thread with replies.Trotsky.init(agent).post("at://...").thread()
StepPostUnlike✅Unlike a post.Trotsky.init(agent).post("at://...").unlike()
StepPostUnrepost✅Unrepost a post.Trotsky.init(agent).post("at://...").unrepost()
StepDeletePost✅Delete a post.Trotsky.init(agent).post("at://...").delete()
StepActorBlocks✅Get all actors blocked by the user.Trotsky.init(agent).blocks().each()
StepActorMutes✅Get all actors muted by the user.Trotsky.init(agent).mutes().each()
StepActorKnownFollowers✅Get known followers (mutual connections).Trotsky.init(agent).actor('bsky.app').knownFollowers().each()
StepActorSuggestions✅Get suggested actors to follow.Trotsky.init(agent).suggestions().each()
StepFeed✅Get posts from a custom feed.Trotsky.init(agent).feed("at://...").each()
StepFeedGenerator✅Get a custom feed generator.Trotsky.init(agent).feedGenerator("at://...")
StepSuggestedFeeds✅Get suggested custom feeds.Trotsky.init(agent).suggestedFeeds().take(10)
StepListFeed✅Get posts from a list feed.Trotsky.init(agent).list("at://...").feed().each()
StepListBlock✅Block a list.Trotsky.init(agent).list("at://...").block()
StepListUnblock✅Unblock a list.Trotsky.init(agent).list("at://...").unblock()
StepListMute✅Mute a list.Trotsky.init(agent).list("at://...").mute()
StepListUnmute✅Unmute a list.Trotsky.init(agent).list("at://...").unmute()
StepNotifications✅Get user notifications.Trotsky.init(agent).notifications().take(20)
StepNotificationsUnreadCount✅Get unread notification count.Trotsky.init(agent).notificationsUnreadCount()
StepNotificationsUpdateSeen✅Mark notifications as seen.Trotsky.init(agent).notificationsUpdateSeen()
StepThreadMute✅Mute a thread.Trotsky.init(agent).post("at://...").threadMute()
StepThreadUnmute✅Unmute a thread.Trotsky.init(agent).post("at://...").threadUnmute()

✅ Implemented • 🧪 Experimental