GITHUB MCP Tools

Total Tools: 77

Quick Reference

# List all github tools
dmtools list | jq '.tools[] | select(.name | startswith("github_"))'

# Example usage
dmtools github_test [arguments]

Usage in JavaScript Agents

// Direct function calls for github tools
const result = github_test(...);
const result = github_list_prs(...);
const result = github_list_prs_filtered(...);

Available Tools

Tool NameDescriptionParameters
github_add_collaboratorAdd a collaborator to a GitHub repositoryowner (string, required)
repo (string, required)
username (string, required)
permission (string, required)
github_add_inline_commentCreate a new inline code review comment on a specific file and line in a GitHub pull request. To comment on a range of lines, provide both startLine and line. Side is ‘RIGHT’ for new code (default) or ‘LEFT’ for old code.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
path (string, required)
line (string, required)
text (string, required)
commitId (string, optional)
startLine (string, optional)
side (string, optional)
github_add_labelsAdd labels to a GitHub issueowner (string, optional)
repo (string, optional)
number (number, optional)
labels (array, required)
key (string, optional)
github_add_pr_commentAdd a comment to a GitHub pull request discussion.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
text (string, required)
github_add_pr_labelAdd a label to a GitHub pull request.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
label (string, required)
github_assign_issueAssign a GitHub issue to a useruser (string, required)
owner (string, optional)
repo (string, optional)
number (number, optional)
key (string, optional)
github_close_issueClose a GitHub issueowner (string, optional)
repo (string, optional)
number (number, optional)
key (string, optional)
github_close_prClose a GitHub pull requestowner (string, required)
repo (string, required)
number (number, required)
github_create_branchCreate a new branch from an existing commit SHAowner (string, required)
repo (string, required)
branch (string, required)
from_sha (string, required)
github_create_check_runCreate a GitHub Check Run — a rich CI check with progress, annotations, and a full log visible in the PR ‘Checks’ tab. Use status=in_progress when starting, then call github_update_check_run to complete it.workspace (string, required)
repository (string, required)
name (string, required)
headSha (string, required)
status (string, optional)
title (string, optional)
summary (string, optional)
text (string, optional)
externalId (string, optional)
github_create_commentCreate a comment on a GitHub issue or pull request (PRs are issues upstream).workspace (string, optional)
repository (string, optional)
pullRequestId (string, optional)
body (string, required)
key (string, optional)
github_create_commit_statusCreate a commit status (the colored dot in PR checks). Use state=pending when AI analysis starts, success/failure/error when complete. The ‘context’ field acts as the status name and must be unique per check.workspace (string, required)
repository (string, required)
sha (string, required)
state (string, required)
description (string, optional)
context (string, optional)
targetUrl (string, optional)
github_create_issueCreate a GitHub issueowner (string, optional)
repo (string, optional)
title (string, required)
body (string, optional)
key (string, optional)
github_create_prCreate a GitHub pull requestowner (string, required)
repo (string, required)
title (string, required)
head (string, required)
base (string, required)
github_create_releaseCreate a GitHub release for a tagowner (string, required)
repo (string, required)
tag_name (string, required)
body (string, optional)
github_create_reviewCreate a review on a GitHub pull requestowner (string, required)
repo (string, required)
number (number, required)
body (string, required)
event (string, required)
github_delete_branchDelete a branch in a GitHub repositoryowner (string, required)
repo (string, required)
branch (string, required)
github_delete_pr_commentDelete a comment on a GitHub pull request or issue by its comment ID.workspace (string, required)
repository (string, required)
commentId (string, required)
github_delete_release_assetDelete a GitHub release asset by its asset ID. Use github_list_release_assets to find asset IDs.workspace (string, required)
repository (string, required)
assetId (string, required)
github_disable_workflowDisable a GitHub Actions workflow by idowner (string, required)
repo (string, required)
workflow_id (number, required)
github_dismiss_pr_reviewDismiss a previously submitted GitHub pull request review (e.g. clear a REQUEST_CHANGES decision once the issues have been fixed and a new review approves). Requires repository admin rights, or being listed as allowed to dismiss reviews, on protected branches.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
reviewId (string, required)
message (string, required)
github_dismiss_reviewDismiss a review on a GitHub pull requestowner (string, required)
repo (string, required)
number (number, required)
review_id (number, required)
message (string, required)
github_enable_workflowEnable a GitHub Actions workflow by idowner (string, required)
repo (string, required)
workflow_id (number, required)
github_get_check_runsList check runs for a GitHub commit refowner (string, required)
repo (string, required)
ref (string, required)
github_get_codeownersGet the CODEOWNERS file from a GitHub repositoryowner (string, required)
repo (string, required)
github_get_commitGet a GitHub commit by SHAowner (string, required)
repo (string, required)
sha (string, required)
github_get_commit_check_runsGet all check runs (CI/CD status checks) for a commit SHA in a GitHub repository. Returns details about each check including status, conclusion, and output.workspace (string, required)
repository (string, required)
commitSha (string, required)
github_get_commits_from_branchesFetch commits from all branches whose name matches a given regex pattern, aggregated and de-duplicated. Useful for collecting commits from feature/, release/ or similar groups of branches without specifying each branch individually.workspace (string, required)
repository (string, required)
branchNameRegex (string, required)
since (string, optional)
github_get_file_contentGet the contents of a file in a GitHub repositoryowner (string, required)
repo (string, required)
path (string, required)
ref (string, optional)
github_get_issueGet details of a GitHub issue including title, description, state, author, labels, assignees, and comments count.workspace (string, optional)
repository (string, optional)
issueNumber (string, optional)
key (string, optional)
github_get_job_logsGet the raw text logs for a specific GitHub Actions job. Returns the complete log output from all steps in the job.workspace (string, required)
repository (string, required)
jobId (string, required)
github_get_or_create_draft_releaseFind an existing draft release by tag or name, or create one if it does not exist. Useful for a stable PR attachment storage release.workspace (string, required)
repository (string, required)
tagName (string, required)
releaseName (string, optional)
targetCommitish (string, optional)
body (string, optional)
github_get_prGet details of a GitHub pull request including title, description, status, author, branches, and merge info.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
github_get_pr_activitiesGet all activities for a GitHub pull request including reviews (approvals, change requests), inline code comments, and general discussion comments.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
github_get_pr_commentsGet all comments for a GitHub pull request or issue, including both inline code review comments and general discussion comments. Results are sorted by creation date.workspace (string, optional)
repository (string, optional)
pullRequestId (string, optional)
key (string, optional)
github_get_pr_conversationsGet all review conversations (inline code comment threads) for a GitHub pull request. Groups inline code review comments into threads showing root comment and replies. Also includes general PR discussion comments as separate entries.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
github_get_pr_diffGet the diff statistics for a GitHub pull request (files changed, additions, deletions). Requires IS_READ_PULL_REQUEST_DIFF env/config to be enabled.workspace (string, required)
repository (string, required)
pullRequestID (string, required)
github_get_pr_diff_textGet the raw unified diff text for a GitHub pull request. Requires IS_READ_PULL_REQUEST_DIFF env/config to be enabled.workspace (string, required)
repository (string, required)
pullRequestID (string, required)
github_get_pr_filesList the files changed in a GitHub pull requestowner (string, required)
repo (string, required)
number (number, required)
github_get_pr_review_threadsGet all review threads for a GitHub pull request via GraphQL, including each thread’s node ID (needed for resolving), resolved status, file path, line, and comments. Use the returned thread ‘id’ with github_resolve_pr_thread.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
github_get_releaseGet a GitHub release by tag nameowner (string, required)
repo (string, required)
tag (string, required)
github_get_repoGet a GitHub repository by owner and nameowner (string, required)
repo (string, required)
github_get_treeGet a GitHub git tree recursively by refowner (string, required)
repo (string, required)
ref (string, required)
github_get_workflow_runGet details of a specific GitHub Actions workflow run by ID. Returns status, conclusion, logs URL, and timing information.workspace (string, required)
repository (string, required)
runId (string, required)
github_get_workflow_run_jobsGet all jobs for a specific GitHub Actions workflow run. Shows individual job statuses, steps, and logs URLs.workspace (string, required)
repository (string, required)
runId (string, required)
github_get_workflow_run_logsDownload and extract complete logs for all jobs in a GitHub Actions workflow run. Returns full untruncated log content from the ZIP archive GitHub provides.workspace (string, required)
repository (string, required)
runId (string, required)
github_get_workflow_runsList GitHub Actions workflow runs for a repositoryowner (string, required)
repo (string, required)
github_get_workflowsList GitHub Actions workflows in a repositoryowner (string, required)
repo (string, required)
github_list_branchesList branches in a GitHub repositoryowner (string, required)
repo (string, required)
github_list_commitsList commits in a GitHub repositoryowner (string, required)
repo (string, required)
sha (string, optional)
github_list_pr_reviewsList all formal reviews (APPROVE/REQUEST_CHANGES/COMMENT decisions submitted via github_submit_pr_review or by human reviewers) for a GitHub pull request, in chronological order.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
github_list_prsList pull requests in a GitHub repository by state. State can be ‘open’, ‘closed’, or ‘merged’. Returns first page (up to 100) of pull requests.workspace (string, required)
repository (string, required)
state (string, required)
github_list_prs_filteredList pull requests in a GitHub repository filtered by a regex pattern on the PR title. Fetches all PRs matching the given state and returns only those whose title matches the regex. Useful for large repos to narrow down results without loading entire history.workspace (string, required)
repository (string, required)
state (string, required)
titleRegex (string, required)
github_list_release_assetsList all assets attached to a GitHub release. Returns a JSON array of asset objects including id, name, size, and browser_download_url.workspace (string, required)
repository (string, required)
releaseId (string, required)
github_list_releasesList GitHub releases for a repositoryowner (string, required)
repo (string, required)
github_list_workflow_runsList GitHub Actions workflow runs for a repository, optionally filtered by status or specific workflow file. Use status=‘failure’ to get all failed runs.workspace (string, required)
repository (string, required)
status (string, optional)
workflowId (string, optional)
perPage (number, optional)
page (number, optional)
created (string, optional)
github_merge_prMerge a GitHub pull request. Supports merge, squash, and rebase merge methods.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
mergeMethod (string, optional)
commitTitle (string, optional)
commitMessage (string, optional)
github_move_issue_to_statusMove a GitHub issue to a status. ‘done’/‘closed’ close the issue, ‘open’/‘reopened’ reopen it; any other status is applied as an issue label.statusName (string, required)
owner (string, optional)
repo (string, optional)
number (number, optional)
key (string, optional)
github_remove_collaboratorRemove a collaborator from a GitHub repositoryowner (string, required)
repo (string, required)
username (string, required)
github_remove_labelRemove a label from a GitHub issueowner (string, optional)
repo (string, optional)
number (number, optional)
label (string, required)
key (string, optional)
github_remove_pr_labelRemove a label from a GitHub pull request.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
label (string, required)
github_reopen_issueReopen a closed GitHub issueowner (string, optional)
repo (string, optional)
number (number, optional)
key (string, optional)
github_reopen_prReopen a GitHub pull requestowner (string, required)
repo (string, required)
number (number, required)
github_reply_to_pr_threadReply to an existing inline code review comment thread in a GitHub pull request. Use the comment ID of the root comment (or any comment) in the thread as inReplyToId.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
inReplyToId (string, required)
text (string, required)
github_repository_dispatchTrigger a GitHub repository dispatch event. Workflows listening to ‘on: repository_dispatch’ with the matching event_type will be triggered.workspace (string, required)
repository (string, required)
eventType (string, required)
clientPayload (string, optional)
github_request_reviewersRequest reviewers on a GitHub pull requestowner (string, required)
repo (string, required)
number (number, required)
reviewers (array, required)
github_rerun_workflowRe-run a GitHub Actions workflow run by idowner (string, required)
repo (string, required)
run_id (number, required)
github_resolve_pr_threadResolve a review thread in a GitHub pull request. Requires the thread’s GraphQL node ID, which can be obtained from github_get_pr_review_threads (the ‘id’ field of each thread).threadId (string, required)
github_search_issuesSearch GitHub issues (and pull requests) with a query string. Returns a JSON object with ‘items’.query (string, required)
workspace (string, optional)
repository (string, optional)
github_submit_pr_reviewSubmit a formal GitHub pull request review (a native reviewer decision, distinct from labels/comments). event=APPROVE marks the PR as approved by this reviewer; event=REQUEST_CHANGES formally blocks the PR (visible as ‘Changes requested’, and enforced by branch protection rules requiring approvals) until a new review or github_dismiss_pr_review clears it; event=COMMENT leaves a review without approving or blocking. ‘body’ is required for REQUEST_CHANGES and COMMENT.workspace (string, required)
repository (string, required)
pullRequestId (string, required)
event (string, required)
body (string, optional)
github_testTest GitHub connectivity by fetching the current user’s profileNone
github_trigger_workflowTrigger a specific GitHub Actions workflow by filename (workflow dispatch). The workflow must have ‘on: workflow_dispatch’ configured.workspace (string, required)
repository (string, required)
workflowId (string, required)
inputs (string, optional)
ref (string, optional)
github_update_check_runUpdate an existing GitHub Check Run — set it to completed with success/failure conclusion, update summary and detailed text. Call this after github_create_check_run to finalize the check.workspace (string, required)
repository (string, required)
checkRunId (string, required)
status (string, required)
conclusion (string, optional)
title (string, optional)
summary (string, optional)
text (string, optional)
github_update_fileCreate or update a file in a GitHub repositoryowner (string, required)
repo (string, required)
path (string, required)
content (string, required)
message (string, required)
sha (string, required)
github_update_prUpdate the title or body of a GitHub pull request. Only the provided fields are changed.owner (string, required)
repo (string, required)
number (number, required)
title (string, optional)
body (string, optional)
github_update_pr_commentUpdate (edit) an existing comment on a GitHub pull request or issue by its comment ID.workspace (string, required)
repository (string, required)
commentId (string, required)
text (string, required)
github_upload_release_assetUpload a local file as a GitHub release asset. Returns the uploaded asset metadata including browser_download_url. Set overwrite=true to automatically delete an existing asset with the same name before uploading.workspace (string, required)
repository (string, required)
releaseId (string, required)
filePath (string, required)
assetName (string, optional)
contentType (string, optional)
label (string, optional)
overwrite (string, optional)

