Token导航 LogoToken导航

Agent Skill · 研究检索

gitlab-workflow(GitLab 工作流)

用于围绕 GitLab 项目、Merge Request、Issue、分支、流水线和代码审查流程提供辅助能力。它适合让 Agent 查询项目状态、整理提交差异、辅助检查合并请求或汇总 CI 结果。使用时需要确认项目权限、访问 token 和目标分支范围;涉及合并、推送、改工单或触发流水线时,应先预览影响并核对团队流程。

gitlab-workflow 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为接触敏感数据;许可证为 MIT-0,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 9,714。

总安装 13,733周安装 561GitHub Stars 公开资料未说明下载 4,443核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
0.1.1

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:gitlab-workflow(GitLab 工作流)
来源仓库:https://github.com/paul-leo/gitlab-workflow
安装命令:
openclaw skills install gitlab-workflow
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install gitlab-workflow

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

GitLab工作流助手,严格遵循团队规范。用于MR管理、审查代码、CI/CD状态查询、分支管理和合并操作。通过MorphixAI代理安全访问GitLab API。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install gitlab-workflow;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

gitlab-workflow 怎么安装?

在终端执行 openclaw skills install gitlab-workflow。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

gitlab-workflow 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

gitlab-workflow 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

gitlab-workflow 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

gitlab-workflow 用的人多吗?

公开数据是累计安装 13,733 次,近一周安装 561 次,下载 4,443 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

gitlab-workflow 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
gitlab-workflow

GitLab 工作流 · 本页

13,733—接触敏感数据MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
gitlab-workflow
description
GitLab 工作流助手,严格遵循团队规范。用于 MR 管理、代码审查、CI/CD 状态查询、分支管理和合并操作。通过 MorphixAI 代理安全访问 GitLab API。
metadata
openclaw
emoji
🦊
requires
env
[MORPHIXAI_API_KEY]

GitLab 工作流

通过 mx_gitlab 工具管理 GitLab 项目。严格遵守团队规范。

前置条件

  1. 安装插件: openclaw plugins install openclaw-morphixai
  2. 获取 API Key: 访问 morphix.app/api-keys 生成 mk_xxxxxx 密钥
  3. 配置环境变量: export MORPHIXAI_API_KEY="mk_your_key_here"
  4. 链接账号: 访问 morphix.app/connections 链接 GitLab 账号,或通过 mx_link 工具链接(app: gitlab)

参数命名规范(重要)

mx_gitlab 工具所有 action 的参数命名:

参数说明
project项目 ID(数字字符串)或路径(group/repo),不是 project_id
mr_iidMR 在项目内的序号,不是 merge_request_iid
pipeline_idPipeline 的全局 ID

description 字段换行格式

⚠️ description 字段必须使用真实换行符,不要使用 `\

` 字面量字符串。

错误示例(在 GitLab 上会显示为 `\

`):

``` description: "改动\
  • 修复 bug\
  • 新增功能"
`` 正确示例(使用 YAML 多行字符串): `yaml description: | ## 改动 - 修复 bug - 新增功能 ## 测试 - 单元测试通过 ``

代码审查策略(优先级顺序)

获取 MR 代码变更时,按以下顺序尝试:

✅ 优先:本地 git(推荐)

本地仓库 + git 命令是最可靠的代码审查方式:

  • 无需额外认证(使用本地已有凭证)
  • 无响应体大小限制(任意规模的 diff)
  • 速度快,工具丰富(log、diff、show、blame)

第一步:查找本地仓库路径

# nodes.run — 在本机执行
find ~/www -maxdepth 4 -type d -name '<仓库名>'
# 例:find ~/www -maxdepth 4 -type d -name 'tanka-2b-web'

第二步:fetch 最新数据

# nodes.run — 工作目录切换到仓库路径
cd ~/www/<项目路径> && git fetch origin

第三步:获取 MR 的 commits(需要知道源分支和目标分支)

# 查看 MR 分支间的 commit 列表
git log origin/<target-branch>..origin/<source-branch> --oneline

# 示例(MR: feat/zoom-v2/main → uat-tanka-oh)
git log origin/uat-tanka-oh..origin/feat/zoom-v2/main --oneline

第四步:获取文件变更统计

git diff --stat origin/<target-branch>...origin/<source-branch>
# 示例
git diff --stat origin/uat-tanka-oh...origin/feat/zoom-v2/main

第五步:获取具体文件的 diff

# 全量 diff(大 MR 慎用,建议指定文件)
git diff origin/<target-branch>...origin/<source-branch>

# 指定文件 diff(推荐)
git diff origin/<target-branch>...origin/<source-branch> -- src/path/to/file.ts

