#jq recipe to select a (pseudo-)random non-reply post from your #Mastodon archive and display its URL and text:

jq '[.orderedItems.[]] | map(select(.type == "Create" and .object.inReplyTo == null)) | .[now % length] | .object | {url, content}' outbox.json

Could be fun going through your old memories. Might find something you want to repost!

Note that the “non-reply” part isn't especially reliable. Some replies have a null inReplyTo field. Not sure why.

Similarly, you can take a random one of your past boosts and open it in your browser (assuming you're on Linux/BSD):

jq -r '[.orderedItems.[]] | map(select(.type == "Announce")) | .[now % length] | .object' outbox.json | xargs -0 xdg-open

Note that this will open the boosted post on its home instance, not on yours.

Similarly, to just open one of your random non-reply posts in your browser (on your home instance this time):

jq -r '[.orderedItems.[]] | map(select(.type == "Create" and .object.inReplyTo == null)) | .[now % length] | .object.url' outbox.json | xargs -0 xdg-open

Doing things on the command line may be arcane and complicated, but it sure is flexible. It's not unlike how I imagine wizards would feel about magic.