Detailed Parameter Information

github_add_collaborator

Add a collaborator to a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • username (string) Required

    • The collaborator login to add
    • Example: octocat
  • permission (string) Required

    • The permission level: push, pull, admin, maintain, or triage
    • Example: push

Example:

dmtools github_add_collaborator "value" "value"
// In JavaScript agent
const result = github_add_collaborator("owner", "repo");

github_add_inline_comment

Create a new inline code review comment on a specific file and line in a GitHub pull request. To comment on a range of lines, provide both startLine and line. Side is ‘RIGHT’ for new code (default) or ‘LEFT’ for old code.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74
  • path (string) Required

    • The relative file path in the repository
    • Example: src/main/java/com/example/Foo.java
  • line (string) Required

    • The line number in the file to comment on
    • Example: 42
  • text (string) Required

    • The comment text (Markdown supported)
    • Example: This should be refactored.
  • commitId (string) Optional

    • The SHA of the commit to comment on. If empty, uses the PR head commit.
    • Example: abc123def456
  • startLine (string) Optional

    • For multi-line comments: the first line of the range. Must be less than line.
    • Example: 40
  • side (string) Optional

    • Which diff side to comment on: RIGHT (new code, default) or LEFT (old code)
    • Example: RIGHT

Example:

dmtools github_add_inline_comment "value" "value"
// In JavaScript agent
const result = github_add_inline_comment("workspace", "repository");