# 只看特定目录
git diff origin/<target-branch>...origin/<source-branch> -- src/components/

⚠️ 备用:mx_link proxy(本地无仓库时使用)

当本地不存在仓库时,通过 MorphixAI 代理调用 GitLab API。 注意:大型 MR 的 diff 可能因响应体过大返回 400,此时只能使用本地 git。

mx_link:
  action: proxy
  account_id: <gitlab-account-id>
  method: GET
  url: https://gitlab.com/api/v4/projects/<project-id>/merge_requests/<mr-iid>/changes

可用的 MR 相关 API:

  • GET /api/v4/projects/{id}/merge_requests/{iid} — MR 详情
  • GET /api/v4/projects/{id}/merge_requests/{iid}/changes — 文件变更(可能因大小失败)
  • GET /api/v4/projects/{id}/merge_requests/{iid}/discussions — Discussion 线程
  • GET /api/v4/projects/{id}/merge_requests/{iid}/notes — 评论列表
  • POST /api/v4/projects/{id}/merge_requests/{iid}/notes — 发表评论
  • GET /api/v4/projects/{id}/merge_requests/{iid}/approvals — 审批状态

分支命名

  • feature/JIRA-{ID}-{简短描述} — 新功能
  • fix/JIRA-{ID}-{简短描述} — bug 修复
  • release/v{X.Y.Z} — 发布分支
  • hotfix/v{X.Y.Z}-{描述} — 生产热修复

Commit Message 格式

{Scope}: {action} {description}

  • Scope:模块名(SDK、CLI、Gateway、Bot 等)
  • Actions:add / update / fix / remove / refactor
  • 示例:SDK: add message retry logic
  • 相关改动一个 commit,绝不混杂无关重构

核心操作(mx_gitlab)

查看当前用户

mx_gitlab:
  action: get_user

列出项目

mx_gitlab:
  action: list_projects
  per_page: 10

查看项目详情

mx_gitlab:
  action: get_project
  project: "12345"

MR 操作

列出 MR:

mx_gitlab:
  action: list_merge_requests
  project: "12345"
  state: "opened"

创建 MR:

mx_gitlab:
  action: create_merge_request
  project: "12345"
  source_branch: "feature/JIRA-123-user-login"
  target_branch: "main"
  title: "[JIRA-123] 实现用户登录功能"
  description: "## 改动\
- 实现 JWT 登录\
\
## 测试\
- 单元测试通过\
\
## 关联\
- JIRA-123"

审批 MR:

mx_gitlab:
  action: approve_merge_request
  project: "12345"
  mr_iid: 42

查看单条 MR 详情(含合并就绪状态):

mx_gitlab:
  action: get_merge_request
  project: "12345"
  mr_iid: 42

返回关键字段:

  • detailed_merge_status: mergeable(可合并)/ preparing(准备中,需等待)/ checking(检查中)/ ci_must_pass(CI 未通过)/ not_approved(未获批准)/ discussions_not_resolved(有未解决讨论)
  • has_conflicts: 是否有冲突
  • blocking_discussions_resolved: 阻塞性讨论是否已解决
  • pipeline: 最新 Pipeline 状态

合并前必须先检查状态(重要):

⚠️ 直接调用 merge_merge_request 而不检查状态会导致 500 错误(MR 未就绪时 GitLab 拒绝合并)
# 正确流程:
1. mx_gitlab: get_merge_request → 确认 detailed_merge_status === "mergeable"
2. 如果是 "preparing" 或 "checking" → 等待后重试 get_merge_request
3. 如果是 "ci_must_pass" → CI 未通过,不能合并
4. 如果是 "not_approved" → 需要审批,先 approve_merge_request
5. 确认 mergeable 后 → mx_gitlab: merge_merge_request

合并 MR:

mx_gitlab:
  action: merge_merge_request
  project: "12345"
  mr_iid: 42
✅ merge_merge_request 会自动检查 detailed_merge_status,若 MR 未就绪会直接返回错误和原因,无需手动 pre-check。

更新 MR(设置 Reviewer / Assignee / 标签等):

# 先搜索 GitLab 用户 ID
mx_gitlab:
  action: search_users
  search: "username_or_name"

# 再设置 reviewer(使用搜索结果中的 id 字段)
mx_gitlab:
  action: update_merge_request
  project: "12345"
  mr_iid: 42
  reviewer_ids: [12345]

CI/CD 操作

查看 Pipeline:

mx_gitlab:
  action: list_pipelines
  project: "12345"
  per_page: 5

重试失败的 Pipeline:

mx_gitlab:
  action: retry_pipeline
  project: "12345"
  pipeline_id: 67890

Issue 操作

列出 Issue:

