Back to tools

AI Agent Tool

GitHub logo

GitHub

Cloud platform for version control, code collaboration, CI/CD, and software development workflows.

Project ManagementCommunity

github.com

•

One-click Login

•

Ready to use

About GitHub

GitHub is a Microsoft-owned platform providing Git-based version control, pull request workflows, issue tracking, and CI/CD via GitHub Actions. It serves individual developers, open-source projects, and enterprises. In 2026, GitHub Copilot moved to usage-based billing with AI Credits included in each plan. The Enterprise plan adds SAML SSO, advanced audit logs, and 50,000 Actions minutes per month.

AI Agent Use Cases

- Unlimited public and private Git repositories

- GitHub Actions CI/CD with plan-based monthly compute minutes

- Pull requests, code review, and branch protection rules

- GitHub Copilot AI coding assistant (usage-based billing from June 2026)

- GitHub Packages for container and package registry

- GitHub Advanced Security: secret scanning, code scanning, dependency review (Enterprise)

Available Actions

These are the specific actions that AI agents can perform with this tool

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

branchName

The name of the new branch that will be created

branchSha

The source branch that will be used to create the new branch. Defaults to the repository

Inputs

description

The description of the gist

files

The files that will be added to the gist. The key is the file name and the value is the content of the file. Ex: `{\

public

Indicates whether the gist is public or not

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

title

The title of the issue

body

The text body of the issue

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

issueNumber

The number that identifies the issue.

body

The contents of the comment

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

path

The full path of the file to create. *If the file already exists, it will be updated.* Example: `path/to/file.txt`

fileContent

The raw contents of the file. *If the file already exists, the entire file will be overwritten.*

commitMessage

The commit message for this change.

branch

The branch to use. Defaults to the repository

Inputs

repoFullname

The base repository, where the pull request will be created.

base

The base branch, where the changes will be received.

headRepo

The head repository, where the changes originate from. This can, but does not have to, be the same repository.

head

The head branch, where the changes originate from

body

The text description of the pull request.

maintainerCanModify

Indicates whether [maintainers can modify](https://docs.github.com/articles/allowing-changes-to-a-pull-request-branch-created-from-a-fork/) the pull request.

draft

Indicates whether the pull request is a draft. See \

title

The title of the pull request.

issue

An issue in the repository to convert to a pull request. The issue title, body, and comments will become the title, body, and comments on the new pull request.

Inputs

name

The name of the repository.

teamId

The id of the team that will be granted access to this repository. This is only valid when creating a repository in an organization.

description

A short description of the repository.

homepage

A URL with more information about the repository.

private

Whether the repository is private.

hasIssues

Whether issues are enabled.

hasProjects

Whether projects are enabled.

hasWiki

Whether the wiki is enabled.

hasDiscussions

Whether discussions are enabled.

autoInit

Whether the repository is initialized with a minimal README.

hasDownloads

Whether downloads are enabled.

isTemplate

Whether this repository acts as a template that can be used to generate new repositories.

Inputs

name

The name of the repository

description

A short description of the repository

homepage

A URL with more information about the repository

private

Whether the repository is private

has_issues

Whether issues are enabled

has_projects

Whether projects are enabled

has_wiki

Whether the wiki is enabled

Inputs

Name

The name of the repository to be created.

Description

A short description of the repository.

Homepage

A URL with more information about the repository.

Private

Either true to create a private repository or false to create a public one.

Has Issues

Either true to enable issues for the repository or false to disable them.

Has Projects

Either true to enable projects for the repository or false to disable them. Note: Projects are deprecated.

Has Wiki

Either true to enable the wiki for the repository or false to disable it.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

workflowId

The Id of the workflow.

ref

The git reference for the workflow. The reference can be a branch or tag name.

inputs

Input keys and values configured in the workflow file. The maximum number of properties is 10. Any default properties configured in the workflow file will be used when inputs are omitted.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

workflowId

The Id of the workflow.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

workflowId

The Id of the workflow.

Inputs

access_token

OAuth token for authenticating the user.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

commitSha

A commit SHA to retrieve

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

issueNumber

The number that identifies the issue.

Inputs

owner

The account owner of the repository. The name is not case-sensitive.

repo

The name of the repository without the .git extension. The name is not case-sensitive.

Inputs

org

The GitHub organization's username or login name

Inputs

org

The organization's name for which the details are being requested.

Inputs

owner

The account owner of the repository.

repo

The name of the repository.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

path

The file path or directory to retrieve. Defaults to the repository

mediaType

The media type of the response. [See the documentation](https://docs.github.com/en/rest/repos/contents?apiVersion=2022-11-28#get-repository-content) for more information.

branch

The branch to use. Defaults to the repository

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

prOrCommit

Whether to get reviewers for a [pull request](https://docs.github.com/en/rest/pulls/reviews#list-reviews-for-a-pull-request) or a [commit SHA](https://docs.github.com/en/rest/commits/commits#list-pull-requests-associated-with-a-commit).

reviewStates

Filter by these review states

Inputs

username

The username of the GitHub user to get information about

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

workflowRunId

The Id of the workflow Run.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

sha

SHA or branch to start listing commits from. Default: the repository

path

Only commits containing this file path will be returned

author

GitHub username or email address to use to filter by commit author.

committer

GitHub username or email address to use to filter by commit committer

since

Only show results that were last updated after the given time. This is a timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`

until

Only commits before this date will be returned. This is a timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`

maxResults

The maximum number of results to return. Defaults: `100`

Inputs

github

github

since

Only show notifications updated since the given time. This should be a timestamp in ISO 8601 format, e.g. `2018-05-16T09:30:10Z` or [another standard date/time format](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format).

Inputs

org

The name of the organization.

type

The type of repositories to list. Defaults to 'all'.

sort

The property to sort the results by.

direction

The direction of the sort. Defaults to 'asc' when using 'full_name', otherwise 'desc'.

per_page

The number of results per page (max 100).

page

Page number of the results to fetch.

Inputs

page

The page number of the results to fetch.

per_page

The number of results per page (max 100).

Inputs

owner

The account owner of the repository.

repo

The name of the repository.

per_page

The number of results per page.

page

The page number of the results to fetch.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

Inputs

username

The GitHub username whose repositories are to be listed.

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

limit

The maximum quantity to be returned.

Inputs

infoBox

infoBox

query

The query contains one or more search keywords and qualifiers. [See the documentation](https://docs.github.com/en/search-github/searching-on-github/searching-issues-and-pull-requests) for more information and examples

maxResults

The maximum amount of items to retrieve

Inputs

repoFullname

The name of the repository (not case sensitive). The format should be `owner/repo` (for example, `PipedreamHQ/pipedream`).

Inputs

Owner

Owner of the repository

Repo

Name of the repository

IssueNumber

Number of the issue to be unlocked

Inputs

infoAlert

infoAlert

gistId

The Gist Id to perform your action

description

The description of the gist

files

The gist files to be updated, renamed, or deleted. Each key must match the current filename (including extension) of the targeted gist file. For example: `hello.py`. To delete a file, set the whole file to null. For example: `hello.py : null`

Inputs

org

The name of the Github organization (not case sensitive).

repo

The repository in a organization

project

The project (V2) in a repository

item

The project item to update

status

The status to set for the item

moveToTop

If true, moves the item to the top of the column instead of the bottom.

Inputs

org

The name of the Github organization (not case sensitive).

repo

The repository in a organization

project

The project (V2) in a repository

item

The project item to update

status

The status to set for the item

moveToTop

If true, moves the item to the top of the column instead of the bottom.