Add resolve and reply support

This commit is contained in:
2026-07-28 11:27:20 +02:00
parent fdaee6a69e
commit 0e880fa9b0
8 changed files with 664 additions and 44 deletions

View File

@@ -1,6 +1,6 @@
# gh-threads
A read-only terminal UI for people receiving GitHub pull-request reviews. It
A terminal UI for people receiving GitHub pull-request reviews. It
shows open PRs and a scrollable PR dashboard with the description, branches,
review state, checks, people, labels, milestone, activity, change statistics,
thread totals, submitted reviews, and the PR conversation. Review threads and
@@ -140,6 +140,8 @@ history and metadata.
| `/` | Fuzzy-search paths and filter with `status:`, `author:`, `updated:true` |
| `F` | Clear active thread filters |
| `n` / `N` | Next / previous thread with a new update |
| `c` | Compose a reply to the selected thread |
| `R` | Resolve or unresolve the selected thread |
| `↑` / `↓` | Choose a fuzzy-search match |
| `g` / `G` | First / last item |
| `enter` / `l` | Open the selected PR dashboard or its review threads |
@@ -151,13 +153,20 @@ history and metadata.
| `r` | Refresh now |
| `q` | Quit |
The reply composer appears inline beneath the selected thread so its code and
comments remain visible while writing. It supports multiple lines: `enter`
inserts a newline, `ctrl-s` opens the rendered confirmation preview, and `esc`
cancels. Replies and resolution changes require an explicit `y` confirmation.
Write keys remain disabled for cached snapshots, during refreshes, and whenever
GitHub does not grant the corresponding per-thread capability.
## Current scope
The application is intentionally read-only. The dashboard and contextual help
show the write capability gate, including why each future write action is
unavailable. Read state persists beside the configuration, and recent PR data
is cached for offline fallback. Check contexts and annotations are paginated.
GitHub features which depend
The application can reply to review threads and resolve or unresolve them.
Other write operations remain disabled. The dashboard shows the capability
gate, including why each action is unavailable. Read state
persists beside the configuration, and recent PR data is cached for offline
fallback. Check contexts and annotations are paginated. GitHub features which depend
on server-side context, such as unfurling issue references or displaying
uploaded images, are represented textually in the terminal. See
[`TODO.md`](TODO.md) for remaining read-only work and write-support preparation.