Linear PR panel

Show Linear estimate on a GitHub pull request

To show a Linear issue on GitHub you do not paste the identifier into a sidebar form. Put PROJ-123 where the PR already lives — title, description, or branch — and the panel fills in estimate, status, priority, project, and assignee.

How identifiers are found

A Linear identifier is a team key of 2–10 letters, a hyphen, and a number: ENG-482, DES-12, PLAT-1003. Matching is case-insensitive; the card always shows an uppercase prefix.

  1. PR title first, for example ENG-482 Inject read-only panel.
  2. Then the description, including later identifiers in the same body.
  3. Then the branch name, for example feature/eng-482-login or ake/ENG-482.

Duplicates collapse. The first five identifiers render as cards; the rest wait behind “Show N more identifiers”. GitHub in-page navigation (Turbo / pjax) re-runs the parse so switching PRs does not leave a stale card.

What the card shows

For each readable issue: title, status with a color dot, priority, estimate in points, project name, assignee, and “Open in Linear”. Missing estimate is omitted rather than faked. If the key cannot see the issue, you get a readable error — not a blank box.

Linear API key on GitHub, privately

Showing live fields requires a Linear Personal API Key from linear.app/settings/api. Create a dedicated key, paste it in Settings, and use “Test connection”. The key never leaves Chrome except as the Authorization header to api.linear.app. It does not go to billing.lineargithubpanel.com.

Personal API Keys inherit the Linear account’s permissions; Linear does not currently offer a read-only key scope. Sample mode draws canned cards without calling Linear, so you can see the Linear PR panel before you paste a key.

Open the settings demo Why the official integration is not a panel