SuperAPI AI 工具集

gitlab-discussion

编程与开发

查看项目

更新于 10-15 21:55

技能介绍

该技能用于通过 glab api 原始接口管理 GitLab 的线程化讨论(discussion),适用于 MR 和 Issue。用户提到 discussion、thread、conversation,或需要添加代码评审评论、回复已有评论、解决/取消解决讨论、在 MR 特定代码行评论时应使用本技能。

主要能力:列出 MR 或 Issue 的讨论(支持分页);获取指定讨论;在 MR 或 Issue 上创建讨论;回复讨论;解决或取消解决 MR 讨论;更新或删除讨论中的 note。

用法要点:使用 glab api 命令调用 projects/:id/... 端点,例如列出 MR 讨论用 glab api projects/123/merge_requests/1/discussions --method GET;创建讨论用 POST 并传 -f body=...;解决讨论用 PUT -f resolved=true。针对 MR 代码行的 diff 评论需提供 position 字段,包括 base_sha、head_sha、start_sha、position_type,以及 new_path/new_line 或 old_path/old_line;这些 SHA 可从 MR 详情的 diff_refs 获取。可通过 body 中写 suggestion 代码块创建建议。

权限与限制:需要 api 令牌范围;读取讨论需 Reporter+(私有仓库),创建讨论需 Reporter+,解决讨论需 Developer+ 或 MR 作者。简单评论应改用 glab mr note 或 glab issue note;审阅 MR 变更用 gitlab-mr;搜索评论用 gitlab-search。删除 note 风险较高,创建、回复、解决等操作需谨慎。常见问题包括缺 position 字段导致 400、discussion ID 错误导致 404、无权限或不可解决、SHA 或行号过期、body 未设置。系统自动生成的 note 不可编辑。产品收费、价格、平台等信息暂未提供。