@hivehub/rulebook 4.2.2 → 4.3.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/.claude/commands/continue.md +33 -33
- package/.claude/commands/ralph-config.md +112 -112
- package/.claude/commands/ralph-history.md +110 -110
- package/.claude/commands/ralph-init.md +72 -72
- package/.claude/commands/ralph-pause-resume.md +105 -105
- package/.claude/commands/ralph-run.md +101 -101
- package/.claude/commands/ralph-status.md +76 -76
- package/.claude/commands/rulebook-memory-save.md +48 -48
- package/.claude/commands/rulebook-memory-search.md +47 -47
- package/.claude/commands/rulebook-task-apply.md +67 -67
- package/.claude/commands/rulebook-task-archive.md +70 -70
- package/.claude/commands/rulebook-task-create.md +93 -93
- package/.claude/commands/rulebook-task-list.md +42 -42
- package/.claude/commands/rulebook-task-show.md +52 -52
- package/.claude/commands/rulebook-task-validate.md +53 -53
- package/.claude-plugin/marketplace.json +28 -28
- package/.claude-plugin/plugin.json +8 -8
- package/README.md +15 -1
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +43 -18
- package/dist/cli/commands.js.map +1 -1
- package/dist/core/claude-mcp.d.ts +10 -2
- package/dist/core/claude-mcp.d.ts.map +1 -1
- package/dist/core/claude-mcp.js +48 -9
- package/dist/core/claude-mcp.js.map +1 -1
- package/dist/core/config-manager.d.ts.map +1 -1
- package/dist/core/config-manager.js +1 -2
- package/dist/core/config-manager.js.map +1 -1
- package/dist/core/generator.d.ts +13 -0
- package/dist/core/generator.d.ts.map +1 -1
- package/dist/core/generator.js +283 -28
- package/dist/core/generator.js.map +1 -1
- package/dist/core/indexer/background-indexer.d.ts.map +1 -1
- package/dist/core/indexer/background-indexer.js +10 -3
- package/dist/core/indexer/background-indexer.js.map +1 -1
- package/dist/core/workspace/workspace-manager.d.ts.map +1 -1
- package/dist/core/workspace/workspace-manager.js +2 -6
- package/dist/core/workspace/workspace-manager.js.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/mcp/rulebook-server.d.ts.map +1 -1
- package/dist/mcp/rulebook-server.js +23 -10
- package/dist/mcp/rulebook-server.js.map +1 -1
- package/package.json +21 -22
- package/templates/agents/accessibility-reviewer.md +43 -0
- package/templates/agents/api-designer.md +42 -0
- package/templates/agents/architect.md +51 -0
- package/templates/agents/build-engineer.md +36 -0
- package/templates/agents/code-reviewer.md +47 -0
- package/templates/agents/database-architect.md +41 -0
- package/templates/agents/devops-engineer.md +42 -0
- package/templates/agents/docs-writer.md +38 -0
- package/templates/agents/i18n-engineer.md +42 -0
- package/templates/agents/implementer.md +38 -35
- package/templates/agents/migration-engineer.md +42 -0
- package/templates/agents/performance-engineer.md +49 -0
- package/templates/agents/refactoring-agent.md +41 -0
- package/templates/agents/researcher.md +38 -34
- package/templates/agents/security-reviewer.md +40 -0
- package/templates/agents/team-lead.md +37 -34
- package/templates/agents/tester.md +45 -42
- package/templates/agents/ux-reviewer.md +43 -0
- package/templates/ci/rulebook-review.yml +26 -26
- package/templates/cli/AIDER.md +49 -49
- package/templates/cli/AMAZON_Q.md +25 -25
- package/templates/cli/AUGGIE.md +32 -32
- package/templates/cli/CLAUDE.md +117 -117
- package/templates/cli/CLINE.md +99 -99
- package/templates/cli/CODEBUDDY.md +20 -20
- package/templates/cli/CODEIUM.md +20 -20
- package/templates/cli/CODEX.md +21 -21
- package/templates/cli/CONTINUE.md +34 -34
- package/templates/cli/CURSOR_CLI.md +62 -62
- package/templates/cli/FACTORY.md +18 -18
- package/templates/cli/GEMINI.md +35 -35
- package/templates/cli/KILOCODE.md +18 -18
- package/templates/cli/OPENCODE.md +18 -18
- package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
- package/templates/commands/rulebook-memory-save.md +48 -48
- package/templates/commands/rulebook-memory-search.md +47 -47
- package/templates/commands/rulebook-task-apply.md +67 -67
- package/templates/commands/rulebook-task-archive.md +94 -94
- package/templates/commands/rulebook-task-create.md +93 -93
- package/templates/commands/rulebook-task-list.md +42 -42
- package/templates/commands/rulebook-task-show.md +52 -52
- package/templates/commands/rulebook-task-validate.md +53 -53
- package/templates/core/AGENTS_LEAN.md +25 -25
- package/templates/core/AGENTS_OVERRIDE.md +16 -16
- package/templates/core/AGENT_AUTOMATION.md +288 -288
- package/templates/core/DAG.md +304 -304
- package/templates/core/DOCUMENTATION_RULES.md +36 -36
- package/templates/core/MULTI_AGENT.md +74 -74
- package/templates/core/PLANS.md +28 -28
- package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
- package/templates/core/RALPH.md +471 -471
- package/templates/core/RULEBOOK.md +1935 -1935
- package/templates/frameworks/ANGULAR.md +36 -36
- package/templates/frameworks/DJANGO.md +83 -83
- package/templates/frameworks/ELECTRON.md +147 -147
- package/templates/frameworks/FLASK.md +38 -38
- package/templates/frameworks/FLUTTER.md +55 -55
- package/templates/frameworks/JQUERY.md +32 -32
- package/templates/frameworks/LARAVEL.md +38 -38
- package/templates/frameworks/NESTJS.md +43 -43
- package/templates/frameworks/NEXTJS.md +127 -127
- package/templates/frameworks/NUXT.md +40 -40
- package/templates/frameworks/RAILS.md +66 -66
- package/templates/frameworks/REACT.md +38 -38
- package/templates/frameworks/REACT_NATIVE.md +47 -47
- package/templates/frameworks/SPRING.md +39 -39
- package/templates/frameworks/SYMFONY.md +36 -36
- package/templates/frameworks/VUE.md +36 -36
- package/templates/frameworks/ZEND.md +35 -35
- package/templates/git/CI_CD_PATTERNS.md +661 -661
- package/templates/git/GITHUB_ACTIONS.md +728 -728
- package/templates/git/GITLAB_CI.md +730 -730
- package/templates/git/GIT_WORKFLOW.md +1157 -1157
- package/templates/git/SECRETS_MANAGEMENT.md +585 -585
- package/templates/hooks/COMMIT_MSG.md +530 -530
- package/templates/hooks/POST_CHECKOUT.md +546 -546
- package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
- package/templates/hooks/PRE_COMMIT.md +414 -414
- package/templates/hooks/PRE_PUSH.md +601 -601
- package/templates/ides/CONTINUE_RULES.md +16 -16
- package/templates/ides/COPILOT.md +37 -37
- package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
- package/templates/ides/CURSOR.md +43 -43
- package/templates/ides/GEMINI_RULES.md +17 -17
- package/templates/ides/JETBRAINS_AI.md +35 -35
- package/templates/ides/REPLIT.md +36 -36
- package/templates/ides/TABNINE.md +29 -29
- package/templates/ides/VSCODE.md +40 -40
- package/templates/ides/WINDSURF.md +36 -36
- package/templates/ides/WINDSURF_RULES.md +14 -14
- package/templates/ides/ZED.md +32 -32
- package/templates/ides/cursor-mdc/go.mdc +24 -24
- package/templates/ides/cursor-mdc/python.mdc +24 -24
- package/templates/ides/cursor-mdc/quality.mdc +25 -25
- package/templates/ides/cursor-mdc/ralph.mdc +39 -39
- package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
- package/templates/ides/cursor-mdc/rust.mdc +24 -24
- package/templates/ides/cursor-mdc/typescript.mdc +25 -25
- package/templates/languages/C.md +333 -333
- package/templates/languages/CPP.md +743 -743
- package/templates/languages/CSHARP.md +417 -417
- package/templates/languages/ELIXIR.md +454 -454
- package/templates/languages/ERLANG.md +361 -361
- package/templates/languages/GO.md +645 -645
- package/templates/languages/HASKELL.md +177 -177
- package/templates/languages/JAVA.md +607 -607
- package/templates/languages/JAVASCRIPT.md +631 -631
- package/templates/languages/JULIA.md +97 -97
- package/templates/languages/KOTLIN.md +511 -511
- package/templates/languages/LISP.md +100 -100
- package/templates/languages/LUA.md +74 -74
- package/templates/languages/OBJECTIVEC.md +90 -90
- package/templates/languages/PHP.md +416 -416
- package/templates/languages/PYTHON.md +682 -682
- package/templates/languages/RUBY.md +421 -421
- package/templates/languages/RUST.md +477 -477
- package/templates/languages/SAS.md +73 -73
- package/templates/languages/SCALA.md +348 -348
- package/templates/languages/SOLIDITY.md +580 -580
- package/templates/languages/SQL.md +137 -137
- package/templates/languages/SWIFT.md +466 -466
- package/templates/languages/TYPESCRIPT.md +591 -591
- package/templates/languages/ZIG.md +265 -265
- package/templates/modules/ATLASSIAN.md +255 -255
- package/templates/modules/CONTEXT7.md +54 -54
- package/templates/modules/FIGMA.md +267 -267
- package/templates/modules/GITHUB_MCP.md +64 -64
- package/templates/modules/GRAFANA.md +328 -328
- package/templates/modules/MEMORY.md +126 -126
- package/templates/modules/NOTION.md +247 -247
- package/templates/modules/PLAYWRIGHT.md +90 -90
- package/templates/modules/RULEBOOK_MCP.md +156 -156
- package/templates/modules/SERENA.md +337 -337
- package/templates/modules/SUPABASE.md +223 -223
- package/templates/modules/SYNAP.md +69 -69
- package/templates/modules/VECTORIZER.md +63 -63
- package/templates/modules/sequential-thinking.md +42 -42
- package/templates/ralph/ralph-history.bat +4 -4
- package/templates/ralph/ralph-history.sh +5 -5
- package/templates/ralph/ralph-init.bat +5 -5
- package/templates/ralph/ralph-init.sh +5 -5
- package/templates/ralph/ralph-pause.bat +5 -5
- package/templates/ralph/ralph-pause.sh +5 -5
- package/templates/ralph/ralph-run.bat +5 -5
- package/templates/ralph/ralph-run.sh +5 -5
- package/templates/ralph/ralph-status.bat +4 -4
- package/templates/ralph/ralph-status.sh +5 -5
- package/templates/services/AZURE_BLOB.md +184 -184
- package/templates/services/CASSANDRA.md +239 -239
- package/templates/services/DATADOG.md +26 -26
- package/templates/services/DOCKER.md +124 -124
- package/templates/services/DOCKER_COMPOSE.md +168 -168
- package/templates/services/DYNAMODB.md +308 -308
- package/templates/services/ELASTICSEARCH.md +347 -347
- package/templates/services/GCS.md +178 -178
- package/templates/services/HELM.md +194 -194
- package/templates/services/INFLUXDB.md +265 -265
- package/templates/services/KAFKA.md +341 -341
- package/templates/services/KUBERNETES.md +208 -208
- package/templates/services/MARIADB.md +183 -183
- package/templates/services/MEMCACHED.md +242 -242
- package/templates/services/MINIO.md +201 -201
- package/templates/services/MONGODB.md +268 -268
- package/templates/services/MYSQL.md +358 -358
- package/templates/services/NEO4J.md +247 -247
- package/templates/services/OPENTELEMETRY.md +25 -25
- package/templates/services/ORACLE.md +290 -290
- package/templates/services/PINO.md +24 -24
- package/templates/services/POSTGRESQL.md +326 -326
- package/templates/services/PROMETHEUS.md +33 -33
- package/templates/services/RABBITMQ.md +286 -286
- package/templates/services/REDIS.md +292 -292
- package/templates/services/S3.md +298 -298
- package/templates/services/SENTRY.md +23 -23
- package/templates/services/SQLITE.md +294 -294
- package/templates/services/SQLSERVER.md +294 -294
- package/templates/services/WINSTON.md +30 -30
- package/templates/skills/cli/aider/SKILL.md +59 -59
- package/templates/skills/cli/amazon-q/SKILL.md +35 -35
- package/templates/skills/cli/auggie/SKILL.md +42 -42
- package/templates/skills/cli/claude/SKILL.md +42 -42
- package/templates/skills/cli/cline/SKILL.md +42 -42
- package/templates/skills/cli/codebuddy/SKILL.md +30 -30
- package/templates/skills/cli/codeium/SKILL.md +30 -30
- package/templates/skills/cli/codex/SKILL.md +31 -31
- package/templates/skills/cli/continue/SKILL.md +44 -44
- package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
- package/templates/skills/cli/factory/SKILL.md +28 -28
- package/templates/skills/cli/gemini/SKILL.md +45 -45
- package/templates/skills/cli/kilocode/SKILL.md +28 -28
- package/templates/skills/cli/opencode/SKILL.md +28 -28
- package/templates/skills/core/agent-automation/SKILL.md +194 -194
- package/templates/skills/core/dag/SKILL.md +314 -314
- package/templates/skills/core/documentation-rules/SKILL.md +46 -46
- package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
- package/templates/skills/core/rulebook/SKILL.md +176 -176
- package/templates/skills/dev/accessibility/SKILL.md +17 -0
- package/templates/skills/dev/api-design/SKILL.md +15 -0
- package/templates/skills/dev/architect/SKILL.md +17 -0
- package/templates/skills/dev/build-fix/SKILL.md +17 -0
- package/templates/skills/dev/db-design/SKILL.md +15 -0
- package/templates/skills/dev/debug/SKILL.md +16 -0
- package/templates/skills/dev/deploy/SKILL.md +17 -0
- package/templates/skills/dev/docs/SKILL.md +17 -0
- package/templates/skills/dev/migrate/SKILL.md +15 -0
- package/templates/skills/dev/perf/SKILL.md +17 -0
- package/templates/skills/dev/refactor/SKILL.md +17 -0
- package/templates/skills/dev/research/SKILL.md +14 -0
- package/templates/skills/dev/review/SKILL.md +18 -0
- package/templates/skills/dev/security-audit/SKILL.md +17 -0
- package/templates/skills/frameworks/angular/SKILL.md +46 -46
- package/templates/skills/frameworks/django/SKILL.md +93 -93
- package/templates/skills/frameworks/electron/SKILL.md +157 -157
- package/templates/skills/frameworks/flask/SKILL.md +48 -48
- package/templates/skills/frameworks/flutter/SKILL.md +65 -65
- package/templates/skills/frameworks/jquery/SKILL.md +42 -42
- package/templates/skills/frameworks/laravel/SKILL.md +48 -48
- package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
- package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
- package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
- package/templates/skills/frameworks/rails/SKILL.md +76 -76
- package/templates/skills/frameworks/react/SKILL.md +48 -48
- package/templates/skills/frameworks/react-native/SKILL.md +57 -57
- package/templates/skills/frameworks/spring/SKILL.md +49 -49
- package/templates/skills/frameworks/symfony/SKILL.md +46 -46
- package/templates/skills/frameworks/vue/SKILL.md +46 -46
- package/templates/skills/frameworks/zend/SKILL.md +45 -45
- package/templates/skills/ides/copilot/SKILL.md +47 -47
- package/templates/skills/ides/cursor/SKILL.md +53 -53
- package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
- package/templates/skills/ides/replit/SKILL.md +46 -46
- package/templates/skills/ides/tabnine/SKILL.md +39 -39
- package/templates/skills/ides/vscode/SKILL.md +50 -50
- package/templates/skills/ides/windsurf/SKILL.md +46 -46
- package/templates/skills/ides/zed/SKILL.md +42 -42
- package/templates/skills/languages/c/SKILL.md +343 -343
- package/templates/skills/languages/cpp/SKILL.md +753 -753
- package/templates/skills/languages/csharp/SKILL.md +427 -427
- package/templates/skills/languages/elixir/SKILL.md +464 -464
- package/templates/skills/languages/erlang/SKILL.md +371 -371
- package/templates/skills/languages/go/SKILL.md +655 -655
- package/templates/skills/languages/haskell/SKILL.md +187 -187
- package/templates/skills/languages/java/SKILL.md +617 -617
- package/templates/skills/languages/javascript/SKILL.md +641 -641
- package/templates/skills/languages/julia/SKILL.md +107 -107
- package/templates/skills/languages/kotlin/SKILL.md +521 -521
- package/templates/skills/languages/lisp/SKILL.md +110 -110
- package/templates/skills/languages/lua/SKILL.md +84 -84
- package/templates/skills/languages/objectivec/SKILL.md +100 -100
- package/templates/skills/languages/php/SKILL.md +426 -426
- package/templates/skills/languages/python/SKILL.md +692 -692
- package/templates/skills/languages/ruby/SKILL.md +431 -431
- package/templates/skills/languages/rust/SKILL.md +487 -487
- package/templates/skills/languages/sas/SKILL.md +83 -83
- package/templates/skills/languages/scala/SKILL.md +358 -358
- package/templates/skills/languages/solidity/SKILL.md +590 -590
- package/templates/skills/languages/sql/SKILL.md +147 -147
- package/templates/skills/languages/swift/SKILL.md +476 -476
- package/templates/skills/languages/typescript/SKILL.md +302 -302
- package/templates/skills/languages/zig/SKILL.md +275 -275
- package/templates/skills/modules/atlassian/SKILL.md +265 -265
- package/templates/skills/modules/context7/SKILL.md +64 -64
- package/templates/skills/modules/figma/SKILL.md +277 -277
- package/templates/skills/modules/github-mcp/SKILL.md +74 -74
- package/templates/skills/modules/grafana/SKILL.md +338 -338
- package/templates/skills/modules/memory/SKILL.md +73 -73
- package/templates/skills/modules/notion/SKILL.md +257 -257
- package/templates/skills/modules/playwright/SKILL.md +100 -100
- package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
- package/templates/skills/modules/serena/SKILL.md +347 -347
- package/templates/skills/modules/supabase/SKILL.md +233 -233
- package/templates/skills/modules/synap/SKILL.md +79 -79
- package/templates/skills/modules/vectorizer/SKILL.md +73 -73
- package/templates/skills/services/azure-blob/SKILL.md +194 -194
- package/templates/skills/services/cassandra/SKILL.md +249 -249
- package/templates/skills/services/dynamodb/SKILL.md +318 -318
- package/templates/skills/services/elasticsearch/SKILL.md +357 -357
- package/templates/skills/services/gcs/SKILL.md +188 -188
- package/templates/skills/services/influxdb/SKILL.md +275 -275
- package/templates/skills/services/kafka/SKILL.md +351 -351
- package/templates/skills/services/mariadb/SKILL.md +193 -193
- package/templates/skills/services/memcached/SKILL.md +252 -252
- package/templates/skills/services/minio/SKILL.md +211 -211
- package/templates/skills/services/mongodb/SKILL.md +278 -278
- package/templates/skills/services/mysql/SKILL.md +368 -368
- package/templates/skills/services/neo4j/SKILL.md +257 -257
- package/templates/skills/services/oracle/SKILL.md +300 -300
- package/templates/skills/services/postgresql/SKILL.md +336 -336
- package/templates/skills/services/rabbitmq/SKILL.md +296 -296
- package/templates/skills/services/redis/SKILL.md +302 -302
- package/templates/skills/services/s3/SKILL.md +308 -308
- package/templates/skills/services/sqlite/SKILL.md +304 -304
- package/templates/skills/services/sqlserver/SKILL.md +304 -304
- package/templates/skills/workflows/ralph/SKILL.md +309 -309
- package/templates/skills/workflows/ralph/install.sh +87 -87
- package/templates/skills/workflows/ralph/manifest.json +158 -158
|
@@ -1,265 +1,265 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Atlassian"
|
|
3
|
-
description: "Use MCP Atlassian for Jira issues, Confluence documentation, and Bitbucket repositories."
|
|
4
|
-
version: "1.0.0"
|
|
5
|
-
category: "modules"
|
|
6
|
-
author: "Rulebook"
|
|
7
|
-
tags: ["modules", "mcp"]
|
|
8
|
-
dependencies: []
|
|
9
|
-
conflicts: []
|
|
10
|
-
---
|
|
11
|
-
<!-- ATLASSIAN:START -->
|
|
12
|
-
# Atlassian MCP Instructions
|
|
13
|
-
|
|
14
|
-
**CRITICAL**: Use MCP Atlassian for Jira issues, Confluence documentation, and Bitbucket repositories.
|
|
15
|
-
|
|
16
|
-
## Jira Operations
|
|
17
|
-
|
|
18
|
-
### Issue Management
|
|
19
|
-
```typescript
|
|
20
|
-
// Create issue
|
|
21
|
-
jira.issues.createIssue({
|
|
22
|
-
fields: {
|
|
23
|
-
project: { key: 'PROJ' },
|
|
24
|
-
summary: 'Bug in authentication',
|
|
25
|
-
description: 'Users cannot login with valid credentials',
|
|
26
|
-
issuetype: { name: 'Bug' },
|
|
27
|
-
priority: { name: 'High' }
|
|
28
|
-
}
|
|
29
|
-
})
|
|
30
|
-
|
|
31
|
-
// Update issue
|
|
32
|
-
jira.issues.updateIssue({
|
|
33
|
-
issueIdOrKey: 'PROJ-123',
|
|
34
|
-
fields: {
|
|
35
|
-
status: { name: 'In Progress' },
|
|
36
|
-
assignee: { accountId: 'user-id' }
|
|
37
|
-
}
|
|
38
|
-
})
|
|
39
|
-
|
|
40
|
-
// Get issue
|
|
41
|
-
jira.issues.getIssue({ issueIdOrKey: 'PROJ-123' })
|
|
42
|
-
|
|
43
|
-
// Search issues
|
|
44
|
-
jira.issueSearch.searchForIssuesUsingJql({
|
|
45
|
-
jql: 'project = PROJ AND status = "To Do" ORDER BY priority DESC'
|
|
46
|
-
})
|
|
47
|
-
|
|
48
|
-
// Add comment
|
|
49
|
-
jira.issueComments.addComment({
|
|
50
|
-
issueIdOrKey: 'PROJ-123',
|
|
51
|
-
body: 'Working on this issue'
|
|
52
|
-
})
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
### Transitions
|
|
56
|
-
```typescript
|
|
57
|
-
// Get transitions
|
|
58
|
-
const transitions = await jira.issues.getTransitions({ issueIdOrKey: 'PROJ-123' })
|
|
59
|
-
|
|
60
|
-
// Transition issue
|
|
61
|
-
jira.issues.doTransition({
|
|
62
|
-
issueIdOrKey: 'PROJ-123',
|
|
63
|
-
transition: { id: transitionId }
|
|
64
|
-
})
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
## Confluence Operations
|
|
68
|
-
|
|
69
|
-
### Page Management
|
|
70
|
-
```typescript
|
|
71
|
-
// Create page
|
|
72
|
-
confluence.content.createContent({
|
|
73
|
-
type: 'page',
|
|
74
|
-
title: 'API Documentation',
|
|
75
|
-
space: { key: 'DOCS' },
|
|
76
|
-
body: {
|
|
77
|
-
storage: {
|
|
78
|
-
value: '<h1>Introduction</h1><p>Content here</p>',
|
|
79
|
-
representation: 'storage'
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
})
|
|
83
|
-
|
|
84
|
-
// Update page
|
|
85
|
-
confluence.content.updateContent({
|
|
86
|
-
id: 'page-id',
|
|
87
|
-
type: 'page',
|
|
88
|
-
title: 'Updated Title',
|
|
89
|
-
version: { number: currentVersion + 1 },
|
|
90
|
-
body: {
|
|
91
|
-
storage: {
|
|
92
|
-
value: '<p>Updated content</p>',
|
|
93
|
-
representation: 'storage'
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
})
|
|
97
|
-
|
|
98
|
-
// Get page
|
|
99
|
-
confluence.content.getContentById({ id: 'page-id' })
|
|
100
|
-
|
|
101
|
-
// Search
|
|
102
|
-
confluence.search.search({
|
|
103
|
-
cql: 'type=page AND space=DOCS AND title~"API"'
|
|
104
|
-
})
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
### Attachments
|
|
108
|
-
```typescript
|
|
109
|
-
// Add attachment
|
|
110
|
-
confluence.content.createAttachment({
|
|
111
|
-
id: 'page-id',
|
|
112
|
-
file: fileBuffer,
|
|
113
|
-
filename: 'document.pdf'
|
|
114
|
-
})
|
|
115
|
-
|
|
116
|
-
// Get attachments
|
|
117
|
-
confluence.content.getAttachments({ id: 'page-id' })
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
## Bitbucket Operations
|
|
121
|
-
|
|
122
|
-
### Repository Management
|
|
123
|
-
```typescript
|
|
124
|
-
// Get repositories
|
|
125
|
-
bitbucket.repositories.list({ workspace: 'my-workspace' })
|
|
126
|
-
|
|
127
|
-
// Get repository
|
|
128
|
-
bitbucket.repositories.get({
|
|
129
|
-
workspace: 'my-workspace',
|
|
130
|
-
repo_slug: 'my-repo'
|
|
131
|
-
})
|
|
132
|
-
|
|
133
|
-
// Get branches
|
|
134
|
-
bitbucket.refs.listBranches({
|
|
135
|
-
workspace: 'my-workspace',
|
|
136
|
-
repo_slug: 'my-repo'
|
|
137
|
-
})
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
### Pull Requests
|
|
141
|
-
```typescript
|
|
142
|
-
// Create PR
|
|
143
|
-
bitbucket.pullrequests.create({
|
|
144
|
-
workspace: 'my-workspace',
|
|
145
|
-
repo_slug: 'my-repo',
|
|
146
|
-
title: 'Add new feature',
|
|
147
|
-
source: { branch: { name: 'feature/new-feature' } },
|
|
148
|
-
destination: { branch: { name: 'main' } },
|
|
149
|
-
description: 'Implements feature X'
|
|
150
|
-
})
|
|
151
|
-
|
|
152
|
-
// List PRs
|
|
153
|
-
bitbucket.pullrequests.list({
|
|
154
|
-
workspace: 'my-workspace',
|
|
155
|
-
repo_slug: 'my-repo',
|
|
156
|
-
state: 'OPEN'
|
|
157
|
-
})
|
|
158
|
-
|
|
159
|
-
// Approve PR
|
|
160
|
-
bitbucket.pullrequests.approve({
|
|
161
|
-
workspace: 'my-workspace',
|
|
162
|
-
repo_slug: 'my-repo',
|
|
163
|
-
pull_request_id: 123
|
|
164
|
-
})
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
## Common Patterns
|
|
168
|
-
|
|
169
|
-
### CI/CD Integration
|
|
170
|
-
```typescript
|
|
171
|
-
// Create issue on test failure
|
|
172
|
-
if (testsFailed) {
|
|
173
|
-
await jira.issues.createIssue({
|
|
174
|
-
fields: {
|
|
175
|
-
project: { key: 'PROJ' },
|
|
176
|
-
summary: `Test failure in ${testSuite}`,
|
|
177
|
-
description: `Tests failed with errors:\n${errors.join('\n')}`,
|
|
178
|
-
issuetype: { name: 'Bug' },
|
|
179
|
-
labels: ['ci-failure', 'automated']
|
|
180
|
-
}
|
|
181
|
-
})
|
|
182
|
-
}
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
### Documentation Sync
|
|
186
|
-
```typescript
|
|
187
|
-
// Sync CHANGELOG to Confluence
|
|
188
|
-
const changelog = fs.readFileSync('CHANGELOG.md', 'utf-8')
|
|
189
|
-
const html = markdownToConfluenceHtml(changelog)
|
|
190
|
-
|
|
191
|
-
await confluence.content.updateContent({
|
|
192
|
-
id: changelogPageId,
|
|
193
|
-
type: 'page',
|
|
194
|
-
title: 'Changelog',
|
|
195
|
-
version: { number: version + 1 },
|
|
196
|
-
body: { storage: { value: html, representation: 'storage' } }
|
|
197
|
-
})
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
### Sprint Planning
|
|
201
|
-
```typescript
|
|
202
|
-
// Get sprint tasks
|
|
203
|
-
const issues = await jira.issueSearch.searchForIssuesUsingJql({
|
|
204
|
-
jql: 'sprint = ACTIVE AND project = PROJ',
|
|
205
|
-
fields: ['summary', 'status', 'assignee', 'priority']
|
|
206
|
-
})
|
|
207
|
-
|
|
208
|
-
// Generate sprint report
|
|
209
|
-
const report = issues.issues.map(issue => ({
|
|
210
|
-
key: issue.key,
|
|
211
|
-
summary: issue.fields.summary,
|
|
212
|
-
status: issue.fields.status.name,
|
|
213
|
-
assignee: issue.fields.assignee?.displayName
|
|
214
|
-
}))
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
## Best Practices
|
|
218
|
-
|
|
219
|
-
✅ **DO:**
|
|
220
|
-
- Use JQL for complex Jira queries
|
|
221
|
-
- Cache project/user data
|
|
222
|
-
- Handle rate limits
|
|
223
|
-
- Use issue transitions properly
|
|
224
|
-
- Version Confluence pages correctly
|
|
225
|
-
- Link issues to commits/PRs
|
|
226
|
-
|
|
227
|
-
❌ **DON'T:**
|
|
228
|
-
- Create duplicate issues
|
|
229
|
-
- Skip issue validation
|
|
230
|
-
- Ignore rate limiting
|
|
231
|
-
- Hardcode issue keys
|
|
232
|
-
- Update without version check
|
|
233
|
-
- Store credentials in code
|
|
234
|
-
|
|
235
|
-
## Configuration
|
|
236
|
-
|
|
237
|
-
```json
|
|
238
|
-
{
|
|
239
|
-
"mcpServers": {
|
|
240
|
-
"atlassian": {
|
|
241
|
-
"command": "npx",
|
|
242
|
-
"args": ["-y", "@modelcontextprotocol/server-atlassian"],
|
|
243
|
-
"env": {
|
|
244
|
-
"JIRA_HOST": "your-domain.atlassian.net",
|
|
245
|
-
"JIRA_EMAIL": "your-email@example.com",
|
|
246
|
-
"JIRA_API_TOKEN": "your-api-token",
|
|
247
|
-
"CONFLUENCE_HOST": "your-domain.atlassian.net",
|
|
248
|
-
"CONFLUENCE_EMAIL": "your-email@example.com",
|
|
249
|
-
"CONFLUENCE_API_TOKEN": "your-api-token",
|
|
250
|
-
"BITBUCKET_WORKSPACE": "your-workspace",
|
|
251
|
-
"BITBUCKET_USERNAME": "your-username",
|
|
252
|
-
"BITBUCKET_APP_PASSWORD": "your-app-password"
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
```
|
|
258
|
-
|
|
259
|
-
**Setup:**
|
|
260
|
-
1. Generate API token at https://id.atlassian.com/manage-profile/security/api-tokens
|
|
261
|
-
2. For Bitbucket, create app password in account settings
|
|
262
|
-
3. Never commit credentials
|
|
263
|
-
|
|
264
|
-
<!-- ATLASSIAN:END -->
|
|
265
|
-
|
|
1
|
+
---
|
|
2
|
+
name: "Atlassian"
|
|
3
|
+
description: "Use MCP Atlassian for Jira issues, Confluence documentation, and Bitbucket repositories."
|
|
4
|
+
version: "1.0.0"
|
|
5
|
+
category: "modules"
|
|
6
|
+
author: "Rulebook"
|
|
7
|
+
tags: ["modules", "mcp"]
|
|
8
|
+
dependencies: []
|
|
9
|
+
conflicts: []
|
|
10
|
+
---
|
|
11
|
+
<!-- ATLASSIAN:START -->
|
|
12
|
+
# Atlassian MCP Instructions
|
|
13
|
+
|
|
14
|
+
**CRITICAL**: Use MCP Atlassian for Jira issues, Confluence documentation, and Bitbucket repositories.
|
|
15
|
+
|
|
16
|
+
## Jira Operations
|
|
17
|
+
|
|
18
|
+
### Issue Management
|
|
19
|
+
```typescript
|
|
20
|
+
// Create issue
|
|
21
|
+
jira.issues.createIssue({
|
|
22
|
+
fields: {
|
|
23
|
+
project: { key: 'PROJ' },
|
|
24
|
+
summary: 'Bug in authentication',
|
|
25
|
+
description: 'Users cannot login with valid credentials',
|
|
26
|
+
issuetype: { name: 'Bug' },
|
|
27
|
+
priority: { name: 'High' }
|
|
28
|
+
}
|
|
29
|
+
})
|
|
30
|
+
|
|
31
|
+
// Update issue
|
|
32
|
+
jira.issues.updateIssue({
|
|
33
|
+
issueIdOrKey: 'PROJ-123',
|
|
34
|
+
fields: {
|
|
35
|
+
status: { name: 'In Progress' },
|
|
36
|
+
assignee: { accountId: 'user-id' }
|
|
37
|
+
}
|
|
38
|
+
})
|
|
39
|
+
|
|
40
|
+
// Get issue
|
|
41
|
+
jira.issues.getIssue({ issueIdOrKey: 'PROJ-123' })
|
|
42
|
+
|
|
43
|
+
// Search issues
|
|
44
|
+
jira.issueSearch.searchForIssuesUsingJql({
|
|
45
|
+
jql: 'project = PROJ AND status = "To Do" ORDER BY priority DESC'
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
// Add comment
|
|
49
|
+
jira.issueComments.addComment({
|
|
50
|
+
issueIdOrKey: 'PROJ-123',
|
|
51
|
+
body: 'Working on this issue'
|
|
52
|
+
})
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Transitions
|
|
56
|
+
```typescript
|
|
57
|
+
// Get transitions
|
|
58
|
+
const transitions = await jira.issues.getTransitions({ issueIdOrKey: 'PROJ-123' })
|
|
59
|
+
|
|
60
|
+
// Transition issue
|
|
61
|
+
jira.issues.doTransition({
|
|
62
|
+
issueIdOrKey: 'PROJ-123',
|
|
63
|
+
transition: { id: transitionId }
|
|
64
|
+
})
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Confluence Operations
|
|
68
|
+
|
|
69
|
+
### Page Management
|
|
70
|
+
```typescript
|
|
71
|
+
// Create page
|
|
72
|
+
confluence.content.createContent({
|
|
73
|
+
type: 'page',
|
|
74
|
+
title: 'API Documentation',
|
|
75
|
+
space: { key: 'DOCS' },
|
|
76
|
+
body: {
|
|
77
|
+
storage: {
|
|
78
|
+
value: '<h1>Introduction</h1><p>Content here</p>',
|
|
79
|
+
representation: 'storage'
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
})
|
|
83
|
+
|
|
84
|
+
// Update page
|
|
85
|
+
confluence.content.updateContent({
|
|
86
|
+
id: 'page-id',
|
|
87
|
+
type: 'page',
|
|
88
|
+
title: 'Updated Title',
|
|
89
|
+
version: { number: currentVersion + 1 },
|
|
90
|
+
body: {
|
|
91
|
+
storage: {
|
|
92
|
+
value: '<p>Updated content</p>',
|
|
93
|
+
representation: 'storage'
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
})
|
|
97
|
+
|
|
98
|
+
// Get page
|
|
99
|
+
confluence.content.getContentById({ id: 'page-id' })
|
|
100
|
+
|
|
101
|
+
// Search
|
|
102
|
+
confluence.search.search({
|
|
103
|
+
cql: 'type=page AND space=DOCS AND title~"API"'
|
|
104
|
+
})
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Attachments
|
|
108
|
+
```typescript
|
|
109
|
+
// Add attachment
|
|
110
|
+
confluence.content.createAttachment({
|
|
111
|
+
id: 'page-id',
|
|
112
|
+
file: fileBuffer,
|
|
113
|
+
filename: 'document.pdf'
|
|
114
|
+
})
|
|
115
|
+
|
|
116
|
+
// Get attachments
|
|
117
|
+
confluence.content.getAttachments({ id: 'page-id' })
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Bitbucket Operations
|
|
121
|
+
|
|
122
|
+
### Repository Management
|
|
123
|
+
```typescript
|
|
124
|
+
// Get repositories
|
|
125
|
+
bitbucket.repositories.list({ workspace: 'my-workspace' })
|
|
126
|
+
|
|
127
|
+
// Get repository
|
|
128
|
+
bitbucket.repositories.get({
|
|
129
|
+
workspace: 'my-workspace',
|
|
130
|
+
repo_slug: 'my-repo'
|
|
131
|
+
})
|
|
132
|
+
|
|
133
|
+
// Get branches
|
|
134
|
+
bitbucket.refs.listBranches({
|
|
135
|
+
workspace: 'my-workspace',
|
|
136
|
+
repo_slug: 'my-repo'
|
|
137
|
+
})
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### Pull Requests
|
|
141
|
+
```typescript
|
|
142
|
+
// Create PR
|
|
143
|
+
bitbucket.pullrequests.create({
|
|
144
|
+
workspace: 'my-workspace',
|
|
145
|
+
repo_slug: 'my-repo',
|
|
146
|
+
title: 'Add new feature',
|
|
147
|
+
source: { branch: { name: 'feature/new-feature' } },
|
|
148
|
+
destination: { branch: { name: 'main' } },
|
|
149
|
+
description: 'Implements feature X'
|
|
150
|
+
})
|
|
151
|
+
|
|
152
|
+
// List PRs
|
|
153
|
+
bitbucket.pullrequests.list({
|
|
154
|
+
workspace: 'my-workspace',
|
|
155
|
+
repo_slug: 'my-repo',
|
|
156
|
+
state: 'OPEN'
|
|
157
|
+
})
|
|
158
|
+
|
|
159
|
+
// Approve PR
|
|
160
|
+
bitbucket.pullrequests.approve({
|
|
161
|
+
workspace: 'my-workspace',
|
|
162
|
+
repo_slug: 'my-repo',
|
|
163
|
+
pull_request_id: 123
|
|
164
|
+
})
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## Common Patterns
|
|
168
|
+
|
|
169
|
+
### CI/CD Integration
|
|
170
|
+
```typescript
|
|
171
|
+
// Create issue on test failure
|
|
172
|
+
if (testsFailed) {
|
|
173
|
+
await jira.issues.createIssue({
|
|
174
|
+
fields: {
|
|
175
|
+
project: { key: 'PROJ' },
|
|
176
|
+
summary: `Test failure in ${testSuite}`,
|
|
177
|
+
description: `Tests failed with errors:\n${errors.join('\n')}`,
|
|
178
|
+
issuetype: { name: 'Bug' },
|
|
179
|
+
labels: ['ci-failure', 'automated']
|
|
180
|
+
}
|
|
181
|
+
})
|
|
182
|
+
}
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Documentation Sync
|
|
186
|
+
```typescript
|
|
187
|
+
// Sync CHANGELOG to Confluence
|
|
188
|
+
const changelog = fs.readFileSync('CHANGELOG.md', 'utf-8')
|
|
189
|
+
const html = markdownToConfluenceHtml(changelog)
|
|
190
|
+
|
|
191
|
+
await confluence.content.updateContent({
|
|
192
|
+
id: changelogPageId,
|
|
193
|
+
type: 'page',
|
|
194
|
+
title: 'Changelog',
|
|
195
|
+
version: { number: version + 1 },
|
|
196
|
+
body: { storage: { value: html, representation: 'storage' } }
|
|
197
|
+
})
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### Sprint Planning
|
|
201
|
+
```typescript
|
|
202
|
+
// Get sprint tasks
|
|
203
|
+
const issues = await jira.issueSearch.searchForIssuesUsingJql({
|
|
204
|
+
jql: 'sprint = ACTIVE AND project = PROJ',
|
|
205
|
+
fields: ['summary', 'status', 'assignee', 'priority']
|
|
206
|
+
})
|
|
207
|
+
|
|
208
|
+
// Generate sprint report
|
|
209
|
+
const report = issues.issues.map(issue => ({
|
|
210
|
+
key: issue.key,
|
|
211
|
+
summary: issue.fields.summary,
|
|
212
|
+
status: issue.fields.status.name,
|
|
213
|
+
assignee: issue.fields.assignee?.displayName
|
|
214
|
+
}))
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
## Best Practices
|
|
218
|
+
|
|
219
|
+
✅ **DO:**
|
|
220
|
+
- Use JQL for complex Jira queries
|
|
221
|
+
- Cache project/user data
|
|
222
|
+
- Handle rate limits
|
|
223
|
+
- Use issue transitions properly
|
|
224
|
+
- Version Confluence pages correctly
|
|
225
|
+
- Link issues to commits/PRs
|
|
226
|
+
|
|
227
|
+
❌ **DON'T:**
|
|
228
|
+
- Create duplicate issues
|
|
229
|
+
- Skip issue validation
|
|
230
|
+
- Ignore rate limiting
|
|
231
|
+
- Hardcode issue keys
|
|
232
|
+
- Update without version check
|
|
233
|
+
- Store credentials in code
|
|
234
|
+
|
|
235
|
+
## Configuration
|
|
236
|
+
|
|
237
|
+
```json
|
|
238
|
+
{
|
|
239
|
+
"mcpServers": {
|
|
240
|
+
"atlassian": {
|
|
241
|
+
"command": "npx",
|
|
242
|
+
"args": ["-y", "@modelcontextprotocol/server-atlassian"],
|
|
243
|
+
"env": {
|
|
244
|
+
"JIRA_HOST": "your-domain.atlassian.net",
|
|
245
|
+
"JIRA_EMAIL": "your-email@example.com",
|
|
246
|
+
"JIRA_API_TOKEN": "your-api-token",
|
|
247
|
+
"CONFLUENCE_HOST": "your-domain.atlassian.net",
|
|
248
|
+
"CONFLUENCE_EMAIL": "your-email@example.com",
|
|
249
|
+
"CONFLUENCE_API_TOKEN": "your-api-token",
|
|
250
|
+
"BITBUCKET_WORKSPACE": "your-workspace",
|
|
251
|
+
"BITBUCKET_USERNAME": "your-username",
|
|
252
|
+
"BITBUCKET_APP_PASSWORD": "your-app-password"
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
**Setup:**
|
|
260
|
+
1. Generate API token at https://id.atlassian.com/manage-profile/security/api-tokens
|
|
261
|
+
2. For Bitbucket, create app password in account settings
|
|
262
|
+
3. Never commit credentials
|
|
263
|
+
|
|
264
|
+
<!-- ATLASSIAN:END -->
|
|
265
|
+
|
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Context7"
|
|
3
|
-
description: "Use MCP Context7 to access up-to-date library documentation before adding dependencies."
|
|
4
|
-
version: "1.0.0"
|
|
5
|
-
category: "modules"
|
|
6
|
-
author: "Rulebook"
|
|
7
|
-
tags: ["modules", "mcp"]
|
|
8
|
-
dependencies: []
|
|
9
|
-
conflicts: []
|
|
10
|
-
---
|
|
11
|
-
<!-- CONTEXT7:START -->
|
|
12
|
-
# Context7 Instructions
|
|
13
|
-
|
|
14
|
-
**CRITICAL**: Use MCP Context7 to access up-to-date library documentation before adding dependencies.
|
|
15
|
-
|
|
16
|
-
## Core Functions
|
|
17
|
-
|
|
18
|
-
### 1. resolve-library-id
|
|
19
|
-
Resolve a package name to Context7-compatible library ID:
|
|
20
|
-
```
|
|
21
|
-
resolve-library-id("tokio") → "/tokio-rs/tokio"
|
|
22
|
-
resolve-library-id("react") → "/facebook/react"
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
### 2. get-library-docs
|
|
26
|
-
Fetch documentation with optional topic filter:
|
|
27
|
-
```
|
|
28
|
-
get-library-docs("/tokio-rs/tokio", topic="async")
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
## Workflow
|
|
32
|
-
|
|
33
|
-
**Before adding ANY dependency:**
|
|
34
|
-
```
|
|
35
|
-
1. resolve-library-id(library_name)
|
|
36
|
-
2. get-library-docs(library_id)
|
|
37
|
-
3. Check latest version and security
|
|
38
|
-
4. Add dependency with correct version
|
|
39
|
-
5. Document choice in commit
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
**Before updating major version:**
|
|
43
|
-
```
|
|
44
|
-
1. get-library-docs for current version
|
|
45
|
-
2. get-library-docs for target version
|
|
46
|
-
3. Review breaking changes
|
|
47
|
-
4. Plan migration
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
## Best Practices
|
|
51
|
-
|
|
52
|
-
✅ **DO:**
|
|
53
|
-
- Always check Context7 before adding dependencies
|
|
54
|
-
- Use topic parameter for specific info
|
|
55
|
-
- Document version choices
|
|
56
|
-
- Review security advisories
|
|
57
|
-
|
|
58
|
-
❌ **DON'T:**
|
|
59
|
-
- Add dependencies without checking latest version
|
|
60
|
-
- Skip migration guides on major updates
|
|
61
|
-
- Ignore security warnings
|
|
62
|
-
|
|
63
|
-
<!-- CONTEXT7:END -->
|
|
64
|
-
|
|
1
|
+
---
|
|
2
|
+
name: "Context7"
|
|
3
|
+
description: "Use MCP Context7 to access up-to-date library documentation before adding dependencies."
|
|
4
|
+
version: "1.0.0"
|
|
5
|
+
category: "modules"
|
|
6
|
+
author: "Rulebook"
|
|
7
|
+
tags: ["modules", "mcp"]
|
|
8
|
+
dependencies: []
|
|
9
|
+
conflicts: []
|
|
10
|
+
---
|
|
11
|
+
<!-- CONTEXT7:START -->
|
|
12
|
+
# Context7 Instructions
|
|
13
|
+
|
|
14
|
+
**CRITICAL**: Use MCP Context7 to access up-to-date library documentation before adding dependencies.
|
|
15
|
+
|
|
16
|
+
## Core Functions
|
|
17
|
+
|
|
18
|
+
### 1. resolve-library-id
|
|
19
|
+
Resolve a package name to Context7-compatible library ID:
|
|
20
|
+
```
|
|
21
|
+
resolve-library-id("tokio") → "/tokio-rs/tokio"
|
|
22
|
+
resolve-library-id("react") → "/facebook/react"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### 2. get-library-docs
|
|
26
|
+
Fetch documentation with optional topic filter:
|
|
27
|
+
```
|
|
28
|
+
get-library-docs("/tokio-rs/tokio", topic="async")
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Workflow
|
|
32
|
+
|
|
33
|
+
**Before adding ANY dependency:**
|
|
34
|
+
```
|
|
35
|
+
1. resolve-library-id(library_name)
|
|
36
|
+
2. get-library-docs(library_id)
|
|
37
|
+
3. Check latest version and security
|
|
38
|
+
4. Add dependency with correct version
|
|
39
|
+
5. Document choice in commit
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**Before updating major version:**
|
|
43
|
+
```
|
|
44
|
+
1. get-library-docs for current version
|
|
45
|
+
2. get-library-docs for target version
|
|
46
|
+
3. Review breaking changes
|
|
47
|
+
4. Plan migration
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Best Practices
|
|
51
|
+
|
|
52
|
+
✅ **DO:**
|
|
53
|
+
- Always check Context7 before adding dependencies
|
|
54
|
+
- Use topic parameter for specific info
|
|
55
|
+
- Document version choices
|
|
56
|
+
- Review security advisories
|
|
57
|
+
|
|
58
|
+
❌ **DON'T:**
|
|
59
|
+
- Add dependencies without checking latest version
|
|
60
|
+
- Skip migration guides on major updates
|
|
61
|
+
- Ignore security warnings
|
|
62
|
+
|
|
63
|
+
<!-- CONTEXT7:END -->
|
|
64
|
+
|