github_add_labels

Add labels to a GitHub issue

Parameters:

  • owner (string) Optional

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Optional

    • The repository name
    • Example: dmtools
  • number (number) Optional

    • The issue number
    • Example: 42
  • labels (array) Required

    • The label names to add
    • Example: ["bug","help wanted"]
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to owner/repo/number)
    • Example: IstiN/dmtools#42

Example:

dmtools github_add_labels "value" "value"
// In JavaScript agent
const result = github_add_labels("owner", "repo");

github_add_pr_comment

Add a comment to a GitHub pull request discussion.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74
  • text (string) Required

    • The comment text to add
    • Example: Looks good!

Example:

dmtools github_add_pr_comment "value" "value"
// In JavaScript agent
const result = github_add_pr_comment("workspace", "repository");

github_add_pr_label

Add a label to a GitHub pull request.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74
  • label (string) Required

    • The label name to add to the pull request
    • Example: bug

Example:

dmtools github_add_pr_label "value" "value"
// In JavaScript agent
const result = github_add_pr_label("workspace", "repository");

github_assign_issue

Assign a GitHub issue to a user

Parameters:

  • user (string) Required

    • The assignee GitHub login
    • Example: octocat
  • owner (string) Optional

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Optional

    • The repository name
    • Example: dmtools
  • number (number) Optional

    • The issue number
    • Example: 42
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to owner/repo/number)
    • Example: IstiN/dmtools#42

Example:

dmtools github_assign_issue "value" "value"
// In JavaScript agent
const result = github_assign_issue("user", "owner");

github_close_issue

Close a GitHub issue

Parameters:

  • owner (string) Optional

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Optional

    • The repository name
    • Example: dmtools
  • number (number) Optional

    • The issue number
    • Example: 42
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to owner/repo/number)
    • Example: IstiN/dmtools#42

Example:

dmtools github_close_issue "value" "value"
// In JavaScript agent
const result = github_close_issue("owner", "repo");

github_close_pr

Close a GitHub pull request

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • number (number) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_close_pr "value" "value"
// In JavaScript agent
const result = github_close_pr("owner", "repo");

github_create_branch

Create a new branch from an existing commit SHA

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • branch (string) Required

    • The name of the new branch
    • Example: feature/x
  • from_sha (string) Required

    • The commit SHA to branch from
    • Example: abc123

