| Pull requests | |
checkout_pr | Checks out a PR branch, including from a fork, and returns a formatted diff. |
create_pull_request | Creates a pull request from the current branch. |
update_pull_request_body | Updates the description of an existing pull request. |
get_pull_request | Gets PR metadata: title, body, state, branches, author, labels and linked issues. |
| Code reviews | |
list_pull_request_reviews | Lists all reviews on a pull request. |
get_review_comments | Gets full review thread context. |
create_pull_request_review | Submits a review (comment, approve or request changes) with optional inline comments and suggestions. |
reply_to_review_comment | Replies to a review comment thread. |
resolve_review_thread | Marks a review thread as resolved. |
| Issues and labels | |
create_issue | Creates an issue with optional labels and assignees. |
get_issue | Gets issue metadata and current state. |
get_issue_comments | Gets the issue body and all comments. |
get_issue_events | Gets timeline events such as cross-references and linked commits. |
search_issues | Finds open or closed issues in the repository by keyword. Issue runs only. |
find_similar_issues | Finds older issues that may be duplicates. Issue runs with issue indexing, on paid plans. |
create_issue_comment | Adds a comment to an issue or pull request. |
edit_issue_comment | Edits an existing comment. |
close_current | Closes the issue or pull request the run was triggered on, with a reason. Only for its author or someone with triage access or above. |
reopen_current | Reopens the issue or pull request the run was triggered on, with the same rule. |
add_labels | Adds existing labels to an issue or pull request. |
remove_labels | Removes labels from an issue or pull request. |
| CI | |
get_check_suite_logs | Gets the logs of a failed check suite, with an index of the relevant lines and an excerpt. |
| Git | |
git | Runs local git commands such as status, diff, add and commit. |
git_fetch | Fetches refs from the remote. |
push_branch | Pushes a branch, subject to the repository’s push setting. |
commit_changes | Commits working-tree changes straight to the remote as a signed commit. Only when signed commits are on. |
push_tags | Pushes a tag. Requires full push access. |
delete_branch | Deletes a remote branch other than the default branch. Requires full push access. |
get_commit_info | Gets commit metadata and a formatted diff. |
| Cross-repo | |
list_repos | Lists the repositories a cross-repo run may use, with each one’s access level. |
checkout_repo | Clones another repository from that list into a working directory. Read-only repositories cannot be pushed. |
| Shell | |
shell | Runs shell commands in the sandbox, in the foreground or the background. |
kill_background | Stops a background process, such as a dev server. |
start_dependency_installation | Starts installing the project’s dependencies in the background. |
await_dependency_installation | Waits for the dependency installation and returns its result. |
| GitHub CLI | |
gh | Runs the GitHub CLI against this repository. Only when the run was triggered by someone with triage access or above; its token can read code and write issues and pull requests, and cannot push or merge. |
| Utilities | |
upload_file | Uploads a local file, up to 10 MB, and returns a permanent public URL. |
set_output | Sets the action’s result output for later workflow steps. Only in custom workflows. |