Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
Christopher Boone avatar

Merge Main

  • 2 repo stars
  • Updated July 24, 2026
  • cboone/agent-harness-plugins

Fetch and merge the base branch into your feature branch with automatic conflict resolution to stay current.

About

Merge-main fetches the base branch and merges it into the current feature branch, resolving conflicts automatically where it can. It keeps in-progress work synced with main so the branch doesn't drift, reducing painful late merges. A git workflow convenience for active development.

  • Fetches and merges base branch
  • Automatic conflict resolution
  • Keeps feature branch current
  • Git workflow helper

Merge Main by the numbers

  • Data as of Jul 25, 2026 (Skillselion catalog sync)
/plugin marketplace add cboone/agent-harness-plugins
/plugin install merge-main@agent-harness-plugins

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
repo stars2
Last updatedJuly 24, 2026
Repositorycboone/agent-harness-plugins

What it does

Fetch and merge the base branch into your feature branch with automatic conflict resolution to stay current.

README.md

Merge Main

Fetch and merge the repository's base branch into the current feature branch.

Type: Skill Trigger: /merge-main Requires: gh (falls back to git remote show origin if unavailable)

Installation

See the marketplace install instructions.

What It Does

Automatically detects the default branch, handles uncommitted changes (stash, commit, or abort), resolves merge conflicts, and pushes after a successful merge. Suggests running install commands when lockfiles change.

Usage

/merge-main
/merge-main --base develop
Option Description
--base <branch> Override the auto-detected base branch

Recommended Permissions

This skill runs git and GitHub CLI commands that trigger permission prompts. To allow them automatically, add these rules to your .claude/settings.json (project-wide) or ~/.claude/settings.json (global):

{
  "permissions": {
    "allow": ["Bash(git status*)", "Bash(git branch *)", "Bash(git fetch *)", "Bash(git merge *)", "Bash(git commit *)", "Bash(git push*)", "Bash(git stash*)", "Bash(git log *)", "Bash(git diff*)", "Bash(git add *)", "Bash(git remote *)", "Bash(gh repo view *)"]
  }
}

If you already have a permissions.allow array, merge these entries into it. Review and adjust the rules to match your security preferences.

Examples

  • "merge main": fetches and merges the default branch
  • "merge main --base develop": merges the develop branch instead
  • "sync with main": same as "merge main"

See Also

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.