A collection of command line tools for manipulating stuff on Phabricator
Phabricator is nice in how powerful it is, but much like other general purpose tools like Jira, the UI leaves much to be desired for focused, simple workflows.
I wish to solve that for myself.
Make sure Go 1.13+ is installed on your system. Then:
make
./bin/<hit tab>
I can't directly use the conduit endpoint via the gonduit library; every time I hit it, it returns HTML trying to redirect my client to a SSO Google auth page.
So! Let's call the arc call-conduit
command ourselves, it takes JSON in and out. We can still use all the types provided in gonduit, aaaand it automatically pulls and handles the .arcrc
so if arc
is set up then this just works too.
Gonduit doesn't support all the modern methods (like user.search
), and some of the entities don't use the right named fields for the installation at work (looking at you, User
) so I can just drop dependency on gonduit altogether at this point.
Phabricator shipped a breaking change recently: https://secure.phabricator.com/T13491 -- this has been fixed in this codebase now.
Returns your user's logged in PHID to stdout
Returns some information about a user by PHID
Lists all possible maniphest/differential task statuses
Lists all your assigned open tasks
Lists all diffusion repositories and their clone URLs
Clones/updates every repo in phab locally
Fast text-based UI for doing daily maniphest grooming