Example:

dmtools github_create_branch "value" "value"
// In JavaScript agent
const result = github_create_branch("owner", "repo");

github_create_check_run

Create a GitHub Check Run — a rich CI check with progress, annotations, and a full log visible in the PR ‘Checks’ tab. Use status=in_progress when starting, then call github_update_check_run to complete it.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • name (string) Required

    • The name of the check run displayed in the PR
    • Example: dmtools / pr-review
  • headSha (string) Required

    • The SHA of the commit to associate this check run with
    • Example: abc123def456...
  • status (string) Optional

    • The status: queued | in_progress | completed
    • Example: in_progress
  • title (string) Optional

    • Title shown in the check run output panel
    • Example: AI PR Review
  • summary (string) Optional

    • Markdown summary shown in the check run output panel
    • Example: 🔍 Analysis started...
  • text (string) Optional

    • Additional details in Markdown (supports large content)
    • Example: Full analysis results here...
  • externalId (string) Optional

    • Optional external identifier for this check run
    • Example: MAPC-6653

Example:

dmtools github_create_check_run "value" "value"
// In JavaScript agent
const result = github_create_check_run("workspace", "repository");

github_create_comment

Create a comment on a GitHub issue or pull request (PRs are issues upstream).

Parameters:

  • workspace (string) Optional

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Optional

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Optional

    • The issue or pull request number
    • Example: 74
  • body (string) Required

    • The comment body text
    • Example: Looks good!
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to workspace/repository/pullRequestId)
    • Example: IstiN/dmtools#42

Example:

dmtools github_create_comment "value" "value"
// In JavaScript agent
const result = github_create_comment("workspace", "repository");

github_create_commit_status

Create a commit status (the colored dot in PR checks). Use state=pending when AI analysis starts, success/failure/error when complete. The ‘context’ field acts as the status name and must be unique per check.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • sha (string) Required

    • The commit SHA to set status on
    • Example: abc123def456...
  • state (string) Required

    • The state: pending | success | failure | error
    • Example: pending
  • description (string) Optional

    • Short human-readable description shown next to the status dot
    • Example: AI analysis in progress...
  • context (string) Optional

    • Unique identifier for this status check, e.g. ‘dmtools/pr-review’
    • Example: dmtools/pr-review
  • targetUrl (string) Optional

    • Optional URL to link from the status (e.g. CI run URL)
    • Example: https://github.com/owner/repo/actions/runs/123

Example:

dmtools github_create_commit_status "value" "value"
// In JavaScript agent
const result = github_create_commit_status("workspace", "repository");

github_create_issue

Create a GitHub issue

Parameters:

  • owner (string) Optional

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Optional

    • The repository name
    • Example: dmtools
  • title (string) Required

    • The title of the new issue
    • Example: Something is broken
  • body (string) Optional

    • The issue description (markdown)
    • Example: Steps to reproduce...
  • key (string) Optional

    • Composite project key ‘owner/repo’ (alternative to owner/repo)
    • Example: IstiN/dmtools

Example:

dmtools github_create_issue "value" "value"
// In JavaScript agent
const result = github_create_issue("owner", "repo");

github_create_pr

Create a GitHub pull request

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • title (string) Required

    • The title of the new pull request
    • Example: Add feature X
  • head (string) Required

    • The branch containing changes (source)
    • Example: feature/x
  • base (string) Required

    • The branch to merge changes into (target)
    • Example: main

Example:

dmtools github_create_pr "value" "value"
// In JavaScript agent
const result = github_create_pr("owner", "repo");

github_create_release

Create a GitHub release for a tag

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • tag_name (string) Required

    • The name of the tag the release targets
    • Example: v1.0.0
  • body (string) Optional

    • The release description (markdown)
    • Example: Release notes

Example:

dmtools github_create_release "value" "value"
// In JavaScript agent
const result = github_create_release("owner", "repo");

github_create_review

Create a review on a GitHub pull request

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • number (number) Required

    • The pull request number
    • Example: 74
  • body (string) Required

    • The review body text
    • Example: Looks good!
  • event (string) Required

    • Review event: APPROVE, REQUEST_CHANGES, or COMMENT
    • Example: APPROVE

Example:

dmtools github_create_review "value" "value"
// In JavaScript agent
const result = github_create_review("owner", "repo");

github_delete_branch

Delete a branch in a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • branch (string) Required

    • The name of the branch to delete
    • Example: feature/x

Example:

dmtools github_delete_branch "value" "value"
// In JavaScript agent
const result = github_delete_branch("owner", "repo");

github_delete_pr_comment

Delete a comment on a GitHub pull request or issue by its comment ID.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • commentId (string) Required

    • The ID of the comment to delete
    • Example: 123456789

Example:

dmtools github_delete_pr_comment "value" "value"
// In JavaScript agent
const result = github_delete_pr_comment("workspace", "repository");

github_delete_release_asset

Delete a GitHub release asset by its asset ID. Use github_list_release_assets to find asset IDs.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • assetId (string) Required

    • The numeric asset ID to delete.
    • Example: 422721847

Example:

dmtools github_delete_release_asset "value" "value"
// In JavaScript agent
const result = github_delete_release_asset("workspace", "repository");

github_disable_workflow

Disable a GitHub Actions workflow by id

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • workflow_id (number) Required

    • The workflow id to disable
    • Example: 123456

Example:

dmtools github_disable_workflow "value" "value"
// In JavaScript agent
const result = github_disable_workflow("owner", "repo");

github_dismiss_pr_review

Dismiss a previously submitted GitHub pull request review (e.g. clear a REQUEST_CHANGES decision once the issues have been fixed and a new review approves). Requires repository admin rights, or being listed as allowed to dismiss reviews, on protected branches.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74
  • reviewId (string) Required

    • The ID of the review to dismiss (from github_list_pr_reviews or the response of github_submit_pr_review)
    • Example: 1234567
  • message (string) Required

    • The reason for dismissing this review
    • Example: Superseded — issues fixed and re-reviewed as APPROVE.

Example:

