workspace-architect 1.3.0

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.
Files changed (354) hide show
  1. package/.env.example +1 -0
  2. package/.gitattributes +1 -0
  3. package/.github/workflows/manual-publish.yml +36 -0
  4. package/.github/workflows/sync-and-publish.yml +58 -0
  5. package/.release-it.json +20 -0
  6. package/CHANGELOG.md +43 -0
  7. package/README.md +62 -0
  8. package/assets/chatmodes/4.1-Beast.chatmode.md +152 -0
  9. package/assets/chatmodes/Thinking-Beast-Mode.chatmode.md +337 -0
  10. package/assets/chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md +644 -0
  11. package/assets/chatmodes/accessibility.chatmode.md +298 -0
  12. package/assets/chatmodes/address-comments.chatmode.md +59 -0
  13. package/assets/chatmodes/aem-frontend-specialist.chatmode.md +385 -0
  14. package/assets/chatmodes/api-architect.chatmode.md +40 -0
  15. package/assets/chatmodes/atlassian-requirements-to-jira.chatmode.md +444 -0
  16. package/assets/chatmodes/azure-logic-apps-expert.chatmode.md +100 -0
  17. package/assets/chatmodes/azure-principal-architect.chatmode.md +58 -0
  18. package/assets/chatmodes/azure-saas-architect.chatmode.md +118 -0
  19. package/assets/chatmodes/azure-verified-modules-bicep.chatmode.md +44 -0
  20. package/assets/chatmodes/azure-verified-modules-terraform.chatmode.md +58 -0
  21. package/assets/chatmodes/bicep-implement.chatmode.md +40 -0
  22. package/assets/chatmodes/bicep-plan.chatmode.md +112 -0
  23. package/assets/chatmodes/blueprint-mode-codex.chatmode.md +110 -0
  24. package/assets/chatmodes/blueprint-mode.chatmode.md +171 -0
  25. package/assets/chatmodes/clojure-interactive-programming.chatmode.md +174 -0
  26. package/assets/chatmodes/code-tour.chatmode.md +205 -0
  27. package/assets/chatmodes/critical-thinking.chatmode.md +23 -0
  28. package/assets/chatmodes/csharp-dotnet-janitor.chatmode.md +83 -0
  29. package/assets/chatmodes/csharp-mcp-expert.chatmode.md +69 -0
  30. package/assets/chatmodes/debug.chatmode.md +79 -0
  31. package/assets/chatmodes/declarative-agents-architect.chatmode.md +76 -0
  32. package/assets/chatmodes/demonstrate-understanding.chatmode.md +60 -0
  33. package/assets/chatmodes/dotnet-upgrade.chatmode.md +222 -0
  34. package/assets/chatmodes/drupal-expert.chatmode.md +687 -0
  35. package/assets/chatmodes/electron-angular-native.chatmode.md +285 -0
  36. package/assets/chatmodes/expert-cpp-software-engineer.chatmode.md +27 -0
  37. package/assets/chatmodes/expert-dotnet-software-engineer.chatmode.md +22 -0
  38. package/assets/chatmodes/expert-nextjs-developer.chatmode.md +477 -0
  39. package/assets/chatmodes/expert-react-frontend-engineer.chatmode.md +738 -0
  40. package/assets/chatmodes/gilfoyle.chatmode.md +66 -0
  41. package/assets/chatmodes/go-mcp-expert.chatmode.md +122 -0
  42. package/assets/chatmodes/gpt-5-beast-mode.chatmode.md +109 -0
  43. package/assets/chatmodes/hlbpa.chatmode.md +232 -0
  44. package/assets/chatmodes/implementation-plan.chatmode.md +159 -0
  45. package/assets/chatmodes/janitor.chatmode.md +89 -0
  46. package/assets/chatmodes/java-mcp-expert.chatmode.md +325 -0
  47. package/assets/chatmodes/kotlin-mcp-expert.chatmode.md +181 -0
  48. package/assets/chatmodes/kusto-assistant.chatmode.md +143 -0
  49. package/assets/chatmodes/laravel-expert-agent.chatmode.md +628 -0
  50. package/assets/chatmodes/mentor.chatmode.md +32 -0
  51. package/assets/chatmodes/meta-agentic-project-scaffold.chatmode.md +15 -0
  52. package/assets/chatmodes/microsoft-agent-framework-dotnet.chatmode.md +62 -0
  53. package/assets/chatmodes/microsoft-agent-framework-python.chatmode.md +62 -0
  54. package/assets/chatmodes/microsoft-study-mode.chatmode.md +32 -0
  55. package/assets/chatmodes/microsoft_learn_contributor.chatmode.md +388 -0
  56. package/assets/chatmodes/ms-sql-dba.chatmode.md +25 -0
  57. package/assets/chatmodes/php-mcp-expert.chatmode.md +498 -0
  58. package/assets/chatmodes/pimcore-expert.chatmode.md +869 -0
  59. package/assets/chatmodes/plan.chatmode.md +114 -0
  60. package/assets/chatmodes/planner.chatmode.md +14 -0
  61. package/assets/chatmodes/playwright-tester.chatmode.md +13 -0
  62. package/assets/chatmodes/postgresql-dba.chatmode.md +17 -0
  63. package/assets/chatmodes/power-bi-data-modeling-expert.chatmode.md +319 -0
  64. package/assets/chatmodes/power-bi-dax-expert.chatmode.md +334 -0
  65. package/assets/chatmodes/power-bi-performance-expert.chatmode.md +533 -0
  66. package/assets/chatmodes/power-bi-visualization-expert.chatmode.md +549 -0
  67. package/assets/chatmodes/power-platform-expert.chatmode.md +116 -0
  68. package/assets/chatmodes/power-platform-mcp-integration-expert.chatmode.md +149 -0
  69. package/assets/chatmodes/prd.chatmode.md +201 -0
  70. package/assets/chatmodes/principal-software-engineer.chatmode.md +41 -0
  71. package/assets/chatmodes/prompt-builder.chatmode.md +352 -0
  72. package/assets/chatmodes/prompt-engineer.chatmode.md +72 -0
  73. package/assets/chatmodes/python-mcp-expert.chatmode.md +99 -0
  74. package/assets/chatmodes/refine-issue.chatmode.md +34 -0
  75. package/assets/chatmodes/research-technical-spike.chatmode.md +169 -0
  76. package/assets/chatmodes/ruby-mcp-expert.chatmode.md +346 -0
  77. package/assets/chatmodes/rust-gpt-4.1-beast-mode.chatmode.md +197 -0
  78. package/assets/chatmodes/rust-mcp-expert.chatmode.md +465 -0
  79. package/assets/chatmodes/search-ai-optimization-expert.chatmode.md +227 -0
  80. package/assets/chatmodes/semantic-kernel-dotnet.chatmode.md +31 -0
  81. package/assets/chatmodes/semantic-kernel-python.chatmode.md +28 -0
  82. package/assets/chatmodes/shopify-expert.chatmode.md +681 -0
  83. package/assets/chatmodes/simple-app-idea-generator.chatmode.md +134 -0
  84. package/assets/chatmodes/software-engineer-agent-v1.chatmode.md +164 -0
  85. package/assets/chatmodes/specification.chatmode.md +127 -0
  86. package/assets/chatmodes/swift-mcp-expert.chatmode.md +240 -0
  87. package/assets/chatmodes/task-planner.chatmode.md +374 -0
  88. package/assets/chatmodes/task-researcher.chatmode.md +254 -0
  89. package/assets/chatmodes/tdd-green.chatmode.md +59 -0
  90. package/assets/chatmodes/tdd-red.chatmode.md +59 -0
  91. package/assets/chatmodes/tdd-refactor.chatmode.md +84 -0
  92. package/assets/chatmodes/tech-debt-remediation-plan.chatmode.md +49 -0
  93. package/assets/chatmodes/terraform-azure-implement.chatmode.md +104 -0
  94. package/assets/chatmodes/terraform-azure-planning.chatmode.md +157 -0
  95. package/assets/chatmodes/typescript-mcp-expert.chatmode.md +91 -0
  96. package/assets/chatmodes/voidbeast-gpt41enhanced.chatmode.md +230 -0
  97. package/assets/chatmodes/wg-code-alchemist.chatmode.md +61 -0
  98. package/assets/chatmodes/wg-code-sentinel.chatmode.md +55 -0
  99. package/assets/collections/ai-prompt-engineering.json +18 -0
  100. package/assets/collections/angular-development.json +7 -0
  101. package/assets/collections/azure-cloud-architect.json +29 -0
  102. package/assets/collections/cpp-development.json +6 -0
  103. package/assets/collections/database-administration.json +8 -0
  104. package/assets/collections/devops-sre.json +11 -0
  105. package/assets/collections/dotnet-development.json +22 -0
  106. package/assets/collections/general-productivity.json +9 -0
  107. package/assets/collections/go-development.json +7 -0
  108. package/assets/collections/java-spring-developer.json +26 -0
  109. package/assets/collections/learning-mentoring.json +10 -0
  110. package/assets/collections/legacy-migration.json +4 -0
  111. package/assets/collections/mcp-specialist.json +41 -0
  112. package/assets/collections/mobile-development.json +4 -0
  113. package/assets/collections/php-cms-development.json +11 -0
  114. package/assets/collections/power-platform-specialist.json +31 -0
  115. package/assets/collections/project-management.json +12 -0
  116. package/assets/collections/python-development.json +13 -0
  117. package/assets/collections/quality-assurance.json +13 -0
  118. package/assets/collections/ruby-development.json +9 -0
  119. package/assets/collections/rust-development.json +10 -0
  120. package/assets/collections/security-specialist.json +8 -0
  121. package/assets/collections/software-architect.json +25 -0
  122. package/assets/collections/technical-writing.json +9 -0
  123. package/assets/collections/web-frontend-development.json +14 -0
  124. package/assets/instructions/a11y.instructions.md +369 -0
  125. package/assets/instructions/ai-prompt-engineering-safety-best-practices.instructions.md +867 -0
  126. package/assets/instructions/angular.instructions.md +104 -0
  127. package/assets/instructions/ansible.instructions.md +88 -0
  128. package/assets/instructions/aspnet-rest-apis.instructions.md +110 -0
  129. package/assets/instructions/astro.instructions.md +182 -0
  130. package/assets/instructions/azure-devops-pipelines.instructions.md +185 -0
  131. package/assets/instructions/azure-functions-typescript.instructions.md +14 -0
  132. package/assets/instructions/azure-logic-apps-power-automate.instructions.md +1943 -0
  133. package/assets/instructions/azure-verified-modules-terraform.instructions.md +229 -0
  134. package/assets/instructions/bicep-code-best-practices.instructions.md +54 -0
  135. package/assets/instructions/blazor.instructions.md +77 -0
  136. package/assets/instructions/clojure.instructions.md +349 -0
  137. package/assets/instructions/cmake-vcpkg.instructions.md +10 -0
  138. package/assets/instructions/codexer.instructions.md +428 -0
  139. package/assets/instructions/coldfusion-cfc.instructions.md +30 -0
  140. package/assets/instructions/coldfusion-cfm.instructions.md +28 -0
  141. package/assets/instructions/collections.instructions.md +54 -0
  142. package/assets/instructions/containerization-docker-best-practices.instructions.md +681 -0
  143. package/assets/instructions/convert-jpa-to-spring-data-cosmos.instructions.md +949 -0
  144. package/assets/instructions/copilot-thought-logging.instructions.md +62 -0
  145. package/assets/instructions/csharp-ja.instructions.md +114 -0
  146. package/assets/instructions/csharp-ko.instructions.md +77 -0
  147. package/assets/instructions/csharp-mcp-server.instructions.md +95 -0
  148. package/assets/instructions/csharp.instructions.md +114 -0
  149. package/assets/instructions/dart-n-flutter.instructions.md +447 -0
  150. package/assets/instructions/declarative-agents-microsoft365.instructions.md +316 -0
  151. package/assets/instructions/devbox-image-definition.instructions.md +302 -0
  152. package/assets/instructions/devops-core-principles.instructions.md +167 -0
  153. package/assets/instructions/dotnet-architecture-good-practices.instructions.md +279 -0
  154. package/assets/instructions/dotnet-framework.instructions.md +113 -0
  155. package/assets/instructions/dotnet-maui-9-to-dotnet-maui-10-upgrade.instructions.md +1922 -0
  156. package/assets/instructions/dotnet-maui.instructions.md +69 -0
  157. package/assets/instructions/dotnet-upgrade.instructions.md +287 -0
  158. package/assets/instructions/dotnet-wpf.instructions.md +79 -0
  159. package/assets/instructions/genaiscript.instructions.md +21 -0
  160. package/assets/instructions/generate-modern-terraform-code-for-azure.instructions.md +82 -0
  161. package/assets/instructions/gilfoyle-code-review.instructions.md +114 -0
  162. package/assets/instructions/github-actions-ci-cd-best-practices.instructions.md +607 -0
  163. package/assets/instructions/go-mcp-server.instructions.md +346 -0
  164. package/assets/instructions/go.instructions.md +373 -0
  165. package/assets/instructions/instructions.instructions.md +256 -0
  166. package/assets/instructions/java-11-to-java-17-upgrade.instructions.md +793 -0
  167. package/assets/instructions/java-17-to-java-21-upgrade.instructions.md +464 -0
  168. package/assets/instructions/java-21-to-java-25-upgrade.instructions.md +311 -0
  169. package/assets/instructions/java-mcp-server.instructions.md +553 -0
  170. package/assets/instructions/java.instructions.md +81 -0
  171. package/assets/instructions/joyride-user-project.instructions.md +206 -0
  172. package/assets/instructions/joyride-workspace-automation.instructions.md +46 -0
  173. package/assets/instructions/kotlin-mcp-server.instructions.md +481 -0
  174. package/assets/instructions/kubernetes-deployment-best-practices.instructions.md +307 -0
  175. package/assets/instructions/langchain-python.instructions.md +229 -0
  176. package/assets/instructions/localization.instructions.md +39 -0
  177. package/assets/instructions/makefile.instructions.md +410 -0
  178. package/assets/instructions/markdown.instructions.md +52 -0
  179. package/assets/instructions/memory-bank.instructions.md +299 -0
  180. package/assets/instructions/mongo-dba.instructions.md +25 -0
  181. package/assets/instructions/ms-sql-dba.instructions.md +25 -0
  182. package/assets/instructions/nestjs.instructions.md +406 -0
  183. package/assets/instructions/nextjs-tailwind.instructions.md +72 -0
  184. package/assets/instructions/nextjs.instructions.md +143 -0
  185. package/assets/instructions/nodejs-javascript-vitest.instructions.md +30 -0
  186. package/assets/instructions/object-calisthenics.instructions.md +302 -0
  187. package/assets/instructions/oqtane.instructions.md +86 -0
  188. package/assets/instructions/performance-optimization.instructions.md +420 -0
  189. package/assets/instructions/php-mcp-server.instructions.md +809 -0
  190. package/assets/instructions/playwright-dotnet.instructions.md +101 -0
  191. package/assets/instructions/playwright-python.instructions.md +62 -0
  192. package/assets/instructions/playwright-typescript.instructions.md +86 -0
  193. package/assets/instructions/power-apps-canvas-yaml.instructions.md +827 -0
  194. package/assets/instructions/power-apps-code-apps.instructions.md +601 -0
  195. package/assets/instructions/power-bi-custom-visuals-development.instructions.md +810 -0
  196. package/assets/instructions/power-bi-data-modeling-best-practices.instructions.md +639 -0
  197. package/assets/instructions/power-bi-dax-best-practices.instructions.md +795 -0
  198. package/assets/instructions/power-bi-devops-alm-best-practices.instructions.md +623 -0
  199. package/assets/instructions/power-bi-report-design-best-practices.instructions.md +752 -0
  200. package/assets/instructions/power-bi-security-rls-best-practices.instructions.md +504 -0
  201. package/assets/instructions/power-platform-connector.instructions.md +430 -0
  202. package/assets/instructions/power-platform-mcp-development.instructions.md +88 -0
  203. package/assets/instructions/powershell-pester-5.instructions.md +197 -0
  204. package/assets/instructions/powershell.instructions.md +356 -0
  205. package/assets/instructions/prompt.instructions.md +73 -0
  206. package/assets/instructions/python-mcp-server.instructions.md +204 -0
  207. package/assets/instructions/python.instructions.md +56 -0
  208. package/assets/instructions/quarkus-mcp-server-sse.instructions.md +49 -0
  209. package/assets/instructions/quarkus.instructions.md +98 -0
  210. package/assets/instructions/r.instructions.md +116 -0
  211. package/assets/instructions/reactjs.instructions.md +162 -0
  212. package/assets/instructions/ruby-mcp-server.instructions.md +629 -0
  213. package/assets/instructions/ruby-on-rails.instructions.md +124 -0
  214. package/assets/instructions/rust-mcp-server.instructions.md +715 -0
  215. package/assets/instructions/rust.instructions.md +135 -0
  216. package/assets/instructions/security-and-owasp.instructions.md +51 -0
  217. package/assets/instructions/self-explanatory-code-commenting.instructions.md +162 -0
  218. package/assets/instructions/shell.instructions.md +132 -0
  219. package/assets/instructions/spec-driven-workflow-v1.instructions.md +323 -0
  220. package/assets/instructions/springboot.instructions.md +68 -0
  221. package/assets/instructions/sql-sp-generation.instructions.md +74 -0
  222. package/assets/instructions/svelte.instructions.md +161 -0
  223. package/assets/instructions/swift-mcp-server.instructions.md +498 -0
  224. package/assets/instructions/taming-copilot.instructions.md +40 -0
  225. package/assets/instructions/tanstack-start-shadcn-tailwind.instructions.md +212 -0
  226. package/assets/instructions/task-implementation.instructions.md +190 -0
  227. package/assets/instructions/tasksync.instructions.md +352 -0
  228. package/assets/instructions/terraform-azure.instructions.md +254 -0
  229. package/assets/instructions/terraform-sap-btp.instructions.md +195 -0
  230. package/assets/instructions/terraform.instructions.md +113 -0
  231. package/assets/instructions/typescript-5-es2022.instructions.md +114 -0
  232. package/assets/instructions/typescript-mcp-server.instructions.md +228 -0
  233. package/assets/instructions/update-code-from-shorthand.instructions.md +130 -0
  234. package/assets/instructions/vuejs3.instructions.md +153 -0
  235. package/assets/instructions/wordpress.instructions.md +186 -0
  236. package/assets/prompts/add-educational-comments.prompt.md +129 -0
  237. package/assets/prompts/ai-prompt-engineering-safety-review.prompt.md +230 -0
  238. package/assets/prompts/architecture-blueprint-generator.prompt.md +322 -0
  239. package/assets/prompts/aspnet-minimal-api-openapi.prompt.md +42 -0
  240. package/assets/prompts/az-cost-optimize.prompt.md +305 -0
  241. package/assets/prompts/azure-resource-health-diagnose.prompt.md +290 -0
  242. package/assets/prompts/boost-prompt.prompt.md +25 -0
  243. package/assets/prompts/breakdown-epic-arch.prompt.md +66 -0
  244. package/assets/prompts/breakdown-epic-pm.prompt.md +58 -0
  245. package/assets/prompts/breakdown-feature-implementation.prompt.md +128 -0
  246. package/assets/prompts/breakdown-feature-prd.prompt.md +61 -0
  247. package/assets/prompts/breakdown-plan.prompt.md +509 -0
  248. package/assets/prompts/breakdown-test.prompt.md +365 -0
  249. package/assets/prompts/code-exemplars-blueprint-generator.prompt.md +126 -0
  250. package/assets/prompts/comment-code-generate-a-tutorial.prompt.md +26 -0
  251. package/assets/prompts/containerize-aspnet-framework.prompt.md +455 -0
  252. package/assets/prompts/containerize-aspnetcore.prompt.md +393 -0
  253. package/assets/prompts/conventional-commit.prompt.md +73 -0
  254. package/assets/prompts/copilot-instructions-blueprint-generator.prompt.md +294 -0
  255. package/assets/prompts/cosmosdb-datamodeling.prompt.md +1045 -0
  256. package/assets/prompts/create-agentsmd.prompt.md +249 -0
  257. package/assets/prompts/create-architectural-decision-record.prompt.md +97 -0
  258. package/assets/prompts/create-github-action-workflow-specification.prompt.md +276 -0
  259. package/assets/prompts/create-github-issue-feature-from-specification.prompt.md +28 -0
  260. package/assets/prompts/create-github-issues-feature-from-implementation-plan.prompt.md +28 -0
  261. package/assets/prompts/create-github-issues-for-unmet-specification-requirements.prompt.md +35 -0
  262. package/assets/prompts/create-github-pull-request-from-specification.prompt.md +24 -0
  263. package/assets/prompts/create-implementation-plan.prompt.md +157 -0
  264. package/assets/prompts/create-llms.prompt.md +210 -0
  265. package/assets/prompts/create-oo-component-documentation.prompt.md +193 -0
  266. package/assets/prompts/create-readme.prompt.md +21 -0
  267. package/assets/prompts/create-specification.prompt.md +127 -0
  268. package/assets/prompts/create-spring-boot-java-project.prompt.md +163 -0
  269. package/assets/prompts/create-spring-boot-kotlin-project.prompt.md +147 -0
  270. package/assets/prompts/create-technical-spike.prompt.md +231 -0
  271. package/assets/prompts/csharp-async.prompt.md +50 -0
  272. package/assets/prompts/csharp-docs.prompt.md +63 -0
  273. package/assets/prompts/csharp-mcp-server-generator.prompt.md +59 -0
  274. package/assets/prompts/csharp-mstest.prompt.md +67 -0
  275. package/assets/prompts/csharp-nunit.prompt.md +72 -0
  276. package/assets/prompts/csharp-tunit.prompt.md +101 -0
  277. package/assets/prompts/csharp-xunit.prompt.md +69 -0
  278. package/assets/prompts/declarative-agents.prompt.md +93 -0
  279. package/assets/prompts/documentation-writer.prompt.md +46 -0
  280. package/assets/prompts/dotnet-best-practices.prompt.md +84 -0
  281. package/assets/prompts/dotnet-design-pattern-review.prompt.md +41 -0
  282. package/assets/prompts/dotnet-upgrade.prompt.md +116 -0
  283. package/assets/prompts/editorconfig.prompt.md +64 -0
  284. package/assets/prompts/ef-core.prompt.md +76 -0
  285. package/assets/prompts/finalize-agent-prompt.prompt.md +27 -0
  286. package/assets/prompts/first-ask.prompt.md +29 -0
  287. package/assets/prompts/folder-structure-blueprint-generator.prompt.md +405 -0
  288. package/assets/prompts/gen-specs-as-issues.prompt.md +165 -0
  289. package/assets/prompts/generate-custom-instructions-from-codebase.prompt.md +240 -0
  290. package/assets/prompts/git-flow-branch-creator.prompt.md +293 -0
  291. package/assets/prompts/github-copilot-starter.prompt.md +372 -0
  292. package/assets/prompts/go-mcp-server-generator.prompt.md +334 -0
  293. package/assets/prompts/java-docs.prompt.md +24 -0
  294. package/assets/prompts/java-junit.prompt.md +64 -0
  295. package/assets/prompts/java-mcp-server-generator.prompt.md +756 -0
  296. package/assets/prompts/java-refactoring-extract-method.prompt.md +105 -0
  297. package/assets/prompts/java-refactoring-remove-parameter.prompt.md +85 -0
  298. package/assets/prompts/java-springboot.prompt.md +66 -0
  299. package/assets/prompts/javascript-typescript-jest.prompt.md +44 -0
  300. package/assets/prompts/kotlin-mcp-server-generator.prompt.md +449 -0
  301. package/assets/prompts/kotlin-springboot.prompt.md +71 -0
  302. package/assets/prompts/mcp-copilot-studio-server-generator.prompt.md +118 -0
  303. package/assets/prompts/memory-merger.prompt.md +107 -0
  304. package/assets/prompts/mkdocs-translations.prompt.md +110 -0
  305. package/assets/prompts/model-recommendation.prompt.md +677 -0
  306. package/assets/prompts/multi-stage-dockerfile.prompt.md +47 -0
  307. package/assets/prompts/my-issues.prompt.md +9 -0
  308. package/assets/prompts/my-pull-requests.prompt.md +15 -0
  309. package/assets/prompts/next-intl-add-language.prompt.md +20 -0
  310. package/assets/prompts/php-mcp-server-generator.prompt.md +522 -0
  311. package/assets/prompts/playwright-automation-fill-in-form.prompt.md +30 -0
  312. package/assets/prompts/playwright-explore-website.prompt.md +19 -0
  313. package/assets/prompts/playwright-generate-test.prompt.md +19 -0
  314. package/assets/prompts/postgresql-code-review.prompt.md +214 -0
  315. package/assets/prompts/postgresql-optimization.prompt.md +406 -0
  316. package/assets/prompts/power-apps-code-app-scaffold.prompt.md +150 -0
  317. package/assets/prompts/power-bi-dax-optimization.prompt.md +175 -0
  318. package/assets/prompts/power-bi-model-design-review.prompt.md +405 -0
  319. package/assets/prompts/power-bi-performance-troubleshooting.prompt.md +384 -0
  320. package/assets/prompts/power-bi-report-design-consultation.prompt.md +353 -0
  321. package/assets/prompts/power-platform-mcp-connector-suite.prompt.md +156 -0
  322. package/assets/prompts/project-workflow-analysis-blueprint-generator.prompt.md +294 -0
  323. package/assets/prompts/prompt-builder.prompt.md +142 -0
  324. package/assets/prompts/pytest-coverage.prompt.md +28 -0
  325. package/assets/prompts/python-mcp-server-generator.prompt.md +105 -0
  326. package/assets/prompts/readme-blueprint-generator.prompt.md +79 -0
  327. package/assets/prompts/remember-interactive-programming.prompt.md +13 -0
  328. package/assets/prompts/remember.prompt.md +125 -0
  329. package/assets/prompts/repo-story-time.prompt.md +156 -0
  330. package/assets/prompts/review-and-refactor.prompt.md +15 -0
  331. package/assets/prompts/ruby-mcp-server-generator.prompt.md +660 -0
  332. package/assets/prompts/rust-mcp-server-generator.prompt.md +578 -0
  333. package/assets/prompts/shuffle-json-data.prompt.md +151 -0
  334. package/assets/prompts/sql-code-review.prompt.md +303 -0
  335. package/assets/prompts/sql-optimization.prompt.md +298 -0
  336. package/assets/prompts/suggest-awesome-github-copilot-agents.prompt.md +72 -0
  337. package/assets/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md +71 -0
  338. package/assets/prompts/suggest-awesome-github-copilot-collections.prompt.md +149 -0
  339. package/assets/prompts/suggest-awesome-github-copilot-instructions.prompt.md +88 -0
  340. package/assets/prompts/suggest-awesome-github-copilot-prompts.prompt.md +71 -0
  341. package/assets/prompts/swift-mcp-server-generator.prompt.md +669 -0
  342. package/assets/prompts/technology-stack-blueprint-generator.prompt.md +242 -0
  343. package/assets/prompts/typescript-mcp-server-generator.prompt.md +90 -0
  344. package/assets/prompts/update-avm-modules-in-bicep.prompt.md +60 -0
  345. package/assets/prompts/update-implementation-plan.prompt.md +157 -0
  346. package/assets/prompts/update-llms.prompt.md +216 -0
  347. package/assets/prompts/update-markdown-file-index.prompt.md +76 -0
  348. package/assets/prompts/update-oo-component-documentation.prompt.md +162 -0
  349. package/assets/prompts/update-specification.prompt.md +127 -0
  350. package/assets/prompts/write-coding-standards-from-file.prompt.md +316 -0
  351. package/bin/cli.js +200 -0
  352. package/package.json +53 -0
  353. package/scripts/sync.js +99 -0
  354. package/verdaccio/config.yaml +202 -0