mx_gitlab:
  action: list_issues
  project: "12345"
  state: "opened"

创建 Issue:

mx_gitlab:
  action: create_issue
  project: "12345"
  title: "Bug: 登录页面白屏"
  description: "## 问题\
在 Safari 下登录页面白屏\
\
## 复现\
1. 打开 Safari\
2. 访问 /login"
  labels: ["bug", "frontend"]

分支操作

列出分支:

mx_gitlab:
  action: list_branches
  project: "12345"
  search: "feature/"

MR 创建规范

标题:[JIRA-{ID}] {描述}

描述必须包含:

  1. 改了什么,为什么改
  2. 如何测试
  3. 关联的 Jira Issue 链接

至少指定 1 个 Reviewer。单个 MR 最多 500 行变更。

Code Review 检查清单

Review MR 时,按顺序检查所有项目:

  1. 分支命名符合规范
  2. Commit message 清晰且有 scope
  3. 代码符合团队风格指南
  4. 有对应的测试用例
  5. CI pipeline 全绿
  6. 无未解决的 Discussion
  7. 无硬编码的 secret 或 token
  8. 破坏性变更有文档说明

所有项通过才能 approve。评论具体问题时引用行号。


常见工作流

审查指定 MR(完整流程)

1. mx_gitlab: list_merge_requests, project: "<id>", state: "opened"
     → 获取 MR 信息(source_branch, target_branch, mr_iid)

2. nodes.run: find ~/www -maxdepth 4 -type d -name '<repo>'
     → 查找本地仓库路径

3. nodes.run: cd <repo-path> && git fetch origin
     → 更新远端分支数据

4. nodes.run: git log origin/<target>..origin/<source> --oneline
     → 查看 commit 列表

5. nodes.run: git diff --stat origin/<target>...origin/<source>
     → 查看文件变更统计

6. nodes.run: git diff origin/<target>...origin/<source> -- <关键文件>
     → 深入审查关键文件的 diff

7. mx_gitlab: list_pipelines, project: "<id>" → 确认 CI 状态

8. mx_gitlab: approve_merge_request, project: "<id>", mr_iid: <iid>(审查通过后)

查看我的待处理 MR

1. mx_gitlab: get_user → 获取用户名
2. mx_gitlab: list_merge_requests, project: "<id>", state: "opened"
     → 列出 open 状态的 MR
3. mx_gitlab: list_pipelines, project: "<id>" → 检查 CI 状态

创建并合并 Feature MR

1. mx_gitlab: create_merge_request
     project: "<id>", source_branch: "feature/xxx", target_branch: "main"
     title: "[JIRA-xxx] desc"
2. mx_gitlab: get_merge_request, project: "<id>", mr_iid: <iid>
     → 等待 detailed_merge_status 变为 "mergeable"
     (刚创建后状态为 "preparing",需要等待 GitLab 完成检查)
3. mx_gitlab: list_pipelines, project: "<id>" → 确认 CI 通过
4. mx_gitlab: merge_merge_request, project: "<id>", mr_iid: <iid> → 合并

CI 失败处理

1. mx_gitlab: list_pipelines, project: "<id>", status: "failed"
2. mx_gitlab: retry_pipeline, project: "<id>", pipeline_id: <id>

设置 MR Reviewer(完整流程)

1. mx_gitlab: search_users, search: "reviewer_name"
     → 从结果中找到目标用户的 id(数字)
2. mx_gitlab: update_merge_request
     project: "<id>", mr_iid: <iid>, reviewer_ids: [<user_id>]

Pipeline 监控(等待 Pipeline 完成)

⚠️ 心跳(HEARTBEAT)默认间隔 30m,Anthropic setup-token 下为 1h,不适合实时监控。 推荐做法:将监控任务写入 HEARTBEAT.md,心跳触发时自动检查: ``md ## 待监控 - Pipeline #10164 (project: tanka-electron):等待完成,完成后通知用户 ` 或用户要求"立即检查"时,直接调用: ` mx_gitlab: list_pipelines, project: "<id>", per_page: 5 `` 对比 pipeline id 和状态,判断是否完成。

注意事项

  • project 参数:数字 ID(如 "12345")或路径(如 "my-group/my-project"),通过 list_projects 或 get_project 获取
  • mr_iid 是 MR 在项目内的序号(非全局 ID),从 list_merge_requests 或 create_merge_request 返回结果中获取
  • account_id 参数通常省略,工具自动检测已链接的 GitLab 账号
  • mx_link proxy 获取 MR diff 可能因响应体过大返回 400,优先使用本地 git

平台分布

OpenClaw

89.66%
按下载量换算3,984

安全审计

VirusTotal

可疑

ClawScan

通过

Static analysis

未展示

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills