A workflow oriented, command line Mastodon client
Project description
FCLI
FCLI is an experimental command line Mastodon client. The goals of the project are:
-
To experiment with 'algorithms' to manage post volumes. Currently the number of posts reviewed per session is limited to 50, and feedback (interesting / not interesting) is recorded for all posts which are reviewed. This is used to prioritise posts from accounts known to post a high percentage of high quality posts.
-
To provide a 'workflow' based interface, i,e. posts are reviewed in order and next actions must be decided before moving on to the next post.
-
To integrate into broader personal information management processes, in particular project and goal tracking, reading list management and next action tracking.
The software is currently at a very stage of development, but I am using it on a daily basis. Please let me know if you're interested in the project.
Installation
FCLI is a python project, so you'll need a working python environment.
Requirements are listed in requirements.txt
in the usual way.
This guide is for installation on Linux (which I use) - you'll need to vary things (and probably also edit the code) to make it work on other platforms.
You'll need to register a Mastodon app at your instance. You can do this using
curl
with somethign like the following:
curl --form 'client_name=fcli' --form 'redirect_uris=urn:ietf:wg:oauth:2.0:oob' --form 'scopes=read write' https://<instance hostname>/api/v1/apps
The app also depends on Everdo (which I personally use for my own information management workflows). You'll need to configure it to expose a local API.
Configuration is via an INI file in {$HOME}/.config/fcli/config.ini
:
[Mastodon]
Server = <instance hostname>
Username = <username>
ClientID = <client ID from app registration>
ClientSecret = <client secret from app registration>
[Everdo]
Key = <API key>
Finally, you'll need to create some directories to store state:
{$HOME}/.fcli/cache
{$HOME}/.fcli/outbox
{$HOME}/.fcli/processed/actionable
{$HOME}/.fcli/processed/actioned
{$HOME}/.fcli/processed/boostable
{$HOME}/.fcli/processed/boosted
{$HOME}/.fcli/processed/interesting
{$HOME}/.fcli/processed/not_interesting
{$HOME}/.fcli/processed/skipped
{$HOME}/.fcli/sent
{$HOME}/.fcli/staging
There are probably other things you need to do - my isntallation has evolved with the codebase, so let me know if you run into any problems.
Usage
Kick off the workflow using the default entry point:
python -m fcli
You'll be asked to authenticate via an OAuth 2.0 code. This step will also post
the content of any files in {$HOME}/.fcli/outbox
.
There are a few command line options you'll find if you look at the code, but they're obsolete.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for fcli_client-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f230942e2f7268d5f06f6dcc37fd9e96de01a62d37fa4a2e347f0c4110fc13ae |
|
MD5 | a14c84a6d531c4616bc422d987719036 |
|
BLAKE2b-256 | 487f467ca72c32e11f74ab77897bb97e0c54cf690a1df4d0211eedba553e2fad |