What problem does it solve? Creating a merge request by hand means manually summarizing commits, checking branch push state, and formatting platform-specific commands, which often produces empty MRs, stale diffs, or descriptions with unverifiable claims. This Skill validates the source and target branches, collects commit history and diffs, drafts a four-section description grounded in real evidence, and creates the MR through gh or glab only after user confirmation. ## Core Features & Use Cases - Branch validation and material collection: A Python script verifies the repo, branch existence, common ancestor, and effective diff, then writes commit logs, grouped change scope, file lists, and a full raw diff to disk. - Push-state handling: Nine push states (up-to-date, not-pushed, ahead, behind, diverged, remote-only, and more) are reported as facts, with a fixed decision table governing when pushing is allowed and when to stop. - Platform-aware creation: Detects GitHub vs GitLab, honors repository PR/MR templates, uses --body-file/--description-file for safe multiline descriptions, and falls back to manual compare links when no CLI exists. - Use Case: After finishing a feature branch, ask for an MR against main; the Skill fetches origin, validates the diff, drafts a description covering background, changes, impact, and testing, pushes the branch only with your consent, and creates the MR. ## Quick Start Ask the assistant to create a merge request from the current branch to main with an auto-generated description based on the commit history.