Use Claude Code with Tareno to turn release notes and the diff into a Bluesky thread: headline change, breaking changes, upgrade command. Saved as one draft you approve in Tareno.
Can Claude Code write a release thread for Bluesky and save it as one draft?
Yes. Claude Code reads the release notes and the diff, finds breaking changes the notes missed, writes a thread with a headline post, one post per breaking change and an upgrade post, and saves the whole thread as one draft through Tareno. Scheduling stays pending until you approve it in Tareno.
A release that breaks something deserves more than one post, and the people who are about to be broken want to see exactly what changes for them. On a network that stores one post at a time, that means a link and a hope. On Bluesky, Tareno saves a whole thread as one draft, so a maintainer can put the headline in the root post, each breaking change in its own reply and the upgrade command at the end. Claude Code adds the part that makes the thread trustworthy: it reads the diff and finds the breaking change the notes forgot. This page follows a library maintainer through a major release.
Example: a maintainer announces a major version with two breaking changes
Imagine a maintainer releasing version 3.0 of a date library. She asks Claude Code to read the release notes and the diff against 2.9. The notes list one breaking change, a renamed function. Claude Code finds a second in the diff: a default time zone changed from local to UTC, which the notes do not mention. It proposes a thread of five posts: the headline, the rename, the time zone change, the upgrade command, which it ran in a scratch project, and a link to the migration guide. It saves the thread as one draft with create_drafts, and she corrects the notes too.
Step by step
01
Give the version range
Point Claude Code at the previous tag and the new one. Reading the diff, not only the notes, is how it finds breaking changes that the notes miss.
02
List every breaking change
Ask for a table of changes to public functions, defaults and removed options, each with the file it is in. Compare it with the notes and fix the notes first.
03
Run the upgrade command
Ask Claude Code to run the upgrade or install command in a scratch project and report the output. A command in a thread gets copied.
04
Write one post per idea
Request a thread with the headline in the root, one reply per breaking change and a last reply with the command and the migration link. Each post stays within 300 characters.
05
Save the thread as one draft
Claude Code confirms the account with list_accounts and saves the root and the replies through create_drafts in a single call. Read the draft top to bottom in Tareno.
06
Request a time and approve
Give a day, a time and an IANA time zone. The request becomes a pending action, and you approve it in the Tareno dashboard.
Prompts to copy
Find the breaking changes
Compare tags [v2.9.0] and [v3.0.0] and list every change to public functions, default values and removed options as a table with the file and the line. Then compare the table with the release notes and name every breaking change the notes do not mention.
Test the upgrade
In a clean scratch project, install the old version, run the example from the README, then run the documented upgrade command [command] and the example again. Show me the output of both runs and tell me whether the README example still works.
Write the thread
Write a Bluesky release thread for Tareno: a root post with the headline, one reply for each breaking change from the table, and a final reply with the upgrade command and the migration link. Every post must stay within 300 characters and make sense alone. Give me the count of each.
Save the thread
Use Tareno to confirm the Bluesky account [project handle] and save the approved root post and replies as one thread draft. Return the draft ID and the number of replies, and request no time until I give you the day and the time zone.
Bluesky limits and tools in Tareno
Text
up to 300 characters; hashtags and mentions are supported; plain text, no rich formatting
Images
jpg, jpeg, png, webp, gif, up to 2 MB each, up to 4 per post
Video
mp4, 0 to 3 min, up to 100 MB, one video per post
Links
links can sit inside the text and get a preview card
What Tareno can read
posts published outside Tareno: no; comments: no; transcripts: no; video download: no
Network-specific
a drafted thread can have up to 24 replies of 300 characters each
As configured in Tareno on 2026-10-24. The live rules for your own account come from the get_platform_schema tool.
What Bluesky itself documents
Post text is limited to 300 graphemes and 3,000 bytes, so an emoji counts as one grapheme but can use several bytes.
A post can embed up to 4 images, each up to 2,000,000 bytes.
Video embeds accept MP4 up to 300,000,000 bytes, with up to 20 caption files in WebVTT. Tareno's configuration is stricter: one MP4 of up to 180 seconds and 100 MB.
Tareno saves a Bluesky thread as one draft of a root post and up to 24 replies, each up to 300 characters, which suits a release with several breaking changes.
Tareno's configuration for Bluesky gives links an automatic preview, so the migration guide link in the last reply shows its title.
Tareno does not read posts or replies on Bluesky, so Claude Code cannot collect questions about the release; the maintainer reads them in the app.
A thread is published as one unit, so a breaking change discovered after approval needs a new post, not a new reply.
What does not work
Claude Code cannot know how a breaking change affects code outside your repository, so it describes the change and not every consequence.
It cannot read replies to the thread on Bluesky through Tareno, because Tareno does not expose posts or replies for Bluesky.
It cannot publish the thread on its own, since a time request becomes a thread only after you approve it in the Tareno dashboard.
Mistakes to avoid
Trusting the release notes. Compare them with the diff, because the forgotten change is the one that breaks users.
Listing five breaking changes in one reply. One change per post is easier to quote and to find.
Posting an upgrade command that you did not run. Run it in a scratch project first.
Adding a reply after approval. Tareno publishes the thread as one unit.
Open the published Tareno listing, choose install or connect, and complete the Tareno login. Enable Tareno in a new conversation. For Claude, search for Tareno in the supported plugin directory.
Choose OAuth, connect and sign in with your own Tareno account. Check the requested permissions. Refresh the client's tool list after authorization.
Run list_accounts first. Confirm the returned workspace and account IDs before creating a draft. If no accounts appear, connect a social account in Tareno first.
https://tareno.co/api/mcp
Use the same Tareno account across supported clients. Open the relevant setup guide for authentication, first use, reconnect, and revocation.
Why is a thread better than one post for a breaking release?
Because each breaking change needs its own sentence, and people look for the one that affects them. A Bluesky thread in Tareno lets the root carry the headline and each reply one change, saved as a single draft.
How does Claude Code find breaking changes?
By comparing the public surface between two tags: function signatures, defaults and removed options. It reports differences the notes do not mention. It cannot see how users call your code, so it states changes, not consequences.
Can the thread contain the upgrade command?
Yes, as plain text in a reply. Bluesky has no code formatting in Tareno's configuration, so keep the command to one line, and have Claude Code run it in a scratch project before it goes into the thread.
What if I find another breaking change after approval?
Tareno cannot add a reply to a published thread. Publish a short correction as a new post, and ask Claude Code to compare the new change with the rest of the diff before you do.
How many replies can the thread have?
Up to 24 replies after the root, each within 300 characters. A release thread rarely needs more than six posts, and a shorter thread gets read to the end more often.
Will the release thread go out without my approval?
No. A scheduling request becomes a pending action in Tareno, and Bluesky receives the thread only after you approve it in the dashboard. `get_action_status` shows what happened afterwards.