Agent skill

Bluesky

by letta-ai in letta-ai/lettabot

Post, reply, like, and repost on Bluesky using the lettabot-bluesky CLI.

Apache-2.0Auto-check passedProductivity & Automation

Install Bluesky

skills CLI
$ npx skills add letta-ai/lettabot --skill bluesky -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install letta-ai/lettabot bluesky --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/letta-ai/lettabot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/bluesky .claude/skills/bluesky && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
bluesky
GitHub stars
327
Token cost
~954 tokens
SKILL.md length
206 words
Files
2
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

Post, reply, like, and repost on Bluesky using the lettabot-bluesky CLI.

  • Productivity & Automation work in your project
  • SKILL.md covers Availability, Quick Reference, Read Commands (public API) and Auth‑Required Reads (uses app…, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Bluesky is an agent skill from letta-ai/lettabot. Post, reply, like, and repost on Bluesky using the lettabot-bluesky CLI. Read-only by default; explicit actions required.

Its SKILL.md is about 950 tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file.

It sits in Productivity & Automation. It works with Bluesky. The repository describes itself as: Archived - has been replaced by Letta Code channels/schedules! The licence is Apache-2.0.

When your agent uses it

  • Productivity & Automation work in your project

Example prompts

  • “/bluesky”

Requirements

  • Node.js

What it can do on your machine

Read from SKILL.md and the folder at commit 99c3b5d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Bluesky loads about 954 tokens when it runs. Until then it costs about 32 tokens; SKILL.md has 206 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~32
When it runs · the whole SKILL.md, loaded when a task matches
~954

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from letta-ai/lettabot at commit 99c3b5d, republished under its Apache-2.0 licence (© letta-ai). 206 words, ~954 tokens.

Download SKILL.mdSave it as .claude/skills/bluesky/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
bluesky
description
Post, reply, like, and repost on Bluesky using the lettabot-bluesky CLI. Read-only by default; explicit actions required.
metadata
{ "clawdbot": { "emoji": "🦋", "primaryEnv": "BLUESKY_HANDLE" } }

Bluesky

Bluesky is read-only by default in Lettabot. To post, reply, like, or repost you must use the lettabot-bluesky CLI.

Availability

When this skill is enabled, it ships a skill-local lettabot-bluesky shim, so the command is available to agent subprocesses without separate npm install.

Both entrypoints are supported and equivalent:

bash
lettabot-bluesky <command> ...
lettabot bluesky <command> ...

The shim prefers project-local entrypoints (./dist/cli.js or ./src/cli.ts) before falling back to an installed lettabot binary on PATH.

Quick Reference

bash
lettabot-bluesky post --text "Hello" --agent <name>
lettabot-bluesky post --reply-to at://did:plc:.../app.bsky.feed.post/... --text "Reply" --agent <name>
lettabot-bluesky post --text "Long..." --threaded --agent <name>
lettabot-bluesky post --text "Check this out" --image data/outbound/photo.jpg --alt "Alt text" --agent <name>
lettabot-bluesky post --text "Gallery" --image data/outbound/a.jpg --alt "First" --image data/outbound/b.jpg --alt "Second" --agent <name>
lettabot-bluesky like at://did:plc:.../app.bsky.feed.post/... --agent <name>
lettabot-bluesky repost at://did:plc:.../app.bsky.feed.post/... --agent <name>
lettabot-bluesky repost at://did:plc:.../app.bsky.feed.post/... --text "Quote" --agent <name> [--threaded]

Read Commands (public API)

bash
lettabot-bluesky profile <did|handle> --agent <name>
lettabot-bluesky thread <at://did:plc:.../app.bsky.feed.post/...> --agent <name>
lettabot-bluesky author-feed <did|handle> --limit 25 --cursor <cursor> --agent <name>
lettabot-bluesky list-feed <listUri> --limit 25 --cursor <cursor> --agent <name>
lettabot-bluesky resolve <handle> --agent <name>
lettabot-bluesky followers <did|handle> --limit 25 --agent <name>
lettabot-bluesky follows <did|handle> --limit 25 --agent <name>
lettabot-bluesky lists <did|handle> --limit 25 --agent <name>
lettabot-bluesky actor-feeds <did|handle> --limit 25 --agent <name>

Auth‑Required Reads (uses app password)

bash
lettabot-bluesky search --query "memory agents" --limit 25 --cursor <cursor> --agent <name>
lettabot-bluesky timeline --limit 25 --cursor <cursor> --agent <name>
lettabot-bluesky notifications --limit 25 --cursor <cursor> --reasons mention,reply --agent <name>

Moderation (Mute / Block)

bash
lettabot-bluesky mute <did|handle> --agent <name>
lettabot-bluesky unmute <did|handle> --agent <name>
lettabot-bluesky block <did|handle> --agent <name>
lettabot-bluesky unblock <blockUri> --agent <name>
lettabot-bluesky blocks --limit 50 --cursor <cursor> --agent <name>
lettabot-bluesky mutes --limit 50 --cursor <cursor> --agent <name>

Notes:

  • unblock requires the block record URI (returned by the block command).
  • Pagination: many commands support --cursor (use the cursor field from the previous response).

Notes

  • Posts are capped at 300 characters unless you pass --threaded.
  • --threaded splits text into a reply thread (explicit opt‑in).
  • Replies and quotes require the target at:// URI (included in incoming Bluesky messages).
  • The CLI uses the Bluesky app password from your lettabot.yaml for the selected agent.
  • Images: up to 4 per post; supported formats: JPEG, PNG, GIF, WebP. Use --image <path> (up to 4×) and --alt <text> after each image for alt text. --alt applies to the immediately preceding --image. Images must be inside the configured sendFileDir (default: data/outbound). Images attach to the first post only when --threaded.

© letta-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/bluesky of letta-ai/lettabot.

  • SKILL.md
  • lettabot-bluesky

Open the folder on GitHubat commit 99c3b5d

Compare with similar skills

Bluesky next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Bluesky compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Bluesky this skillletta-ai/lettabot327—~954Automated safety check: PassApache-2.0
Platform Arbitrageacogood/diffmode_free163—~2.5kAutomated safety check: PassApache-2.0
Social CLIletta-ai/skills149—~1.6kAutomated safety check: NotesMIT
Agent Browserquran/quran.com-frontend-next1.9k40 repos~3.3kAutomated safety check: PassNone
Dependency Watchtelegramdesktop/tdesktop33k1 repos~2.2kAutomated safety check: PassGPL-3.0
Perform Tasktelegramdesktop/tdesktop33k2 repos~3kAutomated safety check: PassGPL-3.0

Similar skills

  • Platform Arbitrage

    acogood/diffmode_free

    Platform arbitrage audit for a founder's product — a Diffmode growth-tactics think-tank research stage (prompt TT-DG-003).

    163 GitHub stars~2.5k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Social CLI

    letta-ai/skills

    Agent-optimized CLI for Bluesky (ATProto) and X (Twitter). An agent skill from letta-ai/skills.

    149 GitHub stars~1.6k tokensUpdated 9 days ago
    Agent WorkflowsAuto-check: notes
  • Agent Browser

    quran/quran.com-frontend-next

    Automates browser interactions for web testing, form filling, screenshots, and data extraction.

    1.9k GitHub starsUsed in 40 repos~3.3k tokens
    Productivity & AutomationAuto-check passed
  • Dependency Watch

    telegramdesktop/tdesktop

    Audit Telegram Desktop dependencies on freshly fetched origin/dev for releases and security fixes, including upstream lag and backport candidates in patched forks.

    33k GitHub starsUsed in 1 repo~2.2k tokens
    Productivity & AutomationAuto-check passed
  • Perform Task

    telegramdesktop/tdesktop

    Resolve, start or resume, implement, review, test, and publish exactly one existing ai-tdesktop task by short slug or full dated id, including rare blocked retries and split-required results.

    33k GitHub starsUsed in 2 repos~3k tokens
    Productivity & AutomationAuto-check passed
  • Brave Search

    badlogic/pi-skills

    Web search and content extraction via Brave Search API. An agent skill from badlogic/pi-skills.

    2.6k GitHub starsUsed in 5 repos~592 tokens
    Productivity & AutomationAuto-check passed

More from letta-ai/lettabot

  • Linear

    letta-ai/lettabot

    Manage Linear issues via GraphQL API. An agent skill from letta-ai/lettabot.

    327 GitHub stars~583 tokensUpdated 4 mo ago
    Auto-check passed
  • Lettabot

    letta-ai/lettabot

    Set up and run LettaBot - a multi-channel AI assistant for Telegram, Slack, Discord, WhatsApp, and Signal.

    327 GitHub stars~3.4k tokensUpdated 4 mo ago
    Auto-check passed
  • Scheduling

    letta-ai/lettabot

    Create scheduled tasks and one-off reminders. An agent skill from letta-ai/lettabot.

    327 GitHub stars~852 tokensUpdated 4 mo ago
    Auto-check passed
  • Voice Memo

    letta-ai/lettabot

    Reply with voice memos using text-to-speech. An agent skill from letta-ai/lettabot.

    327 GitHub stars~487 tokensUpdated 4 mo ago
    Auto-check passed
  • Cron

    letta-ai/lettabot

    Create and manage scheduled tasks (cron jobs) that send you messages at specified times.

    327 GitHub stars~814 tokensUpdated 4 mo ago
    Auto-check passed
  • Google

    letta-ai/lettabot

    Google Workspace CLI (gog) for Gmail, Calendar, Drive, Contacts, Sheets, and Docs.

    327 GitHub stars~774 tokensUpdated 4 mo ago
    Auto-check: notes

Works with

Questions about Bluesky

What does Bluesky do?

Post, reply, like, and repost on Bluesky using the lettabot-bluesky CLI. Bluesky is an agent skill from letta-ai/lettabot. Post, reply, like, and repost on Bluesky using the lettabot-bluesky CLI.

When should I use Bluesky?

Bluesky fits situations like: productivity & Automation work in your project.

How do I install Bluesky in Claude Code?

Run `npx skills add letta-ai/lettabot --skill bluesky -a claude-code`. Or copy the skill folder (skills/bluesky in letta-ai/lettabot) into .claude/skills/bluesky in your project. Claude Code loads it when a task matches its description.

How do I install Bluesky in Codex?

Run `npx skills add letta-ai/lettabot --skill bluesky -a codex`. Or copy the skill folder (skills/bluesky in letta-ai/lettabot) into .agents/skills/bluesky in your project. Codex loads it when a task matches its description.

Can I use Bluesky in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add letta-ai/lettabot --skill bluesky -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bluesky, .gemini/skills/bluesky, .github/skills/bluesky and .opencode/skills/bluesky in your project.

What does Bluesky need to run?

SKILL.md names no scripts, command-line tools or credentials: Bluesky is instructions for the agent only. Our summary lists: Node.js.

Does Bluesky access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Bluesky safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Bluesky use?

Bluesky is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Bluesky use?

About 954 tokens (SKILL.md is roughly 3.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Bluesky?

Skills that share tags, products or a category with Bluesky: Platform Arbitrage (acogood/diffmode_free, 163 stars), Social CLI (letta-ai/skills, 149 stars), Agent Browser (quran/quran.com-frontend-next, 1.9k stars) and Dependency Watch (telegramdesktop/tdesktop, 33k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Bluesky?

letta-ai (a GitHub organization) maintains it in letta-ai/lettabot, which has 327 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on May 25, 2026.

Source: letta-ai/lettabot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.