Connecting GitHub

A GitHub connection is one personal access token plus a base URL, shared across every repo you add from it. Each repo then decides — independently — whether it feeds issues to a board, code intelligence, or both.

deckgauge · Add source · GitHub
Ada-Systems 3 repos found
RepoDefault branchState
ada-systems/platformmainselected
ada-systems/checkoutmainselected
ada-systems/docs-sitemain

The GitHub repo picker inside the Add-source wizard.

What it does, and where the data comes from

One connection stores a base URL (https://api.github.com by default — set your GitHub Enterprise URL to point elsewhere) and one PAT. Adding repos runs the live picker against that token, then bulk-binds the repos you select; each repo gets its own hot/warm/cold sync tier based on recent push activity, so quiet repos are polled less often than busy ones.

FieldValue
API base URLDefaults to https://api.github.com; override for GitHub Enterprise
Personal access tokenClassic or fine-grained, with the scopes below
RepositorySelected from the live picker, or bulk-added by pattern

How to connect GitHub

  1. Create a token with the scopes repo, read:org, and read:user. Use repo for private repositories, or public_repo if you only need public ones.
  2. If the repos live in an SSO-enforced organization, authorize the token for that org from GitHub's token settings — an unauthorized token can read your own repos but is silently refused on the org's.
  3. Add source → GitHub — paste the token and click Create & test; the wizard then lists the repos your token can see.
  4. Select repos and, per repo, choose Feed issues to board and/or Use for code intelligence.

What syncs

Per repo: pull requests, reviews, commits, issues, and milestones. Board issue-feed and code intelligence are independent toggles — a repo can do either, both, or (if you leave both off) neither, in which case it sits in the connection unused.

Code intelligence is opt-in per repoUse for code intelligence is a separate switch from feeding issues to a board. A repo with no PR/commit sync available on the connection shows "unavailable" and can't be turned on until the connection itself is populated with that data.

Under the hood

GitHub enforces SSO authorization per token, per organization — it isn't something Deckgauge configures. A token that works fine against your personal repos will fail (usually with a 403, sometimes a silent empty result) against an SSO-protected org's repos until you explicitly authorize it for that org from GitHub's own token settings page.

Repos sync on a shared rate-limit budget (roughly 4,000 requests/hour) split across hot/warm/cold tiers, with a self-healing backfill on boot — a big org doesn't need manual rate-limit tuning to stay inside GitHub's limits.

If it looks wrong

SymptomCauseFix
Org repos don't appear in the picker, personal repos doToken isn't SSO-authorized for that organizationAuthorize the token for the org from GitHub's token settings, then retry
"Use for code intelligence" is disabledNo PR/commit sync available on this connection yetWait for the repo's first sync, or re-check the connection's token
Reconnect banner says the token is invalidPAT expired or was revokedPaste a fresh token via Update token & retry on the source card

Related

Last updated