@cubis/foundry 0.3.33 → 0.3.35

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 (591) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +56 -11
  3. package/bin/cubis.js +2809 -965
  4. package/mcp/.dockerignore +5 -0
  5. package/mcp/Dockerfile +19 -0
  6. package/mcp/README.md +550 -11
  7. package/mcp/config.json +18 -0
  8. package/mcp/dist/index.d.ts +1 -0
  9. package/mcp/dist/index.js +1488 -0
  10. package/mcp/package.json +36 -0
  11. package/mcp/src/cbxConfig/index.ts +23 -0
  12. package/mcp/src/cbxConfig/paths.ts +45 -0
  13. package/mcp/src/cbxConfig/reader.ts +149 -0
  14. package/mcp/src/cbxConfig/readerWriter.test.ts +147 -0
  15. package/mcp/src/cbxConfig/serviceConfig.test.ts +42 -0
  16. package/mcp/src/cbxConfig/serviceConfig.ts +157 -0
  17. package/mcp/src/cbxConfig/types.ts +44 -0
  18. package/mcp/src/cbxConfig/writer.ts +90 -0
  19. package/mcp/src/config/index.test.ts +81 -0
  20. package/mcp/src/config/index.ts +45 -0
  21. package/mcp/src/config/schema.ts +55 -0
  22. package/mcp/src/gateway/catalog.ts +37 -0
  23. package/mcp/src/gateway/config.ts +247 -0
  24. package/mcp/src/gateway/manager.ts +255 -0
  25. package/mcp/src/gateway/types.ts +54 -0
  26. package/mcp/src/gateway/upstreamClient.ts +80 -0
  27. package/mcp/src/index.ts +211 -0
  28. package/mcp/src/server.ts +219 -0
  29. package/mcp/src/tools/configTools.test.ts +166 -0
  30. package/mcp/src/tools/future/README.md +21 -0
  31. package/mcp/src/tools/future/index.ts +8 -0
  32. package/mcp/src/tools/index.ts +76 -0
  33. package/mcp/src/tools/mcpGateway.ts +44 -0
  34. package/mcp/src/tools/postmanGetMode.ts +82 -0
  35. package/mcp/src/tools/postmanGetStatus.ts +65 -0
  36. package/mcp/src/tools/postmanModes.ts +28 -0
  37. package/mcp/src/tools/postmanSetMode.ts +71 -0
  38. package/mcp/src/tools/skillBrowseCategory.ts +54 -0
  39. package/mcp/src/tools/skillGet.ts +43 -0
  40. package/mcp/src/tools/skillListCategories.ts +40 -0
  41. package/mcp/src/tools/skillSearch.ts +72 -0
  42. package/mcp/src/tools/skillTools.test.ts +126 -0
  43. package/mcp/src/tools/stitchGetMode.ts +58 -0
  44. package/mcp/src/tools/stitchGetStatus.ts +70 -0
  45. package/mcp/src/tools/stitchSetProfile.ts +82 -0
  46. package/mcp/src/transports/stdio.ts +9 -0
  47. package/mcp/src/transports/streamableHttp.ts +43 -0
  48. package/mcp/src/upstream/passthrough.ts +273 -0
  49. package/mcp/src/utils/errors.ts +38 -0
  50. package/mcp/src/utils/logger.ts +63 -0
  51. package/mcp/src/vault/manifest.test.ts +126 -0
  52. package/mcp/src/vault/manifest.ts +99 -0
  53. package/mcp/src/vault/scanner.test.ts +70 -0
  54. package/mcp/src/vault/scanner.ts +145 -0
  55. package/mcp/src/vault/types.ts +21 -0
  56. package/package.json +9 -2
  57. package/workflows/scripts/generate-powers.mjs +27 -18
  58. package/workflows/skills/skills_index.json +0 -102
  59. package/workflows/workflows/agent-environment-setup/manifest.json +0 -24
  60. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/nextjs-react-expert/SKILL.md +1 -1
  61. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/skills_index.json +0 -102
  62. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/nextjs-react-expert/SKILL.md +1 -1
  63. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/skills_index.json +0 -102
  64. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/nextjs-react-expert/SKILL.md +1 -1
  65. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/skills_index.json +0 -102
  66. package/mcp/catalogs/default.json +0 -14
  67. package/mcp/powers/atlassian-mcp/POWER.md +0 -91
  68. package/mcp/powers/atlassian-mcp/SKILL.md +0 -88
  69. package/mcp/powers/atlassian-mcp/steering/authentication-patterns.md +0 -520
  70. package/mcp/powers/atlassian-mcp/steering/common-workflows.md +0 -660
  71. package/mcp/powers/atlassian-mcp/steering/confluence-operations.md +0 -528
  72. package/mcp/powers/atlassian-mcp/steering/jira-queries.md +0 -421
  73. package/mcp/powers/atlassian-mcp/steering/mcp-server-setup.md +0 -292
  74. package/mcp/powers/building-mcp-server-on-cloudflare/POWER.md +0 -261
  75. package/mcp/powers/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  76. package/mcp/powers/building-mcp-server-on-cloudflare/steering/examples.md +0 -115
  77. package/mcp/powers/building-mcp-server-on-cloudflare/steering/oauth-setup.md +0 -338
  78. package/mcp/powers/building-mcp-server-on-cloudflare/steering/troubleshooting.md +0 -317
  79. package/mcp/powers/datadog-automation/POWER.md +0 -238
  80. package/mcp/powers/datadog-automation/SKILL.md +0 -235
  81. package/mcp/powers/github-automation/POWER.md +0 -230
  82. package/mcp/powers/github-automation/SKILL.md +0 -227
  83. package/mcp/powers/mcp-builder/LICENSE.txt +0 -202
  84. package/mcp/powers/mcp-builder/POWER.md +0 -179
  85. package/mcp/powers/mcp-builder/SKILL.md +0 -176
  86. package/mcp/powers/mcp-builder/reference/evaluation.md +0 -602
  87. package/mcp/powers/mcp-builder/reference/mcp_best_practices.md +0 -915
  88. package/mcp/powers/mcp-builder/reference/node_mcp_server.md +0 -916
  89. package/mcp/powers/mcp-builder/reference/python_mcp_server.md +0 -752
  90. package/mcp/powers/mcp-builder/scripts/connections.py +0 -151
  91. package/mcp/powers/mcp-builder/scripts/evaluation.py +0 -373
  92. package/mcp/powers/mcp-builder/scripts/example_evaluation.xml +0 -22
  93. package/mcp/powers/mcp-builder/scripts/requirements.txt +0 -2
  94. package/mcp/powers/mcp-developer/POWER.md +0 -88
  95. package/mcp/powers/mcp-developer/SKILL.md +0 -85
  96. package/mcp/powers/mcp-developer/steering/protocol.md +0 -244
  97. package/mcp/powers/mcp-developer/steering/python-sdk.md +0 -367
  98. package/mcp/powers/mcp-developer/steering/resources.md +0 -554
  99. package/mcp/powers/mcp-developer/steering/tools.md +0 -480
  100. package/mcp/powers/mcp-developer/steering/typescript-sdk.md +0 -350
  101. package/mcp/powers/postman/POWER.md +0 -243
  102. package/mcp/powers/postman/SKILL.md +0 -240
  103. package/mcp/powers/postman/flutter-expert/POWER.md +0 -89
  104. package/mcp/powers/postman/flutter-expert/SKILL.md +0 -77
  105. package/mcp/powers/postman/flutter-expert/steering/bloc-state.md +0 -259
  106. package/mcp/powers/postman/flutter-expert/steering/engineering-principles.md +0 -82
  107. package/mcp/powers/postman/flutter-expert/steering/gorouter-navigation.md +0 -157
  108. package/mcp/powers/postman/flutter-expert/steering/performance.md +0 -99
  109. package/mcp/powers/postman/flutter-expert/steering/project-structure.md +0 -77
  110. package/mcp/powers/postman/flutter-expert/steering/riverpod-state.md +0 -404
  111. package/mcp/powers/postman/flutter-expert/steering/widget-patterns.md +0 -123
  112. package/mcp/powers/postman/flutter-security-reviewer/POWER.md +0 -204
  113. package/mcp/powers/postman/flutter-security-reviewer/SKILL.md +0 -180
  114. package/mcp/powers/postman/flutter-security-reviewer/steering/log_redaction.md +0 -17
  115. package/mcp/powers/postman/flutter-security-reviewer/steering/network_hardening.md +0 -13
  116. package/mcp/powers/postman/flutter-security-reviewer/steering/secret-scanning.md +0 -123
  117. package/mcp/powers/postman/flutter-security-reviewer/steering/secure_storage_policy.md +0 -16
  118. package/mcp/powers/postman/flutter-security-reviewer/steering/vulnerability-patterns.md +0 -189
  119. package/mcp/powers/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  120. package/mcp/powers/postman/flutter-test-master/POWER.md +0 -527
  121. package/mcp/powers/postman/flutter-test-master/SKILL.md +0 -513
  122. package/mcp/powers/postman/flutter-test-master/steering/golden-testing.md +0 -444
  123. package/mcp/powers/postman/flutter-test-master/steering/integration-testing.md +0 -688
  124. package/mcp/powers/postman/flutter-test-master/steering/property-testing.md +0 -408
  125. package/mcp/powers/postman/flutter-test-master/steering/riverpod-testing.md +0 -606
  126. package/mcp/powers/postman/flutter-test-master/steering/test-utilities.md +0 -566
  127. package/mcp/powers/postman/flutter-test-master/steering/unit-testing.md +0 -511
  128. package/mcp/powers/postman/flutter-test-master/steering/widget-testing.md +0 -601
  129. package/mcp/powers/postman/git-commit/POWER.md +0 -47
  130. package/mcp/powers/postman/git-commit/SKILL.md +0 -46
  131. package/mcp/powers/postman/gorouter-restoration/POWER.md +0 -227
  132. package/mcp/powers/postman/gorouter-restoration/SKILL.md +0 -217
  133. package/mcp/powers/postman/gorouter-restoration/steering/guard_patterns.md +0 -14
  134. package/mcp/powers/postman/gorouter-restoration/steering/tab_preservation.md +0 -12
  135. package/mcp/powers/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  136. package/mcp/powers/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  137. package/mcp/powers/postman/mcp.json +0 -11
  138. package/mcp/powers/postman/microservices-architect/POWER.md +0 -109
  139. package/mcp/powers/postman/microservices-architect/SKILL.md +0 -93
  140. package/mcp/powers/postman/microservices-architect/steering/communication.md +0 -499
  141. package/mcp/powers/postman/microservices-architect/steering/data.md +0 -721
  142. package/mcp/powers/postman/microservices-architect/steering/decomposition.md +0 -344
  143. package/mcp/powers/postman/microservices-architect/steering/observability.md +0 -805
  144. package/mcp/powers/postman/microservices-architect/steering/patterns.md +0 -603
  145. package/mcp/powers/postman/nestjs-expert/POWER.md +0 -130
  146. package/mcp/powers/postman/nestjs-expert/SKILL.md +0 -114
  147. package/mcp/powers/postman/nestjs-expert/steering/authentication.md +0 -461
  148. package/mcp/powers/postman/nestjs-expert/steering/controllers-routing.md +0 -114
  149. package/mcp/powers/postman/nestjs-expert/steering/dtos-validation.md +0 -156
  150. package/mcp/powers/postman/nestjs-expert/steering/migration-from-express.md +0 -1240
  151. package/mcp/powers/postman/nestjs-expert/steering/secure-sessions.md +0 -56
  152. package/mcp/powers/postman/nestjs-expert/steering/services-di.md +0 -143
  153. package/mcp/powers/postman/nestjs-expert/steering/strangler-fig-pattern.md +0 -47
  154. package/mcp/powers/postman/nestjs-expert/steering/testing-patterns.md +0 -189
  155. package/mcp/powers/postman/oneup-design/POWER.md +0 -72
  156. package/mcp/powers/postman/oneup-design/SKILL.md +0 -71
  157. package/mcp/powers/postman/oneup-design/steering/colors.md +0 -41
  158. package/mcp/powers/postman/oneup-design/steering/components.md +0 -53
  159. package/mcp/powers/postman/oneup-design/steering/spacing.md +0 -84
  160. package/mcp/powers/postman/openapi-docs/POWER.md +0 -78
  161. package/mcp/powers/postman/openapi-docs/SKILL.md +0 -68
  162. package/mcp/powers/postman/openapi-docs/steering/crud-templates.md +0 -43
  163. package/mcp/powers/postman/openapi-docs/steering/framework-express.md +0 -19
  164. package/mcp/powers/postman/openapi-docs/steering/framework-fastapi.md +0 -20
  165. package/mcp/powers/postman/openapi-docs/steering/framework-nestjs.md +0 -20
  166. package/mcp/powers/postman/openapi-docs/steering/framework-raw-openapi.md +0 -14
  167. package/mcp/powers/postman/openapi-docs/steering/openapi-checklist.md +0 -33
  168. package/mcp/powers/postman/openapi-docs/steering/stoplight-ui.md +0 -21
  169. package/mcp/powers/postman/steering/steering.md +0 -26
  170. package/mcp/powers/sentry-automation/POWER.md +0 -235
  171. package/mcp/powers/sentry-automation/SKILL.md +0 -232
  172. package/mcp/skills/atlassian-mcp/SKILL.md +0 -88
  173. package/mcp/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  174. package/mcp/skills/atlassian-mcp/references/common-workflows.md +0 -660
  175. package/mcp/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  176. package/mcp/skills/atlassian-mcp/references/jira-queries.md +0 -421
  177. package/mcp/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  178. package/mcp/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  179. package/mcp/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  180. package/mcp/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  181. package/mcp/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  182. package/mcp/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  183. package/mcp/skills/datadog-automation/SKILL.md +0 -235
  184. package/mcp/skills/github-automation/SKILL.md +0 -227
  185. package/mcp/skills/mcp-builder/LICENSE.txt +0 -202
  186. package/mcp/skills/mcp-builder/SKILL.md +0 -176
  187. package/mcp/skills/mcp-builder/reference/evaluation.md +0 -602
  188. package/mcp/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  189. package/mcp/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  190. package/mcp/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  191. package/mcp/skills/mcp-builder/scripts/connections.py +0 -151
  192. package/mcp/skills/mcp-builder/scripts/evaluation.py +0 -373
  193. package/mcp/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  194. package/mcp/skills/mcp-builder/scripts/requirements.txt +0 -2
  195. package/mcp/skills/mcp-developer/SKILL.md +0 -85
  196. package/mcp/skills/mcp-developer/references/protocol.md +0 -244
  197. package/mcp/skills/mcp-developer/references/python-sdk.md +0 -367
  198. package/mcp/skills/mcp-developer/references/resources.md +0 -554
  199. package/mcp/skills/mcp-developer/references/tools.md +0 -480
  200. package/mcp/skills/mcp-developer/references/typescript-sdk.md +0 -350
  201. package/mcp/skills/postman/POWER.md +0 -242
  202. package/mcp/skills/postman/SKILL.md +0 -240
  203. package/mcp/skills/postman/flutter-expert/POWER.md +0 -89
  204. package/mcp/skills/postman/flutter-expert/SKILL.md +0 -77
  205. package/mcp/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  206. package/mcp/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  207. package/mcp/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  208. package/mcp/skills/postman/flutter-expert/references/performance.md +0 -99
  209. package/mcp/skills/postman/flutter-expert/references/project-structure.md +0 -77
  210. package/mcp/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  211. package/mcp/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  212. package/mcp/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  213. package/mcp/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  214. package/mcp/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  215. package/mcp/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  216. package/mcp/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  217. package/mcp/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  218. package/mcp/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  219. package/mcp/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  220. package/mcp/skills/postman/flutter-test-master/POWER.md +0 -527
  221. package/mcp/skills/postman/flutter-test-master/SKILL.md +0 -513
  222. package/mcp/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  223. package/mcp/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  224. package/mcp/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  225. package/mcp/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  226. package/mcp/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  227. package/mcp/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  228. package/mcp/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  229. package/mcp/skills/postman/git-commit/POWER.md +0 -47
  230. package/mcp/skills/postman/git-commit/SKILL.md +0 -46
  231. package/mcp/skills/postman/gorouter-restoration/POWER.md +0 -227
  232. package/mcp/skills/postman/gorouter-restoration/SKILL.md +0 -217
  233. package/mcp/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  234. package/mcp/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  235. package/mcp/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  236. package/mcp/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  237. package/mcp/skills/postman/mcp.json +0 -11
  238. package/mcp/skills/postman/microservices-architect/POWER.md +0 -109
  239. package/mcp/skills/postman/microservices-architect/SKILL.md +0 -93
  240. package/mcp/skills/postman/microservices-architect/references/communication.md +0 -499
  241. package/mcp/skills/postman/microservices-architect/references/data.md +0 -721
  242. package/mcp/skills/postman/microservices-architect/references/decomposition.md +0 -344
  243. package/mcp/skills/postman/microservices-architect/references/observability.md +0 -805
  244. package/mcp/skills/postman/microservices-architect/references/patterns.md +0 -603
  245. package/mcp/skills/postman/nestjs-expert/POWER.md +0 -130
  246. package/mcp/skills/postman/nestjs-expert/SKILL.md +0 -114
  247. package/mcp/skills/postman/nestjs-expert/references/authentication.md +0 -461
  248. package/mcp/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  249. package/mcp/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  250. package/mcp/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  251. package/mcp/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  252. package/mcp/skills/postman/nestjs-expert/references/services-di.md +0 -143
  253. package/mcp/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  254. package/mcp/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  255. package/mcp/skills/postman/oneup-design/POWER.md +0 -72
  256. package/mcp/skills/postman/oneup-design/SKILL.md +0 -71
  257. package/mcp/skills/postman/oneup-design/references/colors.md +0 -41
  258. package/mcp/skills/postman/oneup-design/references/components.md +0 -53
  259. package/mcp/skills/postman/oneup-design/references/spacing.md +0 -84
  260. package/mcp/skills/postman/openapi-docs/POWER.md +0 -78
  261. package/mcp/skills/postman/openapi-docs/SKILL.md +0 -68
  262. package/mcp/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  263. package/mcp/skills/postman/openapi-docs/references/framework-express.md +0 -19
  264. package/mcp/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  265. package/mcp/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  266. package/mcp/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  267. package/mcp/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  268. package/mcp/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  269. package/mcp/skills/postman/references/steering.md +0 -26
  270. package/mcp/skills/sentry-automation/SKILL.md +0 -232
  271. package/workflows/powers/atlassian-mcp/POWER.md +0 -21
  272. package/workflows/powers/atlassian-mcp/SKILL.md +0 -18
  273. package/workflows/powers/building-mcp-server-on-cloudflare/POWER.md +0 -21
  274. package/workflows/powers/building-mcp-server-on-cloudflare/SKILL.md +0 -18
  275. package/workflows/powers/datadog-automation/POWER.md +0 -21
  276. package/workflows/powers/datadog-automation/SKILL.md +0 -18
  277. package/workflows/powers/github-automation/POWER.md +0 -21
  278. package/workflows/powers/github-automation/SKILL.md +0 -18
  279. package/workflows/powers/mcp-builder/POWER.md +0 -21
  280. package/workflows/powers/mcp-builder/SKILL.md +0 -18
  281. package/workflows/powers/mcp-developer/POWER.md +0 -21
  282. package/workflows/powers/mcp-developer/SKILL.md +0 -18
  283. package/workflows/powers/postman/POWER.md +0 -21
  284. package/workflows/powers/postman/SKILL.md +0 -18
  285. package/workflows/powers/sentry-automation/POWER.md +0 -21
  286. package/workflows/powers/sentry-automation/SKILL.md +0 -18
  287. package/workflows/skills/atlassian-mcp/SKILL.md +0 -18
  288. package/workflows/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -18
  289. package/workflows/skills/datadog-automation/SKILL.md +0 -18
  290. package/workflows/skills/github-automation/SKILL.md +0 -18
  291. package/workflows/skills/mcp-builder/SKILL.md +0 -18
  292. package/workflows/skills/mcp-developer/SKILL.md +0 -18
  293. package/workflows/skills/postman/SKILL.md +0 -18
  294. package/workflows/skills/sentry-automation/SKILL.md +0 -18
  295. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/SKILL.md +0 -88
  296. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  297. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/common-workflows.md +0 -660
  298. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  299. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/jira-queries.md +0 -421
  300. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  301. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  302. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  303. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  304. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  305. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  306. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/datadog-automation/SKILL.md +0 -235
  307. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/github-automation/SKILL.md +0 -227
  308. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/LICENSE.txt +0 -202
  309. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/SKILL.md +0 -176
  310. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/evaluation.md +0 -602
  311. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  312. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  313. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  314. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/connections.py +0 -151
  315. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/evaluation.py +0 -373
  316. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  317. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/requirements.txt +0 -2
  318. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/SKILL.md +0 -85
  319. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/protocol.md +0 -244
  320. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/python-sdk.md +0 -367
  321. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/resources.md +0 -554
  322. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/tools.md +0 -480
  323. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/typescript-sdk.md +0 -350
  324. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/POWER.md +0 -242
  325. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/SKILL.md +0 -240
  326. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/POWER.md +0 -89
  327. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/SKILL.md +0 -77
  328. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  329. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  330. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  331. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/performance.md +0 -99
  332. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/project-structure.md +0 -77
  333. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  334. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  335. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  336. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  337. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  338. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  339. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  340. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  341. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  342. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  343. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/POWER.md +0 -527
  344. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/SKILL.md +0 -513
  345. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  346. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  347. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  348. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  349. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  350. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  351. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  352. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/git-commit/POWER.md +0 -47
  353. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/git-commit/SKILL.md +0 -46
  354. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/POWER.md +0 -227
  355. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/SKILL.md +0 -217
  356. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  357. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  358. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  359. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  360. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/mcp.json +0 -11
  361. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/POWER.md +0 -109
  362. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/SKILL.md +0 -93
  363. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/communication.md +0 -499
  364. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/data.md +0 -721
  365. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/decomposition.md +0 -344
  366. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/observability.md +0 -805
  367. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/patterns.md +0 -603
  368. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/POWER.md +0 -130
  369. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/SKILL.md +0 -114
  370. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/authentication.md +0 -461
  371. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  372. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  373. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  374. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  375. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/services-di.md +0 -143
  376. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  377. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  378. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/POWER.md +0 -72
  379. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/SKILL.md +0 -71
  380. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/references/colors.md +0 -41
  381. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/references/components.md +0 -53
  382. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/references/spacing.md +0 -84
  383. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/POWER.md +0 -78
  384. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/SKILL.md +0 -68
  385. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  386. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-express.md +0 -19
  387. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  388. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  389. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  390. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  391. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  392. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/references/steering.md +0 -26
  393. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/sentry-automation/SKILL.md +0 -232
  394. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/SKILL.md +0 -88
  395. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  396. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/common-workflows.md +0 -660
  397. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  398. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/jira-queries.md +0 -421
  399. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  400. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  401. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  402. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  403. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  404. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  405. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/datadog-automation/SKILL.md +0 -235
  406. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/github-automation/SKILL.md +0 -227
  407. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/LICENSE.txt +0 -202
  408. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/SKILL.md +0 -176
  409. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/evaluation.md +0 -602
  410. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  411. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  412. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  413. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/connections.py +0 -151
  414. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/evaluation.py +0 -373
  415. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  416. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/requirements.txt +0 -2
  417. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/SKILL.md +0 -85
  418. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/protocol.md +0 -244
  419. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/python-sdk.md +0 -367
  420. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/resources.md +0 -554
  421. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/tools.md +0 -480
  422. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/typescript-sdk.md +0 -350
  423. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/POWER.md +0 -242
  424. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/SKILL.md +0 -240
  425. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/POWER.md +0 -89
  426. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/SKILL.md +0 -77
  427. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  428. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  429. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  430. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/performance.md +0 -99
  431. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/project-structure.md +0 -77
  432. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  433. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  434. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  435. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  436. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  437. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  438. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  439. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  440. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  441. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  442. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/POWER.md +0 -527
  443. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/SKILL.md +0 -513
  444. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  445. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  446. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  447. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  448. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  449. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  450. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  451. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/git-commit/POWER.md +0 -47
  452. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/git-commit/SKILL.md +0 -46
  453. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/POWER.md +0 -227
  454. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/SKILL.md +0 -217
  455. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  456. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  457. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  458. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  459. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/mcp.json +0 -11
  460. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/POWER.md +0 -109
  461. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/SKILL.md +0 -93
  462. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/communication.md +0 -499
  463. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/data.md +0 -721
  464. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/decomposition.md +0 -344
  465. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/observability.md +0 -805
  466. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/patterns.md +0 -603
  467. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/POWER.md +0 -130
  468. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/SKILL.md +0 -114
  469. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/authentication.md +0 -461
  470. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  471. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  472. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  473. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  474. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/services-di.md +0 -143
  475. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  476. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  477. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/POWER.md +0 -72
  478. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/SKILL.md +0 -71
  479. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/references/colors.md +0 -41
  480. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/references/components.md +0 -53
  481. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/references/spacing.md +0 -84
  482. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/POWER.md +0 -78
  483. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/SKILL.md +0 -68
  484. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  485. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-express.md +0 -19
  486. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  487. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  488. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  489. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  490. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  491. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/references/steering.md +0 -26
  492. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/sentry-automation/SKILL.md +0 -232
  493. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/SKILL.md +0 -88
  494. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  495. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/common-workflows.md +0 -660
  496. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  497. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/jira-queries.md +0 -421
  498. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  499. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  500. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  501. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  502. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  503. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  504. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/datadog-automation/SKILL.md +0 -235
  505. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/github-automation/SKILL.md +0 -227
  506. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/LICENSE.txt +0 -202
  507. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/SKILL.md +0 -176
  508. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/evaluation.md +0 -602
  509. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  510. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  511. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  512. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/connections.py +0 -151
  513. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/evaluation.py +0 -373
  514. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  515. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/requirements.txt +0 -2
  516. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/SKILL.md +0 -85
  517. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/protocol.md +0 -244
  518. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/python-sdk.md +0 -367
  519. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/resources.md +0 -554
  520. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/tools.md +0 -480
  521. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/typescript-sdk.md +0 -350
  522. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/POWER.md +0 -242
  523. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/SKILL.md +0 -240
  524. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/POWER.md +0 -89
  525. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/SKILL.md +0 -77
  526. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  527. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  528. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  529. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/performance.md +0 -99
  530. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/project-structure.md +0 -77
  531. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  532. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  533. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  534. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  535. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  536. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  537. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  538. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  539. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  540. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  541. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/POWER.md +0 -527
  542. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/SKILL.md +0 -513
  543. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  544. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  545. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  546. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  547. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  548. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  549. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  550. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/git-commit/POWER.md +0 -47
  551. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/git-commit/SKILL.md +0 -46
  552. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/POWER.md +0 -227
  553. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/SKILL.md +0 -217
  554. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  555. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  556. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  557. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  558. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/mcp.json +0 -11
  559. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/POWER.md +0 -109
  560. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/SKILL.md +0 -93
  561. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/communication.md +0 -499
  562. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/data.md +0 -721
  563. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/decomposition.md +0 -344
  564. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/observability.md +0 -805
  565. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/patterns.md +0 -603
  566. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/POWER.md +0 -130
  567. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/SKILL.md +0 -114
  568. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/authentication.md +0 -461
  569. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  570. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  571. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  572. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  573. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/services-di.md +0 -143
  574. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  575. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  576. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/POWER.md +0 -72
  577. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/SKILL.md +0 -71
  578. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/references/colors.md +0 -41
  579. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/references/components.md +0 -53
  580. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/references/spacing.md +0 -84
  581. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/POWER.md +0 -78
  582. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/SKILL.md +0 -68
  583. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  584. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-express.md +0 -19
  585. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  586. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  587. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  588. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  589. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  590. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/references/steering.md +0 -26
  591. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/sentry-automation/SKILL.md +0 -232
