@mohammadhprp/system-prompt 0.12.1 → 0.12.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/framework/agents/README.md +0 -1
- package/framework/commands/README.md +1 -1
- package/framework/commands/mr.md +8 -9
- package/framework/commands/review.md +1 -1
- package/framework/mcps/README.md +0 -4
- package/framework/plugins/ponytail/README.md +0 -1
- package/framework/plugins/ponytail/capabilities.md +1 -1
- package/framework/references/standards/api.md +0 -1
- package/framework/references/standards/architecture.md +0 -1
- package/framework/references/standards/database.md +0 -1
- package/framework/references/standards/debugging.md +0 -1
- package/framework/references/standards/documentation.md +0 -1
- package/framework/references/standards/logging.md +0 -1
- package/framework/references/standards/naming.md +0 -1
- package/framework/references/standards/observability.md +0 -1
- package/framework/references/standards/performance.md +0 -1
- package/framework/references/standards/pull-requests.md +0 -1
- package/framework/references/standards/security.md +0 -1
- package/framework/references/standards/testing.md +0 -1
- package/framework/skills/README.md +4 -14
- package/framework/skills/glab/SKILL.md +222 -0
- package/framework/skills/glab/references/commands-detailed.md +616 -0
- package/framework/skills/glab/references/quick-reference.md +145 -0
- package/framework/skills/glab/references/troubleshooting.md +669 -0
- package/framework/skills/improve/SKILL.md +135 -0
- package/framework/skills/improve/examples.md +19 -0
- package/framework/skills/improve/references/audit-playbook.md +130 -0
- package/framework/skills/improve/references/closing-the-loop.md +96 -0
- package/framework/skills/improve/references/plan-template.md +197 -0
- package/framework/skills/jira-cli/SKILL.md +260 -0
- package/framework/skills/jira-cli/references/commands-detailed.md +268 -0
- package/framework/skills/jira-cli/references/quick-reference.md +111 -0
- package/framework/skills/jira-cli/references/troubleshooting.md +114 -0
- package/framework/skills/laravel-best-practices/SKILL.md +56 -216
- package/framework/skills/laravel-best-practices/references/architecture.md +1 -1
- package/framework/skills/laravel-best-practices/references/checklist.md +139 -0
- package/framework/skills/laravel-best-practices/references/eloquent.md +4 -2
- package/framework/skills/laravel-best-practices/references/infer-conventions.md +97 -0
- package/framework/skills/laravel-best-practices/references/pest-testing.md +47 -18
- package/framework/skills/laravel-best-practices/references/security.md +1 -1
- package/framework/skills/laravel-best-practices/references/style.md +1 -1
- package/framework/skills/laravel-best-practices/references/tailwindcss.md +0 -1
- package/framework/styles/README.md +9 -4
- package/framework/styles/factory/DESIGN.md +360 -0
- package/framework/styles/factory/README.md +32 -0
- package/framework/styles/factory/assets/preview.jpg +0 -0
- package/framework/styles/huly/DESIGN.md +449 -0
- package/framework/styles/huly/README.md +32 -0
- package/framework/styles/huly/assets/preview.jpg +0 -0
- package/framework/styles/notion/DESIGN.md +423 -0
- package/framework/styles/notion/README.md +32 -0
- package/framework/styles/notion/assets/preview.jpg +0 -0
- package/package.json +1 -1
- package/src/catalog.js +7 -19
- package/framework/agents/backend-architect.md +0 -146
- package/framework/mcps/github-mcp/README.md +0 -51
- package/framework/mcps/github-mcp/capabilities.md +0 -83
- package/framework/mcps/github-mcp/configs/.env.example +0 -1
- package/framework/mcps/github-mcp/configs/opencode.json +0 -13
- package/framework/mcps/github-mcp/install.md +0 -60
- package/framework/mcps/github-mcp/troubleshooting.md +0 -79
- package/framework/mcps/gitlab-mcp/README.md +0 -53
- package/framework/mcps/gitlab-mcp/capabilities.md +0 -216
- package/framework/mcps/gitlab-mcp/configs/.env.example +0 -2
- package/framework/mcps/gitlab-mcp/configs/opencode.json +0 -13
- package/framework/mcps/gitlab-mcp/install.md +0 -99
- package/framework/mcps/gitlab-mcp/troubleshooting.md +0 -116
- package/framework/mcps/jira-mcp/README.md +0 -52
- package/framework/mcps/jira-mcp/capabilities.md +0 -79
- package/framework/mcps/jira-mcp/configs/.env.example +0 -2
- package/framework/mcps/jira-mcp/configs/opencode.json +0 -13
- package/framework/mcps/jira-mcp/install.md +0 -94
- package/framework/mcps/jira-mcp/troubleshooting.md +0 -113
- package/framework/mcps/notion-mcp/README.md +0 -57
- package/framework/mcps/notion-mcp/capabilities.md +0 -118
- package/framework/mcps/notion-mcp/configs/opencode.json +0 -9
- package/framework/mcps/notion-mcp/install.md +0 -70
- package/framework/mcps/notion-mcp/troubleshooting.md +0 -95
- package/framework/skills/brainstorming/SKILL.md +0 -159
- package/framework/skills/brainstorming/examples.md +0 -49
- package/framework/skills/brainstorming/scripts/frame-template.html +0 -213
- package/framework/skills/brainstorming/scripts/helper.js +0 -167
- package/framework/skills/brainstorming/scripts/server.cjs +0 -723
- package/framework/skills/brainstorming/scripts/start-server.sh +0 -209
- package/framework/skills/brainstorming/scripts/stop-server.sh +0 -120
- package/framework/skills/brainstorming/visual-companion.md +0 -291
- package/framework/skills/code-review/SKILL.md +0 -72
- package/framework/skills/code-review/examples.md +0 -31
- package/framework/skills/codenavi/SKILL.md +0 -306
- package/framework/skills/codenavi/examples.md +0 -33
- package/framework/skills/codenavi/references/coding-principles.md +0 -143
- package/framework/skills/codenavi/references/notebook-spec.md +0 -171
- package/framework/skills/create-adr/SKILL.md +0 -429
- package/framework/skills/create-adr/examples.md +0 -35
- package/framework/skills/design/SKILL.md +0 -399
- package/framework/skills/design/examples.md +0 -34
- package/framework/skills/gitlab-mcp/SKILL.md +0 -83
- package/framework/skills/gitlab-mcp/examples.md +0 -31
- package/framework/skills/gitlab-mcp/references/code-review.md +0 -110
- package/framework/skills/gitlab-mcp/references/issues.md +0 -141
- package/framework/skills/gitlab-mcp/references/merge-requests.md +0 -120
- package/framework/skills/gitlab-mcp/references/pipelines.md +0 -67
- package/framework/skills/gitlab-mcp/references/search.md +0 -17
- package/framework/skills/gitlab-mcp/references/webhooks.md +0 -32
- package/framework/skills/gitlab-mcp/references/work-items.md +0 -50
- package/framework/skills/great-interface/SKILL.md +0 -43
- package/framework/skills/great-interface/references/animations.md +0 -205
- package/framework/skills/great-interface/references/better-accessibility.md +0 -106
- package/framework/skills/great-interface/references/better-colors.md +0 -100
- package/framework/skills/great-interface/references/better-interface.md +0 -132
- package/framework/skills/great-interface/references/better-layout.md +0 -76
- package/framework/skills/great-interface/references/better-typography.md +0 -157
- package/framework/skills/great-interface/references/better-ui.md +0 -107
- package/framework/skills/great-interface/references/better-writing.md +0 -109
- package/framework/skills/great-interface/references/choosing-fonts.md +0 -64
- package/framework/skills/great-interface/references/color-formats.md +0 -90
- package/framework/skills/great-interface/references/color-usage.md +0 -118
- package/framework/skills/great-interface/references/contrast.md +0 -79
- package/framework/skills/great-interface/references/css-cheat-sheet.md +0 -65
- package/framework/skills/great-interface/references/details-and-accessibility.md +0 -119
- package/framework/skills/great-interface/references/enter-exit.md +0 -147
- package/framework/skills/great-interface/references/explain-interface.md +0 -126
- package/framework/skills/great-interface/references/find-the-effect.md +0 -94
- package/framework/skills/great-interface/references/focus-and-keyboard.md +0 -131
- package/framework/skills/great-interface/references/forms.md +0 -84
- package/framework/skills/great-interface/references/from-an-image.md +0 -55
- package/framework/skills/great-interface/references/grouping-and-alignment.md +0 -123
- package/framework/skills/great-interface/references/hit-areas.md +0 -94
- package/framework/skills/great-interface/references/icon-transitions.md +0 -102
- package/framework/skills/great-interface/references/icons.md +0 -110
- package/framework/skills/great-interface/references/interface-review.md +0 -148
- package/framework/skills/great-interface/references/motion-and-zoom.md +0 -79
- package/framework/skills/great-interface/references/no-browser.md +0 -73
- package/framework/skills/great-interface/references/palette-generation.md +0 -104
- package/framework/skills/great-interface/references/palette-structure.md +0 -76
- package/framework/skills/great-interface/references/performance.md +0 -88
- package/framework/skills/great-interface/references/picker.md +0 -76
- package/framework/skills/great-interface/references/read-the-system.md +0 -178
- package/framework/skills/great-interface/references/removed-signals.md +0 -38
- package/framework/skills/great-interface/references/review-format.md +0 -46
- package/framework/skills/great-interface/references/scope-resolution.md +0 -88
- package/framework/skills/great-interface/references/screen-readers.md +0 -101
- package/framework/skills/great-interface/references/semantics-and-aria.md +0 -84
- package/framework/skills/great-interface/references/spacing-and-adaptivity.md +0 -159
- package/framework/skills/great-interface/references/spacing-and-sizing.md +0 -121
- package/framework/skills/great-interface/references/surfaces.md +0 -219
- package/framework/skills/great-interface/references/token-naming.md +0 -97
- package/framework/skills/great-interface/references/variable-fonts-and-opentype.md +0 -105
- package/framework/skills/great-interface/references/variant.md +0 -104
- package/framework/skills/great-interface/references/wrapping-and-punctuation.md +0 -55
- package/framework/skills/jira-mcp/SKILL.md +0 -57
- package/framework/skills/jira-mcp/examples.md +0 -31
- package/framework/skills/jira-mcp/references/comments.md +0 -27
- package/framework/skills/jira-mcp/references/issues.md +0 -97
- package/framework/skills/jira-mcp/references/projects.md +0 -39
- package/framework/skills/learning-opportunities/SKILL.md +0 -140
- package/framework/skills/learning-opportunities/examples.md +0 -34
- package/framework/skills/learning-opportunities/references/PRINCIPLES.md +0 -42
- package/framework/skills/notion-mcp/SKILL.md +0 -57
- package/framework/skills/notion-mcp/examples.md +0 -31
- package/framework/skills/notion-mcp/references/comments.md +0 -112
- package/framework/skills/notion-mcp/references/databases.md +0 -193
- package/framework/skills/notion-mcp/references/pages.md +0 -235
- package/framework/skills/spec-driven-eval/SKILL.md +0 -341
- package/framework/skills/spec-driven-eval/examples.md +0 -35
- package/framework/skills/spec-driven-eval/references/quickstart.md +0 -118
- package/framework/skills/spec-driven-eval/references/reference.md +0 -295
- package/framework/skills/technical-design-doc-creator/README.md +0 -411
- package/framework/skills/technical-design-doc-creator/SKILL.md +0 -1484
- package/framework/skills/technical-design-doc-creator/examples.md +0 -35
- package/framework/skills/web-design-guidelines/SKILL.md +0 -65
- package/framework/skills/web-design-guidelines/examples.md +0 -32
- package/framework/skills/web-design-guidelines/references/guideline.md +0 -174
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
# Issue Management
|
|
2
|
-
|
|
3
|
-
## Create
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
create_issue
|
|
7
|
-
project_id: "my-group/my-project"
|
|
8
|
-
title: "Login page returns 500"
|
|
9
|
-
description: "Steps to reproduce..."
|
|
10
|
-
labels: "bug,critical"
|
|
11
|
-
assignee_ids: [123]
|
|
12
|
-
milestone_id: 5
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## Read
|
|
16
|
-
|
|
17
|
-
```
|
|
18
|
-
get_issue -> single issue details
|
|
19
|
-
list_issues -> project issues (default: created by current user)
|
|
20
|
-
scope: "all" -> list ALL issues (not just current user's)
|
|
21
|
-
state: "opened" -> filter by state
|
|
22
|
-
labels: "bug" -> filter by labels
|
|
23
|
-
my_issues -> issues assigned to current user across all projects
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
**Important**: `list_issues` defaults to showing only issues created by the current user.
|
|
27
|
-
Pass `scope: "all"` to see all project issues.
|
|
28
|
-
|
|
29
|
-
## Update
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
update_issue
|
|
33
|
-
project_id: "my-group/my-project"
|
|
34
|
-
issue_iid: 10
|
|
35
|
-
state_event: "close" # or "reopen"
|
|
36
|
-
labels: "bug,resolved"
|
|
37
|
-
assignee_ids: [456]
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### Patch-based description update (token-efficient)
|
|
41
|
-
|
|
42
|
-
```
|
|
43
|
-
update_issue_description_patch
|
|
44
|
-
project_id: "my-group/my-project"
|
|
45
|
-
issue_iid: 10
|
|
46
|
-
patch_type: "search_replace" # or "unified_diff"
|
|
47
|
-
patch: |
|
|
48
|
-
<<<<<<< SEARCH
|
|
49
|
-
Status: In progress
|
|
50
|
-
=======
|
|
51
|
-
Status: Ready for review
|
|
52
|
-
>>>>>>> REPLACE
|
|
53
|
-
dry_run: false
|
|
54
|
-
create_note: true
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Applies a small patch to the issue description without sending the full text.
|
|
58
|
-
Reduces token usage for AI agents editing long descriptions.
|
|
59
|
-
|
|
60
|
-
**Search/Replace format**:
|
|
61
|
-
```
|
|
62
|
-
<<<<<<< SEARCH
|
|
63
|
-
text to find
|
|
64
|
-
=======
|
|
65
|
-
replacement text
|
|
66
|
-
>>>>>>> REPLACE
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
**Options**:
|
|
70
|
-
- `dry_run: true` — preview changes without updating
|
|
71
|
-
- `create_note: true` — add a comment summarizing the change after update
|
|
72
|
-
- `allow_multiple: true` — allow multiple matches to all be replaced (search_replace only)
|
|
73
|
-
|
|
74
|
-
**Error handling**:
|
|
75
|
-
- Search text not found → fails with clear message
|
|
76
|
-
- Multiple matches (without `allow_multiple`) → fails with count
|
|
77
|
-
- Patch results in identical description → fails (no-op)
|
|
78
|
-
- Unified diff doesn't match → fails
|
|
79
|
-
|
|
80
|
-
## Delete
|
|
81
|
-
|
|
82
|
-
```
|
|
83
|
-
delete_issue -> permanently delete (destructive, cannot be undone)
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
## Issue Links
|
|
87
|
-
|
|
88
|
-
Link related issues:
|
|
89
|
-
|
|
90
|
-
```
|
|
91
|
-
create_issue_link
|
|
92
|
-
project_id: "my-group/my-project"
|
|
93
|
-
issue_iid: 10
|
|
94
|
-
target_project_id: "my-group/other-project"
|
|
95
|
-
target_issue_iid: 20
|
|
96
|
-
link_type: "relates_to" # or "blocks", "is_blocked_by"
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
```
|
|
100
|
-
list_issue_links -> list all linked issues
|
|
101
|
-
get_issue_link -> get specific link details
|
|
102
|
-
delete_issue_link -> remove a link
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## Discussions & Notes
|
|
106
|
-
|
|
107
|
-
Add comments:
|
|
108
|
-
|
|
109
|
-
```
|
|
110
|
-
create_issue_note
|
|
111
|
-
project_id: "my-group/my-project"
|
|
112
|
-
issue_iid: 10
|
|
113
|
-
body: "Confirmed, this is a regression"
|
|
114
|
-
discussion_id: "abc123" # optional: reply to existing thread
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
```
|
|
118
|
-
update_issue_note -> edit a comment
|
|
119
|
-
list_issue_discussions -> list all discussion threads
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### Emoji reactions
|
|
123
|
-
|
|
124
|
-
```
|
|
125
|
-
list_issue_emoji_reactions -> list reactions on an issue
|
|
126
|
-
create_issue_emoji_reaction -> add reaction to an issue
|
|
127
|
-
delete_issue_emoji_reaction -> remove reaction from an issue
|
|
128
|
-
list_issue_note_emoji_reactions -> list reactions on an issue note or thread reply
|
|
129
|
-
create_issue_note_emoji_reaction -> add reaction to an issue note or thread reply
|
|
130
|
-
delete_issue_note_emoji_reaction -> remove reaction from an issue note or thread reply
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
Generic note creation (works for both issues and MRs):
|
|
134
|
-
|
|
135
|
-
```
|
|
136
|
-
create_note
|
|
137
|
-
project_id: "my-group/my-project"
|
|
138
|
-
noteable_type: "Issue" # or "MergeRequest"
|
|
139
|
-
noteable_iid: 10
|
|
140
|
-
body: "Note content"
|
|
141
|
-
```
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
# Merge Request Workflow
|
|
2
|
-
|
|
3
|
-
## Create
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
create_merge_request
|
|
7
|
-
project_id: "my-group/my-project"
|
|
8
|
-
title: "Add user authentication"
|
|
9
|
-
source_branch: "feature/auth"
|
|
10
|
-
target_branch: "main"
|
|
11
|
-
description: "Implements OAuth2 login flow"
|
|
12
|
-
assignee_id: 123
|
|
13
|
-
labels: "feature,auth"
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Read & Track
|
|
17
|
-
|
|
18
|
-
```
|
|
19
|
-
get_merge_request -> full MR details (by IID or branch name)
|
|
20
|
-
list_merge_requests -> list with filters (state, labels, author, etc.)
|
|
21
|
-
- without project_id: current user's MRs across all projects
|
|
22
|
-
- with project_id: MRs in that project
|
|
23
|
-
get_merge_request_conflicts -> check for merge conflicts
|
|
24
|
-
list_merge_request_pipelines -> list pipelines attached to an MR
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
## Update
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
update_merge_request
|
|
31
|
-
project_id: "my-group/my-project"
|
|
32
|
-
mergeRequestIid: 42
|
|
33
|
-
title: "Updated title"
|
|
34
|
-
state_event: "close" # or "reopen"
|
|
35
|
-
assignee_ids: [123, 456]
|
|
36
|
-
labels: "feature,reviewed"
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
## Review & Approve
|
|
40
|
-
|
|
41
|
-
See [code-review.md](code-review.md) for the full diff review workflow.
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
approve_merge_request -> approve
|
|
45
|
-
unapprove_merge_request -> retract approval
|
|
46
|
-
get_merge_request_approval_state -> check who approved, rules status
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## Merge
|
|
50
|
-
|
|
51
|
-
```
|
|
52
|
-
merge_merge_request
|
|
53
|
-
project_id: "my-group/my-project"
|
|
54
|
-
mergeRequestIid: 42
|
|
55
|
-
should_remove_source_branch: true
|
|
56
|
-
squash: true
|
|
57
|
-
merge_when_pipeline_succeeds: true
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
**Warning**: `merge_merge_request` is destructive - cannot be undone.
|
|
61
|
-
|
|
62
|
-
## Discussion Management
|
|
63
|
-
|
|
64
|
-
### Threads (inline code comments)
|
|
65
|
-
|
|
66
|
-
```
|
|
67
|
-
create_merge_request_thread -> new thread on a diff line
|
|
68
|
-
resolve_merge_request_thread -> mark thread resolved
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
### Notes (general comments)
|
|
72
|
-
|
|
73
|
-
```
|
|
74
|
-
create_merge_request_note -> add comment
|
|
75
|
-
get_merge_request_notes -> list all comments
|
|
76
|
-
update_merge_request_note -> edit comment
|
|
77
|
-
delete_merge_request_note -> remove comment
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
### Discussion notes (replies in threads)
|
|
81
|
-
|
|
82
|
-
```
|
|
83
|
-
mr_discussions -> list all discussions
|
|
84
|
-
create_merge_request_discussion_note -> reply to thread
|
|
85
|
-
update_merge_request_discussion_note -> edit reply
|
|
86
|
-
delete_merge_request_discussion_note -> remove reply
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### Draft notes (pending review)
|
|
90
|
-
|
|
91
|
-
```
|
|
92
|
-
create_draft_note -> create pending comment
|
|
93
|
-
list_draft_notes -> see all drafts
|
|
94
|
-
update_draft_note -> edit before publishing
|
|
95
|
-
delete_draft_note -> discard
|
|
96
|
-
publish_draft_note -> publish single draft
|
|
97
|
-
bulk_publish_draft_notes -> publish all drafts at once
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
### Emoji reactions
|
|
101
|
-
|
|
102
|
-
```
|
|
103
|
-
list_merge_request_emoji_reactions -> list reactions on an MR
|
|
104
|
-
create_merge_request_emoji_reaction -> add reaction to an MR
|
|
105
|
-
delete_merge_request_emoji_reaction -> remove reaction from an MR
|
|
106
|
-
list_merge_request_note_emoji_reactions -> list reactions on an MR note or thread reply
|
|
107
|
-
create_merge_request_note_emoji_reaction -> add reaction to an MR note or thread reply
|
|
108
|
-
delete_merge_request_note_emoji_reaction -> remove reaction from an MR note or thread reply
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
## Branch Comparison
|
|
112
|
-
|
|
113
|
-
Compare without an existing MR:
|
|
114
|
-
|
|
115
|
-
```
|
|
116
|
-
get_branch_diffs
|
|
117
|
-
project_id: "my-group/my-project"
|
|
118
|
-
from: "main"
|
|
119
|
-
to: "feature/auth"
|
|
120
|
-
```
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
# Pipeline Operations
|
|
2
|
-
|
|
3
|
-
> **Opt-in toolset**: Enable with `USE_PIPELINE=true` or `GITLAB_TOOLSETS=pipelines`
|
|
4
|
-
|
|
5
|
-
## List & Inspect
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
list_pipelines -> list pipelines with filters (status, ref, source)
|
|
9
|
-
get_pipeline -> pipeline details (status, duration, coverage)
|
|
10
|
-
list_pipeline_jobs -> all jobs in a pipeline
|
|
11
|
-
list_pipeline_trigger_jobs -> trigger/bridge jobs (downstream pipelines)
|
|
12
|
-
get_pipeline_job -> single job details
|
|
13
|
-
get_pipeline_job_output -> job log output (supports pagination for large logs)
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Create & Control
|
|
17
|
-
|
|
18
|
-
```
|
|
19
|
-
create_pipeline -> trigger new pipeline for a branch/tag
|
|
20
|
-
project_id: "my-group/my-project"
|
|
21
|
-
ref: "main"
|
|
22
|
-
variables: [{ key: "DEPLOY_ENV", value: "staging" }]
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
```
|
|
26
|
-
retry_pipeline -> retry all failed jobs in a pipeline
|
|
27
|
-
cancel_pipeline -> cancel running pipeline
|
|
28
|
-
play_pipeline_job -> run a manual job
|
|
29
|
-
retry_pipeline_job -> retry a single failed job
|
|
30
|
-
cancel_pipeline_job -> cancel a single running job
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
## Artifacts
|
|
34
|
-
|
|
35
|
-
```
|
|
36
|
-
list_job_artifacts -> list files in a job's artifact archive
|
|
37
|
-
get_job_artifact_file -> get content of a single artifact file
|
|
38
|
-
download_job_artifacts -> download full artifact archive (zip) to local_path
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Deployments & Environments
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
list_deployments -> list deployments with filters
|
|
45
|
-
get_deployment -> deployment details
|
|
46
|
-
list_environments -> list project environments
|
|
47
|
-
get_environment -> environment details
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
## Common Patterns
|
|
51
|
-
|
|
52
|
-
### Check why a pipeline failed
|
|
53
|
-
|
|
54
|
-
1. `list_pipelines` with `status: "failed"` -> get pipeline ID
|
|
55
|
-
2. `list_pipeline_jobs` -> find failed job(s)
|
|
56
|
-
3. `get_pipeline_job_output` -> read error logs
|
|
57
|
-
|
|
58
|
-
### Retry failed pipeline
|
|
59
|
-
|
|
60
|
-
1. `retry_pipeline` -> retries all failed jobs
|
|
61
|
-
OR
|
|
62
|
-
2. `retry_pipeline_job` -> retry specific job only
|
|
63
|
-
|
|
64
|
-
### Download test results
|
|
65
|
-
|
|
66
|
-
1. `list_job_artifacts` -> find the test report file path
|
|
67
|
-
2. `get_job_artifact_file` -> read the report content
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# Code Search
|
|
2
|
-
|
|
3
|
-
> **Opt-in toolset**: Enable with `GITLAB_TOOLSETS=search`
|
|
4
|
-
|
|
5
|
-
Search requires GitLab advanced search or exact code search/Zoekt support on the target instance.
|
|
6
|
-
|
|
7
|
-
## Scope
|
|
8
|
-
|
|
9
|
-
```
|
|
10
|
-
search_code -> search code across all accessible projects
|
|
11
|
-
search_project_code -> search within one project
|
|
12
|
-
search_group_code -> search within one group
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## Pattern
|
|
16
|
-
|
|
17
|
-
Use the narrowest scope that can answer the question. Prefer `search_project_code` when the project is known, then broaden to group or instance-wide search only when needed.
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# Webhook Operations
|
|
2
|
-
|
|
3
|
-
> **Opt-in toolset**: Enable with `GITLAB_TOOLSETS=webhooks`
|
|
4
|
-
|
|
5
|
-
## List Webhooks
|
|
6
|
-
|
|
7
|
-
Provide either `project_id` or `group_id`.
|
|
8
|
-
|
|
9
|
-
```
|
|
10
|
-
list_webhooks
|
|
11
|
-
project_id: "my-group/my-project"
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
## Inspect Recent Events
|
|
15
|
-
|
|
16
|
-
GitLab exposes recent webhook events for the past 7 days.
|
|
17
|
-
|
|
18
|
-
```
|
|
19
|
-
list_webhook_events
|
|
20
|
-
project_id: "my-group/my-project"
|
|
21
|
-
webhook_id: 123
|
|
22
|
-
summary: true
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
Fetch full event details only after narrowing to the event ID.
|
|
26
|
-
|
|
27
|
-
```
|
|
28
|
-
get_webhook_event
|
|
29
|
-
project_id: "my-group/my-project"
|
|
30
|
-
webhook_id: 123
|
|
31
|
-
event_id: 456
|
|
32
|
-
```
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
# Work Item Operations
|
|
2
|
-
|
|
3
|
-
> **Opt-in toolset**: Enable with `GITLAB_TOOLSETS=workitems`
|
|
4
|
-
|
|
5
|
-
Work items are GraphQL-based and cover issues, tasks, incidents, epics, objectives, requirements, tickets, and related hierarchy/status fields. Some status and custom field features require GitLab Premium/Ultimate.
|
|
6
|
-
|
|
7
|
-
## Read
|
|
8
|
-
|
|
9
|
-
```
|
|
10
|
-
list_work_items -> list work items with filters
|
|
11
|
-
get_work_item -> full details with status, hierarchy, type, labels, assignees, widgets
|
|
12
|
-
list_work_item_notes -> notes and discussions on a work item
|
|
13
|
-
list_work_item_statuses -> available statuses for a work item type
|
|
14
|
-
list_custom_field_definitions -> custom field definitions for a work item type
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Create & Update
|
|
18
|
-
|
|
19
|
-
```
|
|
20
|
-
create_work_item
|
|
21
|
-
project_id: "my-group/my-project"
|
|
22
|
-
title: "Investigate checkout failure"
|
|
23
|
-
work_item_type: "issue"
|
|
24
|
-
description: "Steps to reproduce..."
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
```
|
|
28
|
-
update_work_item -> title, description, labels, assignees, state, parent, children, health, dates, custom fields
|
|
29
|
-
convert_work_item_type -> convert issue/task/incident/etc.
|
|
30
|
-
move_work_item -> move a work item to another project
|
|
31
|
-
create_work_item_note -> add a note, threaded reply, or internal note
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Emoji Reactions
|
|
35
|
-
|
|
36
|
-
```
|
|
37
|
-
list_work_item_emoji_reactions -> list reactions on a work item
|
|
38
|
-
create_work_item_emoji_reaction -> add reaction to a work item
|
|
39
|
-
delete_work_item_emoji_reaction -> remove reaction from a work item
|
|
40
|
-
list_work_item_note_emoji_reactions -> list reactions on a work item note or thread reply
|
|
41
|
-
create_work_item_note_emoji_reaction -> add reaction to a work item note or thread reply
|
|
42
|
-
delete_work_item_note_emoji_reaction -> remove reaction from a work item note or thread reply
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
## Incident Timeline
|
|
46
|
-
|
|
47
|
-
```
|
|
48
|
-
get_timeline_events -> list timeline events for an incident
|
|
49
|
-
create_timeline_event -> create an incident timeline event
|
|
50
|
-
```
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: great-interface
|
|
3
|
-
description: >-
|
|
4
|
-
Build, explain, review, and refine product interfaces across accessibility, layout,
|
|
5
|
-
writing, typography, color, UI polish, holistic review, change review, and design variants.
|
|
6
|
-
Use when creating frontend interfaces, reviewing interface quality, explaining how an
|
|
7
|
-
interface works, or comparing UI directions.
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Great Interface
|
|
11
|
-
|
|
12
|
-
Use the domain references below as the sources of truth. Load the smallest set that covers
|
|
13
|
-
the request, except for a holistic review, which loads every applicable review domain.
|
|
14
|
-
|
|
15
|
-
## Build and refine
|
|
16
|
-
|
|
17
|
-
- Accessibility: [better-accessibility.md](references/better-accessibility.md)
|
|
18
|
-
- Layout: [better-layout.md](references/better-layout.md)
|
|
19
|
-
- Writing: [better-writing.md](references/better-writing.md)
|
|
20
|
-
- Typography: [better-typography.md](references/better-typography.md)
|
|
21
|
-
- Colors: [better-colors.md](references/better-colors.md)
|
|
22
|
-
- UI polish and motion: [better-ui.md](references/better-ui.md)
|
|
23
|
-
|
|
24
|
-
## Review
|
|
25
|
-
|
|
26
|
-
- Holistic screen or flow review: [better-interface.md](references/better-interface.md)
|
|
27
|
-
- Change, branch, or pull request review: [interface-review.md](references/interface-review.md)
|
|
28
|
-
|
|
29
|
-
## Explore alternatives
|
|
30
|
-
|
|
31
|
-
- Explain how an interface or effect was built: [explain-interface.md](references/explain-interface.md)
|
|
32
|
-
- Build and compare multiple UI directions: [variant.md](references/variant.md)
|
|
33
|
-
|
|
34
|
-
## Ownership
|
|
35
|
-
|
|
36
|
-
Do not duplicate rules across domains. Accessibility owns keyboard support, focus, ARIA,
|
|
37
|
-
semantic structure, hit areas, announcements, and reduced motion. Layout owns grouping,
|
|
38
|
-
spacing, responsive structure, and spatial RTL. Writing owns interface copy. Typography owns
|
|
39
|
-
how text renders and wraps. Colors owns palette systems and color measurement. UI owns
|
|
40
|
-
surfaces, icons, and visual motion. The review references own orchestration and reporting.
|
|
41
|
-
|
|
42
|
-
When domains overlap, report or apply the rule in the owning domain and mention secondary
|
|
43
|
-
effects only where useful.
|
|
@@ -1,205 +0,0 @@
|
|
|
1
|
-
# Animations
|
|
2
|
-
|
|
3
|
-
Interruptible transitions, press feedback and the restraint that decides whether to animate at all. Staged entrances and exits live in [enter-exit.md](enter-exit.md); icon swaps in [icon-transitions.md](icon-transitions.md).
|
|
4
|
-
|
|
5
|
-
## Interruptible animations
|
|
6
|
-
|
|
7
|
-
Users change intent mid-interaction. Animations that cannot be interrupted make the interface feel broken.
|
|
8
|
-
|
|
9
|
-
### CSS transitions vs. keyframes
|
|
10
|
-
|
|
11
|
-
| | CSS Transitions | CSS Keyframe Animations |
|
|
12
|
-
| --- | --- | --- |
|
|
13
|
-
| **Behavior** | Interpolate toward latest state | Run on a fixed timeline |
|
|
14
|
-
| **Interruptible** | Yes, retargets mid-animation | No, restarts from beginning |
|
|
15
|
-
| **Use for** | Interactive state changes (hover, toggle, open/close) | Staged sequences that run once (enter animations, loading) |
|
|
16
|
-
| **Duration** | Fixed; retargets the value mid-flight, not the timeline | Fixed timeline, restarts from the beginning |
|
|
17
|
-
|
|
18
|
-
```css
|
|
19
|
-
/* Good: interruptible transition for a toggle */
|
|
20
|
-
.drawer {
|
|
21
|
-
transform: translateX(-100%);
|
|
22
|
-
transition: transform 200ms ease-out;
|
|
23
|
-
}
|
|
24
|
-
.drawer.open {
|
|
25
|
-
transform: translateX(0);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/* Clicking again mid-animation smoothly reverses, no jank */
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
```css
|
|
32
|
-
/* Bad: keyframe animation for interactive element */
|
|
33
|
-
.drawer.open {
|
|
34
|
-
animation: slideIn 200ms ease-out forwards;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/* Closing mid-animation snaps or restarts, feels broken */
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
Prefer CSS transitions for interactive elements. Reserve keyframes for one-shot sequences.
|
|
41
|
-
|
|
42
|
-
## Scale on press
|
|
43
|
-
|
|
44
|
-
A subtle scale-down on click gives buttons tactile feedback. Always `scale(0.96)`, never below `0.95`, which feels exaggerated. Use CSS transitions so a release mid-press returns smoothly.
|
|
45
|
-
|
|
46
|
-
Not every button needs it. Add a `static` prop that disables the scale where the motion would distract.
|
|
47
|
-
|
|
48
|
-
### CSS example
|
|
49
|
-
|
|
50
|
-
```css
|
|
51
|
-
.button {
|
|
52
|
-
transition-property: scale;
|
|
53
|
-
transition-duration: 150ms;
|
|
54
|
-
transition-timing-function: ease-out;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.button:active {
|
|
58
|
-
scale: 0.96;
|
|
59
|
-
}
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
### Tailwind example
|
|
63
|
-
|
|
64
|
-
```tsx
|
|
65
|
-
<button className="transition-transform duration-150 ease-out active:scale-[0.96]">
|
|
66
|
-
Click me
|
|
67
|
-
</button>
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### Motion example
|
|
71
|
-
|
|
72
|
-
```tsx
|
|
73
|
-
<motion.button whileTap={{ scale: 0.96 }}>
|
|
74
|
-
Click me
|
|
75
|
-
</motion.button>
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### Static prop pattern
|
|
79
|
-
|
|
80
|
-
Extract the scale class into a variable and apply it conditionally on a `static` prop:
|
|
81
|
-
|
|
82
|
-
```tsx
|
|
83
|
-
const tapScale = "active:not-disabled:scale-[0.96]";
|
|
84
|
-
|
|
85
|
-
function Button({ static: isStatic, className, children, ...props }) {
|
|
86
|
-
return (
|
|
87
|
-
<button
|
|
88
|
-
className={cn(
|
|
89
|
-
"transition-transform duration-150 ease-out",
|
|
90
|
-
!isStatic && tapScale,
|
|
91
|
-
className,
|
|
92
|
-
)}
|
|
93
|
-
{...props}
|
|
94
|
-
>
|
|
95
|
-
{children}
|
|
96
|
-
</button>
|
|
97
|
-
);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
// Usage
|
|
101
|
-
<Button>Click me</Button> {/* scales on press */}
|
|
102
|
-
<Button static>Submit</Button> {/* no scale */}
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## Skip animation on page load
|
|
106
|
-
|
|
107
|
-
Use `initial={false}` on `AnimatePresence` to stop enter animations firing on first render. An element already in its default state animates on later state changes, not on page load.
|
|
108
|
-
|
|
109
|
-
### When it works
|
|
110
|
-
|
|
111
|
-
```tsx
|
|
112
|
-
// Good: icon doesn't animate in on mount, only on state change
|
|
113
|
-
<AnimatePresence initial={false} mode="popLayout">
|
|
114
|
-
<motion.span
|
|
115
|
-
key={isActive ? "active" : "inactive"}
|
|
116
|
-
initial={{ opacity: 0, scale: 0.25, filter: "blur(4px)" }}
|
|
117
|
-
animate={{ opacity: 1, scale: 1, filter: "blur(0px)" }}
|
|
118
|
-
exit={{ opacity: 0, scale: 0.25, filter: "blur(4px)" }}
|
|
119
|
-
>
|
|
120
|
-
<Icon />
|
|
121
|
-
</motion.span>
|
|
122
|
-
</AnimatePresence>
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
Works well for icon swaps, toggles, tabs and segmented controls, anything with a default state on page load.
|
|
126
|
-
|
|
127
|
-
### When it breaks
|
|
128
|
-
|
|
129
|
-
Never use `initial={false}` where the component relies on its `initial` prop for a first-time enter animation, such as a staggered page hero or a loading state. Removing it skips the entire entrance.
|
|
130
|
-
|
|
131
|
-
```tsx
|
|
132
|
-
// Bad: initial={false} would skip the staggered page enter entirely
|
|
133
|
-
<AnimatePresence initial={false}>
|
|
134
|
-
<motion.div initial="hidden" animate="visible" variants={...}>
|
|
135
|
-
...
|
|
136
|
-
</motion.div>
|
|
137
|
-
</AnimatePresence>
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
Verify the component still looks right on a full page refresh before applying this.
|
|
141
|
-
|
|
142
|
-
## Suppress transitions on theme switch
|
|
143
|
-
|
|
144
|
-
Flipping the theme changes `color`, `background-color`, `border-color` and `box-shadow` on nearly every element at once. Everything carrying a transition on those properties animates together, so the switch reads as a slow smear rather than an instant change. Disable transitions for the swap and restore them right after.
|
|
145
|
-
|
|
146
|
-
Inject a stylesheet that turns off every transition, force a reflow so the new colors commit while it still applies, then drop it on the next frame:
|
|
147
|
-
|
|
148
|
-
```tsx
|
|
149
|
-
"use client";
|
|
150
|
-
|
|
151
|
-
import { useEffect } from "react";
|
|
152
|
-
|
|
153
|
-
export function DisableThemeTransitions() {
|
|
154
|
-
useEffect(() => {
|
|
155
|
-
const mql = window.matchMedia("(prefers-color-scheme: dark)");
|
|
156
|
-
|
|
157
|
-
const handleChange = () => {
|
|
158
|
-
const style = document.createElement("style");
|
|
159
|
-
style.append(
|
|
160
|
-
document.createTextNode(
|
|
161
|
-
"*,*::before,*::after{transition:none !important}"
|
|
162
|
-
)
|
|
163
|
-
);
|
|
164
|
-
document.head.append(style);
|
|
165
|
-
|
|
166
|
-
const _flushReflow = document.body.offsetHeight;
|
|
167
|
-
|
|
168
|
-
requestAnimationFrame(() => {
|
|
169
|
-
requestAnimationFrame(() => style.remove());
|
|
170
|
-
});
|
|
171
|
-
};
|
|
172
|
-
|
|
173
|
-
mql.addEventListener("change", handleChange);
|
|
174
|
-
return () => mql.removeEventListener("change", handleChange);
|
|
175
|
-
}, []);
|
|
176
|
-
|
|
177
|
-
return null;
|
|
178
|
-
}
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
`document.body.offsetHeight` is read for its side effect, forcing a synchronous style flush so the new theme resolves while the override is still in the document and no transition starts. The nested `requestAnimationFrame` removes the override only after that paint, restoring transitions before the next interaction.
|
|
182
|
-
|
|
183
|
-
That covers the OS-level change. An in-app toggle needs the same treatment around its own flip: apply the override, change the theme, flush, remove. `next-themes` ships this as `disableTransitionOnChange`.
|
|
184
|
-
|
|
185
|
-
## Motion restraint
|
|
186
|
-
|
|
187
|
-
Motion is a budget, not a garnish. Three rules decide whether an animation belongs at all:
|
|
188
|
-
|
|
189
|
-
- **Give high-frequency interactions instant feedback instead of animation.** Every keystroke, every list-row hover, every tab switch in a work tool. Reserve expressive motion for infrequent moments (first load of a view, success states, empty states); high-frequency interactions get instant feedback or the subtlest possible transition (`opacity`/`background-color` at ≤150ms).
|
|
190
|
-
- **Motion is never the only feedback channel.** Every state change an animation communicates stays visible when it doesn't run: a color change, an icon swap, a label. Users with reduced motion enabled and anyone who blinked still need to see what happened.
|
|
191
|
-
- **Brief and precise beats prominent.** Where a shorter, smaller animation says the same thing, use it. When in doubt cut the duration, not the clarity.
|
|
192
|
-
|
|
193
|
-
```css
|
|
194
|
-
/* Good: high-frequency hover gets a minimal transition */
|
|
195
|
-
.row:hover {
|
|
196
|
-
background-color: var(--surface-hover);
|
|
197
|
-
transition: background-color 100ms ease-out;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
/* Bad: every hover replays a full entrance */
|
|
201
|
-
.row:hover .row-icon {
|
|
202
|
-
animation: bounceIn 500ms;
|
|
203
|
-
}
|
|
204
|
-
```
|
|
205
|
-
|