> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atako.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# GitHub

> Connect GitHub to your Atako agents — 23 read and 14 write actions.

Let your agents work with your GitHub repositories — read code, manage issues, branches, pull requests, releases and workflow runs on your behalf.

## Connection

* **Authentication**: API key (Personal Access Token).

<Note>
  GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token. Grant "Contents: Read and write", "Issues: Read and write", "Pull requests: Read and write" and "Actions: Read", then copy the token (starts with github\_pat\_ or ghp\_).

  See [GitHub's documentation](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens).
</Note>

## Read actions (23)

| Action                      | Description                                                                           |
| --------------------------- | ------------------------------------------------------------------------------------- |
| `get_branch`                | Fetch a branch — head commit and protection status.                                   |
| `get_commit`                | Fetch a commit by SHA, branch or tag name, including its diff stats.                  |
| `get_file_contents`         | Read a file or directory listing at a path (file content is base64-encoded).          |
| `get_issue`                 | Fetch a single issue by number.                                                       |
| `get_job_logs_download_url` | Get the logs of a workflow job (GitHub redirects to a short-lived download URL).      |
| `get_label`                 | Fetch a label by name.                                                                |
| `get_pull_request`          | Fetch a pull request — status, mergeability, branches and stats.                      |
| `get_release`               | Fetch a release by its numeric id.                                                    |
| `get_repository`            | Fetch a repository — visibility, default branch, topics, permissions.                 |
| `get_review`                | Fetch a single review on a pull request.                                              |
| `get_tag_ref`               | Fetch the git reference for a tag name.                                               |
| `get_workflow`              | Fetch a GitHub Actions workflow by numeric id.                                        |
| `get_workflow_run`          | Fetch a workflow run — status, conclusion and timing.                                 |
| `list_branches`             | List branches in a repository.                                                        |
| `list_commits`              | List commits on a repository, optionally filtered by branch, path or author.          |
| `list_issue_comments`       | List comments on an issue or pull request.                                            |
| `list_issues`               | List issues in a repository, filterable by state and labels.                          |
| `list_pull_requests`        | List pull requests in a repository, filterable by state and base branch.              |
| `list_releases`             | List releases of a repository, newest first.                                          |
| `list_repos`                | List repositories the authenticated user can access.                                  |
| `list_workflow_runs`        | List workflow runs in a repository, filterable by branch, event and status.           |
| `search_issues`             | Search issues and pull requests with a GitHub search query (e.g. "repo:o/r is:open"). |
| `search_repositories`       | Search repositories with a GitHub search query (e.g. "topic:ai language:ts").         |

## Write actions (14)

| Action                  | Description                                                             |
| ----------------------- | ----------------------------------------------------------------------- |
| `add_issue_comment`     | Add a comment to an issue or pull request.                              |
| `create_branch`         | Create a branch pointing at a commit SHA.                               |
| `create_issue`          | Open an issue in a repository.                                          |
| `create_label`          | Create a label in a repository (color is a 6-char hex without #).       |
| `create_or_update_file` | Create or update a file with a commit (content must be base64-encoded). |
| `create_pull_request`   | Open a pull request from a head branch into a base branch.              |
| `create_release`        | Create a release (and its git tag if it does not exist yet).            |
| `create_review_request` | Request reviews on a pull request from users or teams.                  |
| `create_tag_object`     | Create an annotated tag object pointing at a commit.                    |
| `delete_file`           | Delete a file with a commit (requires the current blob SHA).            |
| `delete_label`          | Delete a label from a repository.                                       |
| `delete_release`        | Delete a release (does not delete the underlying git tag).              |
| `merge_pull_request`    | Merge a pull request using merge, squash or rebase.                     |
| `update_issue`          | Update an issue — title, body, state or labels.                         |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.
