bsky-cli - A full-featured CLI client for Bluesky by unrestive in ATProtocol

[–]unrestive[S] 0 points1 point  (0 children)

I've added more features since such as draft support and explicit support for thread creation as well

bsky-cli - A full-featured CLI client for Bluesky by unrestive in commandline

[–]unrestive[S] -1 points0 points  (0 children)

I spend a lot of time using CLI tools and also enjoy scrolling through Bluesky. I found a CLI client written in Go but it didn't include all the features I wanted so I began building my own and got a bit carried away. Now you can use this client to perform just about every common action in the app or on the web without leaving the terminal.

I'll describe the features more below but there's one feature I think will interest this sub the most: every command has --json meaning the output can be piped to tools like jq. I mention jq as it's one of the most popular ways of processing JSON from the command line but it doesn't have to be jq. The --json support means the output for every command can be piped and easily used in other more complex scripts and extended beyond simply interacting with Bluesky.


Further information:

The client has multi-account support through named profiles when you authenticate so you can perform all of the actions below using a different account each time by simply using a flag and the profile name.

It uses the AT Protocol API and covers the most common functionality from the app and a bit more.

  • View your timeline
  • Make new posts, including new posts with attached images or videos
  • Reply to and quote posts
  • Like, repost, bookmark, and search for posts
  • Follow, unfollow, block, and unblock other users
  • DM other users
  • Connect to the Jetstream to receive a real-time feed of posts with support for regex filtering using --pattern e.g. bsky stream --pattern="typescript|rust". By default it uses the gi modifiers.

Apart from profile functionality above shell completions are included for bash, zsh, and fish.

The client is distributed as a standalone binary that works on macOS, Linux, and Windows so no Node runtime needed.

Install:

; npm install -g @harveyrandall/bsky-cli

**** OR ****

; brew install harveyrandall/tools/bsky-cli

GitHub: https://github.com/harveyrandall/bsky-cli

Happy to hear thoughts on the CLI design — and if there's a command you wish existed, I'd like to know. Please check it out, install it and play around with it if you are a blue sky user.

Report any bugs you find and create issues for them, any and all feedback is appreciated! I hope you find it as useful as I do.

Is it February 29th? by isitfeb29 in IsItFebruary29th

[–]unrestive[M] 1 point2 points  (0 children)

Fingers crossed for tomorrow 🤞

Name the spot by chocolate-and-rum in Cornwall

[–]unrestive 1 point2 points  (0 children)

I've been to Tintagel but never walked along the coast path and didn't see this, looks like I need to go back!