Docs workflow create merge request
Skill opendatahub-io/docs-skills/skills/docs-workflow-create-merge-request
Commit, push, and create a merge request (GitLab) or pull request (GitHub) for documentation changes. Creates a feature branch if the repo is on main/master. Replaces docs-workflow-prepare-branch, docs-workflow-commit, and docs-workflow-create-mr.From its SKILL.md
npx -y skills add opendatahub-io/docs-skills --skill docs-workflow-create-merge-requestAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.9 KB, as published. Nobody here has run it
Create Merge Request Step
Step skill for the docs-orchestrator pipeline. After writing and reviews are complete, this step creates a feature branch (if needed), commits the manifest-listed files, pushes to the remote, and creates an MR/PR via gh (GitHub) or glab (GitLab).
Skipped in draft mode (--draft flag). When --repo-path is set, the script operates in the target repo but expects the user to have already switched to a feature branch.
Arguments
$1— JIRA ticket ID (required)--base-path <path>— Base output path (e.g.,.agent_workspace/proj-123)--draft— If present, skip all git operations--repo-path <path>— Target documentation repository (must already be on a feature branch)
Input
<base-path>/writing/step-result.json
Contains the files array of absolute paths to commit (written by the writing step).
Output
<base-path>/create-merge-request/step-result.json
Combined sidecar with commit, push, and MR/PR metadata.
Execution
Run the script, passing through all arguments:
bash ${CLAUDE_SKILL_DIR}/scripts/create_merge_request.sh <ticket> --base-path <base-path> [--draft] [--repo-path <path>]
The script handles:
- Skip mode — writes a skip sidecar and exits if
--draftis set - Git context — resolves repo root, current branch, remote URL, and platform (GitHub/GitLab)
- Branch creation — if on
mainormaster(and no--repo-path), creates<ticket-lowercase>branch from HEAD or switches to it if it already exists - Safety — refuses to proceed if on
main/masterwith--repo-path(externally managed repos must be on a feature branch) - Manifest reading — reads file paths from
writing/step-result.jsonand filters to files under the repo root - Staging and commit — stages manifest files and commits with
docs(<ticket>): add generated documentation - Push — pushes with
--force-with-leaseto origin - Title building — derives MR/PR title from
requirements/step-result.jsontitle field or first heading inrequirements.md - Existing check — searches for an open MR/PR from the feature branch before creating a new one
- MR/PR creation — creates via
gh pr create(GitHub) orglab mr create(GitLab), with fork detection for GitLab via theupstreamremote - Sidecar — writes
step-result.jsonwith commit_sha, branch, pushed, url, action, platform, skipped, and skip_reason fields