@@ -0,0 +1,481 @@
1
+ ---
2
+ description: 'Best practices and patterns for building Model Context Protocol (MCP) servers in Kotlin using the official io.modelcontextprotocol:kotlin-sdk library.'
3
+ applyTo: "**/*.kt, **/*.kts, **/build.gradle.kts, **/settings.gradle.kts"
4
+ ---
5
+
6
+ # Kotlin MCP Server Development Guidelines
7
+
8
+ When building MCP servers in Kotlin, follow these best practices and patterns using the official Kotlin SDK.
9
+
10
+ ## Server Setup
11
+
12
+ Create an MCP server using the `Server` class:
13
+
14
+ ```kotlin
15
+ import io.modelcontextprotocol.kotlin.sdk.server.Server
16
+ import io.modelcontextprotocol.kotlin.sdk.server.ServerOptions
17
+ import io.modelcontextprotocol.kotlin.sdk.Implementation
18
+ import io.modelcontextprotocol.kotlin.sdk.ServerCapabilities
19
+
20
+ val server = Server(
21
+ serverInfo = Implementation(
22
+ name = "my-server",
23
+ version = "1.0.0"
24
+ ),
25
+ options = ServerOptions(
26
+ capabilities = ServerCapabilities(
27
+ tools = ServerCapabilities.Tools(),
28
+ resources = ServerCapabilities.Resources(
29
+ subscribe = true,
30
+ listChanged = true
31
+ ),
32
+ prompts = ServerCapabilities.Prompts(listChanged = true)
33
+ )
34
+ )
35
+ ) {
36
+ "Server description goes here"
37
+ }
38
+ ```
39
+
40
+ ## Adding Tools
41
+
42
+ Use `server.addTool()` to register tools with typed request/response handling:
43
+
44
+ ```kotlin
45
+ import io.modelcontextprotocol.kotlin.sdk.CallToolRequest
46
+ import io.modelcontextprotocol.kotlin.sdk.CallToolResult
47
+ import io.modelcontextprotocol.kotlin.sdk.TextContent
48
+
49
+ server.addTool(
50
+ name = "search",
51
+ description = "Search for information",
52
+ inputSchema = buildJsonObject {
53
+ put("type", "object")
54
+ putJsonObject("properties") {
55
+ putJsonObject("query") {
56
+ put("type", "string")
57
+ put("description", "The search query")
58
+ }
59
+ putJsonObject("limit") {
60
+ put("type", "integer")
61
+ put("description", "Maximum results to return")
62
+ }
63
+ }
64
+ putJsonArray("required") {
65
+ add("query")
66
+ }
67
+ }
68
+ ) { request: CallToolRequest ->
69
+ val query = request.params.arguments["query"] as? String
70
+ ?: throw IllegalArgumentException("query is required")
71
+ val limit = (request.params.arguments["limit"] as? Number)?.toInt() ?: 10
72
+
73
+ // Perform search
74
+ val results = performSearch(query, limit)
75
+
76
+ CallToolResult(
77
+ content = listOf(
78
+ TextContent(
79
+ text = results.joinToString("\n")
80
+ )
81
+ )
82
+ )
83
+ }
84
+ ```
85
+
86
+ ## Adding Resources
87
+
88
+ Use `server.addResource()` to provide accessible data:
89
+
90
+ ```kotlin
91
+ import io.modelcontextprotocol.kotlin.sdk.ReadResourceRequest
92
+ import io.modelcontextprotocol.kotlin.sdk.ReadResourceResult
93
+ import io.modelcontextprotocol.kotlin.sdk.TextResourceContents
94
+
95
+ server.addResource(
96
+ uri = "file:///data/example.txt",
97
+ name = "Example Data",
98
+ description = "Example resource data",
99
+ mimeType = "text/plain"
100
+ ) { request: ReadResourceRequest ->
101
+ val content = loadResourceContent(request.uri)
102
+
103
+ ReadResourceResult(
104
+ contents = listOf(
105
+ TextResourceContents(
106
+ text = content,
107
+ uri = request.uri,
108
+ mimeType = "text/plain"
109
+ )
110
+ )
111
+ )
112
+ }
113
+ ```
114
+
115
+ ## Adding Prompts
116
+
117
+ Use `server.addPrompt()` for reusable prompt templates:
118
+
119
+ ```kotlin
120
+ import io.modelcontextprotocol.kotlin.sdk.GetPromptRequest
121
+ import io.modelcontextprotocol.kotlin.sdk.GetPromptResult
122
+ import io.modelcontextprotocol.kotlin.sdk.PromptMessage
123
+ import io.modelcontextprotocol.kotlin.sdk.Role
124
+
125
+ server.addPrompt(
126
+ name = "analyze",
127
+ description = "Analyze a topic",
128
+ arguments = listOf(
129
+ PromptArgument(
130
+ name = "topic",
131
+ description = "The topic to analyze",
132
+ required = true
133
+ )
134
+ )
135
+ ) { request: GetPromptRequest ->
136
+ val topic = request.params.arguments?.get("topic") as? String
137
+ ?: throw IllegalArgumentException("topic is required")
138
+
139
+ GetPromptResult(
140
+ description = "Analyze the given topic",
141
+ messages = listOf(
142
+ PromptMessage(
143
+ role = Role.User,
144
+ content = TextContent(
145
+ text = "Analyze this topic: $topic"
146
+ )
147
+ )
148
+ )
149
+ )
150
+ }
151
+ ```
152
+
153
+ ## Transport Configuration
154
+
155
+ ### Stdio Transport
156
+
157
+ For communication over stdin/stdout:
158
+
159
+ ```kotlin
160
+ import io.modelcontextprotocol.kotlin.sdk.server.StdioServerTransport
161
+
162
+ suspend fun main() {
163
+ val transport = StdioServerTransport()
164
+ server.connect(transport)
165
+ }
166
+ ```
167
+
168
+ ### SSE Transport with Ktor
169
+
170
+ For HTTP-based communication using Server-Sent Events:
171
+
172
+ ```kotlin
173
+ import io.ktor.server.application.*
174
+ import io.ktor.server.engine.*
175
+ import io.ktor.server.netty.*
176
+ import io.modelcontextprotocol.kotlin.sdk.server.mcp
177
+
178
+ fun main() {
179
+ embeddedServer(Netty, port = 8080) {
180
+ mcp {
181
+ Server(
182
+ serverInfo = Implementation(
183
+ name = "sse-server",
184
+ version = "1.0.0"
185
+ ),
186
+ options = ServerOptions(
187
+ capabilities = ServerCapabilities(
188
+ tools = ServerCapabilities.Tools()
189
+ )
190
+ )
191
+ ) {
192
+ "SSE-based MCP server"
193
+ }
194
+ }
195
+ }.start(wait = true)
196
+ }
197
+ ```
198
+
199
+ ## Coroutine Usage
200
+
201
+ All MCP operations are suspending functions. Use Kotlin coroutines properly:
202
+
203
+ ```kotlin
204
+ import kotlinx.coroutines.coroutineScope
205
+ import kotlinx.coroutines.async
206
+
207
+ server.addTool(
208
+ name = "parallel-search",
209
+ description = "Search multiple sources in parallel"
210
+ ) { request ->
211
+ coroutineScope {
212
+ val source1 = async { searchSource1(query) }
213
+ val source2 = async { searchSource2(query) }
214
+
215
+ val results = source1.await() + source2.await()
216
+
217
+ CallToolResult(
218
+ content = listOf(TextContent(text = results.joinToString("\n")))
219
+ )
220
+ }
221
+ }
222
+ ```
223
+
224
+ ## Error Handling
225
+
226
+ Use Kotlin's exception handling and provide meaningful error messages:
227
+
228
+ ```kotlin
229
+ server.addTool(
230
+ name = "validate-input",
231
+ description = "Process validated input"
232
+ ) { request ->
233
+ try {
234
+ val input = request.params.arguments["input"] as? String
235
+ ?: throw IllegalArgumentException("input is required")
236
+
237
+ require(input.isNotBlank()) { "input cannot be blank" }
238
+
239
+ val result = processInput(input)
240
+
241
+ CallToolResult(
242
+ content = listOf(TextContent(text = result))
243
+ )
244
+ } catch (e: IllegalArgumentException) {
245
+ CallToolResult(
246
+ isError = true,
247
+ content = listOf(TextContent(text = "Validation error: ${e.message}"))
248
+ )
249
+ }
250
+ }
251
+ ```
252
+
253
+ ## JSON Schema with kotlinx.serialization
254
+
255
+ Use kotlinx.serialization for type-safe JSON schemas:
256
+
257
+ ```kotlin
258
+ import kotlinx.serialization.Serializable
259
+ import kotlinx.serialization.json.*
260
+
261
+ @Serializable
262
+ data class SearchInput(
263
+ val query: String,
264
+ val limit: Int = 10,
265
+ val filters: List<String> = emptyList()
266
+ )
267
+
268
+ fun createToolSchema(): JsonObject = buildJsonObject {
269
+ put("type", "object")
270
+ putJsonObject("properties") {
271
+ putJsonObject("query") {
272
+ put("type", "string")
273
+ put("description", "Search query")
274
+ }
275
+ putJsonObject("limit") {
276
+ put("type", "integer")
277
+ put("default", 10)
278
+ }
279
+ putJsonObject("filters") {
280
+ put("type", "array")
281
+ putJsonObject("items") {
282
+ put("type", "string")
283
+ }
284
+ }
285
+ }
286
+ putJsonArray("required") {
287
+ add("query")
288
+ }
289
+ }
290
+ ```
291
+
292
+ ## Gradle Configuration
293
+
294
+ Set up your `build.gradle.kts` properly:
295
+
296
+ ```kotlin
297
+ plugins {
298
+ kotlin("jvm") version "2.1.0"
299
+ kotlin("plugin.serialization") version "2.1.0"
300
+ }
301
+
302
+ repositories {
303
+ mavenCentral()
304
+ }
305
+
306
+ dependencies {
307
+ implementation("io.modelcontextprotocol:kotlin-sdk:0.7.2")
308
+
309
+ // For client transport
310
+ implementation("io.ktor:ktor-client-cio:3.0.0")
311
+
312
+ // For server transport
313
+ implementation("io.ktor:ktor-server-netty:3.0.0")
314
+
315
+ // For JSON serialization
316
+ implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.3")
317
+
318
+ // For coroutines
319
+ implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0")
320
+ }
321
+ ```
322
+
323
+ ## Multiplatform Support
324
+
325
+ The Kotlin SDK supports Kotlin Multiplatform (JVM, Wasm, iOS):
326
+
327
+ ```kotlin
328
+ kotlin {
329
+ jvm()
330
+ js(IR) {
331
+ browser()
332
+ nodejs()
333
+ }
334
+ wasmJs()
335
+
336
+ sourceSets {
337
+ commonMain.dependencies {
338
+ implementation("io.modelcontextprotocol:kotlin-sdk:0.7.2")
339
+ implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0")
340
+ }
341
+ }
342
+ }
343
+ ```
344
+
345
+ ## Resource Lifecycle
346
+
347
+ Handle resource updates and subscriptions:
348
+
349
+ ```kotlin
350
+ server.addResource(
351
+ uri = "file:///dynamic/data",
352
+ name = "Dynamic Data",
353
+ description = "Frequently updated data",
354
+ mimeType = "application/json"
355
+ ) { request ->
356
+ // Provide current state
357
+ ReadResourceResult(
358
+ contents = listOf(
359
+ TextResourceContents(
360
+ text = getCurrentData(),
361
+ uri = request.uri,
362
+ mimeType = "application/json"
363
+ )
364
+ )
365
+ )
366
+ }
367
+
368
+ // Notify clients when resource changes
369
+ server.notifyResourceListChanged()
370
+ ```
371
+
372
+ ## Testing
373
+
374
+ Test your MCP tools using Kotlin coroutines test utilities:
375
+
376
+ ```kotlin
377
+ import kotlinx.coroutines.test.runTest
378
+ import kotlin.test.Test
379
+ import kotlin.test.assertEquals
380
+
381
+ class ServerTest {
382
+ @Test
383
+ fun testSearchTool() = runTest {
384
+ val server = createTestServer()
385
+
386
+ val request = CallToolRequest(
387
+ params = CallToolParams(
388
+ name = "search",
389
+ arguments = mapOf("query" to "test", "limit" to 5)
390
+ )
391
+ )
392
+
393
+ val result = server.callTool(request)
394
+
395
+ assertEquals(false, result.isError)
396
+ assert(result.content.isNotEmpty())
397
+ }
398
+ }
399
+ ```
400
+
401
+ ## Common Patterns
402
+
403
+ ### Logging
404
+
405
+ Use structured logging with a Kotlin logging library:
406
+
407
+ ```kotlin
408
+ import io.github.oshai.kotlinlogging.KotlinLogging
409
+
410
+ private val logger = KotlinLogging.logger {}
411
+
412
+ server.addTool(
413
+ name = "logged-operation",
414
+ description = "Operation with logging"
415
+ ) { request ->
416
+ logger.info { "Tool called with args: ${request.params.arguments}" }
417
+
418
+ try {
419
+ val result = performOperation(request)
420
+ logger.info { "Operation succeeded" }
421
+ result
422
+ } catch (e: Exception) {
423
+ logger.error(e) { "Operation failed" }
424
+ throw e
425
+ }
426
+ }
427
+ ```
428
+
429
+ ### Configuration
430
+
431
+ Use data classes for configuration:
432
+
433
+ ```kotlin
434
+ import kotlinx.serialization.Serializable
435
+
436
+ @Serializable
437
+ data class ServerConfig(
438
+ val name: String = "my-server",
439
+ val version: String = "1.0.0",
440
+ val port: Int = 8080,
441
+ val enableTools: Boolean = true
442
+ )
443
+
444
+ fun loadConfig(): ServerConfig {
445
+ // Load from environment or config file
446
+ return ServerConfig(
447
+ name = System.getenv("SERVER_NAME") ?: "my-server",
448
+ version = System.getenv("VERSION") ?: "1.0.0"
449
+ )
450
+ }
451
+ ```
452
+
453
+ ### Dependency Injection
454
+
455
+ Use constructor injection for testability:
456
+
457
+ ```kotlin
458
+ class MyServer(
459
+ private val dataService: DataService,
460
+ private val config: ServerConfig
461
+ ) {
462
+ fun createServer() = Server(
463
+ serverInfo = Implementation(
464
+ name = config.name,
465
+ version = config.version
466
+ )
467
+ ) {
468
+ "MCP Server with DI"
469
+ }.apply {
470
+ addTool(
471
+ name = "fetch-data",
472
+ description = "Fetch data using injected service"
473
+ ) { request ->
474
+ val data = dataService.fetchData()
475
+ CallToolResult(
476
+ content = listOf(TextContent(text = data))
477
+ )
478
+ }
479
+ }
480
+ }
481
+ ```