AgentSkillsCN

gitlab:todos

管理GitLab待办事项收件箱。当您需要列出、筛选或归类GitLab待办事项(标记为已完成、标记为待处理)时,此工具将助您轻松掌控。

SKILL.md
--- frontmatter
name: gitlab:todos
description: Managing GitLab todos inbox. Use when listing, filtering, or triaging GitLab todos (mark done, mark pending).

GitLab Todos

Manage the GitLab todos inbox via glab api.

Listing

bash
glab api /todos --paginate | jq '[.[] | select(.state == "pending")]'

Fields

FieldDescription
idTodo ID for actions
action_nameassigned, mentioned, build_failed, approval_required, review_requested, directly_addressed
target_typeMergeRequest, Issue
target.titleTarget title
target.web_urlBrowser URL
statepending, done
project.path_with_namespaceFull project path

Actions

bash
glab api -X POST /todos/{id}/mark_as_done        # Mark single done
glab api -X POST /todos/mark_as_done              # Mark all done

Filtering

Filter in jq after the API call:

bash
# By action
... | jq '[.[] | select(.state == "pending" and .action_name == "review_requested")]'

# MRs only
... | jq '[.[] | select(.state == "pending" and .target_type == "MergeRequest")]'

Bulk Mark Done

bash
glab api /todos --paginate | \
  jq -r '[.[] | select(.state == "pending")] | .[].id' | \
  xargs -I {} glab api -X POST /todos/{}/mark_as_done