@mohammadhprp/system-prompt 0.10.1
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/LICENSE +21 -0
- package/README.md +35 -0
- package/bin/system-prompt.js +8 -0
- package/framework/README.md +163 -0
- package/framework/agents/README.md +49 -0
- package/framework/agents/backend-architect.md +146 -0
- package/framework/agents/researcher.md +79 -0
- package/framework/agents/reviewer.md +183 -0
- package/framework/agents/security-auditor.md +131 -0
- package/framework/commands/README.md +43 -0
- package/framework/commands/changelog.md +44 -0
- package/framework/commands/commit.md +31 -0
- package/framework/commands/learn.md +24 -0
- package/framework/commands/mr.md +46 -0
- package/framework/commands/pr.md +39 -0
- package/framework/commands/release.md +34 -0
- package/framework/commands/review.md +24 -0
- package/framework/commands/summarize-changes.md +49 -0
- package/framework/mcps/README.md +78 -0
- package/framework/mcps/excalidraw/README.md +37 -0
- package/framework/mcps/excalidraw/capabilities.md +54 -0
- package/framework/mcps/excalidraw/configs/opencode.json +8 -0
- package/framework/mcps/excalidraw/install.md +92 -0
- package/framework/mcps/excalidraw/troubleshooting.md +67 -0
- package/framework/mcps/figma-mcp-go/README.md +51 -0
- package/framework/mcps/figma-mcp-go/capabilities.md +190 -0
- package/framework/mcps/figma-mcp-go/configs/opencode.json +9 -0
- package/framework/mcps/figma-mcp-go/install.md +74 -0
- package/framework/mcps/figma-mcp-go/troubleshooting.md +99 -0
- package/framework/mcps/github-mcp/README.md +51 -0
- package/framework/mcps/github-mcp/capabilities.md +83 -0
- package/framework/mcps/github-mcp/configs/.env.example +1 -0
- package/framework/mcps/github-mcp/configs/opencode.json +13 -0
- package/framework/mcps/github-mcp/install.md +60 -0
- package/framework/mcps/github-mcp/troubleshooting.md +79 -0
- package/framework/mcps/gitlab-mcp/README.md +54 -0
- package/framework/mcps/gitlab-mcp/capabilities.md +216 -0
- package/framework/mcps/gitlab-mcp/configs/.env.example +2 -0
- package/framework/mcps/gitlab-mcp/configs/opencode.json +13 -0
- package/framework/mcps/gitlab-mcp/install.md +99 -0
- package/framework/mcps/gitlab-mcp/troubleshooting.md +116 -0
- package/framework/mcps/jira-mcp/README.md +53 -0
- package/framework/mcps/jira-mcp/capabilities.md +79 -0
- package/framework/mcps/jira-mcp/configs/.env.example +2 -0
- package/framework/mcps/jira-mcp/configs/opencode.json +13 -0
- package/framework/mcps/jira-mcp/install.md +94 -0
- package/framework/mcps/jira-mcp/troubleshooting.md +113 -0
- package/framework/mcps/laravel-boost/README.md +53 -0
- package/framework/mcps/laravel-boost/capabilities.md +92 -0
- package/framework/mcps/laravel-boost/configs/opencode.json +9 -0
- package/framework/mcps/laravel-boost/install.md +106 -0
- package/framework/mcps/laravel-boost/troubleshooting.md +119 -0
- package/framework/mcps/notion-mcp/README.md +58 -0
- package/framework/mcps/notion-mcp/capabilities.md +118 -0
- package/framework/mcps/notion-mcp/configs/opencode.json +9 -0
- package/framework/mcps/notion-mcp/install.md +70 -0
- package/framework/mcps/notion-mcp/troubleshooting.md +95 -0
- package/framework/mcps/playwright-mcp/README.md +50 -0
- package/framework/mcps/playwright-mcp/capabilities.md +149 -0
- package/framework/mcps/playwright-mcp/configs/opencode.json +9 -0
- package/framework/mcps/playwright-mcp/install.md +136 -0
- package/framework/mcps/playwright-mcp/troubleshooting.md +154 -0
- package/framework/mcps/supabase-mcp/README.md +66 -0
- package/framework/mcps/supabase-mcp/capabilities.md +127 -0
- package/framework/mcps/supabase-mcp/configs/opencode.json +9 -0
- package/framework/mcps/supabase-mcp/install.md +85 -0
- package/framework/mcps/supabase-mcp/troubleshooting.md +113 -0
- package/framework/memory/README.md +17 -0
- package/framework/memory/codebase-insights.md +6 -0
- package/framework/memory/user-preferences.md +5 -0
- package/framework/modes/README.md +52 -0
- package/framework/modes/audit.md +88 -0
- package/framework/plugins/README.md +65 -0
- package/framework/plugins/opencode-goal-plugin/README.md +45 -0
- package/framework/plugins/opencode-goal-plugin/capabilities.md +127 -0
- package/framework/plugins/opencode-goal-plugin/install.md +71 -0
- package/framework/plugins/opencode-goal-plugin/troubleshooting.md +112 -0
- package/framework/plugins/ponytail/README.md +44 -0
- package/framework/plugins/ponytail/capabilities.md +112 -0
- package/framework/plugins/ponytail/install.md +77 -0
- package/framework/plugins/ponytail/troubleshooting.md +116 -0
- package/framework/references/standards/api.md +44 -0
- package/framework/references/standards/architecture.md +43 -0
- package/framework/references/standards/database.md +43 -0
- package/framework/references/standards/debugging.md +44 -0
- package/framework/references/standards/documentation.md +43 -0
- package/framework/references/standards/logging.md +43 -0
- package/framework/references/standards/naming.md +43 -0
- package/framework/references/standards/observability.md +43 -0
- package/framework/references/standards/performance.md +43 -0
- package/framework/references/standards/pull-requests.md +43 -0
- package/framework/references/standards/security.md +43 -0
- package/framework/references/standards/testing.md +43 -0
- package/framework/references/templates/adr.md +28 -0
- package/framework/references/templates/api-spec.md +56 -0
- package/framework/references/templates/design-document.md +39 -0
- package/framework/references/templates/incident-report.md +38 -0
- package/framework/references/templates/postmortem.md +41 -0
- package/framework/references/templates/pull-request.md +34 -0
- package/framework/references/templates/runbook.md +48 -0
- package/framework/references/templates/task.md +27 -0
- package/framework/skills/README.md +68 -0
- package/framework/skills/agent-browser/SKILL.md +51 -0
- package/framework/skills/backend-best-practices/SKILL.md +136 -0
- package/framework/skills/backend-best-practices/examples.md +31 -0
- package/framework/skills/backend-best-practices/references/api-design.md +79 -0
- package/framework/skills/backend-best-practices/references/architecture-review.md +77 -0
- package/framework/skills/backend-best-practices/references/database-design.md +78 -0
- package/framework/skills/backend-best-practices/references/debugging.md +76 -0
- package/framework/skills/backend-best-practices/references/observability.md +78 -0
- package/framework/skills/backend-best-practices/references/performance.md +78 -0
- package/framework/skills/backend-best-practices/references/refactoring.md +77 -0
- package/framework/skills/backend-best-practices/references/security.md +80 -0
- package/framework/skills/backend-best-practices/references/testing.md +77 -0
- package/framework/skills/backend-engineer/SKILL.md +76 -0
- package/framework/skills/backend-engineer/examples.md +31 -0
- package/framework/skills/brainstorming/SKILL.md +159 -0
- package/framework/skills/brainstorming/examples.md +49 -0
- package/framework/skills/brainstorming/scripts/frame-template.html +213 -0
- package/framework/skills/brainstorming/scripts/helper.js +167 -0
- package/framework/skills/brainstorming/scripts/server.cjs +723 -0
- package/framework/skills/brainstorming/scripts/start-server.sh +209 -0
- package/framework/skills/brainstorming/scripts/stop-server.sh +120 -0
- package/framework/skills/brainstorming/visual-companion.md +291 -0
- package/framework/skills/brand-guidelines/LICENSE.txt +202 -0
- package/framework/skills/brand-guidelines/SKILL.md +73 -0
- package/framework/skills/code-review/SKILL.md +72 -0
- package/framework/skills/code-review/examples.md +31 -0
- package/framework/skills/design/SKILL.md +399 -0
- package/framework/skills/design/examples.md +34 -0
- package/framework/skills/diagram-design/SKILL.md +485 -0
- package/framework/skills/diagram-design/assets/example-architecture-dark.html +180 -0
- package/framework/skills/diagram-design/assets/example-architecture-full.html +192 -0
- package/framework/skills/diagram-design/assets/example-architecture.html +181 -0
- package/framework/skills/diagram-design/assets/example-bar-dark.html +127 -0
- package/framework/skills/diagram-design/assets/example-bar-full.html +103 -0
- package/framework/skills/diagram-design/assets/example-bar.html +127 -0
- package/framework/skills/diagram-design/assets/example-data-flow-dark.html +143 -0
- package/framework/skills/diagram-design/assets/example-data-flow-full.html +185 -0
- package/framework/skills/diagram-design/assets/example-data-flow.html +143 -0
- package/framework/skills/diagram-design/assets/example-datalake-dark.html +241 -0
- package/framework/skills/diagram-design/assets/example-datalake-full.html +246 -0
- package/framework/skills/diagram-design/assets/example-datalake.html +267 -0
- package/framework/skills/diagram-design/assets/example-dp-integration-dark.html +78 -0
- package/framework/skills/diagram-design/assets/example-dp-integration-full.html +88 -0
- package/framework/skills/diagram-design/assets/example-dp-integration.html +78 -0
- package/framework/skills/diagram-design/assets/example-dp-security-matrix-dark.html +31 -0
- package/framework/skills/diagram-design/assets/example-dp-security-matrix-full.html +32 -0
- package/framework/skills/diagram-design/assets/example-dp-security-matrix.html +88 -0
- package/framework/skills/diagram-design/assets/example-er-dark.html +200 -0
- package/framework/skills/diagram-design/assets/example-er-full.html +203 -0
- package/framework/skills/diagram-design/assets/example-er.html +200 -0
- package/framework/skills/diagram-design/assets/example-flowchart-dark.html +154 -0
- package/framework/skills/diagram-design/assets/example-flowchart-full.html +157 -0
- package/framework/skills/diagram-design/assets/example-flowchart.html +154 -0
- package/framework/skills/diagram-design/assets/example-gantt-dark.html +135 -0
- package/framework/skills/diagram-design/assets/example-gantt-full.html +125 -0
- package/framework/skills/diagram-design/assets/example-gantt.html +135 -0
- package/framework/skills/diagram-design/assets/example-high-level-dark.html +249 -0
- package/framework/skills/diagram-design/assets/example-high-level-full.html +245 -0
- package/framework/skills/diagram-design/assets/example-high-level-vertical-dark.html +272 -0
- package/framework/skills/diagram-design/assets/example-high-level-vertical-full.html +250 -0
- package/framework/skills/diagram-design/assets/example-high-level-vertical.html +323 -0
- package/framework/skills/diagram-design/assets/example-high-level.html +299 -0
- package/framework/skills/diagram-design/assets/example-it-state-dark.html +90 -0
- package/framework/skills/diagram-design/assets/example-it-state-full.html +69 -0
- package/framework/skills/diagram-design/assets/example-it-state.html +128 -0
- package/framework/skills/diagram-design/assets/example-layers-dark.html +121 -0
- package/framework/skills/diagram-design/assets/example-layers-full.html +124 -0
- package/framework/skills/diagram-design/assets/example-layers.html +121 -0
- package/framework/skills/diagram-design/assets/example-line-dark.html +109 -0
- package/framework/skills/diagram-design/assets/example-line-full.html +103 -0
- package/framework/skills/diagram-design/assets/example-line.html +109 -0
- package/framework/skills/diagram-design/assets/example-loop-dark.html +100 -0
- package/framework/skills/diagram-design/assets/example-loop-full.html +137 -0
- package/framework/skills/diagram-design/assets/example-loop-terminal.html +347 -0
- package/framework/skills/diagram-design/assets/example-loop.html +100 -0
- package/framework/skills/diagram-design/assets/example-medallion-dark.html +159 -0
- package/framework/skills/diagram-design/assets/example-medallion-full.html +201 -0
- package/framework/skills/diagram-design/assets/example-medallion.html +159 -0
- package/framework/skills/diagram-design/assets/example-nested-dark.html +130 -0
- package/framework/skills/diagram-design/assets/example-nested-full.html +133 -0
- package/framework/skills/diagram-design/assets/example-nested.html +134 -0
- package/framework/skills/diagram-design/assets/example-org-chart-dark.html +45 -0
- package/framework/skills/diagram-design/assets/example-org-chart-full.html +45 -0
- package/framework/skills/diagram-design/assets/example-org-chart.html +45 -0
- package/framework/skills/diagram-design/assets/example-process-dark.html +62 -0
- package/framework/skills/diagram-design/assets/example-process-full.html +72 -0
- package/framework/skills/diagram-design/assets/example-process.html +62 -0
- package/framework/skills/diagram-design/assets/example-pyramid-dark.html +117 -0
- package/framework/skills/diagram-design/assets/example-pyramid-full.html +120 -0
- package/framework/skills/diagram-design/assets/example-pyramid.html +117 -0
- package/framework/skills/diagram-design/assets/example-quadrant-consultant.html +164 -0
- package/framework/skills/diagram-design/assets/example-quadrant-dark.html +133 -0
- package/framework/skills/diagram-design/assets/example-quadrant-full.html +136 -0
- package/framework/skills/diagram-design/assets/example-quadrant.html +133 -0
- package/framework/skills/diagram-design/assets/example-radar-dark.html +137 -0
- package/framework/skills/diagram-design/assets/example-radar-full.html +133 -0
- package/framework/skills/diagram-design/assets/example-radar.html +137 -0
- package/framework/skills/diagram-design/assets/example-scatter-dark.html +139 -0
- package/framework/skills/diagram-design/assets/example-scatter-full.html +114 -0
- package/framework/skills/diagram-design/assets/example-scatter.html +139 -0
- package/framework/skills/diagram-design/assets/example-sequence-dark.html +220 -0
- package/framework/skills/diagram-design/assets/example-sequence-full.html +386 -0
- package/framework/skills/diagram-design/assets/example-sequence.html +220 -0
- package/framework/skills/diagram-design/assets/example-state-dark.html +145 -0
- package/framework/skills/diagram-design/assets/example-state-full.html +148 -0
- package/framework/skills/diagram-design/assets/example-state.html +145 -0
- package/framework/skills/diagram-design/assets/example-swimlane-dark.html +170 -0
- package/framework/skills/diagram-design/assets/example-swimlane-full.html +173 -0
- package/framework/skills/diagram-design/assets/example-swimlane.html +170 -0
- package/framework/skills/diagram-design/assets/example-timeline-dark.html +133 -0
- package/framework/skills/diagram-design/assets/example-timeline-full.html +136 -0
- package/framework/skills/diagram-design/assets/example-timeline.html +133 -0
- package/framework/skills/diagram-design/assets/example-tree-dark.html +171 -0
- package/framework/skills/diagram-design/assets/example-tree-full.html +174 -0
- package/framework/skills/diagram-design/assets/example-tree.html +171 -0
- package/framework/skills/diagram-design/assets/example-venn-dark.html +130 -0
- package/framework/skills/diagram-design/assets/example-venn-full.html +133 -0
- package/framework/skills/diagram-design/assets/example-venn.html +108 -0
- package/framework/skills/diagram-design/assets/icons.html +230 -0
- package/framework/skills/diagram-design/assets/index.html +333 -0
- package/framework/skills/diagram-design/assets/template-dark.html +82 -0
- package/framework/skills/diagram-design/assets/template-full.html +410 -0
- package/framework/skills/diagram-design/assets/template-terminal.html +170 -0
- package/framework/skills/diagram-design/assets/template.html +83 -0
- package/framework/skills/diagram-design/references/export.md +107 -0
- package/framework/skills/diagram-design/references/onboarding.md +268 -0
- package/framework/skills/diagram-design/references/primitive-annotation.md +36 -0
- package/framework/skills/diagram-design/references/primitive-icons.md +821 -0
- package/framework/skills/diagram-design/references/primitive-sketchy.md +43 -0
- package/framework/skills/diagram-design/references/primitive-terminal.md +76 -0
- package/framework/skills/diagram-design/references/style-guide.md +139 -0
- package/framework/skills/diagram-design/references/type-architecture.md +78 -0
- package/framework/skills/diagram-design/references/type-bar.md +48 -0
- package/framework/skills/diagram-design/references/type-data-flow.md +374 -0
- package/framework/skills/diagram-design/references/type-dp-integration.md +410 -0
- package/framework/skills/diagram-design/references/type-dp-security-matrix.md +379 -0
- package/framework/skills/diagram-design/references/type-er.md +23 -0
- package/framework/skills/diagram-design/references/type-flowchart.md +23 -0
- package/framework/skills/diagram-design/references/type-gantt.md +45 -0
- package/framework/skills/diagram-design/references/type-high-level.md +458 -0
- package/framework/skills/diagram-design/references/type-it-state.md +470 -0
- package/framework/skills/diagram-design/references/type-layers.md +26 -0
- package/framework/skills/diagram-design/references/type-line.md +44 -0
- package/framework/skills/diagram-design/references/type-loop.md +223 -0
- package/framework/skills/diagram-design/references/type-medallion.md +356 -0
- package/framework/skills/diagram-design/references/type-nested.md +22 -0
- package/framework/skills/diagram-design/references/type-org-chart.md +44 -0
- package/framework/skills/diagram-design/references/type-process.md +495 -0
- package/framework/skills/diagram-design/references/type-pyramid.md +33 -0
- package/framework/skills/diagram-design/references/type-quadrant.md +81 -0
- package/framework/skills/diagram-design/references/type-radar.md +80 -0
- package/framework/skills/diagram-design/references/type-scatter.md +39 -0
- package/framework/skills/diagram-design/references/type-sequence.md +35 -0
- package/framework/skills/diagram-design/references/type-state.md +21 -0
- package/framework/skills/diagram-design/references/type-swimlane.md +20 -0
- package/framework/skills/diagram-design/references/type-timeline.md +20 -0
- package/framework/skills/diagram-design/references/type-tree.md +24 -0
- package/framework/skills/diagram-design/references/type-venn.md +26 -0
- package/framework/skills/documentation/SKILL.md +74 -0
- package/framework/skills/documentation/examples.md +31 -0
- package/framework/skills/find-skills/SKILL.md +141 -0
- package/framework/skills/find-skills/examples.md +35 -0
- package/framework/skills/gitlab-mcp/SKILL.md +83 -0
- package/framework/skills/gitlab-mcp/examples.md +31 -0
- package/framework/skills/gitlab-mcp/references/code-review.md +110 -0
- package/framework/skills/gitlab-mcp/references/issues.md +141 -0
- package/framework/skills/gitlab-mcp/references/merge-requests.md +120 -0
- package/framework/skills/gitlab-mcp/references/pipelines.md +67 -0
- package/framework/skills/gitlab-mcp/references/search.md +17 -0
- package/framework/skills/gitlab-mcp/references/webhooks.md +32 -0
- package/framework/skills/gitlab-mcp/references/work-items.md +50 -0
- package/framework/skills/jira-mcp/SKILL.md +57 -0
- package/framework/skills/jira-mcp/examples.md +31 -0
- package/framework/skills/jira-mcp/references/comments.md +27 -0
- package/framework/skills/jira-mcp/references/issues.md +97 -0
- package/framework/skills/jira-mcp/references/projects.md +39 -0
- package/framework/skills/laravel-best-practices/SKILL.md +229 -0
- package/framework/skills/laravel-best-practices/examples.md +31 -0
- package/framework/skills/laravel-best-practices/references/advanced-queries.md +106 -0
- package/framework/skills/laravel-best-practices/references/architecture.md +202 -0
- package/framework/skills/laravel-best-practices/references/blade-views.md +36 -0
- package/framework/skills/laravel-best-practices/references/caching.md +70 -0
- package/framework/skills/laravel-best-practices/references/collections.md +44 -0
- package/framework/skills/laravel-best-practices/references/config.md +73 -0
- package/framework/skills/laravel-best-practices/references/db-performance.md +192 -0
- package/framework/skills/laravel-best-practices/references/eloquent.md +148 -0
- package/framework/skills/laravel-best-practices/references/error-handling.md +72 -0
- package/framework/skills/laravel-best-practices/references/events-notifications.md +52 -0
- package/framework/skills/laravel-best-practices/references/http-client.md +160 -0
- package/framework/skills/laravel-best-practices/references/mail.md +27 -0
- package/framework/skills/laravel-best-practices/references/migrations.md +121 -0
- package/framework/skills/laravel-best-practices/references/passport.md +197 -0
- package/framework/skills/laravel-best-practices/references/pennant.md +61 -0
- package/framework/skills/laravel-best-practices/references/pest-testing.md +166 -0
- package/framework/skills/laravel-best-practices/references/pulse.md +196 -0
- package/framework/skills/laravel-best-practices/references/queue-jobs.md +144 -0
- package/framework/skills/laravel-best-practices/references/routing.md +99 -0
- package/framework/skills/laravel-best-practices/references/scheduling.md +39 -0
- package/framework/skills/laravel-best-practices/references/scout.md +176 -0
- package/framework/skills/laravel-best-practices/references/security.md +198 -0
- package/framework/skills/laravel-best-practices/references/spatie-laravel-backup.md +222 -0
- package/framework/skills/laravel-best-practices/references/spatie-laravel-permission.md +272 -0
- package/framework/skills/laravel-best-practices/references/spatie-medialibrary.md +672 -0
- package/framework/skills/laravel-best-practices/references/style.md +125 -0
- package/framework/skills/laravel-best-practices/references/tailwindcss.md +112 -0
- package/framework/skills/laravel-best-practices/references/testing.md +43 -0
- package/framework/skills/laravel-best-practices/references/validation.md +75 -0
- package/framework/skills/lavish/SKILL.md +67 -0
- package/framework/skills/lavish/examples.md +31 -0
- package/framework/skills/notion-mcp/SKILL.md +57 -0
- package/framework/skills/notion-mcp/examples.md +31 -0
- package/framework/skills/notion-mcp/references/comments.md +112 -0
- package/framework/skills/notion-mcp/references/databases.md +193 -0
- package/framework/skills/notion-mcp/references/pages.md +235 -0
- package/framework/skills/skill-creator/LICENSE.txt +202 -0
- package/framework/skills/skill-creator/SKILL.md +485 -0
- package/framework/skills/skill-creator/agents/analyzer.md +274 -0
- package/framework/skills/skill-creator/agents/comparator.md +202 -0
- package/framework/skills/skill-creator/agents/grader.md +223 -0
- package/framework/skills/skill-creator/assets/eval_review.html +146 -0
- package/framework/skills/skill-creator/eval-viewer/generate_review.py +471 -0
- package/framework/skills/skill-creator/eval-viewer/viewer.html +1325 -0
- package/framework/skills/skill-creator/examples.md +31 -0
- package/framework/skills/skill-creator/references/schemas.md +430 -0
- package/framework/skills/skill-creator/scripts/__init__.py +0 -0
- package/framework/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
- package/framework/skills/skill-creator/scripts/generate_report.py +326 -0
- package/framework/skills/skill-creator/scripts/improve_description.py +247 -0
- package/framework/skills/skill-creator/scripts/package_skill.py +136 -0
- package/framework/skills/skill-creator/scripts/quick_validate.py +103 -0
- package/framework/skills/skill-creator/scripts/run_eval.py +310 -0
- package/framework/skills/skill-creator/scripts/run_loop.py +328 -0
- package/framework/skills/skill-creator/scripts/utils.py +47 -0
- package/framework/styles/README.md +35 -0
- package/framework/styles/linear/DESIGN.md +478 -0
- package/framework/styles/linear/README.md +36 -0
- package/framework/styles/linear/assets/preview.jpg +0 -0
- package/framework/styles/raycast/DESIGN.md +495 -0
- package/framework/styles/raycast/README.md +35 -0
- package/framework/styles/raycast/assets/preview.jpg +0 -0
- package/package.json +33 -0
- package/src/agent-configs.js +96 -0
- package/src/catalog.js +145 -0
- package/src/cli.js +254 -0
- package/src/installer.js +303 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# GitLab MCP Examples
|
|
2
|
+
|
|
3
|
+
## Example 1: Review Merge Request Diffs
|
|
4
|
+
|
|
5
|
+
Review a merge request with multiple file changes. Good agent behavior:
|
|
6
|
+
|
|
7
|
+
- Use `list_merge_request_changed_files` to get the list of changed files (no diff).
|
|
8
|
+
- Use `get_merge_request_file_diff` with 3-5 files at a time to review diffs in batches.
|
|
9
|
+
- Use `get_merge_request_approval_state` to check who has approved.
|
|
10
|
+
- Use `create_merge_request_thread` to leave inline feedback on specific lines.
|
|
11
|
+
- Use `approve_merge_request` and `merge_merge_request` when the review passes.
|
|
12
|
+
|
|
13
|
+
## Example 2: Investigate Pipeline Failure
|
|
14
|
+
|
|
15
|
+
A CI pipeline failed on the main branch. Good agent behavior:
|
|
16
|
+
|
|
17
|
+
- Use `list_pipelines` to find the latest failed pipeline for the target branch.
|
|
18
|
+
- Use `list_pipeline_jobs` to identify which job failed.
|
|
19
|
+
- Use `get_pipeline_job_output` with pagination to read the failure logs.
|
|
20
|
+
- Use `get_pipeline_job` to inspect the job's environment and timing.
|
|
21
|
+
- Summarize the root cause and propose a fix based on the log output.
|
|
22
|
+
|
|
23
|
+
## Example 3: Create and Manage an Issue
|
|
24
|
+
|
|
25
|
+
Track a bug report discovered during development. Good agent behavior:
|
|
26
|
+
|
|
27
|
+
- Use `create_issue` with project key, summary, description, and labels.
|
|
28
|
+
- Use `create_issue_note` to add reproduction steps as a comment.
|
|
29
|
+
- Use `update_issue` to set assignee and priority.
|
|
30
|
+
- Use `create_branch` to start work from the issue branch naming convention.
|
|
31
|
+
- Use `create_merge_request` when the fix is ready, linking the MR to the issue.
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# Code Review Workflow
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
Efficient code review uses a 2-step approach: list files first, then fetch diffs in batches.
|
|
6
|
+
This avoids loading the entire diff payload at once.
|
|
7
|
+
|
|
8
|
+
## Step 1: List Changed Files
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
list_merge_request_changed_files
|
|
12
|
+
project_id: "my-group/my-project"
|
|
13
|
+
mergeRequestIid: 42
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Returns file paths with metadata:
|
|
17
|
+
|
|
18
|
+
- `new_path`, `old_path` - file locations
|
|
19
|
+
- `new_file`, `deleted_file`, `renamed_file` - change type flags
|
|
20
|
+
|
|
21
|
+
Use `excluded_file_patterns` to skip generated files:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
excluded_file_patterns: ["*.lock", "*.min.js", "dist/**"]
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Step 2: Batch Diff Retrieval
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
get_merge_request_file_diff
|
|
31
|
+
project_id: "my-group/my-project"
|
|
32
|
+
mergeRequestIid: 42
|
|
33
|
+
file_paths: ["src/api.ts", "src/utils.ts", "src/types.ts"]
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
**Batch 3-5 files per call** for optimal balance between API calls and response size.
|
|
37
|
+
For large MRs (20+ files), prioritize reviewing:
|
|
38
|
+
|
|
39
|
+
1. Source code files first (skip configs, lockfiles)
|
|
40
|
+
2. New files before modified files
|
|
41
|
+
3. Core logic before tests
|
|
42
|
+
|
|
43
|
+
## Step 3: Leave Comments
|
|
44
|
+
|
|
45
|
+
### Option A: Thread comments (visible immediately)
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
create_merge_request_thread
|
|
49
|
+
project_id: "my-group/my-project"
|
|
50
|
+
mergeRequestIid: 42
|
|
51
|
+
body: "Consider using a const here"
|
|
52
|
+
position:
|
|
53
|
+
new_path: "src/api.ts"
|
|
54
|
+
new_line: 15
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Reply to existing threads:
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
create_merge_request_discussion_note
|
|
61
|
+
project_id: "my-group/my-project"
|
|
62
|
+
mergeRequestIid: 42
|
|
63
|
+
discussion_id: "abc123"
|
|
64
|
+
body: "Good point, updated"
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### Option B: Draft notes (batch review)
|
|
68
|
+
|
|
69
|
+
Create drafts, then publish all at once:
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
create_draft_note -> create_draft_note -> create_draft_note
|
|
73
|
+
... repeat for each comment ...
|
|
74
|
+
bulk_publish_draft_notes
|
|
75
|
+
project_id: "my-group/my-project"
|
|
76
|
+
mergeRequestIid: 42
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
This mimics GitHub's "pending review" pattern - all comments appear simultaneously.
|
|
80
|
+
|
|
81
|
+
## Step 4: Resolve Threads
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
resolve_merge_request_thread
|
|
85
|
+
project_id: "my-group/my-project"
|
|
86
|
+
mergeRequestIid: 42
|
|
87
|
+
discussion_id: "abc123"
|
|
88
|
+
resolved: true
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Alternative: Full Diff Methods
|
|
92
|
+
|
|
93
|
+
For small MRs where batching is unnecessary:
|
|
94
|
+
|
|
95
|
+
- `get_merge_request_diffs` - all diffs at once (can be large)
|
|
96
|
+
- `list_merge_request_diffs` - paginated diffs
|
|
97
|
+
|
|
98
|
+
For comparing arbitrary refs:
|
|
99
|
+
|
|
100
|
+
- `get_branch_diffs` - compare two branches or commits
|
|
101
|
+
- `get_commit_diff` - single commit changes
|
|
102
|
+
|
|
103
|
+
## Version Comparison
|
|
104
|
+
|
|
105
|
+
Track review progress across force-pushes:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
list_merge_request_versions -> get versions list
|
|
109
|
+
get_merge_request_version -> get specific version details
|
|
110
|
+
```
|
|
@@ -0,0 +1,141 @@
|
|
|
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
|
+
```
|
|
@@ -0,0 +1,120 @@
|
|
|
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
|
+
```
|
|
@@ -0,0 +1,67 @@
|
|
|
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
|
|
@@ -0,0 +1,17 @@
|
|
|
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.
|
|
@@ -0,0 +1,32 @@
|
|
|
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
|
+
```
|
|
@@ -0,0 +1,50 @@
|
|
|
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
|
+
```
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: jira-mcp
|
|
3
|
+
description: Use this skill when working with the Jira MCP server tools for issue management, project management, comments, search, and related Jira workflows.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# jira-mcp
|
|
7
|
+
|
|
8
|
+
Jira MCP server providing 12 tools for interacting with your self-hosted Jira instance via the REST API v2.
|
|
9
|
+
|
|
10
|
+
## Tools
|
|
11
|
+
|
|
12
|
+
| Category | Tools | Default |
|
|
13
|
+
|--------------------|------------------------------------------------------------------------------------------------------------------------------------------------|---------|
|
|
14
|
+
| Issues (9 tools) | `create_issue`, `get_issue`, `update_issue`, `delete_issue`, `search_issues`, `assign_issue`, `get_issue_types`, `add_comment`, `get_comments` | yes |
|
|
15
|
+
| Projects (2 tools) | `get_projects`, `get_project` | yes |
|
|
16
|
+
| Users (1 tool) | `get_current_user` | yes |
|
|
17
|
+
|
|
18
|
+
All tools are available by default — there are no opt-in toolsets for this server.
|
|
19
|
+
|
|
20
|
+
## Key Workflows
|
|
21
|
+
|
|
22
|
+
### Issue Lifecycle
|
|
23
|
+
|
|
24
|
+
`search_issues` → `get_issue` → `update_issue` / `assign_issue`
|
|
25
|
+
|
|
26
|
+
### Create Issue (see references/issues.md)
|
|
27
|
+
|
|
28
|
+
`get_project` → `get_issue_types` → `create_issue`
|
|
29
|
+
|
|
30
|
+
### Comment Thread (see references/comments.md)
|
|
31
|
+
|
|
32
|
+
`add_comment` → `get_comments`
|
|
33
|
+
|
|
34
|
+
### Project Discovery (see references/projects.md)
|
|
35
|
+
|
|
36
|
+
`get_projects` → `get_project` → `get_issue_types`
|
|
37
|
+
|
|
38
|
+
## Parameter Hints
|
|
39
|
+
|
|
40
|
+
- **projectKey**: uppercase project key (e.g., `PROJ`, `SCRUM`, `SUP`). Use `get_projects` to discover available keys.
|
|
41
|
+
- **issueKey**: format `PROJECT-123` (e.g., `CHI-42`, `DEV-1337`)
|
|
42
|
+
- **issueType**: varies by project — use `get_issue_types` to list valid types before creating. Common types: `Bug`, `Task`, `Story`, `Epic`, `Sub-task`
|
|
43
|
+
- **search_issues**: uses JQL (Jira Query Language). Complex values (spaces, special chars) must be quoted: `status = "In Progress"`, `project = PROJ`
|
|
44
|
+
- **Jql**: provide a raw JQL query string (not single-quoted — use double quotes inside for string values)
|
|
45
|
+
- **maxResults**: `search_issues` defaults to 50. Increase for larger result sets.
|
|
46
|
+
- **assignee**: Jira username (not display name or email). Use `get_current_user` to find your own username.
|
|
47
|
+
- **Custom fields**: Pass custom field values directly as parameters (e.g., `customfield_10211: "Sprint 1"`). Discover field IDs via Jira REST API.
|
|
48
|
+
|
|
49
|
+
## Destructive Tools
|
|
50
|
+
|
|
51
|
+
`delete_issue` — permanently deletes an issue. Cannot be undone.
|
|
52
|
+
|
|
53
|
+
## Advanced
|
|
54
|
+
|
|
55
|
+
- **JQL Search**: full Jira Query Language support — combine operators (`AND`, `OR`, `NOT`), functions (`currentUser()`, `now()`, `startOfDay()`), and ordering (`ORDER BY created DESC`)
|
|
56
|
+
- **Status transitions**: use `update_issue` with `status` to transition issues (e.g., `"In Progress"`, `"Done"`, `"Closed"`). Valid statuses depend on the project's workflow configuration.
|
|
57
|
+
- **Custom fields**: map Jira custom field IDs to values via the `customFields` object or direct parameter names
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Jira MCP Examples
|
|
2
|
+
|
|
3
|
+
## Example 1: Create and Assign a Bug
|
|
4
|
+
|
|
5
|
+
A production bug is discovered and needs to be tracked. Good agent behavior:
|
|
6
|
+
|
|
7
|
+
- Use `jira_get_projects` to find the correct project key.
|
|
8
|
+
- Use `jira_get_issue_types` to confirm valid types for the project.
|
|
9
|
+
- Use `jira_create_issue` with project key, summary, description, priority, and labels.
|
|
10
|
+
- Use `jira_assign_issue` to assign the bug to the responsible developer.
|
|
11
|
+
- Use `jira_add_comment` to include reproduction steps and environment details.
|
|
12
|
+
|
|
13
|
+
## Example 2: Find and Update Issues
|
|
14
|
+
|
|
15
|
+
Search for all high-priority unresolved issues assigned to the user. Good agent behavior:
|
|
16
|
+
|
|
17
|
+
- Use `jira_search_issues` with a JQL query like `assignee = currentUser() AND priority = High AND status != Done`.
|
|
18
|
+
- Use `jira_get_issue` on each result to review full details.
|
|
19
|
+
- Use `jira_update_issue` to transition the status to "In Progress".
|
|
20
|
+
- Use `jira_add_comment` to log what work is being started.
|
|
21
|
+
- Summarize the findings in a structured report grouped by status.
|
|
22
|
+
|
|
23
|
+
## Example 3: Close a Sprint Task
|
|
24
|
+
|
|
25
|
+
A task is complete and ready to close. Good agent behavior:
|
|
26
|
+
|
|
27
|
+
- Use `jira_get_current_user` to verify authentication is working.
|
|
28
|
+
- Use `jira_search_issues` to find the task by key or summary.
|
|
29
|
+
- Use `jira_get_issue` to review current status, assignee, and description.
|
|
30
|
+
- Use `jira_update_issue` to set status to "Done" and add a resolution note.
|
|
31
|
+
- Use `jira_add_comment` to document what was completed and any follow-ups.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Comments
|
|
2
|
+
|
|
3
|
+
## Add Comment
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
add_comment
|
|
7
|
+
issueKey: "PROJ-123"
|
|
8
|
+
comment: "Fixed in latest deployment (v2.4.1)"
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Adds a text comment to a Jira issue. No support for rich text or attachments via this server.
|
|
12
|
+
|
|
13
|
+
## Read Comments
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
get_comments
|
|
17
|
+
issueKey: "PROJ-123"
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Returns all comments on an issue, ordered by creation date (ascending). Each comment includes `body`, `author`, `created`, and `updated` timestamps.
|
|
21
|
+
|
|
22
|
+
## Limitations
|
|
23
|
+
|
|
24
|
+
- **No edit/update** — the current Jira MCP server does not provide an edit-comment tool
|
|
25
|
+
- **No delete** — comments cannot be removed via this server
|
|
26
|
+
- **No threading/replies** — comments are flat (Jira Cloud's threading is not exposed via this API)
|
|
27
|
+
- **No rich text** — plain text only; HTML/markdown in bodies may be rendered by Jira's API
|