dmtools github_dismiss_pr_review "value" "value"
// In JavaScript agent
const result = github_dismiss_pr_review("workspace", "repository");

github_dismiss_review

Dismiss a review on a GitHub pull request

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • number (number) Required

    • The pull request number
    • Example: 74
  • review_id (number) Required

    • The id of the review to dismiss
    • Example: 123456
  • message (string) Required

    • The dismissal message
    • Example: Outdated

Example:

dmtools github_dismiss_review "value" "value"
// In JavaScript agent
const result = github_dismiss_review("owner", "repo");

github_enable_workflow

Enable a GitHub Actions workflow by id

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • workflow_id (number) Required

    • The workflow id to enable
    • Example: 123456

Example:

dmtools github_enable_workflow "value" "value"
// In JavaScript agent
const result = github_enable_workflow("owner", "repo");

github_get_check_runs

List check runs for a GitHub commit ref

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • ref (string) Required

    • The branch, tag, or commit SHA to list check runs for
    • Example: main

Example:

dmtools github_get_check_runs "value" "value"
// In JavaScript agent
const result = github_get_check_runs("owner", "repo");

github_get_codeowners

Get the CODEOWNERS file from a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools

Example:

dmtools github_get_codeowners "value" "value"
// In JavaScript agent
const result = github_get_codeowners("owner", "repo");

github_get_commit

Get a GitHub commit by SHA

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • sha (string) Required

    • The commit SHA (or ref) to fetch
    • Example: abc123

Example:

dmtools github_get_commit "value" "value"
// In JavaScript agent
const result = github_get_commit("owner", "repo");

github_get_commit_check_runs

Get all check runs (CI/CD status checks) for a commit SHA in a GitHub repository. Returns details about each check including status, conclusion, and output.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • commitSha (string) Required

    • The commit SHA to get check runs for
    • Example: abc123...

Example:

dmtools github_get_commit_check_runs "value" "value"
// In JavaScript agent
const result = github_get_commit_check_runs("workspace", "repository");

github_get_commits_from_branches

Fetch commits from all branches whose name matches a given regex pattern, aggregated and de-duplicated. Useful for collecting commits from feature/, release/ or similar groups of branches without specifying each branch individually.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • branchNameRegex (string) Required

    • Java regular expression matched against branch names. All branches with a matching name are included. Example: ‘^feature/’ or ‘release/\d+’.
    • Example: ^feature/
  • since (string) Optional

    • Optional ISO date (yyyy-MM-dd) to limit commits to those after this date.
    • Example: 2024-01-01

Example:

dmtools github_get_commits_from_branches "value" "value"
// In JavaScript agent
const result = github_get_commits_from_branches("workspace", "repository");

github_get_file_content

Get the contents of a file in a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • path (string) Required

    • The file path within the repository
    • Example: README.md
  • ref (string) Optional

    • Branch, tag, or commit SHA (defaults to default branch)
    • Example: main

Example:

dmtools github_get_file_content "value" "value"
// In JavaScript agent
const result = github_get_file_content("owner", "repo");

github_get_issue

Get details of a GitHub issue including title, description, state, author, labels, assignees, and comments count.

Parameters:

  • workspace (string) Optional

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Optional

    • The GitHub repository name
    • Example: dmtools
  • issueNumber (string) Optional

    • The issue number
    • Example: 42
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to workspace/repository/issueNumber)
    • Example: IstiN/dmtools#42

Example:

dmtools github_get_issue "value" "value"
// In JavaScript agent
const result = github_get_issue("workspace", "repository");

github_get_job_logs

Get the raw text logs for a specific GitHub Actions job. Returns the complete log output from all steps in the job.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • jobId (string) Required

    • The job ID (from github_get_workflow_run_jobs)
    • Example: 1234567890

Example:

dmtools github_get_job_logs "value" "value"
// In JavaScript agent
const result = github_get_job_logs("workspace", "repository");

github_get_or_create_draft_release

Find an existing draft release by tag or name, or create one if it does not exist. Useful for a stable PR attachment storage release.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • tagName (string) Required

    • The Git tag name for the release. Reused to find an existing draft release.
    • Example: pr-attachments-storage
  • releaseName (string) Optional

    • The human-readable release name. If empty, tagName is used.
    • Example: PR Attachments Storage
  • targetCommitish (string) Optional

    • Optional branch or commit SHA the release should point to when created.
    • Example: main
  • body (string) Optional

    • Optional Markdown release notes/body.
    • Example: Internal storage release for PR attachments.

Example:

dmtools github_get_or_create_draft_release "value" "value"
// In JavaScript agent
const result = github_get_or_create_draft_release("workspace", "repository");

github_get_pr

Get details of a GitHub pull request including title, description, status, author, branches, and merge info.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_get_pr "value" "value"
// In JavaScript agent
const result = github_get_pr("workspace", "repository");

github_get_pr_activities

Get all activities for a GitHub pull request including reviews (approvals, change requests), inline code comments, and general discussion comments.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_get_pr_activities "value" "value"
// In JavaScript agent
const result = github_get_pr_activities("workspace", "repository");

github_get_pr_comments

Get all comments for a GitHub pull request or issue, including both inline code review comments and general discussion comments. Results are sorted by creation date.

Parameters:

  • workspace (string) Optional

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Optional

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Optional

    • The pull request or issue number
    • Example: 74
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to workspace/repository/pullRequestId)
    • Example: IstiN/dmtools#42

Example:

dmtools github_get_pr_comments "value" "value"
// In JavaScript agent
const result = github_get_pr_comments("workspace", "repository");

github_get_pr_conversations

Get all review conversations (inline code comment threads) for a GitHub pull request. Groups inline code review comments into threads showing root comment and replies. Also includes general PR discussion comments as separate entries.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_get_pr_conversations "value" "value"
// In JavaScript agent
const result = github_get_pr_conversations("workspace", "repository");

github_get_pr_diff

Get the diff statistics for a GitHub pull request (files changed, additions, deletions). Requires IS_READ_PULL_REQUEST_DIFF env/config to be enabled.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestID (string) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_get_pr_diff "value" "value"
// In JavaScript agent
const result = github_get_pr_diff("workspace", "repository");

