Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.pipeshub.com/llms.txt

Use this file to discover all available pages before exploring further.

GitHub Logo

GitHub Toolset

Repositories, issues, pull requests, and code review

ReadyDeveloper Tools

Overview

The GitHub toolset enables AI agents to interact with your GitHub account and organizations. Agents can create and update repositories, manage issues, open and review pull requests, add comments, and merge branches — all through natural language. This toolset is ideal for automating engineering workflows and bringing code review into conversational AI experiences.

Key Capabilities

  • Repository management - Create, inspect, and list repositories
  • Issue tracking - Create, update, close, comment on issues
  • Pull requests - Open, list, merge, and inspect PR commits and file diffs
  • Code review - Leave line-level review comments and submit approvals or change requests
  • Search - Find repositories by keyword, language, or stars
  • User and org lookup - Read profile data for users and organizations

Available Tools

Repositories

ToolDescription
create_repositoryCreate a new repository (private by default)
get_repositoryGet repository details (description, stars, forks, default branch)
list_repositoriesList repositories for a user or org with pagination
search_repositoriesSearch repositories by keyword, language, or stars
get_ownerGet a user or organization profile

Issues

ToolDescription
create_issueCreate an issue with title, body, assignees, and labels
get_issueGet a single issue by number
list_issuesList issues filtered by state, labels, or assignee
update_issueUpdate title, body, state, assignees, or labels
close_issueClose an issue
list_issue_commentsGet all comments on an issue
get_issue_commentGet a single comment by ID
create_issue_commentPost a comment on an issue (supports Markdown)

Pull Requests

ToolDescription
create_pull_requestOpen a PR between head and base branches (supports draft mode)
get_pull_requestGet PR details plus conversation comments
list_pull_requestsList PRs filtered by state, head, or base
merge_pull_requestMerge a PR using merge, squash, or rebase
get_pull_request_commitsList commits in a PR with the last commit SHA
get_pull_request_file_changesGet per-file diffs with configurable context lines

Code Review

ToolDescription
list_pull_request_commentsList line-level and file-level review comments
create_pull_request_review_commentAdd a review comment on a specific file and line
get_pull_request_reviewsGet PR reviews (approved, changes requested, comment)
create_pull_request_reviewSubmit a review (approve, request changes, or comment)

Configuration Guide

Step 1: Open GitHub Developer settings

  1. Sign in to GitHub.
  2. Click your profile picture in the top-right corner and choose Settings.
  3. In the left sidebar, scroll down and click Developer settings.
  4. Select OAuth Apps, then click New OAuth App (or Register a new application if this is your first one).
Create a new GitHub OAuth App
To create an OAuth App under a GitHub organization instead of your personal account, open the organization’s Settings → Developer settings → OAuth Apps. You need admin access to the organization.

Step 2: Get the Redirect URI from PipesHub

Before filling in the GitHub form, copy the Redirect URI from PipesHub so the values match exactly.
  1. In PipesHub, go to Workspace SettingsActions.
  2. Find GitHub in the list and click + Setup (or Configure).
  3. Copy the Redirect URI shown in the dialog.
PipesHub Configure GitHub dialog showing Redirect URI

Step 3: Register the OAuth App

In the GitHub Register a new OAuth application form:
FieldValue
Application nameFor example, PipesHub GitHub Toolset
Homepage URLYour PipesHub URL (for example, https://your-domain.com)
Application descriptionOptional — short description of the integration
Authorization callback URLPaste the Redirect URI you copied from PipesHub
Click Register application.
Register a new OAuth application on GitHub
GitHub OAuth Apps support only one Authorization callback URL. If you need the toolset to work across multiple PipesHub environments, create a separate OAuth App for each.

Step 4: Copy Client ID and generate a Client Secret

After registration, GitHub shows the OAuth App settings page with your Client ID visible.
  1. Copy the Client ID — used as Client ID in PipesHub.
  2. Under Client secrets, click Generate a new client secret.
  3. Copy the secret immediately — used as Client Secret in PipesHub.
Copy GitHub Client ID and generate Client Secret
The Client Secret is shown only once. Copy it before leaving the page — you cannot view it again later, only regenerate it.

Step 5: Required scopes

PipesHub requests the following scopes during the OAuth consent flow. You don’t configure them on the GitHub side — they are requested automatically when the user authorizes.
ScopePurpose
repoFull access to repositories, issues, and pull requests (including private repos)
public_repoRead/write access to public repositories (fallback when full repo isn’t granted)
read:orgRead organization membership and teams
read:userRead the authenticated user’s profile
user:emailRead the authenticated user’s email address
If your GitHub organization has OAuth App access restrictions enabled (the default for new orgs), members may need to request approval from an organization owner before the toolset can access org-owned repositories.

Step 6: Configure the GitHub toolset in PipesHub

  1. In PipesHub, return to Workspace SettingsActions.
  2. Find GitHub and open setup / configuration (+ Setup or Configure).
  3. Confirm the Redirect URI in the dialog matches the Authorization callback URL you registered in GitHub in Step 3.
  4. Paste your Client ID and Client Secret, then save the instance.
Enter GitHub Client ID and Secret in PipesHub

Step 7: Authenticate the GitHub toolset

Authentication uses the same OAuth flow in either location:
  • Admins can authenticate the shared instance directly under Workspace Settings → Actions.
  • Users can authenticate their own personal instance under Your actions (in the Personal section of the sidebar).
  1. On the GitHub tile (in Actions or Your actions), click Authenticate with OAuth.
  2. A popup opens to GitHub’s authorization page — review the requested scopes and click Authorize.
  3. The popup closes and the GitHub tile now shows Authenticated status.
Authenticate GitHub toolset with OAuth
GitHub authorization — review and authorize

Step 8: Add GitHub to an agent

  1. Go to the Home page.
  2. Next to Agents, click + to create a new agent.
  3. Give the agent a name, drag the GitHub toolset onto the canvas, connect it to the Agent Core node with your model and chat input/output, then create the agent.
Agent builder with GitHub toolset connected

FAQ

AspectGitHub ConnectorGitHub Toolset
PurposeSync and index repositories, issues, and PRs for searchEnable agents to perform actions on GitHub
Data FlowOne-way (import data into PipesHub)Two-way (read and write via API)
When to UseQuery/search code, issues, and PR historyOpen issues, merge PRs, leave review comments
Example: Use the GitHub Connector to search past issues and PRs across your repos. Use the GitHub Toolset to let agents file bugs, merge PRs, or post review comments on your behalf.
PipesHub’s GitHub toolset uses an OAuth App because the integration acts on behalf of a user. GitHub Apps offer finer-grained per-repository permissions and short-lived tokens, but require installation on each repo or organization. For most teams, the OAuth App flow is simpler to set up.
GitHub organizations can restrict which OAuth Apps access their data. If authorization fails with an organization access warning, ask an organization owner to approve the app under Organization Settings → Third-party access → OAuth app policy.

Usage Tips

How do I create an issue?
Ask your agent to “open an issue in acme/widgets titled ‘Login page 500 error’ and assign it to alice”. The agent fills in title, body, assignees, and labels.
How do I review a pull request?
Ask to “review PR #57 and approve it with a comment” or “request changes on PR #91 saying the tests need updating”. The agent submits the review in the right state.
How do I leave a line-level comment?
Ask to “comment on line 42 of src/auth.py in PR #88 saying this should be a constant”. The agent attaches the comment to the specific file and line.