Fiss
News
Introduction
A command-line interface for working with forge issues inspired by TaskWarrior.
⚠ This is alpha work. It barely works, it requires manual editing of configuration files, it doesn't play well with servers and throttling, and basically it is a large, crude hammer at this point. There is a lot of work to be done on it, but it does do the minimum it needs to.
Fiss is a command-line tool (fiss
) that treats issues from forges (Forgejo only) as tasks. This uses the state (open, closed) and the assigned do to figure out if a task is available (open), started (open and assigned), or done (closed). In the future, this will take into account dependencies to allow blocking of tasks, tags for grouping those, and milestones for projects.
Configuration
Configuration file uses the XDG standard but will normally put files into $HOME/.config/fiss/fiss.yaml
.
servers:
mfgames:
url: https://src.mfgames.com/
forge: forgejo
token: NotGonnaTellYou
groups:
fiss:
projects:
fiss: {}
Usage
Right now, there is no automatic retrieval of tasks, so the cache sync
command needs to be run after the configuration is setup. As with most commands, the logging is mostly silent but using -v
will increase verbosity. More -v
will add details with -vvvv
being the most.
fiss cache sync
Once issues are pulled down, they can be listed by either of the two commands:
fiss list
fiss issue list
Creating issues requires knowing the server (from the configuration), the organization/group name, the project/repo name. These can be stored in environment variables to simplify the code (FISS_SERVER
, FISS_GROUP
, and FISS_PROJECT
respectively).
fiss add -s mfgames -g fiss -p fiss --title "Name of the issue"
export FISS_SERVER=mfgames
export FISS_GROUP=fiss
export FISS_PROJECT=fiss
fiss add -t "Second Issue
The rest of the commands assume the three environment variables are set.
Issues can be open and closed using their number.
fiss open --issue 3
fiss close -i 3
As with most CLIs, --help
on any command will give more details.
Environment Variables
In addition to the environment variables above, the following are also used:
FISS_CONFIG_DIR
: The directory that contains the configuration file. This defaults to the$XDG_CONFIG_HOME/fiss
if not defined.FISS_CACHE_DIR
: The directory that contains the cached data from the servers. This defaults to the$XDG_CACHE_HOME/fiss
if not defined.
Metadata
Project
- Project Home
- Documentation
- Repository
- Issues
- Project ID: 0194c2b5-a914-780a-8e3c-d58c3fc45770