jpskill.com
🛠️ 開発・MCP コミュニティ

gitlab-mr-issue

查看/更新 GitLab Issue、MR(含评论与 diff),并按团队规范非交互创建或修改 MR/Issue;涉及 GitLab(含自建实例)Issue/MR 的操作时使用。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o gitlab-mr-issue.zip https://jpskill.com/download/18600.zip && unzip -o gitlab-mr-issue.zip && rm gitlab-mr-issue.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/18600.zip -OutFile "$d\gitlab-mr-issue.zip"; Expand-Archive "$d\gitlab-mr-issue.zip" -DestinationPath $d -Force; ri "$d\gitlab-mr-issue.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して gitlab-mr-issue.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → gitlab-mr-issue フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

GitLab CLI Skill(MR/Issue)

基本準備

  • 身份と認証の確認:
    • glab auth status で現在のインスタンスと "Logged in to <host> as <user>" の行を読み取ります。
    • ユーザー名を直接取得:GITLAB_HOST=<host> glab api /user | jq -r '.username'(ローカルに jq が必要。グローバルに GITLAB_HOST が設定済みの場合は glab api /user で可)。
    • 自作インスタンスは、環境変数 GITLAB_HOST で指定することを推奨します。単回のみ上書きしたい場合は、コマンドの前に GITLAB_HOST=<host> を追加するか、-R group/project を使用します。
  • 出力フォーマットはデフォルトで十分なことが多いですが、機械可読性が必要な場合は --output json を使用します。
  • MR または Issue の作成に成功すると、CLI から返される完全な URL がターミナルに単独の行で出力されます。

Issue のクイック表示

  • 本文のみを表示:glab issue view <id|url>
  • コメント付き:glab issue view <id|url> --comments(必要に応じて --system-logs を追加)。
  • リスト表示:glab issue list --state opened --per-page 50 [-R group/project]。ラベルでフィルタリングするには --label foo,bar を使用します。
  • コメントの追加:glab issue note <id> -m "comment"

MR のクイック表示

  • MR の概要(必要に応じてフィールドを取得):glab mr view <id|branch|url> --output json | jq -r '.title,.state,.author.username,.web_url,.description'
  • diff の表示:glab mr diff <id|branch> --color=never。生の patch が必要な場合は --raw を使用します。
  • 関連 issue:glab mr issues <id>

MR の作成(非インタラクティブ)

以下のタイトルと説明の仕様は、デフォルトの推奨フォーマットです。チーム/リポジトリ/プラットフォームなどの既存の制約と競合する場合は、既存の制約に従ってください。明確な要件(日本語が必要な場合など)がある場合は、そちらを優先します。カバーされていない部分は、この仕様に従って補完します。

  1. ローカルブランチがプッシュ済みで、git status がクリーンであることを確認します。
  2. タイトルのスタイル:英語、セマンティックコミットの仕様(例:feat(scope): short summary)に従い、簡潔で中心的な目的を記述します。タイトルに日本語が必要な場合でも、セマンティックプレフィックス(featfix など)は英語のままにする必要があります。
  3. 説明のスタイル:英語、短い文章と箇条書きを使用し、コードを見ない読者にも動機と結果を理解できるようにすることを優先します。重要なのは、what/why/impact と必要な制約であり、詳細な経緯や開発プロセスの詳細は避けます。コンテキストが目標や制約を明確にするのに不十分な場合は、開発者に確認してから記述する必要があります。専門用語、関数名、メソッド名、クラス名、API 名、または設定キーを使用する場合は、可読性と正確性を向上させるために inline code(バッククォート)で囲みます。
  4. 期待される本文の形式(簡潔でありながら情報が完全、必要に応じて無関係なブロックを削除):
  • ## Summary:1〜2つの短い文章で、機能レベルでの目的と影響を概説します。コードの変更を1つずつ説明するのではなく、機能の変更を強調します。層(Service/DAO など)をまたぎ、意味的に一貫性のある変更は、1つの機能記述にまとめる必要があります。
  • ## Key changes:3〜5個の要点を箇条書きで示し、主要な変更点を記述します。
  • ## Constraints / tradeoffs:制約、制限、または理想的でない選択肢がある場合は、簡単に説明します。
  • ## Testing:検証方法、コマンド、またはシナリオ。テストされていない場合は、その理由を明記する必要があります。
  • ## Notes(オプション):レビューの注目点、リリースの注意事項、または今後の計画。
  1. 特に強調:説明は、MR のマージ前後のシステムの変化と影響に焦点を当てる必要があり、開発中の途中経過や修正手順を記録することは避けてください。
  2. heredoc を使用して複数行の説明を渡し、インタラクティブな編集を回避します。
    glab mr create \
    --title "feat(scope): short summary" \
    --description "$(cat <<'EOF'
    # 上記の形式で本文を埋めてください
    EOF
    )" \
    --target-branch main \
    --source-branch $(git branch --show-current) \
    --label bugfix \
    --draft \
    --yes
  • 推奨パラメータ(必要に応じて有効化):--remove-source-branch(マージ後にソースブランチを削除)、--squash-before-merge(マージ前に単一のコミットに圧縮)。チームの好みに応じて省略できます。
  • その他の一般的なパラメータ:--reviewer user1,user2--allow-collaboration
  • 既存の MR の変更:glab mr update <id> --title "..." --description "$(cat <<'EOF'\n...\nEOF\n)" --label ... --yes

