Expand description
The GitHub REST client.
Most responses are passed through as GitHub sent them: an agent reading an issue wants the issue, and a struct here would silently drop every field GitHub adds later. Only the shapes the reference reshapes — a pull request, a commit’s checks — are modelled, because those are the ones a caller sees differently from what the API returned.
The ETag revalidation cache the reference keeps at module scope is not here yet: the only Rust caller is the MCP server, which is a fresh process per tool call, so a cache could never be read. It belongs with the daemon’s GitHub routes, where it is what keeps the dashboard’s polling affordable.
Structs§
- Commit
CiStatus - Github
ApiError - Github
Compare Summary - One commit’s checks, as the reference reports them.
- Github
Manager - Github
Pr - A pull request as the reference reports one: GitHub’s own fields, except that a merged pull request is named “merged” rather than “closed”, and the two fields GitHub omits on a list response are filled in.
Functions§
- api_
base - Where API calls go. GitHub itself, unless the override names loopback.