GitHub Action
Drives a GitHub repository from a flow: issues, pull requests, comments, labels and releases. Fourteen operations, so “a customer reported a bug” can become an issue with the right labels and an assignee without anyone opening a browser.
Setup
Either a GitHub App installation or a personal access token. The App is the better default for anything shared: its permissions are scoped per repository and it does not stop working when the person who created it leaves.
Mode — action or AI toolkit
The Mode selector decides who drives the node. In Action mode you pick one operation and fill its fields, and the node does that every time it runs. In AI toolkit mode the operations become tools an AI Node can call, and the model chooses which one and with what arguments.
Operations
The Operation dropdown decides what the node does and which fields appear under it. These are the exact values the API validates against:
| Value | In the dropdown | What it does |
|---|---|---|
| createIssue | Create issue | Opens a new issue in the repository. |
| updateIssue | Update issue | Changes title, body, state, labels or assignees. |
| getIssue | Get issue | Reads one issue by its number. |
| commentIssue | Comment on issue | Adds a comment to an issue or a pull request. |
| listIssues | List issues | The repository's issues, filterable. Returns a list. |
| createPullRequest | Create pull request | Opens a pull request from one branch against another. |
| getPullRequest | Get pull request | Reads one pull request by its number, with its merge state. |
| mergePullRequest | Merge pull request | Merges an open pull request. |
| listPullRequests | List pull requests | The repository's pull requests, filterable. Returns a list. |
| getFile | Get file | Reads a file from the repository, already decoded. |
| createOrUpdateFile | Create or update file | Writes a file and commits the change. |
| createBranch | Create branch | Creates a branch from another one. |
| dispatchWorkflow | Run workflow | Triggers a GitHub Actions workflow. |
| searchIssues | Search issues and PRs | Searches all of GitHub with its own query syntax. Returns a list. |
Gotchas
- A pull request is an issue with extra fields. Comment and label operations work on both, and the number space is shared — issue 42 and PR 42 cannot both exist.
- Labels must already exist on the repository. Adding an unknown label does not create it.
- The token's permissions are the ceiling. A PAT without
reposcope reads public data and fails on write with a 403 that mentions permissions, not authentication. - List operations return iterable payloads — feed one to a Loop to act per issue.