drivel is a Twitter command line interface.
You can find releases on releases.gutmet.org or build it yourself.
Checkout the repository and compile with
go build -o drivel
To get up to the last 200 tweets of your home timeline:
To get up to the last 200 tweets of your mention timeline:
To get up to the last 200 tweets of @USER:
drivel timeline USER
To like a tweet with a specific ID:
drivel like TWEET_ID
To retweet a tweet with a specific ID:
drivel retweet TWEET_ID
To lookup tweets with specific IDs:
drivel lookup TWEET_ID1 [TWEET_ID2 TWEET_ID3 ...]
To get a list of the people you follow:
To wipe your timeline and likes (keepDays defaults to 10, can only reach back as far as the result of the timeline):
To update your status with optional media upload:
drivel status STATUS [FILE1 FILE2 ...]
To reply to a tweet with a specific ID:
drivel reply TWEET_ID MESSAGE [FILE1 FILE2 ...]
To quote a tweet with a specific ID:
drivel quote TWEET_ID MESSAGE [FILE1 FILE2 ...]
with any number of files, as long as they are .jpg, .png, .gif or .mp4 and smaller than 50 MB each. On first use, drivel will ask you to go to https://apps.twitter.com/app/new, register a new app and create an access token. Those values will be stored in HOME/.drivel/ for later use.
drivel will automatically split large status messages and multiple files into separate tweets belonging to the same thread.
The results of the 'home' and 'mentions' commands can be filtered to only include certain user names. Create text files 'AllowlistHome' and 'AllowlistMentions' in HOME/.drivel and list allowed users line by line.
Each command (other than wipe) can use a go text template to format the printed results - pass a file name to '--template'. The template is executed with a slice of Status. See types.go for available data fields and example.template for a minimalist example.
For more options consult 'drivel help COMMAND'.
drivel does not sanitize/validate user input for now.
final final note
You can buy me a beer here.