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 — pick whichever matches your trust model:

Opens a browser, the callback round-trips through relay.devrecall.dev. Easiest setup; the relay never sees the token itself, only forwards the OAuth code.

Terminal window
devrecall auth github --method pat

Generate a classic PAT at github.com/settings/tokens with repo and read:user scopes, then paste it when prompted. The token goes directly from your machine to GitHub — nothing touches relay.devrecall.dev and no DevRecall-owned OAuth app is involved.

Recommended if you’d rather skip our relay entirely.

Terminal window
devrecall auth github --method gh-cli

If gh is already installed and authenticated, DevRecall reuses its token via gh auth token. Also fully local — no relay.

Tokens are validated against /user and stored at ~/.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, issues, and code reviews from private repos
read:userGet your profile and verified email

repo is what makes code-review tracking work. The collector calls /search/issues?q=type:pr reviewed-by:<you> and then /repos/{owner}/{repo}/pulls/{n}/reviews to record each review with its verdict (APPROVED / CHANGES_REQUESTED / COMMENTED).

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.