---
title: Connect a GitHub account
description: Link your GitHub account so your merged pull requests show up in your Sifa activity feed and contribution graph.
---

Connect your GitHub account to Sifa ID. Your merged pull requests then appear in your [activity feed](/docs/activity-feed) and contribution graph, next to the rest of your Atmosphere activity.

Sifa reads **merged pull requests you authored** in public repositories. Not your repositories, not commits, not issues, not stars.

## Pick one route

There are two separate ways to connect a GitHub account. **Do one or the other, not both.** They are different entry points, not steps in a sequence:

- **Option 1: add it in Sifa. Then link back from your GitHub profile** (recommended). You add the account under External accounts. You then put your Sifa profile link on your GitHub profile.
- **Option 2: verify it on [Keytrace](https://keytrace.dev)**. You do not add anything in Sifa. Keytrace verifies the account and Sifa surfaces it automatically.

Both routes prove that you own the account. Sifa reads nothing before that proof exists. We recommend Option 1, because it needs only GitHub and your Sifa profile, with no third service. Option 2 is a shortcut for people who already use Keytrace, or who want to verify several accounts at once.

## Option 1: add it in Sifa, link back from GitHub

**Step 1: add the account.** Open your profile. Go to **External accounts**. Add an account with:

- **Platform**: pick **GitHub**.
- **URL**: your profile address, for example `https://github.com/<your-username>`.

Save. Until you finish step 2 it shows as a link only, with nothing pulled in.

**Step 2: link back from your GitHub profile.** Put your Sifa profile URL (for example `https://sifa.id/p/<your-username>`) on your GitHub profile, in either of these places:

- **Website** field, or
- one of the four **Social accounts** slots

Both are under **Settings -> Public profile**. GitHub marks both with `rel="me"`, which is what Sifa looks for. Your DID works in place of the URL if you prefer.

A link in your profile **README** or bio text does not work. Sifa reads the structured profile links, not free text.

When the link is in place, use the **Verify** button on the account in Sifa for an immediate check. You can also wait, because Sifa re-checks the link from time to time.

## Option 2: verify on Keytrace

Verify your GitHub account on [Keytrace](https://keytrace.dev). Keytrace guides you through a signed claim. That is the whole flow.

You do **not** add the account under External accounts for this route. Sifa detects the Keytrace claim and reads your pull requests on its own.

## What shows up

- **Merged pull requests you authored**, in public repositories. Sifa omits open and closed-unmerged PRs.
- Each card shows the repository, the title, the language, and the diff size.
- Sifa **groups a run of merges into one card** ("N merged pull requests") instead of one card for each merge. Open the card to see the individual PRs.
- Your merges also feed the **contribution graph** on your activity page.

## How far back, and how often

Sifa reads roughly **the last year** of merged pull requests, which is the window the contribution graph shows. Older history is not collected.

Timing:

- The first read happens when you verify.
- After that, a visit to your profile triggers a refresh, at most once a day.
- A background job fills in your full year. It needs several passes. With a long history, the feed keeps growing for a while after the first merges appear.

## Not showing up?

- **Check that the account carries a verification.** An unverified account shows as a link, and Sifa never reads it. A verified account shows a checkmark on your profile.
- **Check the link is in a profile field, not your README.** Website or Social accounts, under Settings -> Public profile.
- **Check that GitHub merged the PRs, and that the repository is public.** Sifa excludes open PRs, closed-unmerged PRs, and every private repository by design.
- **Wait a day.** The first read happens at once, and the full history follows behind it.

## Related

- [External accounts](/docs/external-accounts), for the other platforms you can link
- [Activity feed](/docs/activity-feed), for what Sifa shows and what it leaves out
