create-mr
Create a GitHub PR or GitLab MR using conversation context
Skill by bgschiller
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/bgschiller-create-mr
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Shell scripts
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/create-mr
What's inside
- Skill name
create-mr- Description
- Create a GitHub PR or GitLab MR using conversation context
- License
- Unlicense
- Instructions
- 217 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- allowed-tools: must be a space-separated string
Files (2)
- SKILL.md
- glab-mr-helper.sh · scripts/
SKILL.md (first lines)
# Create a Pull Request / Merge Request Use the current conversation, commits, and diff to prepare a PR/MR. Always get Brian's approval of the draft before creating it. Run Git and platform commands from the target repository. Resolve helper scripts from their skill directories, not the target project's `scripts/` directory: ```bash MR_HELPER="$HOME/.agents/skills/create-mr/scripts/glab-mr-helper.sh" REVIEW_HELPER="$HOME/.agents/skills/human-review/scripts/open-editor.sh" ``` If this discovery path is unavailable, resolve each helper against its own skill's `SKILL.md` directory. ## 1. Inspect the branch and platform ```bash git remote get-url origin git branch --show-current git status --short ``` Use `gh` for GitHub and `glab` for GitLab. For an unfamiliar/self-hosted remote, establish the platform rather than guessing. Requires the matching CLI authenticated; the GitLab helper also requires `jq`. Determine the base from the stack/project conventions. `git merge-target` is available in Brian's dotfiles; use it when appropriate. If that fails, inspect the repository's default branch and stack before choosing a base—do not silently assume `main`. Check whether the branch exists on the intended remote and whether local commits are pushed. Obtain approval before any push; do not force-push merely to create a PR/MR. ## 2. Draft from context With the chosen base: ```bash git log --oneline "$TARGET"..HEAD git diff "$TARGET"...HEAD ``` Follow the project's PR/MR template if present. Otherwise include: - **Context:** what problem motivated the change. - **Approach:** what changed and why. - **Testing:** actual checks performed, including limitations. Use a concise, imperative title of at most 80 characters. Incorporate relevant conversation reasoning, not just commit subjects. Never invent test results. ## 3. Review Write a temporary Markdown file with the title on the first line and description below it. Use the `human-review` skill to open it, compare edits, and clean up afterward. Tell Brian what is being opened. Empty/whitespace-only content means abort. Parse the approved title and description. Keep the description in a temporary file for safe CLI input. Do not delete unrelated `mr-*.md` files from the project. ## 4. Create the PR/MR GitHub: ```bash gh pr create --title "$TITLE" --body-file "$BODY_FILE" --base "$TARGET" ``` GitLab: ```bash glab mr create --title "$TITLE" --description "$(<"$BODY_FILE")" \ --target-branch "$TARGET" --remove-source-branch --yes ``` Do not enable squash automatically: it can disrupt git-branchless stacks. Follow the repository's merge policy and the selected stack tool's guidance. For GitHub stacks managed with `gh stack`, consult `gh-stack` before creating a standalone PR; use the stack workflow if that is how the branches are managed. Do not create duplicate PRs. ## 5. Stacked GitLab MRs If the chosen base is another feature branch, set a blocking relationship with its parent MR: ```bash "$MR_HELPER" set-blocking <new-mr-number> "$TARGET" ``` The helper finds the parent's MR and adds the dependency. If the parent cannot be found or this operation fails, warn explicitly; do not claim the stack is configured. A non-`main` base alone does not establish a stack: the project may use another integration branch. ## 6. Report Return the created URL and a copyable review request: ```text Please review my PR to [TITLE](URL) Please review my MR to [TITLE](URL) ``` Use only the line matching the platform. Clean up only the temporary files created for this invocation.
From bgschiller/dotfiles, Unlicense.
More from bgschiller/dotfiles
- 0.561score
get-user-attention
bgschiller
Notify the user when requested background work finishes or needs input, including CI pipeline or deployment watchers.
SkillAFreshness: AClaude Code +9 - 0.560score
mr-threads
bgschiller
List unresolved discussion threads on a GitLab merge request or GitHub pull request.
SkillAFreshness: AClaude Code +9 - 0.522score
webkit-localstorage
bgschiller
Inspect and modify WebKit localStorage databases on macOS.
SkillBFreshness: BClaude Code +9 - 0.521score
human-review
bgschiller
Open a document for human review and editing.
SkillBFreshness: BClaude Code +9 - 0.510score
source-command-brainstorm
bgschiller
Brainstorm a new project or feature
SkillBFreshness: BClaude Code +9 - 0.507score
source-command-implementation-plan
bgschiller
Create an implementation plan
SkillBFreshness: BClaude Code +9 - 0.475score
check-pipeline
bgschiller
Check GitLab CI pipeline status and investigate failures.
SkillCFreshness: CClaude Code +9 - 0.474score
victoriametrics
bgschiller
Query Grammarly VictoriaMetrics via the victoriametrics MCP server using mcporter.
SkillCFreshness: CClaude Code +9 - 0.470score
stacked-branches
bgschiller
Guide for managing stacked MRs with git-branchless.
SkillCFreshness: CClaude Code +9 - 0.468score
grow-review
bgschiller
Summarize the past half-year of work into a project-based GROW review doc, mapping evidence to the IC guide (ic_guide.csv).
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 14, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Unlicense
- Repository
- github.com/bgschiller/dotfiles
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from bgschiller
- 0.561score
get-user-attention
bgschiller
Notify the user when requested background work finishes or needs input, including CI pipeline or deployment watchers.
SkillAFreshness: AClaude Code +9 - 0.560score
mr-threads
bgschiller
List unresolved discussion threads on a GitLab merge request or GitHub pull request.
SkillAFreshness: AClaude Code +9 - 0.522score
webkit-localstorage
bgschiller
Inspect and modify WebKit localStorage databases on macOS.
SkillBFreshness: BClaude Code +9 - 0.521score
human-review
bgschiller
Open a document for human review and editing.
SkillBFreshness: BClaude Code +9 - 0.510score
source-command-brainstorm
bgschiller
Brainstorm a new project or feature
SkillBFreshness: BClaude Code +9 - 0.507score
source-command-implementation-plan
bgschiller
Create an implementation plan
SkillBFreshness: BClaude Code +9
Cite this page
create-mr skill. Agent Mart. https://agentmart.dev/skills/bgschiller-create-mr (last updated 2026-10-24)