Skip to Content
ResourcesIntegrationsDeveloper ToolsGitHub

GitHub

Service domainSOURCE CODE
GitHub icon
Arcade Optimized

Arcade.dev LLM tools for Github

Author:Arcade
Version:5.0.0
Auth:User authorization via the Github auth provider
43tools
43require secrets

GitHub Toolkit

The GitHub toolkit connects Arcade to GitHub, enabling LLM agents to read and write across repositories, issues, pull requests, projects, and code search using the authenticated user's identity.

Capabilities

  • Repository & file management: Create branches, read file contents (with line-range support), create or overwrite files with explicit mode control, update specific line blocks, list org repositories, and inspect repository activity history.
  • Issue & label workflows: Create, update, and comment on issues; add issues to Projects V2; add or remove labels with fuzzy matching; list repository labels.
  • Pull request lifecycle: Create, update, merge, and inspect PRs; check merge readiness; list commits; manage reviewers and assignments; submit, comment on, and resolve review threads with diff-aware line validation.
  • Projects V2: List projects across org/user scopes, enumerate project fields and items, and search for specific project items.
  • Discovery & activity: Search code with inline match fragments, search accessible repos with fuzzy matching, retrieve the authenticated user's open items and recent activity, get review workload, list collaborators, and look up stargazers or star/unstar repos.
  • Identity: Resolve the authenticated user's profile, organizations, and teams via WhoAmI.

OAuth

This toolkit uses OAuth 2.0 via GitHub as the identity and authorization provider. See the Arcade GitHub auth provider docs for setup instructions.

Secrets

  • GITHUB_SERVER_URL — The base URL of the GitHub instance the toolkit should target. For public GitHub this is https://github.com (often the default), but self-hosted GitHub Enterprise Server deployments expose a different hostname (e.g., https://github.example.com). Set this secret to your enterprise instance's root URL when targeting a self-hosted instance. Obtain the value from your GitHub Enterprise administrator or your organization's internal documentation.

Secrets are configured via the Arcade tool secrets guide and can be managed at https://api.arcade.dev/dashboard/auth/secrets.

Available tools(43)

43 of 43 tools
Operations
Behavior
Tool nameDescriptionSecrets
Assign a user to a pull request with intelligent search and fuzzy matching.
1
Check if a pull request is ready to merge without attempting the merge.
1
Count the number of stargazers (stars) for a GitHub repository.
1
Create a new branch in a repository.
1
Create a new file or overwrite an existing file in a repository. The explicit mode parameter reduces accidental data loss: the default CREATE mode refuses to touch existing files, while OVERWRITE must be chosen intentionally.
1
Create an issue in a GitHub repository. Optionally add the created issue to a project by specifying add_to_project_number and add_to_project_scope.
1
Create a comment on an issue in a GitHub repository.
1
Create a pull request in a GitHub repository.
1
Create a reply to a review comment for a pull request. Optionally resolve the conversation thread after replying by setting resolve_thread=True and providing the thread_id (GraphQL Node ID).
1
Create a review comment for a pull request in a GitHub repository. IMPORTANT: Line numbers must be part of the diff (changed lines only). GitHub's API requires line numbers that exist in the pull request diff, not just any line in the file. If the line wasn't changed in the PR, the comment will fail with 422 error. Line comments require start_line and end_line. When subject_type is omitted, providing either line parameter selects a line comment; otherwise the comment applies to the whole file. File comments cannot include line-specific parameters. If the commit_id is not provided, the latest commit SHA from the PR will be used. TIP: Use subject_type='file' to comment on the entire file if unsure about line positions.
1
Get the contents of a file in a repository. Returns the decoded content (if text) along with metadata like SHA, size, and line count. For large files, use start_line and end_line to retrieve specific line ranges.
1
Get a specific issue from a GitHub repository.
1
Get details of a pull request in a GitHub repository.
1
Get a repository. Retrieves detailed information about a repository using the GitHub API.
1
Get pull requests awaiting review by the authenticated user. Returns PRs where user is requested as reviewer and PRs user has recently reviewed.
1
Get user's currently open pull requests and issues across all repositories. Returns open PRs and issues authored by the authenticated user.
1
Get the authenticated user's recent pull requests, reviews, issues, and commits. Returns PRs they authored, merged PRs, PRs they reviewed, issues they opened, and commits pushed
1
List issues in a GitHub repository.
1
List repositories for the specified organization.
1
List fields for a Projects V2 project. Returns all custom fields configured for the project, including field types and available options for select/iteration fields.
1
List items for a Projects V2 project with optional filtering.
1
List Projects V2 across organization or user scopes.
1
List commits (from oldest to newest) on a pull request in a GitHub repository.
1
List pull requests in a GitHub repository. By default returns newest pull requests first (direction=DESC). Organization-wide search returns GitHub's reduced issue-search summary. It preserves the merged timestamp but does not include repository-list details such as head/base metadata or detailed mergeability and reviewer data.
1
List repository activities. Retrieves a detailed history of changes to a repository, such as pushes, merges, force pushes, and branch changes, and associates these changes with commits and users.
1
Page 1 of 2(25 of 43)
Last updated on