GitLab Issue by dedalus-erp-pas/foundation-skills
npx skills add https://github.com/dedalus-erp-pas/foundation-skills --skill 'GitLab Issue'通过全面的上下文集成和结构化工作流程,创建、检索、更新和管理 GitLab 问题。
此技能配置用于自托管的 GitLab 实例:
在以下情况下激活此技能:
重要:在创建或修改问题之前,务必确认 project_id
始终使用描述性的问题标题并提供结构化的描述
切勿创建重复的问题 - 在适当时先搜索现有问题
首先,收集有关当前项目和上下文的信息:
在任何操作之前,验证项目存在且您拥有正确的标识符:
自托管 GitLab 实例: https://gitlab-erp-pas.dedalus.lan
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
使用 gitlab-mcp(get_project) 来:
创建问题时,收集完整的上下文:
必需信息:
project_id: 项目标识符(例如,"namespace/project" 或数字 ID)title: 清晰、描述性的问题标题可选但推荐:
description: Markdown 格式的详细描述labels: 标签名称数组(例如,["bug", "priority::high"])assignee_ids: 要分配的用户 ID 数组milestone_id: 要关联的里程碑 IDdue_date: 截止日期,格式为 YYYY-MM-DDconfidential: 布尔值,用于敏感问题人工介入 - 请求上下文
始终使用 AskUserQuestion 来澄清问题详情:
Question: "这是什么类型的问题?"
Options:
- "错误报告 - 某些功能无法正常工作"
- "功能请求 - 需要新功能"
- "任务 - 需要完成的工作项"
- "文档 - 需要更新文档"
- "其他 - 让我描述一下"
问题描述模板:
为了清晰起见,结构化描述:
## 摘要
[问题的简要描述]
## 当前行为
[当前发生的情况 - 针对错误]
## 预期行为
[应该发生的情况 - 针对错误]
## 重现步骤
[针对错误 - 编号步骤]
## 验收标准
[针对功能/任务 - 定义"完成"的标准]
## 附加上下文
[截图、日志、相关问题等]
使用 gitlab-mcp(get_issue) 并附带:
project_id: 项目标识符issue_iid: 内部问题 ID(GitLab 中显示的数字,例如 #42)这将返回完整的问题信息,包括:
使用 gitlab-mcp(list_issues) 并附带过滤器:
project_id: 项目标识符state: "opened"、"closed" 或 "all"labels: 按标签过滤milestone: 按里程碑标题过滤assignee_id: 按分配者过滤search: 在标题和描述中搜索order_by: 按 "created_at"、"updated_at"、"priority" 等排序sort: "asc" 或 "desc"per_page: 每页结果数(最多 100)更新问题时,只提供更改的字段:
使用 gitlab-mcp(update_issue) 并附带:
project_id: 项目标识符issue_iid: 内部问题 ID状态变更:
state_event: "close" - 关闭问题state_event: "reopen" - 重新打开问题要查找相关的合并请求:
使用 gitlab-mcp(list_merge_requests) 并附带过滤器,以查找引用该问题的 MR:
关键:在创建或修改问题之前,请与用户确认
收集所有信息后,呈现摘要供用户批准:
在项目中创建问题:namespace/project
标题:[title]
描述:[summary]
标签:[labels]
分配者:[assignee]
是否继续创建问题?
## 错误描述
[错误的清晰描述]
## 环境
- 版本:[version]
- 操作系统:[operating system]
- 浏览器:[如果适用]
## 重现步骤
1. [第一步]
2. [第二步]
3. [看到错误]
## 预期行为
[应该发生的情况]
## 实际行为
[实际发生的情况]
## 截图/日志
[附加相关文件]
## 可能的解决方案
[可选:如果您有想法]
## 功能描述
[请求功能的清晰描述]
## 问题陈述
[这解决了什么问题?]
## 提议的解决方案
[这应该如何工作?]
## 考虑的替代方案
[考虑过的其他方法]
## 验收标准
- [ ] [标准 1]
- [ ] [标准 2]
- [ ] [标准 3]
## 附加上下文
[模型、示例等]
## 任务描述
[需要完成的工作]
## 背景
[为什么需要这个?]
## 要求
- [ ] [要求 1]
- [ ] [要求 2]
## 完成定义
- [ ] [标准 1]
- [ ] [标准 2]
## 依赖关系
[相关问题、阻碍因素]
用户: "为我们讨论的登录错误创建一个问题"
AI 工作流程:
结果:
标题:[BUG] 会话过期时使用 OAuth2 登录失败
描述:
## 错误描述
当用户之前的会话过期时,他们无法使用 OAuth2 身份验证登录。
## 重现步骤
1. 使用 OAuth2(Google/GitHub)登录
2. 等待会话过期(或清除 cookie)
3. 尝试再次登录
4. 观察错误:"Invalid state parameter"
## 预期行为
用户应被重定向到 OAuth 提供商并成功登录。
## 实际行为
登录失败,出现 "Invalid state parameter" 错误。
## 环境
- 版本:2.3.1
- 浏览器:Chrome 120, Firefox 121
标签:["bug", "priority::high", "auth"]
用户: "显示分配给我的所有未解决的错误"
AI 工作流程:
结果:
找到 3 个分配给您且未解决的错误问题:
#142 - [BUG] 大文件上传时 API 超时
标签:bug, priority::medium
创建于:2024-01-15
#138 - [BUG] Safari 浏览器上仪表板图表未渲染
标签:bug, frontend, priority::low
创建于:2024-01-12
#125 - [BUG] 电子邮件通知延迟 30 分钟以上
标签:bug, priority::high
创建于:2024-01-08
用户: "关闭问题 #142 并添加评论说明已在 v2.4.0 中修复"
AI 工作流程:
使用 gitlab-mcp(update_issue):
project_id: "mygroup/myproject"
issue_iid: 142
state_event: "close"
结果:
问题 #142 "[BUG] 大文件上传时 API 超时" 已关闭。
用户: "为添加深色模式支持创建一个功能请求"
AI 工作流程:
结果:
标题:[FEATURE] 添加深色模式主题支持
描述:
## 功能描述
实现一个深色模式主题选项,用户可以在其偏好设置中切换。
## 问题陈述
在低光环境下工作的用户对当前明亮的界面感到眼睛疲劳。深色模式将提高可访问性和用户舒适度。
## 提议的解决方案
- 在用户偏好设置中添加主题切换
- 为主题颜色实现 CSS 变量
- 将偏好设置存储在用户设置中
- 支持系统偏好检测
## 验收标准
- [ ] 用户可以在设置中切换浅色/深色模式
- [ ] 主题偏好设置跨会话持久化
- [ ] 首次访问时检测系统偏好
- [ ] 所有 UI 组件都支持两种主题
- [ ] 深色模式下无障碍对比度没有问题
## 附加上下文
参考设计:[链接到模型]
类似实现:GitHub, GitLab, VS Code
标签:["feature", "enhancement", "ux"]
priority::high、status::in-progress)bug、feature)与区域标签(frontend、api)结合使用每周安装次数
0
代码仓库
GitHub 星标数
2
首次出现时间
1970年1月1日
安全审计
Create, retrieve, update, and manage GitLab issues with comprehensive context integration and structured workflows.
This skill is configured for a self-hosted GitLab instance:
Activate this skill when:
IMPORTANT: Always confirm project_id before creating or modifying issues
Always use descriptive issue titles and provide structured descriptions
Never create duplicate issues - search existing issues first when appropriate
First, collect information about the current project and context:
Before any operation, verify the project exists and you have the correct identifier:
Self-hosted GitLab Instance: https://gitlab-erp-pas.dedalus.lan
Use gitlab-mcp(get_project) to:
When creating issues, gather complete context:
Required Information:
project_id: Project identifier (e.g., "namespace/project" or numeric ID)title: Clear, descriptive issue titleOptional but Recommended:
description: Detailed description in Markdown formatlabels: Array of label names (e.g., ["bug", "priority::high"])assignee_ids: Array of user IDs to assignmilestone_id: Milestone ID to associatedue_date: Due date in YYYY-MM-DD formatconfidential: Boolean for sensitive issuesHuman-in-the-Loop - Ask for Context
Always use AskUserQuestion to clarify issue details:
Question: "What type of issue is this?"
Options:
- "Bug report - something is not working correctly"
- "Feature request - new functionality needed"
- "Task - work item to complete"
- "Documentation - documentation needs update"
- "Other - let me describe it"
Issue Description Template:
Structure descriptions for clarity:
## Summary
[Brief description of the issue]
## Current Behavior
[What is happening now - for bugs]
## Expected Behavior
[What should happen - for bugs]
## Steps to Reproduce
[For bugs - numbered steps]
## Acceptance Criteria
[For features/tasks - what defines "done"]
## Additional Context
[Screenshots, logs, related issues, etc.]
Use gitlab-mcp(get_issue) with:
project_id: Project identifierissue_iid: Internal issue ID (the number shown in GitLab, e.g., #42)This returns complete issue information including:
Use gitlab-mcp(list_issues) with filters:
project_id: Project identifierstate: "opened", "closed", or "all"labels: Filter by labelsmilestone: Filter by milestone titleassignee_id: Filter by assigneesearch: Search in title and descriptionorder_by: Sort by "created_at", "updated_at", "priority", etc.sort: "asc" or "desc"per_page: Results per page (max 100)When updating issues, only provide changed fields:
Use gitlab-mcp(update_issue) with:
project_id: Project identifierissue_iid: Internal issue IDState Changes:
state_event: "close" - Close the issuestate_event: "reopen" - Reopen the issueTo find related merge requests:
Use gitlab-mcp(list_merge_requests) with filters to find MRs that reference the issue:
CRITICAL: Confirm with user before creating or modifying issues
After gathering all information, present a summary for user approval:
Creating issue in project: namespace/project
Title: [title]
Description: [summary]
Labels: [labels]
Assignee: [assignee]
Proceed with issue creation?
## Bug Description
[Clear description of the bug]
## Environment
- Version: [version]
- OS: [operating system]
- Browser: [if applicable]
## Steps to Reproduce
1. [First step]
2. [Second step]
3. [See error]
## Expected Behavior
[What should happen]
## Actual Behavior
[What actually happens]
## Screenshots/Logs
[Attach relevant files]
## Possible Solution
[Optional: if you have ideas]
## Feature Description
[Clear description of the requested feature]
## Problem Statement
[What problem does this solve?]
## Proposed Solution
[How should this work?]
## Alternatives Considered
[Other approaches considered]
## Acceptance Criteria
- [ ] [Criterion 1]
- [ ] [Criterion 2]
- [ ] [Criterion 3]
## Additional Context
[Mockups, examples, etc.]
## Task Description
[What needs to be done]
## Background
[Why is this needed?]
## Requirements
- [ ] [Requirement 1]
- [ ] [Requirement 2]
## Definition of Done
- [ ] [Criterion 1]
- [ ] [Criterion 2]
## Dependencies
[Related issues, blockers]
User: "Create an issue for the login bug we discussed"
AI Workflow:
Result:
Title: [BUG] Login fails with OAuth2 when session expires
Description:
## Bug Description
Users are unable to log in using OAuth2 authentication when their
previous session has expired.
## Steps to Reproduce
1. Log in with OAuth2 (Google/GitHub)
2. Wait for session to expire (or clear cookies)
3. Attempt to log in again
4. Observe error: "Invalid state parameter"
## Expected Behavior
User should be redirected to OAuth provider and log in successfully.
## Actual Behavior
Login fails with "Invalid state parameter" error.
## Environment
- Version: 2.3.1
- Browser: Chrome 120, Firefox 121
Labels: ["bug", "priority::high", "auth"]
User: "Show me all open bugs assigned to me"
AI Workflow:
Result:
Found 3 open bug issues assigned to you:
#142 - [BUG] API timeout on large file uploads
Labels: bug, priority::medium
Created: 2024-01-15
#138 - [BUG] Dashboard graphs not rendering on Safari
Labels: bug, frontend, priority::low
Created: 2024-01-12
#125 - [BUG] Email notifications delayed by 30+ minutes
Labels: bug, priority::high
Created: 2024-01-08
User: "Close issue #142 and add a comment that it's fixed in v2.4.0"
AI Workflow:
Using gitlab-mcp(update_issue):
project_id: "mygroup/myproject"
issue_iid: 142
state_event: "close"
Result:
Issue #142 "[BUG] API timeout on large file uploads" has been closed.
User: "Create a feature request for adding dark mode support"
AI Workflow:
Result:
Title: [FEATURE] Add dark mode theme support
Description:
## Feature Description
Implement a dark mode theme option that users can toggle in their
preferences.
## Problem Statement
Users working in low-light environments experience eye strain with
the current bright interface. Dark mode would improve accessibility
and user comfort.
## Proposed Solution
- Add theme toggle in user preferences
- Implement CSS variables for theme colors
- Store preference in user settings
- Support system preference detection
## Acceptance Criteria
- [ ] User can toggle between light/dark mode in settings
- [ ] Theme preference persists across sessions
- [ ] System preference is detected on first visit
- [ ] All UI components support both themes
- [ ] No accessibility contrast issues in dark mode
## Additional Context
Reference designs: [link to mockups]
Similar implementations: GitHub, GitLab, VS Code
Labels: ["feature", "enhancement", "ux"]
priority::high, status::in-progress)bug, feature) with area labels (frontend, api)Weekly Installs
0
Repository
GitHub Stars
2
First Seen
Jan 1, 1970
Security Audits
Azure 升级评估与自动化工具 - 轻松迁移 Functions 计划、托管层级和 SKU
79,900 周安装