github_get_pr_diff_text

Get the raw unified diff text for a GitHub pull request. Requires IS_READ_PULL_REQUEST_DIFF env/config to be enabled.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestID (string) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_get_pr_diff_text "value" "value"
// In JavaScript agent
const result = github_get_pr_diff_text("workspace", "repository");

github_get_pr_files

List the files changed in a GitHub pull request

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • number (number) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_get_pr_files "value" "value"
// In JavaScript agent
const result = github_get_pr_files("owner", "repo");

github_get_pr_review_threads

Get all review threads for a GitHub pull request via GraphQL, including each thread’s node ID (needed for resolving), resolved status, file path, line, and comments. Use the returned thread ‘id’ with github_resolve_pr_thread.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_get_pr_review_threads "value" "value"
// In JavaScript agent
const result = github_get_pr_review_threads("workspace", "repository");

github_get_release

Get a GitHub release by tag name

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • tag (string) Required

    • The tag name of the release
    • Example: v1.0.0

Example:

dmtools github_get_release "value" "value"
// In JavaScript agent
const result = github_get_release("owner", "repo");

github_get_repo

Get a GitHub repository by owner and name

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools

Example:

dmtools github_get_repo "value" "value"
// In JavaScript agent
const result = github_get_repo("owner", "repo");

github_get_tree

Get a GitHub git tree recursively by ref

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • ref (string) Required

    • Branch, tag, or commit SHA to read the tree from
    • Example: main

Example:

dmtools github_get_tree "value" "value"
// In JavaScript agent
const result = github_get_tree("owner", "repo");

github_get_workflow_run

Get details of a specific GitHub Actions workflow run by ID. Returns status, conclusion, logs URL, and timing information.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • runId (string) Required

    • The workflow run ID
    • Example: 1234567890

Example:

dmtools github_get_workflow_run "value" "value"
// In JavaScript agent
const result = github_get_workflow_run("workspace", "repository");

github_get_workflow_run_jobs

Get all jobs for a specific GitHub Actions workflow run. Shows individual job statuses, steps, and logs URLs.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • runId (string) Required

    • The workflow run ID
    • Example: 1234567890

Example:

dmtools github_get_workflow_run_jobs "value" "value"
// In JavaScript agent
const result = github_get_workflow_run_jobs("workspace", "repository");

github_get_workflow_run_logs

Download and extract complete logs for all jobs in a GitHub Actions workflow run. Returns full untruncated log content from the ZIP archive GitHub provides.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • runId (string) Required

    • The workflow run ID
    • Example: 22498697315

Example:

dmtools github_get_workflow_run_logs "value" "value"
// In JavaScript agent
const result = github_get_workflow_run_logs("workspace", "repository");

github_get_workflow_runs

List GitHub Actions workflow runs for a repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools

Example:

dmtools github_get_workflow_runs "value" "value"
// In JavaScript agent
const result = github_get_workflow_runs("owner", "repo");

github_get_workflows

List GitHub Actions workflows in a repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools

Example:

dmtools github_get_workflows "value" "value"
// In JavaScript agent
const result = github_get_workflows("owner", "repo");

github_list_branches

List branches in a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools

Example:

dmtools github_list_branches "value" "value"
// In JavaScript agent
const result = github_list_branches("owner", "repo");

github_list_commits

List commits in a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • sha (string) Optional

    • Branch or commit SHA to list from (defaults to default branch)
    • Example: main

Example:

dmtools github_list_commits "value" "value"
// In JavaScript agent
const result = github_list_commits("owner", "repo");

github_list_pr_reviews

List all formal reviews (APPROVE/REQUEST_CHANGES/COMMENT decisions submitted via github_submit_pr_review or by human reviewers) for a GitHub pull request, in chronological order.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_list_pr_reviews "value" "value"
// In JavaScript agent
const result = github_list_pr_reviews("workspace", "repository");

github_list_prs

List pull requests in a GitHub repository by state. State can be ‘open’, ‘closed’, or ‘merged’. Returns first page (up to 100) of pull requests.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • state (string) Required

    • The state of pull requests to list: ‘open’, ‘closed’, or ‘merged’. ‘opened’ is accepted as a synonym for ‘open’.
    • Example: open

Example:

dmtools github_list_prs "value" "value"
// In JavaScript agent
const result = github_list_prs("workspace", "repository");

github_list_prs_filtered

List pull requests in a GitHub repository filtered by a regex pattern on the PR title. Fetches all PRs matching the given state and returns only those whose title matches the regex. Useful for large repos to narrow down results without loading entire history.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • state (string) Required

    • The state of pull requests: ‘open’, ‘closed’, or ‘merged’.
    • Example: merged
  • titleRegex (string) Required

    • Java regular expression matched against the PR title (case-sensitive). Only PRs whose title contains a match are returned. Example: ‘^feat(.*)’ or ‘TICKET-\d+’.
    • Example: ^feat\(

Example:

dmtools github_list_prs_filtered "value" "value"
// In JavaScript agent
const result = github_list_prs_filtered("workspace", "repository");

github_list_release_assets

List all assets attached to a GitHub release. Returns a JSON array of asset objects including id, name, size, and browser_download_url.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • releaseId (string) Required

    • The numeric GitHub release ID.
    • Example: 323096697

Example:

dmtools github_list_release_assets "value" "value"
// In JavaScript agent
const result = github_list_release_assets("workspace", "repository");

github_list_releases

List GitHub releases for a repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools

Example:

dmtools github_list_releases "value" "value"
// In JavaScript agent
const result = github_list_releases("owner", "repo");

github_list_workflow_runs

List GitHub Actions workflow runs for a repository, optionally filtered by status or specific workflow file. Use status=‘failure’ to get all failed runs.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • status (string) Optional

    • Filter by status: failure, success, in_progress, queued, cancelled, timed_out, action_required, neutral, skipped, stale, completed
    • Example: failure
  • workflowId (string) Optional

    • Optional workflow filename to filter runs (e.g. rework.yml). If omitted, returns runs for all workflows.
    • Example: rework.yml
  • perPage (number) Optional

    • Number of results per page (max 100, default 30)
    • Example: 50
  • page (number) Optional

    • Page number for pagination (default 1)
    • Example: 2
  • created (string) Optional

    • Filter by created date/range using GitHub search syntax, e.g. 2026-05-01..2026-05-31 or >=2026-05-01
    • Example: 2026-05-01..2026-05-31

Example:

dmtools github_list_workflow_runs "value" "value"
// In JavaScript agent
const result = github_list_workflow_runs("workspace", "repository");

github_merge_pr

Merge a GitHub pull request. Supports merge, squash, and rebase merge methods.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number to merge
    • Example: 74
  • mergeMethod (string) Optional

    • The merge method: ‘merge’ (default), ‘squash’, or ‘rebase’
    • Example: squash
  • commitTitle (string) Optional

    • Title for the merge commit (optional, defaults to PR title)
    • Example: Merge feature/my-branch into main
  • commitMessage (string) Optional

    • Extra detail to append to the merge commit message (optional)
    • Example: Closes #123

Example:

dmtools github_merge_pr "value" "value"
// In JavaScript agent
const result = github_merge_pr("workspace", "repository");

github_move_issue_to_status

Move a GitHub issue to a status. ‘done’/‘closed’ close the issue, ‘open’/‘reopened’ reopen it; any other status is applied as an issue label.

Parameters:

  • statusName (string) Required

    • The target status name
    • Example: Done
  • owner (string) Optional

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Optional

    • The repository name
    • Example: dmtools
  • number (number) Optional

    • The issue number
    • Example: 42
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to owner/repo/number)
    • Example: IstiN/dmtools#42

