A terminal dashboard for GitHub pull requests and issues. Browse a diff, comment on a line, and submit a review without leaving the terminal.
octoscope = Octocat + -scope: a telescope for looking over your GitHub work.
- GitHub CLI (
gh), authenticated viagh auth login
mise installs the released binary from GitHub Releases:
mise use -g github:kukv/octoscope@latest
Or pin it per project in mise.toml:
[tools]
"github:kukv/octoscope" = "latest"
Grab the archive for your platform from the
releases page, extract it, and put
octoscope somewhere on your PATH:
tar xzf octoscope_<version>_linux_amd64.tar.gz
install -m 0755 octoscope ~/.local/bin/
On Windows, unzip the archive and place octoscope.exe in a directory on PATH.
checksums.txt is published alongside the archives:
sha256sum -c checksums.txt --ignore-missing
go install github.com/kukv/octoscope/cmd/octoscope@latest
--version prints dev with this method; the version string is stamped in at
release build time.
git clone https://github.com/kukv/octoscope.git
cd octoscope
go build -o octoscope ./cmd/octoscope
Run it inside a git repository:
octoscope
Or point it at any repository:
octoscope --repo kukv/octoscope
| Flag | Description |
|---|---|
--repo owner/name |
Target repository, and the tab octoscope opens on. Defaults to the repository of the current directory, and to the Work tab. |
--lang en|ja |
Display language. Defaults to the operating system locale. |
--icons unicode|nerd|ascii |
Glyph set. Defaults to unicode; OCTOSCOPE_ICONS sets it permanently. |
--version |
Print the version and exit. |
Pass --icons nerd if you have a Nerd Font
patched font installed, or --icons ascii if the Unicode symbols do not draw.
There is no reliable way to detect a patched font — a terminal reports neither
the font in use nor its coverage — so the default is the set that needs none.
| Key | List | Detail | Diff |
|---|---|---|---|
j / k |
move cursor | scroll | move line |
enter |
open detail | — | open a collapsed thread |
tab |
switch PRs / Issues | — | — |
r |
refresh | refresh | refresh |
o |
open in browser | open in browser | — |
d |
open diff | open diff | — |
s |
open checks | open checks | — |
c |
— | comment (Ctrl+S send / Esc cancel) |
comment on this line (Ctrl+S send / Esc cancel) |
v |
— | open the review popup | open the review popup |
X |
— | — | discard the pending review (y confirm / n cancel) |
x |
— | close / reopen (y confirm / n cancel) |
— |
l |
— | edit labels (space toggle / enter apply) |
— |
a |
— | edit assignees (space toggle / enter apply) |
— |
[ / ] |
— | — | move file |
{ / } |
— | — | move hunk |
h / l |
— | — | move pane |
esc |
— | back to list | back |
q |
quit | back to list | back |
The review popup submits with Ctrl+S after picking an event (approve /
request changes / comment).
| Action | Effect |
|---|---|
| Click a tab | Switch to it |
| Click a card or row | Select it |
| Click the selected card or row | Open its detail |
| Wheel | Move the cursor in the column under the pointer; scroll the body in the detail view |
octoscope speaks English and Japanese. The language is chosen from --lang
first, then the operating system locale, and falls back to English.