bluesky
SKILL.md
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:
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
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)
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)
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)
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:
unblockrequires the block record URI (returned by theblockcommand).- Pagination: many commands support
--cursor(use thecursorfield from the previous response).
Notes
- Posts are capped at 300 characters unless you pass
--threaded. --threadedsplits 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.yamlfor 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.--altapplies to the immediately preceding--image. Images must be inside the configuredsendFileDir(default:data/outbound). Images attach to the first post only when--threaded.
Weekly Installs
1
Repository
letta-ai/lettabotGitHub Stars
259
First Seen
5 days ago
Security Audits
Installed on
mcpjam1
claude-code1
junie1
windsurf1
zencoder1
crush1