| name | gitlab-milestone |
| description | GitLab milestone operations. ALWAYS use this skill when user wants to: (1) list milestones, (2) create new milestones, (3) manage sprints or iterations. |
| version | 1.0.0 |
| author | GitLab-Assistant-Skills |
| license | MIT |
| allowed-tools | ["Bash","Read","Glob","Grep"] |
Milestone Skill
Milestone management operations for GitLab using the glab CLI.
Quick Reference
| Operation | Command | Risk |
|---|
| List milestones | glab milestone list | - |
| Create milestone | glab milestone create <title> | ⚠️ |
Risk Legend: - Safe | ⚠️ Caution | ⚠️⚠️ Warning | ⚠️⚠️⚠️ Danger
When to Use This Skill
ALWAYS use when:
- User wants to manage project milestones
- User mentions "milestone", "sprint", "iteration", "release planning"
- User wants to organize work into time-boxed periods
NEVER use when:
- User wants to assign milestones to issues (use gitlab-issue)
- User wants to create releases (use gitlab-release)
Available Commands
List Milestones
glab milestone list [options]
Options:
| Flag | Description |
|---|
-s, --state=<state> | Filter by state: active, closed, all |
-P, --per-page=<n> | Results per page |
--all | Get all milestones |
Examples:
glab milestone list
glab milestone list --state=all
glab milestone list --state=closed
glab milestone list --per-page=50
Create Milestone
glab milestone create <title> [options]
Options:
| Flag | Description |
|---|
-d, --description=<desc> | Milestone description |
--due-date=<date> | Due date (YYYY-MM-DD format) |
--start-date=<date> | Start date (YYYY-MM-DD format) |
Examples:
glab milestone create "Sprint 1"
glab milestone create "Q1 Release" \
-d "Features planned for Q1 2024 release"
glab milestone create "Sprint 5" \
--start-date=2024-02-01 \
--due-date=2024-02-14 \
-d "Two-week sprint"
glab milestone create "v2.0.0" \
--due-date=2024-03-15 \
-d "Major version 2.0 release"
Common Workflows
Workflow 1: Sprint Planning
glab milestone create "Sprint 12" \
--start-date=2024-03-01 \
--due-date=2024-03-14 \
-d "Sprint 12 goals:
- Complete authentication feature
- Fix critical bugs
- Improve test coverage"
glab issue update 101 -m "Sprint 12"
glab issue update 102 -m "Sprint 12"
glab issue update 103 -m "Sprint 12"
glab issue list --milestone="Sprint 12"
Workflow 2: Release Planning
glab milestone list
glab milestone create "Release 1.5" \
--due-date=2024-04-01 \
-d "Version 1.5 release including:
- New dashboard
- Performance improvements
- Bug fixes from user feedback"
glab issue list --label="release-1.5" | while read issue; do
glab issue update $issue -m "Release 1.5"
done
Workflow 3: Review Sprint Progress
glab milestone list --state=active
glab issue list --milestone="Sprint 12" --state=opened
glab issue list --milestone="Sprint 12" --state=closed
glab mr list --milestone="Sprint 12"
Milestone Naming Conventions
Common patterns for milestone names:
| Pattern | Example | Use Case |
|---|
| Sprint N | Sprint 1, Sprint 2 | Agile sprints |
| YYYY-QN | 2024-Q1, 2024-Q2 | Quarterly planning |
| vX.Y.Z | v1.0.0, v2.1.0 | Version releases |
| YYYY-MM | 2024-03, 2024-04 | Monthly cycles |
| Feature Name | "User Authentication" | Feature-based milestones |
Troubleshooting
| Issue | Cause | Solution |
|---|
| Authentication failed | Invalid/expired token | Run glab auth login |
| Milestone not found | Wrong name or closed | Check with glab milestone list --state=all |
| Invalid date | Wrong format | Use YYYY-MM-DD format |
| Permission denied | Not maintainer | Need maintainer+ role |
Related Documentation