# Can OpenClaw post a birdwatching club's daily sighting to Bluesky with alt text?

> Source: https://tareno.co/agents/openclaw/bluesky
> Language: en
> Last reviewed: 2026-10-24
> Message OpenClaw today's best sighting and photos; it drafts the Bluesky post with up to four images and alt text through Tareno, and a morning job proposes drafts from your log.

## Connection facts

| Field | Value |
| --- | --- |
| Product surface | OpenClaw (openclaw) |
| Available connection | Skill on ClawHub |
| Connection evidence | documented |
| Methods | skill, mcp |
| Authentication | oauth |
| Setup | [Setup guide](https://tareno.co/docs/mcp) |
| Install or connect | [Open setup](https://clawhub.ai/tarenoai/skills/tareno-social-ops) |
| Evidence observed | 2026-10-19 |
| Facts reviewed | 2026-10-25 |

Publication status and a working connection are separate facts. Evidence for one product surface does not establish installation or compatibility in another surface.

Agent: OpenClaw · Network: Bluesky · Hub: [OpenClaw and Tareno](https://tareno.co/agents/openclaw)

## Short answer

**Can OpenClaw draft a daily Bluesky post with photos and alt text from a chat message?**

Yes. Message OpenClaw the sighting and the photo names in a channel configured in your Gateway. It writes a post within 300 characters, attaches up to four photos from your Tareno library with alt text and saves a draft. A morning job can propose drafts from your log. Nothing is scheduled until you approve the request in Tareno.

Bird clubs and nature societies have found a home on Bluesky, where a photo of a kingfisher with a good description travels well. The routine is simple and always late: someone sees something at dawn, takes photos, and the post is written at night or not at all. OpenClaw answers in the chat apps members already use and can read a log file, so the post can start from a message in the field. This page follows a birdwatching club through that routine, including the alt text that makes photos accessible and the one rule that matters most in this hobby: do not publish where a rare bird nests.

## Example: a birdwatching club posts its daily best sighting

Imagine a club member who photographs a kingfisher at the reservoir at 07:10 and messages OpenClaw two photo names and a line: kingfisher, reservoir east bank, 07:10. OpenClaw finds the files with `list_media`, writes a post of 240 characters with the species and the general place, and drafts alt text for each photo that describes the bird's pose and surroundings. It saves the draft with `create_drafts` for the club's Bluesky account. A morning cron job reads the sighting log and proposes tomorrow's draft the evening before. The club's volunteer approves the 08:00 request in the Tareno dashboard.

## Step by step

1. **Message the sighting with the photo names.** Send the species, the general place, the time and the file names in a channel configured in your OpenClaw Gateway. OpenClaw uses what you type, so spell the species the way the club writes it.
2. **Let it find the photos.** The files are looked up with `list_media`, and a name that matches nothing is reported back. Tareno accepts at most four images on a Bluesky post.
3. **Write alt text per photo.** Ask for a description of what each photo shows: the bird, its pose, the setting. Good alt text is the difference between a photo that reaches everyone and one that does not.
4. **Protect sensitive places.** For rare or nesting species, ask OpenClaw to name only the region, not the site. A precise location for a nest can bring crowds that harm the birds.
5. **Save and approve.** The connected account is checked with `list_accounts`, then `create_drafts` stores the text. Name a time and time zone; what follows is a pending request that only your approval in the dashboard turns into a post.
6. **Add the evening proposal job.** A cron job can read the sighting log and message you tomorrow's draft. Limit its toolset to reading and drafting.

## Prompts to copy

### Draft from the field message

```text
Use Tareno to find the photos [kingfisher-1.jpg, kingfisher-2.jpg] in my media library. Write a Bluesky post within 300 characters about a kingfisher seen at the reservoir at 07:10, naming only the region, and write one sentence of alt text per photo. Show me the text first; I confirm before it is stored.
```

### Check for sensitive details

```text
Read the draft again and tell me whether it reveals a precise location, a nest or a date pattern that could help someone find a rare bird. If it does, rewrite it with only the general region and show me the change before anything is saved to Tareno.
```

### Evening proposal job

```text
Each evening at 20:00 look up tomorrow's row in the sighting log [file path], and message me a proposed post of at most 300 characters. Store it as a Tareno draft only, with no scheduling or publishing, and warn me when the row is missing or marked sensitive.
```

### Request the morning slot

```text
Request a Tareno slot for draft [draft ID] at [tomorrow 08:00] in the time zone [Europe/Berlin], so the sighting is online before the morning walkers set out. Send me the pending action ID and confirm that nothing is live before my approval in the dashboard.
```

## Bluesky in Tareno

- Tareno's configuration for Bluesky allows up to four images per post, jpg, png, webp or gif, with a size limit of 2 MB each, so phone photos usually need exporting at a smaller size.
- Posts on Bluesky are limited to 300 characters, so a sighting post names the species, the region and one detail.
- Tareno does not read posts or replies on Bluesky, so OpenClaw cannot tell you who asked about the bird; you read replies in the app.
- A scheduled job needs the Gateway awake; if the machine sleeps at 20:00, tomorrow starts without a proposal.

Official rules ([AT Protocol lexicons: app.bsky.feed.post and app.bsky.embed](https://github.com/bluesky-social/atproto/tree/main/packages/api/lexicons/app/bsky), checked 2026-10-25):

- 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.

## Mistakes to avoid

- Publishing the exact site of a rare bird. Name the region only.
- Uploading full-size phone photos. Export them under the 2 MB limit.
- Skipping alt text. Photo-heavy posts are only accessible with it.
- Widening the evening job's toolset. Anything beyond reading and drafting removes your last check.

## What does not work

- OpenClaw cannot identify a bird from a photo reliably, so the species comes from the member who saw it.
- It cannot see who replied on Bluesky, because Tareno exposes neither posts nor replies for that network.
- It cannot put a sighting online by itself; the dashboard approval is the only door.

## Frequently asked questions

### Is a chat message enough to start a sighting post?

Yes, as the starting point. With a channel configured in your Gateway and the photos in your Tareno library, OpenClaw drafts the text and the alt text and saves a draft for your Bluesky account.

### How many photos fit in a Bluesky post?

Four at most under Tareno's configuration, with 2 MB per file. If you have more, OpenClaw proposes which four to keep and you decide. A second post can carry the rest.

### Why is alt text so important here?

Because a bird photo carries its meaning visually, and people who cannot see it get nothing without a description. OpenClaw drafts alt text per photo, and you correct any detail it misread.

### How do I keep a rare bird's site private?

Tell OpenClaw to name only the region for sensitive species, and mark such entries in your log. Read the draft before approving, since a precise place can be inferred from small details.

### What if the Gateway is asleep at 20:00?

Then that evening's proposal never appears. Jobs fire only while the Gateway runs, so keep the machine awake or send the sighting yourself the next morning.

### Can something be published while I am out birdwatching?

Only a request you already approved. Anything else waits in Tareno as pending, and `get_action_status` shows which requests went through and which still wait for you.

## Tareno tools used

- `list_media`
- `list_accounts`
- `create_drafts`
- `get_action_status`

Approval model: Tareno saves drafts directly. Scheduling, publishing, edits to scheduled posts and deletions become pending actions that a person approves in the Tareno dashboard; no agent can approve them.

## Related

- [OpenClaw × Tareno overview](https://tareno.co/agents/openclaw)
- [Media library](https://tareno.co/features/media-library)
- [Post scheduling](https://tareno.co/features/post-scheduling)
- [Approval workflows](https://tareno.co/features/approval-workflows)
