Skip to content

GitHub

GitHub adds remote context to local Git data: PRs you opened or reviewed, issues you commented on, and review verdicts.

Terminal window
devrecall auth github # OAuth (default)
devrecall auth github --method pat # personal access token
devrecall auth github --method gh-cli # reuse `gh auth token`

Three auth methods:

  1. OAuth — opens a browser, goes through relay.devrecall.dev. Default.
  2. PAT — generate at github.com/settings/tokens with repo and read:user scopes.
  3. gh CLI — if gh is installed and authenticated, DevRecall reuses its token via gh auth token. Zero setup.

Tokens are stored in ~/.devrecall/tokens/github.json (0600).

ActivityWhat
Pull requestsTitle, description, state, merge date
PR reviewsVerdict (approve/request changes), inline comment counts
IssuesIssues you authored or were assigned
CommentsComments you wrote on PRs and issues

Repos are auto-discovered via GET /user/repos?sort=pushed — DevRecall syncs the most recently active ones first.

ScopePurpose
repoRead PRs and issues from private repos
read:userGet your profile and verified email

Read-only — DevRecall never writes to GitHub.

Authenticated users get 5,000 requests/hour. DevRecall:

  • Uses conditional requests (If-Modified-Since/ETag) to avoid quota burn
  • Syncs incrementally with since timestamps
  • Backs off exponentially on 429

A typical daily sync is <50 requests.

GitLab and Bitbucket use the same shape: devrecall auth gitlab / devrecall auth bitbucket. Scopes are read_api (GitLab) or app password (Bitbucket). Activities normalize to the same schema as GitHub.

For self-hosted GitLab, pass --base-url https://gitlab.example.com.