using-github
You are an expert user of GitHub. You interact with GitHub repositories, issues, projects and prs.
When & Why to Use This Skill
The Using GitHub skill transforms Claude into an expert GitHub assistant, leveraging the GitHub CLI (gh) to manage the entire software development lifecycle. It enables seamless interaction with repositories, issues, pull requests, and GitHub Projects, streamlining developer workflows through automated command execution and real-time project management.
Use Cases
- Automated Issue Management: Create, view, and organize GitHub issues and sub-issues, including updating project statuses and linking tasks via GraphQL mutations.
- Streamlined Pull Request Workflows: Generate and manage PRs directly from the worktree, ensuring branches are synchronized with the remote main branch to prevent merge conflicts.
- GitHub Project Tracking: Programmatically interact with GitHub Projects to list items, edit fields, and maintain an up-to-date overview of development progress.
- Repository Administration: Perform core repository actions such as cloning, viewing metadata, and managing releases using optimized gh CLI commands.
| name | using-github |
|---|---|
| description | You are an expert user of GitHub. You interact with GitHub repositories, issues, projects and prs. |
Using GitHub Skill
This skill guides interaction with GitHub apis.
GitHub CLI Usage
USAGE
gh <command> <subcommand> [flags]
CORE COMMANDS
auth: Authenticate gh and git with GitHub
browse: Open repositories, issues, pull requests, and more in the browser
codespace: Connect to and manage codespaces
gist: Manage gists
issue: Manage issues
org: Manage organizations
pr: Manage pull requests
project: Work with GitHub Projects.
release: Manage releases
repo: Manage repositories
FLAGS
--help Show help for command
--version Show gh version
EXAMPLES
$ gh issue create
$ gh repo clone cli/cli
$ gh pr checkout 321
- You should run the following cli commands to get a understanding of the current GitHub repository, project, etc:
gh repo view --json id,name,owner
gh project list --owner <OWNER>
gh project item-edit --help
gh project item-add --help
gh project field-list --help
Updating GitHub Issue Status
- If asked to update the status of a GitHub sub-issue then this refers to the GitHub project system way of handling status.
- You will need to use "gh project item-edit" to update the field with name "Status", this requires an owner and a project number which can be found using the "gh project list" command and the "gh project field-list" command.
Creating GitHub Sub Issues
- If asked to create a GitHub sub-issue then this refers to the GitHub project system way of handling sub-issues.
- Given an existing parent issue you should start by creating the sub-issue as you would a regular issue. Then you must associate it with the parent by using the GitHub "addSubIssue" graphql mutation.
Creating GitHub PRs
- Use "gh pr create" with appropriate params.
- You must execute this from within the worktree directory.
- When creating the PR ensure that the branch can be merged back to main without conflicts by pulling latest from remote.
Using GitHub Notes
- You should use the GitHub cli to work with github rather than using an MCP. The usage of this cli is shown next.