Post to Bluesky from nanoclaw
nanoclaw can post to Bluesky on Bluesky through ClipSpeed. Add the ClipSpeed server with one config block, sign in, and then ask nanoclaw to post to Bluesky, pick the time, and apply Bluesky's settings, without leaving a small self-hosted agent you message from WhatsApp or Telegram. Bluesky is coming next on ClipSpeed's rail; this page describes how it works and says so.
Keep a human in the loop: nanoclaw shows the plan and asks before anything is public. Posting today: YouTube, TikTok, Instagram, X (Twitter) and LinkedIn.
Also try
How to post Bluesky from nanoclaw
nanoclaw has no browser for OAuth, so it uses a ClipSpeed API key in a header. Generate the key, add the server, restart. Connect Bluesky in ClipSpeed, then describe the post. Setup takes about a minute.
# One-time setup: nanoclaw MCP config
{
"mcpServers": {
"clipspeed": {
"url": "https://api.clipspeed.ai/mcp",
"headers": { "Authorization": "Bearer csai_live_..." }
}
}
}
# Then ask nanoclaw:
> Post the announcement to Bluesky at 9am with the link
nanoclaw: Preview — nothing booked yet. Bluesky — text under 300. Book it?nanoclaw sits in the compatible tier: same protocol as the verified clients, not yet driven end to end by ClipSpeed.
- Generate a key in ClipSpeed under Account → API & Integrations.
- Add the clipspeed server with the URL and Authorization header to nanoclaw's MCP configuration.
- Restart nanoclaw and message it: list my ClipSpeed channels.
- Connect Bluesky in the ClipSpeed app, or ask nanoclaw for a connect link: it is private, valid for ten minutes, and Bluesky signs you in itself.
Developer reference: the nanoclaw MCP page.
What can nanoclaw do on Bluesky?
On Bluesky, nanoclaw can post 300-character text, images and short video to Bluesky. Every booking runs through the same rules as the ClipSpeed app.
Text, Image and Video posts
Bluesky takes text, image and video through ClipSpeed. Video: MP4 up to three minutes on Bluesky. Image: JPG or PNG; up to four images per post on Bluesky, one through the first release.
300 characters, checked at booking
Bluesky's own arithmetic. Too long is refused with the real count, never trimmed at send time.
Exact time or refused
Name the minute and nanoclaw books it, or you are told why not and offered the next open slot. A booked Bluesky post is never moved behind your back.
Preview before anything posts
preview: true runs the whole booking and writes nothing. nanoclaw shows the plan, with each slot and the day's remaining cap, and books only on your yes.
Clips cut in the same chat
Submit a video or stream link, get captioned 9:16 clips with a viral score, and post the best as native video on Bluesky. No download, no re-upload.
Pacing and numbers
Planned: Text and image posts on Bluesky are at least 30 minutes apart, up to 10 a day. Video on Bluesky is at least 4 hours apart, up to 4 a day under your plan. After a post goes out, nanoclaw can read back views and engagement where Bluesky provides them.
How does nanoclaw post to Bluesky through ClipSpeed?
You describe what you want in plain language and nanoclaw makes the ClipSpeed calls. A typical conversation has three beats.
Find your Bluesky channel
Ask nanoclaw whether Bluesky is connected. It calls list_channels and reads platform_settings, so it also knows what Bluesky accepts and the limits before you write a word.
Compose within the rules
Describe the post. nanoclaw drafts within Bluesky's limits; mention a clip or a file and it attaches it.
Schedule or publish
Name a time, or say now. The slot is booked exactly or refused with the next open one, and the reply carries the id you can cancel or edit by.
Bluesky settings reference
These are the schedule_post fields that apply to Bluesky. Mention any of them in plain language and nanoclaw sets them; the server checks them at booking. Fields marked planned land with the Bluesky release.
| Field | Type | Required | What it does on Bluesky |
|---|---|---|---|
platforms | string[] | Yes | Include "bluesky". Up to ten platforms per call; each books its own slot. |
text | string | Yes for a text post | Up to 300 characters (graphemes). Links are clickable. |
hashtags | string[] | No | Appended; they count toward 300. |
media_kind | text | image | video | No | Detected from the file when omitted. |
clip_id or media_url | string | No | A ClipSpeed clip or a public link to an image or a video up to three minutes. |
scheduled_at | ISO 8601 | No | Exact or refused with the next open slot. |
preview | boolean | No | Plan only. |
Common Bluesky configurations
Ask nanoclaw for any of these and it applies the matching settings.
Text post with a link
Clip under three minutes
Image post
Day of posts, previewed
Example prompts for Bluesky in nanoclaw
Type these into a small self-hosted agent you message from WhatsApp or Telegram, or pass one to routine in a script. nanoclaw calls ClipSpeed and confirms before publishing.
Post Bluesky with a scheduled time
Post the announcement to Bluesky at 9am with the link. Keep the text under 300 characters. Preview first.
Cut the clips, then post the best
Clip this link, keep the top three by viral score, and schedule them to Bluesky at 11am, 3pm and 7pm tomorrow. Show me the plan before booking.
Check and adjust the Bluesky calendar
What is scheduled on Bluesky this week? Cancel tomorrow's post and tell me the next open Bluesky slot on Friday.
Bluesky limits and gotchas to know
Bluesky enforces a few rules that nanoclaw and ClipSpeed respect automatically, but knowing them helps you phrase requests.
- 300 characters per post, counted in graphemes. Longer is refused at booking with the count.
- Video on Bluesky is capped at three minutes by the network. ClipSpeed clips fit; a long upload does not.
- Bluesky allows four images per post; the first release posts one.
- Bluesky is the next rail. Until it posts, bookings are refused plainly and the badge says Coming soon.
- Planned pacing: ten text or image posts a day 30 minutes apart, video four hours apart.
| Rule | Bluesky |
|---|---|
| Accepts | Text, Image, Video |
| Text limit | 300 characters |
| Title | No title field |
| Links in the caption | Kept and clickable |
| Pacing | Planned: Text and image posts on Bluesky are at least 30 minutes apart, up to 10 a day. Video on Bluesky is at least 4 hours apart, up to 4 a day under your plan. |
| Formats | Image: JPG or PNG; up to four images per post on Bluesky, one through the first release. Video: MP4 up to three minutes on Bluesky. Aspect: any |
| Status | Coming next on ClipSpeed's rail; bookings are refused with a plain message until then |
What Postiz-style schedulers cannot do
Cut the clips first
nanoclaw does not need finished video to start. Hand it a YouTube link, a podcast, a stream VOD or a local export. ClipSpeed finds the moments, cuts them to 9:16 with word-by-word captions, scores each one 0 to 100 for shareability, and returns them in the same conversation. nanoclaw picks by score, writes the caption from the transcript, and books the clips on Bluesky. Three tool calls, one approval, no download and no re-upload.
- Clips arrive with a title written from the hook, a transcript and a viral score, so the agent can choose and caption without watching the footage.
- Live streams can be clipped while they are still on air; the agent books the highlights for the next morning before the stream ends.
- Every clip is already hosted, so
schedule_posttakes its id directly. Nothing moves through your laptop.
submit_to_clipspeedPaste the link. ClipSpeed starts the job and returns a project id.check_clipsPoll with the project id. Back come the finished 9:16 clips with titles, transcripts, viral scores and preview links.schedule_postPass the clip id, the platforms, a caption and a time. nanoclaw shows the plan with preview: true, you say yes, it books.generate_image or generate_videoDescribe the shot. ClipSpeed runs it on the model that fits (Seedance, Kling, Veo, Nano Banana Pro, GPT Image and others) and quotes the credits first.wait_for_generationReturns the hosted result link and a preview the agent can show you.schedule_post with media_urlThe result link goes straight into the booking on Bluesky. The caption, the time and the file are approved together.The other half nobody else has
Generate the image or video, then post it
A product shot for Instagram, a 16:9 announcement graphic for X, a six-second opener before a clip: nanoclaw can make an image or a short video with ClipSpeed's image and video models and book the result in the same reply. There is no separate design tool, no export, no upload page. The generated file is hosted, so media_url is the only thing the booking needs.
- The price in credits is quoted before anything renders, within the per-generation and daily caps you set in Settings.
- Results are previewed in the conversation, so you approve the picture and the post at once.
- Images post as JPG, PNG or WebP up to 25 MB; video posts as MP4, MOV or WebM up to 1 GB.
What is nanoclaw?
nanoclaw is a minimal open-source personal agent in the OpenClaw family: it runs on your own machine, takes instructions from WhatsApp or Telegram, and can call MCP servers. With ClipSpeed configured with an API key, a message to your agent can clip a video and schedule posts.
How ClipSpeed works with nanoclaw
- Connects over HTTP with a Bearer key
- Reads platform rules
- Exact-or-refused booking
preview: truefor plans it messages you- Same tools everywhere
nanoclaw vs OpenClaw vs Hermes Agent: nanoclaw (your machine; whatsapp, telegram), OpenClaw (your machine; many channels), Hermes Agent (your server). This page is about nanoclaw; the nanoclaw guide compares them.
{
"mcpServers": {
"clipspeed": {
"url": "https://api.clipspeed.ai/mcp",
"headers": { "Authorization": "Bearer ${CLIPSPEED_API_KEY}" }
}
}
}# What the agent reads at connect time (tool descriptions, abridged)
list_channels Connected platforms, what each accepts, limits, your time zone
connect_channel A private 10-minute link to connect one platform
platform_settings Limits, title rules, link handling, pacing per platform
schedule_post clip_id | text | media_url → platforms[], scheduled_at, preview
list_scheduled_posts Scheduled, sending, posted, failed — with post links
update_scheduled_post Edit copy while still scheduled (the time never moves)
cancel_scheduled_post Cancel; undoable 72 h in the app
post_analytics Views, likes, comments, shares where the platform gives them
submit_to_clipspeed Start clipping a video or stream link → projectId
check_clips Finished 9:16 clips with titles, transcripts, viral scores
generate_image / generate_video / wait_for_generation
# Bluesky: text/image/video · text 300Post to Bluesky and other platforms from nanoclaw
One request can book the same content to Bluesky and other channels, each keeping its own settings and its own slot. Every platform below has its own nanoclaw guide.
Also works with
Bluesky and nanoclaw: frequently asked questions
How do I post to Bluesky from nanoclaw?
Generate a key in ClipSpeed under Account → API & Integrations. Add the clipspeed server with the URL and Authorization header to nanoclaw's MCP configuration. Connect Bluesky in ClipSpeed (or ask nanoclaw for a connect link; it is private and valid for ten minutes), then describe the post in plain language. nanoclaw reads the Bluesky rules, drafts within them, shows the plan and books on your yes. Bluesky is coming next; until the badge changes, the booking is refused with a plain message.
What can nanoclaw post to Bluesky through ClipSpeed?
Post 300-character text, images and short video to Bluesky. Bluesky takes text, image and video posts. Text is limited to 300 characters.
Which Bluesky settings can nanoclaw control?
The fields in the settings reference above: text, hashtags, media_kind, clip_id or media_url, scheduled_at, preview. Mention any of them in plain language ("unlisted", "tomorrow at 9", "preview first") and nanoclaw sets the matching field before it books.
Do I need a Bluesky API key or developer account?
No. You connect Bluesky to ClipSpeed once through Bluesky's own sign-in, and nanoclaw talks to ClipSpeed over OAuth. No Bluesky developer key, bearer token or password is pasted anywhere.
How many Bluesky posts a day can nanoclaw schedule?
Planned: Text and image posts on Bluesky are at least 30 minutes apart, up to 10 a day. Video on Bluesky is at least 4 hours apart, up to 4 a day under your plan. When a time is taken, the booking is refused with the next open slot rather than moved. Ask for preview to see a day's plan and the remaining cap before anything is booked.
Can nanoclaw post to Bluesky from a script or a cron job?
Yes. nanoclaw's headless mode (routine) runs one prompt and exits, and the ClipSpeed server registered on that machine does the booking. On a runner with no browser, authenticate with a ClipSpeed API key header. Keep preview on so the run reports a plan before it books.
Is posting to Bluesky from nanoclaw different from OpenClaw?
The booking is identical: the same rules, the same calendar, the same refusals. What differs is where you work. nanoclaw: your machine; whatsapp or telegram. OpenClaw: your machine; many channels, more integrations.