Example:

dmtools github_move_issue_to_status "value" "value"
// In JavaScript agent
const result = github_move_issue_to_status("statusName", "owner");

github_remove_collaborator

Remove a collaborator from a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • username (string) Required

    • The collaborator login to remove
    • Example: octocat

Example:

dmtools github_remove_collaborator "value" "value"
// In JavaScript agent
const result = github_remove_collaborator("owner", "repo");

github_remove_label

Remove a label from a GitHub issue

Parameters:

  • owner (string) Optional

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Optional

    • The repository name
    • Example: dmtools
  • number (number) Optional

    • The issue number
    • Example: 42
  • label (string) Required

    • The name of the label to remove
    • Example: bug
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to owner/repo/number)
    • Example: IstiN/dmtools#42

Example:

dmtools github_remove_label "value" "value"
// In JavaScript agent
const result = github_remove_label("owner", "repo");

github_remove_pr_label

Remove a label from a GitHub pull request.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74
  • label (string) Required

    • The label name to remove from the pull request
    • Example: bug

Example:

dmtools github_remove_pr_label "value" "value"
// In JavaScript agent
const result = github_remove_pr_label("workspace", "repository");

github_reopen_issue

Reopen a closed GitHub issue

Parameters:

  • owner (string) Optional

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Optional

    • The repository name
    • Example: dmtools
  • number (number) Optional

    • The issue number
    • Example: 42
  • key (string) Optional

    • Composite issue key ‘owner/repo#123’ (alternative to owner/repo/number)
    • Example: IstiN/dmtools#42

Example:

dmtools github_reopen_issue "value" "value"
// In JavaScript agent
const result = github_reopen_issue("owner", "repo");

github_reopen_pr

Reopen a GitHub pull request

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • number (number) Required

    • The pull request number
    • Example: 74

Example:

dmtools github_reopen_pr "value" "value"
// In JavaScript agent
const result = github_reopen_pr("owner", "repo");

github_reply_to_pr_thread

Reply to an existing inline code review comment thread in a GitHub pull request. Use the comment ID of the root comment (or any comment) in the thread as inReplyToId.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74
  • inReplyToId (string) Required

    • The ID of the comment to reply to (from github_get_pr_conversations rootComment.id or replies[].id)
    • Example: 123456789
  • text (string) Required

    • The reply text (Markdown supported)
    • Example: Fixed in the latest commit.

Example:

dmtools github_reply_to_pr_thread "value" "value"
// In JavaScript agent
const result = github_reply_to_pr_thread("workspace", "repository");

github_repository_dispatch

Trigger a GitHub repository dispatch event. Workflows listening to ‘on: repository_dispatch’ with the matching event_type will be triggered.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • eventType (string) Required

    • The type of activity that triggers the workflow (event_type)
    • Example: rework
  • clientPayload (string) Optional

    • Optional JSON string with payload passed to the workflow as client_payload
    • Example: {"key":"value"}

Example:

dmtools github_repository_dispatch "value" "value"
// In JavaScript agent
const result = github_repository_dispatch("workspace", "repository");

github_request_reviewers

Request reviewers on a GitHub pull request

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • number (number) Required

    • The pull request number
    • Example: 74
  • reviewers (array) Required

    • The reviewer logins to request
    • Example: ["octocat"]

Example:

dmtools github_request_reviewers "value" "value"
// In JavaScript agent
const result = github_request_reviewers("owner", "repo");

github_rerun_workflow

Re-run a GitHub Actions workflow run by id

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • run_id (number) Required

    • The workflow run id to re-run
    • Example: 1234567890

Example:

dmtools github_rerun_workflow "value" "value"
// In JavaScript agent
const result = github_rerun_workflow("owner", "repo");

github_resolve_pr_thread

Resolve a review thread in a GitHub pull request. Requires the thread’s GraphQL node ID, which can be obtained from github_get_pr_review_threads (the ‘id’ field of each thread).

Parameters:

  • threadId (string) Required
    • The GraphQL node ID of the review thread to resolve (from github_get_pr_review_threads thread.id)
    • Example: PRRT_kwDOBQfyNc5A...

Example:

dmtools github_resolve_pr_thread "value"
// In JavaScript agent
const result = github_resolve_pr_thread("threadId");

github_search_issues

Search GitHub issues (and pull requests) with a query string. Returns a JSON object with ‘items’.

Parameters:

  • query (string) Required

    • The GitHub issue search query (e.g. ‘repo:owner/name is:open label:bug’)
    • Example: repo:IstiN/dmtools is:open
  • workspace (string) Optional

    • The GitHub owner/organization to scope the search to
    • Example: IstiN
  • repository (string) Optional

    • The GitHub repository to scope the search to
    • Example: dmtools

Example:

dmtools github_search_issues "value" "value"
// In JavaScript agent
const result = github_search_issues("query", "workspace");

github_submit_pr_review

Submit a formal GitHub pull request review (a native reviewer decision, distinct from labels/comments). event=APPROVE marks the PR as approved by this reviewer; event=REQUEST_CHANGES formally blocks the PR (visible as ‘Changes requested’, and enforced by branch protection rules requiring approvals) until a new review or github_dismiss_pr_review clears it; event=COMMENT leaves a review without approving or blocking. ‘body’ is required for REQUEST_CHANGES and COMMENT.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • pullRequestId (string) Required

    • The pull request number
    • Example: 74
  • event (string) Required

    • The review decision: APPROVE, REQUEST_CHANGES, or COMMENT
    • Example: REQUEST_CHANGES
  • body (string) Optional

    • The review’s summary text. Required for REQUEST_CHANGES and COMMENT.
    • Example: Blocking issues found, please address before merge.

Example:

dmtools github_submit_pr_review "value" "value"
// In JavaScript agent
const result = github_submit_pr_review("workspace", "repository");

github_test

Test GitHub connectivity by fetching the current user’s profile

Parameters: None

Example:

dmtools github_test
// In JavaScript agent
const result = github_test();

github_trigger_workflow

Trigger a specific GitHub Actions workflow by filename (workflow dispatch). The workflow must have ‘on: workflow_dispatch’ configured.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • workflowId (string) Required

    • The workflow filename or ID to trigger
    • Example: rework.yml
  • inputs (string) Optional

    • JSON string with workflow inputs (e.g. {“user_request”:”…”,“branch”:“main”})
    • Example: {"user_request":"Please rework PROJ-123"}
  • ref (string) Optional

    • The branch or tag to run the workflow on (default: main)
    • Example: main

Example:

dmtools github_trigger_workflow "value" "value"
// In JavaScript agent
const result = github_trigger_workflow("workspace", "repository");

github_update_check_run

Update an existing GitHub Check Run — set it to completed with success/failure conclusion, update summary and detailed text. Call this after github_create_check_run to finalize the check.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • checkRunId (string) Required

    • The ID of the check run to update (from github_create_check_run response)
    • Example: 1234567890
  • status (string) Required

    • The new status: in_progress | completed
    • Example: completed
  • conclusion (string) Optional

    • Required when status=completed: success | failure | neutral | cancelled | skipped | timed_out | action_required
    • Example: success
  • title (string) Optional

    • Updated title for the check run output panel
    • Example: AI PR Review — Complete
  • summary (string) Optional

    • Updated Markdown summary for the check run output panel
    • Example: ✅ Review complete. Found 3 issues.
  • text (string) Optional

    • Updated detailed Markdown content (full analysis, annotations etc.)
    • Example: ## Issues Found ...

Example:

dmtools github_update_check_run "value" "value"
// In JavaScript agent
const result = github_update_check_run("workspace", "repository");

github_update_file

Create or update a file in a GitHub repository

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • path (string) Required

    • The file path within the repository
    • Example: README.md
  • content (string) Required

    • The new file content (plain text)
    • Example: Hello world
  • message (string) Required

    • The commit message
    • Example: Update README
  • sha (string) Required

    • The blob SHA of the existing file (required to update)
    • Example: abc123

Example:

dmtools github_update_file "value" "value"
// In JavaScript agent
const result = github_update_file("owner", "repo");

github_update_pr

Update the title or body of a GitHub pull request. Only the provided fields are changed.

Parameters:

  • owner (string) Required

    • The repository owner (user or organization)
    • Example: IstiN
  • repo (string) Required

    • The repository name
    • Example: dmtools
  • number (number) Required

    • The pull request number
    • Example: 74
  • title (string) Optional

    • The new title (omitted to leave unchanged)
    • Example: Updated title
  • body (string) Optional

    • The new body (omitted to leave unchanged)
    • Example: Updated description

Example:

dmtools github_update_pr "value" "value"
// In JavaScript agent
const result = github_update_pr("owner", "repo");

github_update_pr_comment

Update (edit) an existing comment on a GitHub pull request or issue by its comment ID.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • commentId (string) Required

    • The ID of the comment to update
    • Example: 123456789
  • text (string) Required

    • The new comment text (replaces existing content)
    • Example: ✅ Analysis complete.

Example:

dmtools github_update_pr_comment "value" "value"
// In JavaScript agent
const result = github_update_pr_comment("workspace", "repository");

github_upload_release_asset

Upload a local file as a GitHub release asset. Returns the uploaded asset metadata including browser_download_url. Set overwrite=true to automatically delete an existing asset with the same name before uploading.

Parameters:

  • workspace (string) Required

    • The GitHub owner/organization name
    • Example: IstiN
  • repository (string) Required

    • The GitHub repository name
    • Example: dmtools
  • releaseId (string) Required

    • The numeric GitHub release ID returned by github_get_or_create_draft_release.
    • Example: 323096697
  • filePath (string) Required

    • Absolute or relative path to the local file to upload.
    • Example: /tmp/preview.png
  • assetName (string) Optional

    • Optional asset filename shown in GitHub. Defaults to the local filename.
    • Example: clip_123.png
  • contentType (string) Optional

    • Optional MIME type. Defaults to detected type or application/octet-stream.
    • Example: image/png
  • label (string) Optional

    • Optional display label for the uploaded asset.
    • Example: Screenshot
  • overwrite (string) Optional

    • If true, delete any existing asset with the same name before uploading. Defaults to false.
    • Example: true

Example:

dmtools github_upload_release_asset "value" "value"
// In JavaScript agent
const result = github_upload_release_asset("workspace", "repository");

Edit this page on GitHub →

Rendered from dmtools-ai-docs/references/mcp-tools/github-tools.md, the same Markdown the DMTools agent skill reads. Last updated .