MR
Mayur Rathi
@mayurrathi
⭐ 5 GitHub stars

Github Automation

Automate GitHub repositories, issues, pull requests, branches, CI/CD, and permissions via Rube MCP (Composio). Manage code workflows, review PRs, search code, and handle deployments programmatically.

mkdir -p ./skills/github-automation && curl -sfL https://raw.githubusercontent.com/mayurrathi/awesome-agent-skills/main/skills/github-automation/SKILL.md -o ./skills/github-automation/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

# GitHub Automation via Rube MCP


Automate GitHub repository management, issue tracking, pull request workflows, branch operations, and CI/CD through Composio's GitHub toolkit.


Prerequisites


- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)

- Active GitHub connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `github`

- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas


Setup


**Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.



1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds

2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `github`

3. If connection is not ACTIVE, follow the returned auth link to complete GitHub OAuth

4. Confirm connection status shows ACTIVE before running any workflows


Core Workflows


1. Create and Manage Issues


**When to use**: User wants to create, list, or manage GitHub issues


**Tool sequence**:

1. `GITHUB_LIST_REPOSITORIES_FOR_THE_AUTHENTICATED_USER` - Find target repo if unknown [Prerequisite]

2. `GITHUB_LIST_REPOSITORY_ISSUES` - List existing issues (includes PRs) [Required]

3. `GITHUB_CREATE_AN_ISSUE` - Create a new issue [Required]

4. `GITHUB_CREATE_AN_ISSUE_COMMENT` - Add comments to an issue [Optional]

5. `GITHUB_SEARCH_ISSUES_AND_PULL_REQUESTS` - Search across repos by keyword [Optional]


**Key parameters**:

- `owner`: Repository owner (username or org), case-insensitive

- `repo`: Repository name without .git extension

- `title`: Issue title (required for creation)

- `body`: Issue description (supports Markdown)

- `labels`: Array of label names

- `assignees`: Array of GitHub usernames

- `state`: 'open', 'closed', or 'all' for filtering


**Pitfalls**:

- `GITHUB_LIST_REPOSITORY_ISSUES` returns both issues AND pull requests; check `pull_request` field to distinguish

- Only users with push access can set assignees, labels, and milestones; they are silently dropped otherwise

- Pagination: `per_page` max 100; iterate pages until empty


2. Manage Pull Requests


**When to use**: User wants to create, review, or merge pull requests


**Tool sequence**:

1. `GITHUB_FIND_PULL_REQUESTS` - Search and filter PRs [Required]

2. `GITHUB_GET_A_PULL_REQUEST` - Get detailed PR info including mergeable status [Required]

3. `GITHUB_LIST_PULL_REQUESTS_FILES` - Review changed files [Optional]

4. `GITHUB_CREATE_A_PULL_REQUEST` - Create a new PR [Required]

5. `GITHUB_CREATE_AN_ISSUE_COMMENT` - Post review comments [Optional]

6. `GITHUB_LIST_CHECK_RUNS_FOR_A_REF` - Verify CI status before merge [Optional]

7. `GITHUB_MERGE_A_PULL_REQUEST` - Merge after explicit user approval [Required]


**Key parameters**:

- `head`: Source branch with changes (must exist; for cross-repo: 'username:branch')

- `base`: Target branch to merge into (e.g., 'main')

- `title`: PR title (required unless `issue` number provided)

- `merge_method`: 'merge', 'squash', or 'rebase'

- `state`: 'open', 'closed', or 'all'


**Pitfalls**:

- `GITHUB_CREATE_A_PULL_REQUEST` fails with 422 if base/head are invalid, identical, or already merged

- `GITHUB_MERGE_A_PULL_REQUEST` can be rejected if PR is draft, closed, or branch protection applies

- Always verify mergeable status with `GITHUB_GET_A_PULL_REQUEST` immediately before merging

- Require explicit user confirmation before calling MERGE


3. Manage Repositories and Branches


**When to use**: User wants to create repos, manage branches, or update repo settings


**Tool sequence**:

1. `GITHUB_LIST_REPOSITORIES_FOR_THE_AUTHENTICATED_USER` - List user's repos [Required]

2. `GITHUB_GET_A_REPOSITORY` - Get detailed repo info [Optional]

3. `GITHUB_CREATE_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER` - Create personal repo [Required]

4. `GITHUB_CREATE_AN_ORGANIZATION_REPOSITORY` - Create org repo [Alternative]

5. `GITHUB_LIST_BRANCHES` - List branches [Required]

6. `GITHUB_CREATE_A_REFERENCE` - Create new branch from SHA [Required]

7. `GITHUB_UPDATE_A_REPOS

🎯 Best For

  • Engineering teams doing code reviews
  • Open source maintainers
  • Claude users
  • Software engineers
  • Development teams

💡 Use Cases

  • Reviewing pull requests for security vulnerabilities
  • Checking code style consistency
  • Code quality improvement
  • Best practice enforcement

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply Github Automation to Your Work

    Open your project in the AI assistant and ask it to apply the skill. Start with a small module to verify the output quality.

  4. 4

    Review and Refine

    Review AI suggestions before committing. Run tests, check for regressions, and iterate on the skill output.

❓ Frequently Asked Questions

Does this skill check for OWASP Top 10?

Security-focused review skills often include OWASP checks. Check the skill content for specific vulnerability categories covered.

Is Github Automation compatible with Cursor and VS Code?

Yes — this skill works with any AI coding assistant including Cursor, VS Code with Copilot, and JetBrains IDEs.

Do I need specific dependencies for Github Automation?

Check the install command and Works With section. Most code skills only require the AI assistant and your codebase.

How do I install Github Automation?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/github-automation/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Blindly accepting AI suggestions

Always verify AI-generated review comments. Some suggestions may not apply to your specific codebase conventions.

Skipping validation

Always test AI-generated code changes, even for simple refactors.

Missing dependency updates

Check if the skill requires updated dependencies or new packages.

🔗 Related Skills