Issue の作成(非インタラクティブ)

  • コマンドモードは MR と同様で、--title と heredoc で説明します。
    glab issue create \
    --title "feat: short summary" \
    --description "$(cat <<'EOF'\n- context\n- expected\nEOF\n)" \
    --label backlog,team-x \
    --assignee user1 \
    --yes
  • プライベートにする必要がある場合:--confidential を追加します。締め切り --due-date YYYY-MM-DD

共通オプションの早見表

  • -R group/project:自作インスタンスのプロジェクトを指定します。完全な URL と同等です。
  • --per-page--page:リストまたはコメントをページ分割して表示する場合に使用します。

Issue/MR のタイトルまたは説明の更新(前提条件)

Issue または MR のタイトル/説明を更新する前に、現在のタイトル/本文(変更される内容)を読み取ってから変更する必要があります。

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

GitLab CLI Skill(MR/Issue)

基本准备

  • 确认身份与认证:
    • glab auth status 读取当前实例及 “Logged in to <host> as <user>” 行。
    • 直接取用户名:GITLAB_HOST=<host> glab api /user | jq -r '.username'(依赖本机 jq,若已设全局 GITLAB_HOST 可直接 glab api /user)。
    • 自建实例优先通过环境变量 GITLAB_HOST 指定;如需单次覆盖,可在命令前加 GITLAB_HOST=<host> 或用 -R group/project
  • 输出格式默认够用,若需机器可读用 --output json
  • 创建 MR 或 Issue 成功后,在终端单独一行输出 CLI 返回的完整 URL。

Issue 快速查看

  • 只看正文:glab issue view <id|url>.
  • 带讨论:glab issue view <id|url> --comments(必要时加 --system-logs)。
  • 列表:glab issue list --state opened --per-page 50 [-R group/project];过滤标签用 --label foo,bar
  • 添加评论:glab issue note <id> -m "comment"

MR 快速查看

  • MR 概览(按需取字段):glab mr view <id|branch|url> --output json | jq -r '.title,.state,.author.username,.web_url,.description'
  • 查看 diff:glab mr diff <id|branch> --color=never;需要原始 patch 用 --raw
  • 相关 issue:glab mr issues <id>

创建 MR(非交互)

以下标题与描述规范为默认推荐格式;如与团队/仓库/平台等既有约束冲突,以既有约束为准。若有明确要求(如需中文),则优先遵循;未覆盖的部分再按本规范补齐。

  1. 确保本地分支已推送且 git status 干净。
  2. 标题风格:英文、遵循语义化提交规范(如 feat(scope): short summary),保持简洁且描述核心目的;即使标题要求中文,语义化前缀(如 featfix)仍需英文。
  3. 描述风格:英文、短句和项目符号,优先让不看代码的读者也能理解动机与结果。重点是 what/why/impact 与必要约束,避免流水账与开发过程细节。若上下文不足以明确目标或约束,应主动向开发者确认后再撰写。涉及专有名词、函数名、方法名、类名、API 名称或配置键时,使用 inline code(反引号)包裹以提升可读性与准确性。
  4. 期望正文格式(精简但信息完整,按需删减无关块):
  • ## Summary:用 1-2 条短句从功能层面概述目的与影响,强调功能变更而非逐条代码变更;跨层(如 Service/DAO)且语义一致的改动应合并为一次功能描述。
  • ## Key changes:3-5 条要点列出主要变更。
  • ## Constraints / tradeoffs:若存在约束、限制或非理想选择,简要说明。
  • ## Testing:验证方式、命令或场景;未测试需注明原因。
  • ## Notes(可选):review 关注点、发布注意事项或后续计划。
  1. 特别强调:描述应聚焦 MR 合并前后系统的变化与影响,避免记录开发中的中间过程或修改步骤。
  2. 用 heredoc 传多行描述,避免交互式编辑:
    glab mr create \
    --title "feat(scope): short summary" \
    --description "$(cat <<'EOF'
    # 按上面的格式填充正文
    EOF
    )" \
    --target-branch main \
    --source-branch $(git branch --show-current) \
    --label bugfix \
    --draft \
    --yes
  • 推荐参数(可按需开启):--remove-source-branch(合并后删源分支)、--squash-before-merge(合并前压缩为单一 commit);若团队偏好可省略。
  • 其他常用参数:--reviewer user1,user2--allow-collaboration
  • 修改已建 MR:glab mr update <id> --title "..." --description "$(cat <<'EOF'\n...\nEOF\n)" --label ... --yes

Issue 创建(非交互)

  • 命令模式与 MR 类似,使用 --title 与 heredoc 描述:
    glab issue create \
    --title "feat: short summary" \
    --description "$(cat <<'EOF'\n- context\n- expected\nEOF\n)" \
    --label backlog,team-x \
    --assignee user1 \
    --yes
  • 若需私密:加 --confidential;截止日期 --due-date YYYY-MM-DD

常见选项速记

  • -R group/project:指定自建实例项目,等价于完整 URL。
  • --per-page--page:分页查看列表或评论时使用。

更新 Issue/MR 标题或描述(前置要求)

在更新 Issue 或 MR 的标题/描述之前,必须先读取当前标题/正文(即将被修改的内容),再进行修改。