--- title: GitHub overview & authentication sidebarTitle: Overview & authentication --- ## Overview Our GitHub integration allows you to create triggers and tasks that interact with GitHub. For examples of some of the things you can do with it, check out our Jobs Showcase: Check out pre-built GitHub jobs in our showcase. ## Installing the GitHub packages ```bash npm npm install @trigger.dev/github@latest ``` ```bash pnpm pnpm install @trigger.dev/github@latest ``` ```bash yarn yarn add @trigger.dev/github@latest ``` ## Authentication GitHub supports Personal Access Tokens and OAuth. You can use either of these to authenticate with GitHub. ### Personal Access Token To create a personal access token on GitHub, login and [follow the instructions](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token). Information on the required scopes can be found [here](https://docs.github.com/en/developers/apps/scopes-for-oauth-apps). ```ts my-job.ts import { GitHub } from "@trigger.dev/github"; //create GitHub client using a token const github = new GitHub({ id: "github", token: process.env.GITHUB_TOKEN!, }); ... ``` ### OAuth To use OAuth you can connect to GitHub via the Trigger.dev [web app](https://cloud.trigger.dev). Click 'Integrations' in the side panel of any project, and configure GitHub with the ID you want to use in your job and the required [scopes](https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/scopes-for-oauth-apps). ```ts my-job.ts import { GitHub } from "@trigger.dev/github"; //create GitHub client using OAuth const github = new GitHub({ id: "github", }); ... ``` ## Triggers and Tasks Once you have set up a GitHub client, you can use it to create triggers and tasks. Trigger Jobs when events happen in GitHub, such as a new commit or a new issue. Perform tasks such as creating a new issue or a new comment.