@@ -1,114 +0,0 @@
1
- ---
2
- name: "nestjs-expert"
3
- description: "Use when building NestJS applications requiring modular architecture, dependency injection, or TypeScript backend development. Invoke for modules, controllers, services, DTOs, guards, interceptors, Mongoose."
4
- ---
5
-
6
-
7
- # NestJS Expert
8
-
9
- ## Overview
10
-
11
- Senior NestJS specialist with deep expertise in enterprise-grade, scalable TypeScript backend applications. Focused on session-based authentication with Fastify and MongoDB/Mongoose integration.
12
-
13
- ## Role Definition
14
-
15
- You are a senior Node.js engineer with 10+ years of backend experience. You specialize in NestJS architecture, dependency injection, and enterprise patterns. You build modular, testable applications with proper separation of concerns.
16
-
17
- ## When to Use This Power
18
-
19
- - Building NestJS REST APIs with Fastify
20
- - Implementing modules, controllers, and services
21
- - Creating DTOs with validation
22
- - Setting up session-based authentication (NOT JWT)
23
- - Implementing guards, interceptors, and pipes
24
- - Database integration with Mongoose
25
-
26
- ## Core Workflow
27
-
28
- 1. **Analyze requirements** - Identify modules, endpoints, entities
29
- 2. **Design structure** - Plan module organization and dependencies
30
- 3. **Implement** - Create modules, services, controllers with DI
31
- 4. **Secure** - Add guards, validation, authentication
32
- 5. **Test** - Write unit tests and E2E tests
33
-
34
- ## Available Steering Files
35
-
36
- Load detailed guidance on-demand:
37
-
38
- | Topic | Reference | Load When |
39
- | ----------------- | ------------------------------------ | ------------------------------------------- |
40
- | Controllers | `steering/controllers-routing.md` | Creating controllers, routing, Swagger docs |
41
- | Services | `steering/services-di.md` | Services, dependency injection, providers |
42
- | DTOs | `steering/dtos-validation.md` | Validation, class-validator, DTOs |
43
- | Authentication | `steering/authentication.md` | Session auth, guards, roles, multi-tenant |
44
- | Testing | `steering/testing-patterns.md` | Unit tests, E2E tests, mocking |
45
- | Express Migration | `steering/migration-from-express.md` | Migrating from Express.js to NestJS |
46
-
47
- ## Authentication Approach
48
-
49
- **OneUp uses session-based authentication, NOT JWT.**
50
-
51
- ```typescript
52
- // Session-based auth with Fastify
53
- @Post('login')
54
- async login(@Body() dto: LoginDto, @Req() request: FastifyRequest) {
55
- const user = await this.authService.validateUser(dto.username, dto.password);
56
-
57
- // Store user info in session
58
- request.session.set('userId', user.userId);
59
- request.session.set('organizationId', user.organizationId);
60
- request.session.set('role', user.role);
61
-
62
- return { message: 'Login successful' };
63
- }
64
-
65
- @Post('logout')
66
- async logout(@Req() request: FastifyRequest) {
67
- request.session.delete();
68
- return { message: 'Logout successful' };
69
- }
70
- ```
71
-
72
- See `steering/authentication.md` for complete session auth implementation.
73
-
74
- ## Constraints
75
-
76
- ### MUST DO
77
-
78
- - Use dependency injection for all services
79
- - Validate all inputs with class-validator
80
- - Use DTOs for request/response bodies
81
- - Implement proper error handling with HTTP exceptions
82
- - Document APIs with Swagger decorators
83
- - Write unit tests for services
84
- - Use environment variables for configuration
85
-
86
- ### MUST NOT DO
87
-
88
- - Expose passwords or secrets in responses
89
- - Trust user input without validation
90
- - Use `any` type unless absolutely necessary
91
- - Create circular dependencies between modules
92
- - Hardcode configuration values
93
- - Skip error handling
94
-
95
- ## Output Templates
96
-
97
- When implementing NestJS features, provide:
98
-
99
- 1. Module definition
100
- 2. Controller with Swagger decorators
101
- 3. Service with error handling
102
- 4. DTOs with validation
103
- 5. Tests for service methods
104
-
105
- ## Knowledge Reference
106
-
107
- NestJS, TypeScript, Mongoose, Fastify, @fastify/secure-session, class-validator, class-transformer, Swagger/OpenAPI, Jest, Supertest, Guards, Interceptors, Pipes, Filters
108
-
109
- ## Related Powers
110
-
111
- - **Fastify Patterns** - Fastify adapter and session configuration
112
- - **Mongoose NestJS** - MongoDB integration patterns
113
- - **Test Master** - Comprehensive testing strategies
114
- - **Security Reviewer** - Security auditing
@@ -1,461 +0,0 @@
1
- # Authentication & Guards
2
-
3
- > Reference for: NestJS Expert
4
- > Load when: Session authentication, guards, authorization, cookie-based auth
5
-
6
- ---
7
-
8
- ## Session-Based Authentication (Recommended)
9
-
10
- OneUp uses **cookie-based session authentication** with `@fastify/secure-session` instead of JWT. This approach is more secure for web applications and simplifies token management.
11
-
12
- ### Why Sessions Over JWT?
13
-
14
- | Aspect | Session | JWT |
15
- | ---------- | ------------------------ | ------------------------------------------- |
16
- | Revocation | Instant (delete session) | Difficult (wait for expiry) |
17
- | Storage | Server-side (Redis/DB) | Client-side (token) |
18
- | Size | Small cookie | Large token |
19
- | Security | HttpOnly cookie | Vulnerable to XSS if stored in localStorage |
20
- | Logout | Immediate | Token still valid until expiry |
21
-
22
- ---
23
-
24
- ## Session Setup with Fastify
25
-
26
- ```typescript
27
- // main.ts
28
- import { NestFactory } from "@nestjs/core";
29
- import {
30
- FastifyAdapter,
31
- NestFastifyApplication,
32
- } from "@nestjs/platform-fastify";
33
- import cookie from "@fastify/cookie";
34
- import secureSession from "@fastify/secure-session";
35
-
36
- async function bootstrap() {
37
- const app = await NestFactory.create<NestFastifyApplication>(
38
- AppModule,
39
- new FastifyAdapter(),
40
- );
41
-
42
- // Register cookie plugin first
43
- await app.register(cookie);
44
-
45
- // Register secure session
46
- await app.register(secureSession, {
47
- cookieName: process.env.SESSION_COOKIE_NAME || "session",
48
- key: Buffer.from(process.env.SESSION_SECRET!, "hex"),
49
- cookie: {
50
- httpOnly: true,
51
- secure: process.env.NODE_ENV === "production",
52
- sameSite: "lax",
53
- path: "/",
54
- maxAge: 7 * 24 * 60 * 60, // 7 days
55
- },
56
- });
57
-
58
- await app.listen(3000, "0.0.0.0");
59
- }
60
- ```
61
-
62
- ### Generate Session Key
63
-
64
- ```bash
65
- # Generate a secure 32-byte key (using Bun)
66
- bun -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
67
-
68
- # Or using npx
69
- bunx @fastify/secure-session > secret-key
70
- ```
71
-
72
- ---
73
-
74
- ## Session Auth Guard
75
-
76
- ```typescript
77
- // src/common/guards/session-auth.guard.ts
78
- import {
79
- Injectable,
80
- CanActivate,
81
- ExecutionContext,
82
- UnauthorizedException,
83
- } from "@nestjs/common";
84
- import { Reflector } from "@nestjs/core";
85
- import { FastifyRequest } from "fastify";
86
-
87
- export const IS_PUBLIC_KEY = "isPublic";
88
- export const Public = () => SetMetadata(IS_PUBLIC_KEY, true);
89
-
90
- @Injectable()
91
- export class SessionAuthGuard implements CanActivate {
92
- constructor(private reflector: Reflector) {}
93
-
94
- canActivate(context: ExecutionContext): boolean {
95
- // Check if route is public
96
- const isPublic = this.reflector.getAllAndOverride<boolean>(IS_PUBLIC_KEY, [
97
- context.getHandler(),
98
- context.getClass(),
99
- ]);
100
-
101
- if (isPublic) {
102
- return true;
103
- }
104
-
105
- const request = context.switchToHttp().getRequest<FastifyRequest>();
106
- const session = request.session;
107
-
108
- // Check if user is authenticated
109
- const userId = session.get("userId");
110
- if (!userId) {
111
- throw new UnauthorizedException("Not authenticated");
112
- }
113
-
114
- // Attach user info to request for downstream use
115
- (request as any).user = {
116
- userId: session.get("userId"),
117
- organizationId: session.get("organizationId"),
118
- role: session.get("role"),
119
- username: session.get("username"),
120
- };
121
-
122
- return true;
123
- }
124
- }
125
- ```
126
-
127
- ---
128
-
129
- ## Roles Guard
130
-
131
- ```typescript
132
- // src/common/guards/roles.guard.ts
133
- import {
134
- Injectable,
135
- CanActivate,
136
- ExecutionContext,
137
- ForbiddenException,
138
- } from "@nestjs/common";
139
- import { Reflector } from "@nestjs/core";
140
-
141
- export const ROLES_KEY = "roles";
142
- export const Roles = (...roles: string[]) => SetMetadata(ROLES_KEY, roles);
143
-
144
- @Injectable()
145
- export class RolesGuard implements CanActivate {
146
- constructor(private reflector: Reflector) {}
147
-
148
- canActivate(context: ExecutionContext): boolean {
149
- const requiredRoles = this.reflector.getAllAndOverride<string[]>(
150
- ROLES_KEY,
151
- [context.getHandler(), context.getClass()],
152
- );
153
-
154
- if (!requiredRoles || requiredRoles.length === 0) {
155
- return true;
156
- }
157
-
158
- const request = context.switchToHttp().getRequest();
159
- const user = request.user;
160
-
161
- if (!user || !requiredRoles.includes(user.role)) {
162
- throw new ForbiddenException("Insufficient permissions");
163
- }
164
-
165
- return true;
166
- }
167
- }
168
- ```
169
-
170
- ---
171
-
172
- ## Organization Guard (Multi-Tenant)
173
-
174
- ```typescript
175
- // src/common/guards/organization.guard.ts
176
- import {
177
- Injectable,
178
- CanActivate,
179
- ExecutionContext,
180
- ForbiddenException,
181
- } from "@nestjs/common";
182
-
183
- @Injectable()
184
- export class OrganizationGuard implements CanActivate {
185
- canActivate(context: ExecutionContext): boolean {
186
- const request = context.switchToHttp().getRequest();
187
- const user = request.user;
188
- const params = request.params;
189
-
190
- // If route has organizationId param, verify user belongs to it
191
- if (
192
- params.organizationId &&
193
- user.organizationId !== params.organizationId
194
- ) {
195
- // Allow SuperAdmin to access any organization
196
- if (user.role !== "SUPER_ADMIN") {
197
- throw new ForbiddenException("Access denied to this organization");
198
- }
199
- }
200
-
201
- return true;
202
- }
203
- }
204
- ```
205
-
206
- ---
207
-
208
- ## Auth Service (Session-Based)
209
-
210
- ```typescript
211
- // src/modules/auth/auth.service.ts
212
- import { Injectable, UnauthorizedException } from "@nestjs/common";
213
- import { UsersRepository } from "../users/users.repository";
214
- import * as bcrypt from "bcrypt";
215
-
216
- export interface SessionUser {
217
- userId: string;
218
- username: string;
219
- organizationId: string;
220
- role: string;
221
- }
222
-
223
- @Injectable()
224
- export class AuthService {
225
- constructor(private readonly usersRepository: UsersRepository) {}
226
-
227
- async validateUser(username: string, password: string): Promise<SessionUser> {
228
- const user = await this.usersRepository.findByUsername(username);
229
-
230
- if (!user) {
231
- throw new UnauthorizedException("Invalid credentials");
232
- }
233
-
234
- if (!user.enabled) {
235
- throw new UnauthorizedException("Account is disabled");
236
- }
237
-
238
- const isPasswordValid = await bcrypt.compare(password, user.password);
239
- if (!isPasswordValid) {
240
- throw new UnauthorizedException("Invalid credentials");
241
- }
242
-
243
- return {
244
- userId: user._id.toString(),
245
- username: user.username,
246
- organizationId: user.organizationId,
247
- role: user.role,
248
- };
249
- }
250
-
251
- async hashPassword(password: string): Promise<string> {
252
- return bcrypt.hash(password, 10);
253
- }
254
- }
255
- ```
256
-
257
- ---
258
-
259
- ## Auth Controller
260
-
261
- ```typescript
262
- // src/modules/auth/auth.controller.ts
263
- import {
264
- Controller,
265
- Post,
266
- Body,
267
- Req,
268
- HttpCode,
269
- HttpStatus,
270
- } from "@nestjs/common";
271
- import { FastifyRequest } from "fastify";
272
- import { AuthService, SessionUser } from "./auth.service";
273
- import { LoginDto } from "./dto/login.dto";
274
- import { Public } from "../../common/guards/session-auth.guard";
275
-
276
- @Controller("auth")
277
- export class AuthController {
278
- constructor(private readonly authService: AuthService) {}
279
-
280
- @Public()
281
- @Post("login")
282
- @HttpCode(HttpStatus.OK)
283
- async login(
284
- @Body() dto: LoginDto,
285
- @Req() request: FastifyRequest,
286
- ): Promise<{ message: string; user: Omit<SessionUser, "userId"> }> {
287
- const user = await this.authService.validateUser(
288
- dto.username,
289
- dto.password,
290
- );
291
-
292
- // Set session data
293
- request.session.set("userId", user.userId);
294
- request.session.set("username", user.username);
295
- request.session.set("organizationId", user.organizationId);
296
- request.session.set("role", user.role);
297
-
298
- return {
299
- message: "Login successful",
300
- user: {
301
- username: user.username,
302
- organizationId: user.organizationId,
303
- role: user.role,
304
- },
305
- };
306
- }
307
-
308
- @Post("logout")
309
- @HttpCode(HttpStatus.OK)
310
- async logout(@Req() request: FastifyRequest): Promise<{ message: string }> {
311
- // Clear all session data
312
- request.session.delete();
313
-
314
- return { message: "Logout successful" };
315
- }
316
-
317
- @Get("me")
318
- async getCurrentUser(@Req() request: FastifyRequest): Promise<SessionUser> {
319
- return {
320
- userId: request.session.get("userId"),
321
- username: request.session.get("username"),
322
- organizationId: request.session.get("organizationId"),
323
- role: request.session.get("role"),
324
- };
325
- }
326
- }
327
- ```
328
-
329
- ---
330
-
331
- ## Apply Guards Globally
332
-
333
- ```typescript
334
- // app.module.ts
335
- import { Module } from "@nestjs/common";
336
- import { APP_GUARD } from "@nestjs/core";
337
- import { SessionAuthGuard } from "./common/guards/session-auth.guard";
338
- import { RolesGuard } from "./common/guards/roles.guard";
339
-
340
- @Module({
341
- providers: [
342
- // Apply SessionAuthGuard globally (checks session on all routes)
343
- { provide: APP_GUARD, useClass: SessionAuthGuard },
344
- // Apply RolesGuard globally (checks roles when @Roles() is used)
345
- { provide: APP_GUARD, useClass: RolesGuard },
346
- ],
347
- })
348
- export class AppModule {}
349
- ```
350
-
351
- ---
352
-
353
- ## Usage Examples
354
-
355
- ```typescript
356
- // Public endpoint (no auth required)
357
- @Public()
358
- @Get('health')
359
- healthCheck() {
360
- return { status: 'ok' };
361
- }
362
-
363
- // Protected endpoint (requires valid session)
364
- @Get('profile')
365
- getProfile(@Req() request: FastifyRequest) {
366
- return request.user;
367
- }
368
-
369
- // Admin only endpoint
370
- @Roles('ADMIN', 'SUPER_ADMIN')
371
- @Get('admin/dashboard')
372
- adminDashboard() {
373
- return { data: 'admin data' };
374
- }
375
-
376
- // SuperAdmin only
377
- @Roles('SUPER_ADMIN')
378
- @Delete('users/:id')
379
- deleteUser(@Param('id') id: string) {
380
- return this.usersService.delete(id);
381
- }
382
- ```
383
-
384
- ---
385
-
386
- ## Session Decorator (Optional)
387
-
388
- ```typescript
389
- // src/common/decorators/session-user.decorator.ts
390
- import { createParamDecorator, ExecutionContext } from '@nestjs/common';
391
-
392
- export interface CurrentUser {
393
- userId: string;
394
- username: string;
395
- organizationId: string;
396
- role: string;
397
- }
398
-
399
- export const SessionUser = createParamDecorator(
400
- (data: keyof CurrentUser | undefined, ctx: ExecutionContext) => {
401
- const request = ctx.switchToHttp().getRequest();
402
- const user = request.user as CurrentUser;
403
-
404
- return data ? user?.[data] : user;
405
- },
406
- );
407
-
408
- // Usage
409
- @Get('profile')
410
- getProfile(@SessionUser() user: CurrentUser) {
411
- return user;
412
- }
413
-
414
- @Get('my-org')
415
- getMyOrg(@SessionUser('organizationId') orgId: string) {
416
- return this.orgsService.findById(orgId);
417
- }
418
- ```
419
-
420
- ---
421
-
422
- ## Quick Reference
423
-
424
- | Component | Purpose |
425
- | -------------------------- | ------------------------- |
426
- | `SessionAuthGuard` | Verify session exists |
427
- | `RolesGuard` | Role-based access control |
428
- | `OrganizationGuard` | Multi-tenant isolation |
429
- | `@Public()` | Skip authentication |
430
- | `@Roles('ADMIN')` | Require specific role |
431
- | `@SessionUser()` | Get current user |
432
- | `request.session.set()` | Store session data |
433
- | `request.session.get()` | Retrieve session data |
434
- | `request.session.delete()` | Clear session (logout) |
435
-
436
- ---
437
-
438
- ## Security Best Practices
439
-
440
- ### DO
441
-
442
- - Use `httpOnly: true` for session cookies
443
- - Use `secure: true` in production
444
- - Set appropriate `sameSite` policy
445
- - Regenerate session on login
446
- - Clear session completely on logout
447
- - Use HTTPS in production
448
-
449
- ### DON'T
450
-
451
- - Store sensitive data in session (only IDs and roles)
452
- - Use long session expiry without refresh mechanism
453
- - Skip CSRF protection for state-changing operations
454
- - Trust client-side session data
455
-
456
- ---
457
-
458
- ## Related Reference Files
459
-
460
- - `steering/secure-sessions.md` (Fastify Patterns) - Detailed session configuration
461
- - `steering/services-di.md` - Dependency injection patterns
@@ -1,114 +0,0 @@
1
- # Controllers & Routing
2
-
3
- > Reference for: NestJS Expert
4
- > Load when: Creating controllers, routing, Swagger documentation
5
-
6
- ## Controller with Swagger
7
-
8
- ```typescript
9
- import {
10
- Controller, Get, Post, Patch, Delete,
11
- Body, Param, Query, HttpCode, HttpStatus, UseGuards
12
- } from '@nestjs/common';
13
- import { ApiTags, ApiOperation, ApiResponse, ApiParam, ApiQuery } from '@nestjs/swagger';
14
- import { ParseUUIDPipe, ParseIntPipe } from '@nestjs/common';
15
-
16
- @Controller('users')
17
- @ApiTags('users')
18
- @UseGuards(JwtAuthGuard)
19
- export class UsersController {
20
- constructor(private readonly usersService: UsersService) {}
21
-
22
- @Post()
23
- @ApiOperation({ summary: 'Create user' })
24
- @ApiResponse({ status: 201, type: UserDto })
25
- @ApiResponse({ status: 400, description: 'Validation failed' })
26
- create(@Body() dto: CreateUserDto): Promise<UserDto> {
27
- return this.usersService.create(dto);
28
- }
29
-
30
- @Get()
31
- @ApiOperation({ summary: 'Get all users' })
32
- @ApiQuery({ name: 'page', required: false, type: Number })
33
- @ApiQuery({ name: 'limit', required: false, type: Number })
34
- findAll(
35
- @Query('page', new ParseIntPipe({ optional: true })) page = 1,
36
- @Query('limit', new ParseIntPipe({ optional: true })) limit = 20,
37
- ): Promise<UserDto[]> {
38
- return this.usersService.findAll({ page, limit });
39
- }
40
-
41
- @Get(':id')
42
- @ApiParam({ name: 'id', type: 'string', format: 'uuid' })
43
- @ApiResponse({ status: 200, type: UserDto })
44
- @ApiResponse({ status: 404, description: 'User not found' })
45
- findOne(@Param('id', ParseUUIDPipe) id: string): Promise<UserDto> {
46
- return this.usersService.findOne(id);
47
- }
48
-
49
- @Patch(':id')
50
- update(
51
- @Param('id', ParseUUIDPipe) id: string,
52
- @Body() dto: UpdateUserDto,
53
- ): Promise<UserDto> {
54
- return this.usersService.update(id, dto);
55
- }
56
-
57
- @Delete(':id')
58
- @HttpCode(HttpStatus.NO_CONTENT)
59
- remove(@Param('id', ParseUUIDPipe) id: string): Promise<void> {
60
- return this.usersService.remove(id);
61
- }
62
- }
63
- ```
64
-
65
- ## Nested Routes
66
-
67
- ```typescript
68
- @Controller('posts/:postId/comments')
69
- @ApiTags('comments')
70
- export class CommentsController {
71
- @Get()
72
- findAll(@Param('postId', ParseUUIDPipe) postId: string) {
73
- return this.commentsService.findByPost(postId);
74
- }
75
-
76
- @Post()
77
- create(
78
- @Param('postId', ParseUUIDPipe) postId: string,
79
- @Body() dto: CreateCommentDto,
80
- ) {
81
- return this.commentsService.create(postId, dto);
82
- }
83
- }
84
- ```
85
-
86
- ## Global Prefix & Versioning
87
-
88
- ```typescript
89
- // main.ts
90
- const app = await NestFactory.create(AppModule);
91
- app.setGlobalPrefix('api');
92
- app.enableVersioning({ type: VersioningType.URI });
93
-
94
- // controller.ts
95
- @Controller({ path: 'users', version: '1' }) // /api/v1/users
96
- export class UsersV1Controller {}
97
-
98
- @Controller({ path: 'users', version: '2' }) // /api/v2/users
99
- export class UsersV2Controller {}
100
- ```
101
-
102
- ## Quick Reference
103
-
104
- | Decorator | Purpose |
105
- |-----------|---------|
106
- | `@Controller('path')` | Define route prefix |
107
- | `@Get()`, `@Post()` | HTTP method |
108
- | `@Param('name')` | Path parameter |
109
- | `@Query('name')` | Query parameter |
110
- | `@Body()` | Request body |
111
- | `@HttpCode(201)` | Override status code |
112
- | `@ApiTags()` | Swagger grouping |
113
- | `@ApiOperation()` | Endpoint description |
114
- | `@ApiResponse()` | Document response |