ghp
Compact GitHub activity summary with repository-scoped checkpoints.
Install
uv tool install ghp
# or
uvx ghp
Dev
uv sync
uv run ghp --version
Usage
ghp # open issues + PRs snapshot
ghp upstream # use the GitHub repo from the upstream remote
ghp 1h # deltas since 1 hour ago
ghp upstream 1h # upstream deltas since 1 hour ago
ghp 2026-03-07T14:00:00Z # deltas since timestamp
ghp --json # machine-readable output
ghp --me @clod # highlight mentions
ghp --repo owner/name # explicit repo
Behavior
- Cursor defaults to the saved checkpoint for the current GitHub repository when
--sinceis omitted. upstreamselects the repository configured as the Git remote namedupstream.- Checkpoints are stored under
$XDG_STATE_HOME/ghp/checkpoints/. WhenXDG_STATE_HOMEis unset or invalid, ghp uses~/.local/state/ghp/checkpoints/. - Each repository has its own atomically replaced checkpoint file, so
origin,upstream, and--repoqueries do not advance each other's checkpoints. - Saved checkpoints include a one-second margin because GitHub's
sincefilters are strict and timestamps have second precision. Boundary activity may appear again on the next run. - Tool installs and upgrades leave checkpoint state in place.
- Repository-keyed
.ghp-last-update-timestampfiles are migrated to XDG state and removed after successful writes. Older plaintext files require an explicit window such asghp 1honce because they do not identify a repository. --sinceaccepts relative shorthands (30m,2h,1d,1w) and normalizes timestamps to canonical UTC.- Snapshot mode returns open issues and open PRs.
- Delta mode returns issues, PRs, issue comments, PR review comments, and recent commits since the cutoff.
- API or auth failures exit non-zero instead of silently pretending there was no activity.
--jsonprints a machine-readable payload; on failure it emits a JSON object with anerrorfield and exits non-zero.
Auth
Looks for tokens in this order:
$GITHUB_PAT$GITHUB_TOKEN$GH_TOKENgh auth token(gh CLI)
Test
uv run python -m unittest discover -s tests
scripts/test-install.sh
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ghp-0.2.0.tar.gz
(12.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
ghp-0.2.0-py3-none-any.whl
(8.6 kB
view details)
File details
Details for the file ghp-0.2.0.tar.gz.
File metadata
- Download URL: ghp-0.2.0.tar.gz
- Upload date:
- Size: 12.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a40555e5f7ac694bb846440a653a0ce87a1546433e4f6e137ebad940335fd8c6
|
|
| MD5 |
cd5c7e216b34c4dc1fe0acf7e82dd8f8
|
|
| BLAKE2b-256 |
4e995e3e4d28c7eb9e7491dc653f28c8b9ebe09dc1374486147261a9558a9fff
|
File details
Details for the file ghp-0.2.0-py3-none-any.whl.
File metadata
- Download URL: ghp-0.2.0-py3-none-any.whl
- Upload date:
- Size: 8.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
202651ecf7a089b63447a33f2297f000172aa2b82989d7a5d80341e870c7f254
|
|
| MD5 |
62d69e891fb9382d693a7ed8647fafd9
|
|
| BLAKE2b-256 |
70df063465a2ac9eaf790148d31ed0e47150ead16ee309da1fdca5c39f33b862
|