← Public packages
@kentcdodds/bluesky
Bluesky and AT Protocol helpers using package-storage handle plus blueskyAppPassword.
README.md
42 lines · 1.8 KB · Markdown@kentcdodds/bluesky
Intent
Headless Bluesky and AT Protocol helpers for Kody agents: authenticated reads, notifications, and guarded social writes. Posts should behave like posts created in the Bluesky UI, including clickable links and external cards with uploaded thumbnails.
What it does
- Verify Bluesky auth and read the default profile
- Resolve handles, search posts, read feeds, threads, or notifications
- Call uncommon AT Protocol XRPC methods through one helper
- Draft or publish posts, likes, reposts, follows only with explicit confirmation
- Publish links with UTF-8 byte-indexed facets and optional external cards whose thumbnails are uploaded as blobs
Prerequisites / setup
- Save user secret
blueskyAppPassword(Bluesky app password — do not paste the value in chat). - Store your handle in package storage as
blueskyHandle(used as the default actor/handle for authenticated calls). - Approve this package to use
blueskyAppPasswordif prompted. - Agents: see
AGENTS.mdfor import paths and smoke checks.
Unauthenticated AppView reads (get-profile, get-author-feed,
get-post-thread, and other GET request calls) default to
https://public.api.bsky.app. search-posts defaults to an authenticated
request on https://bsky.social because unauthenticated AppView search is
blocked from Kody workers. Session creation and other authenticated calls still
use https://bsky.social.
Done when
blueskyAppPasswordis saved andblueskyHandleis stored in package storage- Read-only smoke test returns
ok: truewith did/handle/profile (no session tokens) - Write helpers return a dry-run payload unless
confirm: trueafter explicit approval - Link posts get clickable facets; external cards can upload fitted thumbnails