phabfive
CLI for Phabricator and Phorge - built for humans and AI agents.
Features
- Maniphest - Full task management: create, show, edit, search, comment, parents/subtasks
- Paste - Create, show, edit, search, and comment on pastes
- Diffusion - Repository management, branches, and URI configuration
- Passphrase - Search, list, and retrieve secrets (passwords, tokens, SSH keys, notes)
- User - User info and interactive setup wizard
Cross-cutting features:
- Monogram shortcuts -
phabfive T123expands tophabfive maniphest show T123 - Batch editing - Edit multiple objects at once:
phabfive edit T1,T2,T3 --status=resolved - Shell completion - Tab completion for commands, options, and values
- Machine-readable output -
--format=jsonor--format=yamlfor scripting and AI agents - Agent skill -
phabfive --skillprints a ready-to-use skill file for AI agents - Quiet by default -
-vreports which filters a search actually applied
For complete documentation, see Read the Docs.
Installation
uv is a fast Python package installer (10-100x faster than pip):
# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install from pypi.org
uv tool install phabfive
# Install from Github to get unreleased features and fixes
uv tool install git+https://github.com/dynamist/phabfive@master
If you prefer mise-en-place the polyglot tool version manager:
# Install mise if you haven't already
curl https://mise.run | sh
# Install from pypi.org
mise use --global --pin pipx:phabfive
Container image
ghcr.io/dynamist/phabfive is a scratch image containing only phabfive and its own Python. It can't run by itself. Instead, copy phabfive from it into your own image, for example in CI:
FROM debian:trixie-slim
COPY --from=ghcr.io/dynamist/phabfive:latest /opt/phabfive /opt/phabfive
ENV PATH=/opt/phabfive/bin:$PATH
Use the -musl tags (e.g. latest-musl) for Alpine based images. The files must stay at /opt/phabfive, because the install contains absolute paths.
Quick Start
Run the interactive setup wizard:
phabfive user setup
The wizard will prompt for your Phabricator/Phorge URL and API token, then store them in ~/.arcrc (Arcanist-compatible format). If you have multiple servers configured, phabfive will let you choose which one to use.
Then start using phabfive:
# Show tasks and pastes with monogram shortcuts
phabfive T123
phabfive P456
# Search and filter
phabfive maniphest search "migration tasks" --tag myproject
phabfive maniphest search --tag myproject --order updated --limit 10
phabfive maniphest search --author=@me # tasks you created
phabfive maniphest search --assigned=@me # tasks assigned to you
phabfive paste search "config"
# Create and edit
phabfive maniphest create "Fix the bug" --priority=high --tag myproject
phabfive maniphest edit T123 "New Title" --status=resolved
# Spaces - place a new task in one, or move a task between them
phabfive maniphest create "Quarterly cleanup" --space=Archive
phabfive maniphest edit T123 --space=S3
# Smart navigation - raise/lower priority, move columns forward/backward
phabfive edit T123 --priority=raise
phabfive edit T123 --tag=MyBoard --column=forward
# Batch operations
phabfive edit T1,T2,T3 --status=resolved
phabfive maniphest search --assigned=@me | phabfive edit --column=Done
# Fewer results than expected? -v shows which filters were applied
phabfive -v maniphest search --tag myproject
Shell Completion
Enable tab completion for bash, zsh, or fish:
phabfive --install-completion bash
phabfive --install-completion zsh
phabfive --install-completion fish
After installation, restart your shell or source your profile.
Completions that come from the server, such as usernames, are cached on disk so
only the first TAB waits for a round trip. Run phabfive cache clear after
somebody joins, leaves or is renamed, or set PHAB_CACHE=0 to switch caching
off. See Caching for what is cached and for how long;
secrets never are.
Manual configuration (advanced)
Arcanist-compatible ~/.arcrc (recommended):
{
"hosts": {
"https://yourserver.com/api/": {
"token": "cli-ABC123"
}
}
}
Or environment variables:
export PHAB_TOKEN=cli-ABC123
export PHAB_URL=https://yourserver.com/api/
Windows SSL certificates: If you encounter certificate errors, install pip-system-certs to use the Windows certificate store: pip install pip-system-certs
Documentation
- Full CLI Reference - Complete command documentation
- Development Guide - Set up dev environment, run tests, local Phorge/Phabricator setup
- Release Process - How to build and publish releases
Contributing
See docs/development.md for instructions on setting up your development environment.
License
Copyright (c) 2017-2026 Dynamist AB
See the LICENSE file provided with the source distribution for full details.
Metadata
Release files for phabfive 0.10.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| phabfive-0.10.0.tar.gz | 445.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| phabfive-0.10.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 615.9 kB
Release files / phabfive-0.10.0.tar.gz
| Download URL | phabfive-0.10.0.tar.gz |
|---|---|
| Size | 445.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e8b81dde9d96c7d8619515ec1abe05339b48e2b3014c5b5bc8d48f4b11d3c2b0
|
|
BLAKE2b-256 checksum How to use checksums |
3495ce834ddae14886dff03bfba7723b76280b02caa626775bedb82832ff8475
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency logRelease files / phabfive-0.10.0-py3-none-any.whl
| Download URL | phabfive-0.10.0-py3-none-any.whl |
|---|---|
| Size | 170.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
83fe069533b372827de2f73f6201be8ede7f7871cbb675fd6e890507c79844b4
|
|
BLAKE2b-256 checksum How to use checksums |
3487b7a900028d09e3f25831ef618a2b08ab771261eaf60609661d6c7faaba77
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency log