Repository and issue management with GitHub integration for CrewAI.
Enable your agents to manage repositories, issues, and releases through GitHub. Create and update issues, manage releases, track project development, and streamline your software development workflow with AI-powered automation.
Before using the GitHub integration, ensure you have:
GITHUB_CREATE_ISSUE
Description: Create an issue in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Issue. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Issue.title
(string, required): Issue Title - Specify the title of the issue to create.body
(string, optional): Issue Body - Specify the body contents of the issue to create.assignees
(string, optional): Assignees - Specify the assignee(s)’ GitHub login as an array of strings for this issue. (example: ["octocat"]
).GITHUB_UPDATE_ISSUE
Description: Update an issue in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Issue. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Issue.issue_number
(string, required): Issue Number - Specify the number of the issue to update.title
(string, required): Issue Title - Specify the title of the issue to update.body
(string, optional): Issue Body - Specify the body contents of the issue to update.assignees
(string, optional): Assignees - Specify the assignee(s)’ GitHub login as an array of strings for this issue. (example: ["octocat"]
).state
(string, optional): State - Specify the updated state of the issue.
open
, closed
GITHUB_GET_ISSUE_BY_NUMBER
Description: Get an issue by number in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Issue. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Issue.issue_number
(string, required): Issue Number - Specify the number of the issue to fetch.GITHUB_LOCK_ISSUE
Description: Lock an issue in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Issue. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Issue.issue_number
(string, required): Issue Number - Specify the number of the issue to lock.lock_reason
(string, required): Lock Reason - Specify a reason for locking the issue or pull request conversation.
off-topic
, too heated
, resolved
, spam
GITHUB_SEARCH_ISSUE
Description: Search for issues in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Issue. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Issue.filter
(object, required): A filter in disjunctive normal form - OR of AND groups of single conditions.
assignee
, creator
, mentioned
, labels
GITHUB_CREATE_RELEASE
Description: Create a release in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Release. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Release.tag_name
(string, required): Name - Specify the name of the release tag to be created. (example: “v1.0.0”).target_commitish
(string, optional): Target - Specify the target of the release. This can either be a branch name or a commit SHA. Defaults to the main branch. (example: “master”).body
(string, optional): Body - Specify a description for this release.draft
(string, optional): Draft - Specify whether the created release should be a draft (unpublished) release.
true
, false
prerelease
(string, optional): Prerelease - Specify whether the created release should be a prerelease.
true
, false
discussion_category_name
(string, optional): Discussion Category Name - If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository.generate_release_notes
(string, optional): Release Notes - Specify whether the created release should automatically create release notes using the provided name and body specified.
true
, false
GITHUB_UPDATE_RELEASE
Description: Update a release in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Release. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Release.id
(string, required): Release ID - Specify the ID of the release to update.tag_name
(string, optional): Name - Specify the name of the release tag to be updated. (example: “v1.0.0”).target_commitish
(string, optional): Target - Specify the target of the release. This can either be a branch name or a commit SHA. Defaults to the main branch. (example: “master”).body
(string, optional): Body - Specify a description for this release.draft
(string, optional): Draft - Specify whether the created release should be a draft (unpublished) release.
true
, false
prerelease
(string, optional): Prerelease - Specify whether the created release should be a prerelease.
true
, false
discussion_category_name
(string, optional): Discussion Category Name - If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository.generate_release_notes
(string, optional): Release Notes - Specify whether the created release should automatically create release notes using the provided name and body specified.
true
, false
GITHUB_GET_RELEASE_BY_ID
Description: Get a release by ID in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Release. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Release.id
(string, required): Release ID - Specify the release ID of the release to fetch.GITHUB_GET_RELEASE_BY_TAG_NAME
Description: Get a release by tag name in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Release. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Release.tag_name
(string, required): Name - Specify the tag of the release to fetch. (example: “v1.0.0”).GITHUB_DELETE_RELEASE
Description: Delete a release in GitHub.
Parameters:
owner
(string, required): Owner - Specify the name of the account owner of the associated repository for this Release. (example: “abc”).repo
(string, required): Repository - Specify the name of the associated repository for this Release.id
(string, required): Release ID - Specify the ID of the release to delete.Contact our support team for assistance with GitHub integration setup or troubleshooting.