@aws/nx-plugin 1.0.0-rc.7 → 1.0.0-rc.71

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 (1358) hide show
  1. package/LICENSE-THIRD-PARTY +7044 -6135
  2. package/README.md +9 -7
  3. package/generators.json +152 -10
  4. package/migrations.json +161 -0
  5. package/package.json +41 -22
  6. package/src/agentcore-gateway/__snapshots__/generator.spec.ts.snap +295 -0
  7. package/src/agentcore-gateway/agent-connection/generator.d.ts +19 -0
  8. package/src/agentcore-gateway/agent-connection/generator.js +95 -0
  9. package/src/agentcore-gateway/agent-connection/generator.js.map +1 -0
  10. package/src/agentcore-gateway/agent-connection/schema.d.js +6 -0
  11. package/src/agentcore-gateway/agent-connection/schema.d.js.map +1 -0
  12. package/src/agentcore-gateway/agent-connection/schema.d.ts +13 -0
  13. package/src/agentcore-gateway/agent-connection/schema.json +31 -0
  14. package/src/agentcore-gateway/attach-upstream.d.ts +49 -0
  15. package/src/agentcore-gateway/attach-upstream.js +59 -0
  16. package/src/agentcore-gateway/attach-upstream.js.map +1 -0
  17. package/src/agentcore-gateway/files/cedar/policies/README.md +61 -0
  18. package/src/agentcore-gateway/files/cedar/policies/permit-all.cedar +26 -0
  19. package/src/agentcore-gateway/files/project/http/local-dev.ts.template +77 -0
  20. package/src/agentcore-gateway/files/project/mcp/local-dev.ts.template +134 -0
  21. package/src/agentcore-gateway/gateway-connection/generator.d.ts +21 -0
  22. package/src/agentcore-gateway/gateway-connection/generator.js +103 -0
  23. package/src/agentcore-gateway/gateway-connection/generator.js.map +1 -0
  24. package/src/agentcore-gateway/gateway-connection/schema.d.js +6 -0
  25. package/src/agentcore-gateway/gateway-connection/schema.d.js.map +1 -0
  26. package/src/agentcore-gateway/gateway-connection/schema.d.ts +13 -0
  27. package/src/agentcore-gateway/gateway-connection/schema.json +31 -0
  28. package/src/agentcore-gateway/generator.d.ts +89 -0
  29. package/src/agentcore-gateway/generator.js +212 -0
  30. package/src/agentcore-gateway/generator.js.map +1 -0
  31. package/src/agentcore-gateway/mcp-connection/generator.d.ts +19 -0
  32. package/src/agentcore-gateway/mcp-connection/generator.js +61 -0
  33. package/src/agentcore-gateway/mcp-connection/generator.js.map +1 -0
  34. package/src/agentcore-gateway/mcp-connection/schema.d.js +6 -0
  35. package/src/agentcore-gateway/mcp-connection/schema.d.js.map +1 -0
  36. package/src/agentcore-gateway/mcp-connection/schema.d.ts +13 -0
  37. package/src/agentcore-gateway/mcp-connection/schema.json +31 -0
  38. package/src/agentcore-gateway/react-connection/__snapshots__/generator.spec.ts.snap +68 -0
  39. package/src/agentcore-gateway/react-connection/generator.d.ts +19 -0
  40. package/src/agentcore-gateway/react-connection/generator.js +119 -0
  41. package/src/agentcore-gateway/react-connection/generator.js.map +1 -0
  42. package/src/agentcore-gateway/react-connection/schema.d.js +6 -0
  43. package/src/agentcore-gateway/react-connection/schema.d.js.map +1 -0
  44. package/src/agentcore-gateway/react-connection/schema.d.ts +13 -0
  45. package/src/agentcore-gateway/react-connection/schema.json +31 -0
  46. package/src/agentcore-gateway/schema.d.js +6 -0
  47. package/src/agentcore-gateway/schema.d.js.map +1 -0
  48. package/src/agentcore-gateway/schema.d.ts +17 -0
  49. package/src/agentcore-gateway/schema.json +72 -0
  50. package/src/agentcore-harness/__snapshots__/generator.spec.ts.snap +238 -0
  51. package/src/agentcore-harness/files/project/README.md.template +83 -0
  52. package/src/agentcore-harness/files/project/scripts/chat.ts.template +99 -0
  53. package/src/agentcore-harness/files/project/src/PROMPT.md.template +16 -0
  54. package/src/agentcore-harness/generator.d.ts +62 -0
  55. package/src/agentcore-harness/generator.js +158 -0
  56. package/src/agentcore-harness/generator.js.map +1 -0
  57. package/src/agentcore-harness/schema.d.js +8 -0
  58. package/src/agentcore-harness/schema.d.js.map +1 -0
  59. package/src/agentcore-harness/schema.d.ts +17 -0
  60. package/src/agentcore-harness/schema.json +53 -0
  61. package/src/connection/agent-local-dev.d.ts +49 -0
  62. package/src/connection/agent-local-dev.js +84 -0
  63. package/src/connection/agent-local-dev.js.map +1 -0
  64. package/src/connection/agent-runtime-config.js +9 -14
  65. package/src/connection/agent-runtime-config.js.map +1 -1
  66. package/src/connection/gateway-runtime-config.d.ts +19 -0
  67. package/src/connection/gateway-runtime-config.js +47 -0
  68. package/src/connection/gateway-runtime-config.js.map +1 -0
  69. package/src/connection/generator.d.ts +3 -10
  70. package/src/connection/generator.js +172 -194
  71. package/src/connection/generator.js.map +1 -1
  72. package/src/connection/{serve-local.d.ts → local-dev.d.ts} +3 -3
  73. package/src/connection/local-dev.js +37 -0
  74. package/src/connection/local-dev.js.map +1 -0
  75. package/src/connection/scaffold-catalog.d.ts +267 -0
  76. package/src/connection/scaffold-catalog.js +347 -0
  77. package/src/connection/scaffold-catalog.js.map +1 -0
  78. package/src/connection/schema-resolver.d.ts +5 -0
  79. package/src/connection/schema-resolver.js +27 -0
  80. package/src/connection/schema-resolver.js.map +1 -0
  81. package/src/connection/schema.d.js +6 -0
  82. package/src/connection/schema.d.js.map +1 -0
  83. package/src/connection/schema.d.ts +1 -0
  84. package/src/connection/schema.json +5 -0
  85. package/src/connection/supported-connections.d.ts +116 -0
  86. package/src/connection/supported-connections.js +163 -0
  87. package/src/connection/supported-connections.js.map +1 -0
  88. package/src/index.js +2 -5
  89. package/src/index.js.map +1 -1
  90. package/src/infra/app/__snapshots__/generator.spec.ts.snap +119 -72
  91. package/src/infra/app/files/app/README.md.template +8 -4
  92. package/src/infra/app/files/app/src/main.ts.template +5 -1
  93. package/src/infra/app/files/app/src/stages/application-stage.ts.template +1 -1
  94. package/src/infra/app/generator.d.ts +43 -0
  95. package/src/infra/app/generator.js +195 -127
  96. package/src/infra/app/generator.js.map +1 -1
  97. package/src/infra/app/schema.d.js +6 -0
  98. package/src/infra/app/schema.d.js.map +1 -0
  99. package/src/infra/app/schema.d.ts +1 -1
  100. package/src/infra/app/schema.json +5 -0
  101. package/src/init/generator.d.ts +31 -0
  102. package/src/init/generator.js +46 -0
  103. package/src/init/generator.js.map +1 -0
  104. package/src/init/schema.d.js +6 -0
  105. package/src/init/schema.d.js.map +1 -0
  106. package/src/init/schema.d.ts +16 -0
  107. package/src/init/schema.json +35 -0
  108. package/src/internal/test-matrix/generator.d.ts +29 -0
  109. package/src/internal/test-matrix/generator.js +698 -0
  110. package/src/internal/test-matrix/generator.js.map +1 -0
  111. package/src/internal/test-matrix/schema.d.js +6 -0
  112. package/src/internal/test-matrix/schema.d.js.map +1 -0
  113. package/src/internal/test-matrix/schema.d.ts +12 -0
  114. package/src/internal/test-matrix/schema.json +21 -0
  115. package/src/license/config-types.js +5 -3
  116. package/src/license/config-types.js.map +1 -1
  117. package/src/license/config.d.ts +1 -1
  118. package/src/license/config.js +267 -242
  119. package/src/license/config.js.map +1 -1
  120. package/src/license/dependency-check/check.js +51 -46
  121. package/src/license/dependency-check/check.js.map +1 -1
  122. package/src/license/dependency-check/collectors/collector.js +41 -71
  123. package/src/license/dependency-check/collectors/collector.js.map +1 -1
  124. package/src/license/dependency-check/collectors/npm-collector.js +34 -41
  125. package/src/license/dependency-check/collectors/npm-collector.js.map +1 -1
  126. package/src/license/dependency-check/collectors/python-collector.js +55 -62
  127. package/src/license/dependency-check/collectors/python-collector.js.map +1 -1
  128. package/src/license/dependency-check/evaluator.js +40 -68
  129. package/src/license/dependency-check/evaluator.js.map +1 -1
  130. package/src/license/dependency-check/executor.js +30 -22
  131. package/src/license/dependency-check/executor.js.map +1 -1
  132. package/src/license/dependency-check/pre-approved.js +949 -336
  133. package/src/license/dependency-check/pre-approved.js.map +1 -1
  134. package/src/license/dependency-check/types.js +2 -3
  135. package/src/license/dependency-check/types.js.map +1 -1
  136. package/src/license/generator.js +65 -68
  137. package/src/license/generator.js.map +1 -1
  138. package/src/license/index.js +3 -9
  139. package/src/license/index.js.map +1 -1
  140. package/src/license/known-exceptions.d.ts +1 -1
  141. package/src/license/known-exceptions.js +19 -13
  142. package/src/license/known-exceptions.js.map +1 -1
  143. package/src/license/schema.d.js +6 -0
  144. package/src/license/schema.d.js.map +1 -0
  145. package/src/license/schema.d.ts +2 -0
  146. package/src/license/schema.json +5 -0
  147. package/src/license/sync/generator.js +94 -119
  148. package/src/license/sync/generator.js.map +1 -1
  149. package/src/license/sync/project-file-sync.js +28 -35
  150. package/src/license/sync/project-file-sync.js.map +1 -1
  151. package/src/mcp-server/dev-server.d.ts +1 -0
  152. package/src/mcp-server/dev-server.js +18 -0
  153. package/src/mcp-server/dev-server.js.map +1 -0
  154. package/src/mcp-server/generator-info.js +149 -165
  155. package/src/mcp-server/generator-info.js.map +1 -1
  156. package/src/mcp-server/guide-pipeline.js +199 -206
  157. package/src/mcp-server/guide-pipeline.js.map +1 -1
  158. package/src/mcp-server/guide-render.js +10 -25
  159. package/src/mcp-server/guide-render.js.map +1 -1
  160. package/src/mcp-server/index.js +6 -10
  161. package/src/mcp-server/index.js.map +1 -1
  162. package/src/mcp-server/mdx-ast.js +39 -57
  163. package/src/mcp-server/mdx-ast.js.map +1 -1
  164. package/src/mcp-server/option-filter.js +33 -47
  165. package/src/mcp-server/option-filter.js.map +1 -1
  166. package/src/mcp-server/schema-registry.d.ts +9 -3
  167. package/src/mcp-server/schema-registry.js +41 -38
  168. package/src/mcp-server/schema-registry.js.map +1 -1
  169. package/src/mcp-server/schema.d.ts +1 -1
  170. package/src/mcp-server/schema.js +9 -7
  171. package/src/mcp-server/schema.js.map +1 -1
  172. package/src/mcp-server/server.js +24 -24
  173. package/src/mcp-server/server.js.map +1 -1
  174. package/src/mcp-server/tools/add-to-existing-project.d.ts +12 -0
  175. package/src/mcp-server/tools/add-to-existing-project.js +36 -0
  176. package/src/mcp-server/tools/add-to-existing-project.js.map +1 -0
  177. package/src/mcp-server/tools/create-workspace-command.js +23 -24
  178. package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
  179. package/src/mcp-server/tools/general-guidance.d.ts +1 -1
  180. package/src/mcp-server/tools/general-guidance.js +55 -32
  181. package/src/mcp-server/tools/general-guidance.js.map +1 -1
  182. package/src/mcp-server/tools/generator-guide.js +29 -37
  183. package/src/mcp-server/tools/generator-guide.js.map +1 -1
  184. package/src/mcp-server/tools/list-generators.js +19 -25
  185. package/src/mcp-server/tools/list-generators.js.map +1 -1
  186. package/src/mcp-server/tools/upgrade-workspace.d.ts +11 -0
  187. package/src/mcp-server/tools/upgrade-workspace.js +32 -0
  188. package/src/mcp-server/tools/upgrade-workspace.js.map +1 -0
  189. package/src/migrations/latest/py-agent-a2a-httpx-client-per-call/metadata.json +3 -0
  190. package/src/migrations/latest/py-agent-a2a-httpx-client-per-call/migration.d.ts +6 -0
  191. package/src/migrations/latest/py-agent-a2a-httpx-client-per-call/migration.js +329 -0
  192. package/src/migrations/latest/py-agent-a2a-httpx-client-per-call/migration.js.map +1 -0
  193. package/src/migrations/latest/py-agent-a2a-lifespan-construction/metadata.json +3 -0
  194. package/src/migrations/latest/py-agent-a2a-lifespan-construction/migration.d.ts +6 -0
  195. package/src/migrations/latest/py-agent-a2a-lifespan-construction/migration.js +234 -0
  196. package/src/migrations/latest/py-agent-a2a-lifespan-construction/migration.js.map +1 -0
  197. package/src/migrations/latest/smithy-server-package-rename/metadata.json +3 -0
  198. package/src/migrations/latest/smithy-server-package-rename/migration.d.ts +6 -0
  199. package/src/migrations/latest/smithy-server-package-rename/migration.js +123 -0
  200. package/src/migrations/latest/smithy-server-package-rename/migration.js.map +1 -0
  201. package/src/migrations/latest/translate-script-whole-file-writes/files/build-system-prompt.ts.fixture +23 -0
  202. package/src/migrations/latest/translate-script-whole-file-writes/files/build-user-prompt.ts.fixture +96 -0
  203. package/src/migrations/latest/translate-script-whole-file-writes/files/config-path.ts.fixture +1 -0
  204. package/src/migrations/latest/translate-script-whole-file-writes/files/file-to-translate.ts.fixture +10 -0
  205. package/src/migrations/latest/translate-script-whole-file-writes/files/get-files-to-translate.ts.fixture +96 -0
  206. package/src/migrations/latest/translate-script-whole-file-writes/files/header.ts.fixture +15 -0
  207. package/src/migrations/latest/translate-script-whole-file-writes/files/log.ts.fixture +18 -0
  208. package/src/migrations/latest/translate-script-whole-file-writes/files/main-call.ts.fixture +6 -0
  209. package/src/migrations/latest/translate-script-whole-file-writes/files/main.ts.fixture +79 -0
  210. package/src/migrations/latest/translate-script-whole-file-writes/files/project-root.ts.fixture +1 -0
  211. package/src/migrations/latest/translate-script-whole-file-writes/files/run-with-concurrency.ts.fixture +57 -0
  212. package/src/migrations/latest/translate-script-whole-file-writes/files/scripts-dir.ts.fixture +1 -0
  213. package/src/migrations/latest/translate-script-whole-file-writes/files/translate-file-for-language.ts.fixture +61 -0
  214. package/src/migrations/latest/translate-script-whole-file-writes/grit/already-migrated.grit +1 -0
  215. package/src/migrations/latest/translate-script-whole-file-writes/grit/build-system-prompt.grit +6 -0
  216. package/src/migrations/latest/translate-script-whole-file-writes/grit/build-user-prompt.grit +6 -0
  217. package/src/migrations/latest/translate-script-whole-file-writes/grit/config-path.grit +1 -0
  218. package/src/migrations/latest/translate-script-whole-file-writes/grit/file-to-translate.grit +11 -0
  219. package/src/migrations/latest/translate-script-whole-file-writes/grit/get-files-to-translate.grit +7 -0
  220. package/src/migrations/latest/translate-script-whole-file-writes/grit/log.grit +3 -0
  221. package/src/migrations/latest/translate-script-whole-file-writes/grit/main-call.grit +1 -0
  222. package/src/migrations/latest/translate-script-whole-file-writes/grit/main.grit +8 -0
  223. package/src/migrations/latest/translate-script-whole-file-writes/grit/project-root.grit +1 -0
  224. package/src/migrations/latest/translate-script-whole-file-writes/grit/run-with-concurrency.grit +6 -0
  225. package/src/migrations/latest/translate-script-whole-file-writes/grit/translate-file-for-language.grit +6 -0
  226. package/src/migrations/latest/translate-script-whole-file-writes/metadata.json +3 -0
  227. package/src/migrations/latest/translate-script-whole-file-writes/migration.d.ts +2 -0
  228. package/src/migrations/latest/translate-script-whole-file-writes/migration.js +103 -0
  229. package/src/migrations/latest/translate-script-whole-file-writes/migration.js.map +1 -0
  230. package/src/migrations/latest/translate-script-whole-file-writes/test-fixtures/released-script-first.ts.fixture +430 -0
  231. package/src/migrations/latest/translate-script-whole-file-writes/test-fixtures/released-script.ts.fixture +431 -0
  232. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/metadata.json +3 -0
  233. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/migration.d.ts +6 -0
  234. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/migration.js +65 -0
  235. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/migration.js.map +1 -0
  236. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/metadata.json +3 -0
  237. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/migration.d.ts +6 -0
  238. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/migration.js +108 -0
  239. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/migration.js.map +1 -0
  240. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/metadata.json +3 -0
  241. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/migration.d.ts +6 -0
  242. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/migration.js +128 -0
  243. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/migration.js.map +1 -0
  244. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/metadata.json +3 -0
  245. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/migration.d.ts +6 -0
  246. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/migration.js +215 -0
  247. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/migration.js.map +1 -0
  248. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/metadata.json +3 -0
  249. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/migration.d.ts +6 -0
  250. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/migration.js +93 -0
  251. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/migration.js.map +1 -0
  252. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/metadata.json +3 -0
  253. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/migration.d.ts +96 -0
  254. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/migration.js +670 -0
  255. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/migration.js.map +1 -0
  256. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/metadata.json +3 -0
  257. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/migration.d.ts +6 -0
  258. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/migration.js +89 -0
  259. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/migration.js.map +1 -0
  260. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/metadata.json +3 -0
  261. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/migration.d.ts +6 -0
  262. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/migration.js +449 -0
  263. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/migration.js.map +1 -0
  264. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/metadata.json +3 -0
  265. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/migration.d.ts +6 -0
  266. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/migration.js +78 -0
  267. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/migration.js.map +1 -0
  268. package/src/{smithy/project/files/build.Dockerfile.template → migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/rc57-service.Dockerfile.fixture} +1 -4
  269. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/__snapshots__/migration.spec.ts.snap +223 -0
  270. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/metadata.json +3 -0
  271. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/migration.d.ts +6 -0
  272. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/migration.js +217 -0
  273. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/migration.js.map +1 -0
  274. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/__snapshots__/migration.spec.ts.snap +149 -0
  275. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/metadata.json +3 -0
  276. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/migration.d.ts +6 -0
  277. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/migration.js +195 -0
  278. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/migration.js.map +1 -0
  279. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/__snapshots__/migration.spec.ts.snap +57 -0
  280. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/metadata.json +3 -0
  281. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/migration.d.ts +6 -0
  282. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/migration.js +77 -0
  283. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/migration.js.map +1 -0
  284. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/__snapshots__/migration.spec.ts.snap +48 -0
  285. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/metadata.json +3 -0
  286. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/migration.d.ts +6 -0
  287. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/migration.js +91 -0
  288. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/migration.js.map +1 -0
  289. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/metadata.json +3 -0
  290. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/migration.d.ts +6 -0
  291. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/migration.js +412 -0
  292. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/migration.js.map +1 -0
  293. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/metadata.json +3 -0
  294. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/migration.d.ts +6 -0
  295. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/migration.js +33 -0
  296. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/migration.js.map +1 -0
  297. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/metadata.json +3 -0
  298. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/migration.d.ts +6 -0
  299. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/migration.js +83 -0
  300. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/migration.js.map +1 -0
  301. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/legacy-service.Dockerfile.fixture +95 -0
  302. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/metadata.json +3 -0
  303. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/migration.d.ts +6 -0
  304. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/migration.js +154 -0
  305. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/migration.js.map +1 -0
  306. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/metadata.json +3 -0
  307. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/migration.d.ts +6 -0
  308. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/migration.js +71 -0
  309. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/migration.js.map +1 -0
  310. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/metadata.json +3 -0
  311. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/migration.d.ts +6 -0
  312. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/migration.js +57 -0
  313. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/migration.js.map +1 -0
  314. package/src/open-api/ts-client/__snapshots__/generator.additional-properties.spec.ts.snap +147 -33
  315. package/src/open-api/ts-client/__snapshots__/generator.arrays.spec.ts.snap +308 -75
  316. package/src/open-api/ts-client/__snapshots__/generator.complex-types.spec.ts.snap +298 -74
  317. package/src/open-api/ts-client/__snapshots__/generator.composite-types.spec.ts.snap +748 -103
  318. package/src/open-api/ts-client/__snapshots__/generator.content-type.spec.ts.snap +230 -37
  319. package/src/open-api/ts-client/__snapshots__/generator.duplicate-types.spec.ts.snap +249 -52
  320. package/src/open-api/ts-client/__snapshots__/generator.edge-cases.spec.ts.snap +5535 -0
  321. package/src/open-api/ts-client/__snapshots__/generator.fast-api-gaps.spec.ts.snap +736 -0
  322. package/src/open-api/ts-client/__snapshots__/generator.fast-api.spec.ts.snap +305 -71
  323. package/src/open-api/ts-client/__snapshots__/generator.multipart.spec.ts.snap +298 -0
  324. package/src/open-api/ts-client/__snapshots__/generator.primitive-types.spec.ts.snap +353 -82
  325. package/src/open-api/ts-client/__snapshots__/generator.request.spec.ts.snap +176 -55
  326. package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +100 -24
  327. package/src/open-api/ts-client/__snapshots__/generator.response.spec.ts.snap +147 -33
  328. package/src/open-api/ts-client/__snapshots__/generator.spec-compliance.spec.ts.snap +1883 -0
  329. package/src/open-api/ts-client/__snapshots__/generator.streaming.spec.ts.snap +392 -88
  330. package/src/open-api/ts-client/__snapshots__/generator.tags.spec.ts.snap +200 -48
  331. package/src/open-api/ts-client/files/client.gen.ts.template +358 -24
  332. package/src/open-api/ts-client/files/types.gen.ts.template +6 -4
  333. package/src/open-api/ts-client/generator.js +41 -26
  334. package/src/open-api/ts-client/generator.js.map +1 -1
  335. package/src/open-api/ts-client/schema.d.js +6 -0
  336. package/src/open-api/ts-client/schema.d.js.map +1 -0
  337. package/src/open-api/ts-hooks/files/options-proxy.gen.ts.template +7 -2
  338. package/src/open-api/ts-hooks/generator.js +17 -21
  339. package/src/open-api/ts-hooks/generator.js.map +1 -1
  340. package/src/open-api/ts-hooks/generator.spec.tsx +70 -0
  341. package/src/open-api/ts-hooks/schema.d.js +6 -0
  342. package/src/open-api/ts-hooks/schema.d.js.map +1 -0
  343. package/src/open-api/ts-metadata/generator.js +12 -20
  344. package/src/open-api/ts-metadata/generator.js.map +1 -1
  345. package/src/open-api/ts-metadata/schema.d.js +6 -0
  346. package/src/open-api/ts-metadata/schema.d.js.map +1 -0
  347. package/src/open-api/utils/codegen-data/languages.d.ts +0 -6
  348. package/src/open-api/utils/codegen-data/languages.js +59 -66
  349. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  350. package/src/open-api/utils/codegen-data/types.d.ts +255 -10
  351. package/src/open-api/utils/codegen-data/types.js +54 -30
  352. package/src/open-api/utils/codegen-data/types.js.map +1 -1
  353. package/src/open-api/utils/codegen-data.d.ts +2 -2
  354. package/src/open-api/utils/codegen-data.js +494 -674
  355. package/src/open-api/utils/codegen-data.js.map +1 -1
  356. package/src/open-api/utils/normalise.js +437 -246
  357. package/src/open-api/utils/normalise.js.map +1 -1
  358. package/src/open-api/utils/parse.js +8 -14
  359. package/src/open-api/utils/parse.js.map +1 -1
  360. package/src/open-api/utils/parser.d.ts +55 -0
  361. package/src/open-api/utils/parser.js +787 -0
  362. package/src/open-api/utils/parser.js.map +1 -0
  363. package/src/open-api/utils/refs.js +12 -22
  364. package/src/open-api/utils/refs.js.map +1 -1
  365. package/src/open-api/utils/types.d.ts +18 -0
  366. package/src/open-api/utils/types.js +5 -2
  367. package/src/open-api/utils/types.js.map +1 -1
  368. package/src/preset/__snapshots__/generator.spec.ts.snap +101 -20
  369. package/src/preset/generator.d.ts +14 -1
  370. package/src/preset/generator.js +76 -151
  371. package/src/preset/generator.js.map +1 -1
  372. package/src/preset/schema.d.js +6 -0
  373. package/src/preset/schema.d.js.map +1 -0
  374. package/src/preset/schema.d.ts +4 -1
  375. package/src/preset/schema.json +16 -5
  376. package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +326 -0
  377. package/src/py/agent/__snapshots__/generator.frameworks.spec.ts.snap +738 -0
  378. package/src/py/agent/__snapshots__/{generator.spec.ts.snap → generator.protocols.spec.ts.snap} +191 -315
  379. package/src/py/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +231 -0
  380. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client_strands.py.template +29 -0
  381. package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +29 -0
  382. package/src/py/agent/a2a-connection/generator.d.ts +24 -0
  383. package/src/py/agent/a2a-connection/generator.js +145 -88
  384. package/src/py/agent/a2a-connection/generator.js.map +1 -1
  385. package/src/py/agent/a2a-connection/schema.d.js +8 -0
  386. package/src/py/agent/a2a-connection/schema.d.js.map +1 -0
  387. package/src/py/agent/a2a-connection/schema.d.ts +1 -0
  388. package/src/py/agent/a2a-connection/schema.json +5 -0
  389. package/src/py/agent/files/deploy/Dockerfile.template +8 -1
  390. package/src/py/agent/files/langchain/a2a/main.py.template +94 -0
  391. package/src/py/agent/files/langchain/ag-ui/main.py.template +87 -0
  392. package/src/py/agent/files/langchain/common/agent.py.template +30 -0
  393. package/src/py/agent/files/{http → langchain/http}/init.py.template +17 -25
  394. package/src/py/agent/files/langchain/http/main.py.template +81 -0
  395. package/src/py/agent/files/{a2a → strands/a2a}/main.py.template +33 -15
  396. package/src/py/agent/files/strands/ag-ui/main.py.template +89 -0
  397. package/src/py/agent/files/{common → strands/common}/agent.py.template +2 -0
  398. package/src/py/agent/files/strands/http/init.py.template +97 -0
  399. package/src/py/agent/files/{http → strands/http}/main.py.template +4 -13
  400. package/src/py/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +184 -0
  401. package/src/py/agent/gateway-connection/files/agent-connection/app/__gatewaySnakeCase___client_strands.py.template +35 -0
  402. package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +34 -0
  403. package/src/py/agent/gateway-connection/generator.d.ts +33 -0
  404. package/src/py/agent/gateway-connection/generator.js +153 -0
  405. package/src/py/agent/gateway-connection/generator.js.map +1 -0
  406. package/src/py/agent/gateway-connection/schema.d.js +6 -0
  407. package/src/py/agent/gateway-connection/schema.d.js.map +1 -0
  408. package/src/py/agent/gateway-connection/schema.d.ts +13 -0
  409. package/src/py/agent/gateway-connection/schema.json +31 -0
  410. package/src/py/agent/generator.d.ts +154 -1
  411. package/src/py/agent/generator.js +396 -197
  412. package/src/py/agent/generator.js.map +1 -1
  413. package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +154 -89
  414. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client_strands.py.template +31 -0
  415. package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +31 -0
  416. package/src/py/agent/mcp-connection/generator.d.ts +23 -0
  417. package/src/py/agent/mcp-connection/generator.js +103 -130
  418. package/src/py/agent/mcp-connection/generator.js.map +1 -1
  419. package/src/py/agent/mcp-connection/schema.d.js +8 -0
  420. package/src/py/agent/mcp-connection/schema.d.js.map +1 -0
  421. package/src/py/agent/mcp-connection/schema.d.ts +1 -0
  422. package/src/py/agent/mcp-connection/schema.json +5 -0
  423. package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +17 -19
  424. package/src/py/agent/react-connection/generator.d.ts +150 -1
  425. package/src/py/agent/react-connection/generator.js +105 -65
  426. package/src/py/agent/react-connection/generator.js.map +1 -1
  427. package/src/py/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +4 -4
  428. package/src/py/agent/react-connection/local-dev.js +36 -0
  429. package/src/py/agent/react-connection/local-dev.js.map +1 -0
  430. package/src/py/agent/react-connection/schema.d.js +8 -0
  431. package/src/py/agent/react-connection/schema.d.js.map +1 -0
  432. package/src/py/agent/react-connection/schema.d.ts +1 -0
  433. package/src/py/agent/react-connection/schema.json +5 -0
  434. package/src/py/agent/schema.d.js +6 -0
  435. package/src/py/agent/schema.d.js.map +1 -0
  436. package/src/py/agent/schema.d.ts +5 -1
  437. package/src/py/agent/schema.json +15 -1
  438. package/src/py/api/generator.js +12 -11
  439. package/src/py/api/generator.js.map +1 -1
  440. package/src/py/api/schema.d.js +6 -0
  441. package/src/py/api/schema.d.js.map +1 -0
  442. package/src/py/api/schema.d.ts +1 -0
  443. package/src/py/api/schema.json +5 -0
  444. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +1520 -0
  445. package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +63 -0
  446. package/src/py/dynamodb/agent-connection/generator.d.ts +10 -0
  447. package/src/py/dynamodb/agent-connection/generator.js +45 -0
  448. package/src/py/dynamodb/agent-connection/generator.js.map +1 -0
  449. package/src/py/dynamodb/agent-connection/schema.d.js +8 -0
  450. package/src/py/dynamodb/agent-connection/schema.d.js.map +1 -0
  451. package/src/py/dynamodb/agent-connection/schema.d.ts +15 -0
  452. package/src/py/dynamodb/agent-connection/schema.json +27 -0
  453. package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +32 -0
  454. package/src/py/dynamodb/fast-api-connection/generator.d.ts +10 -0
  455. package/src/py/dynamodb/fast-api-connection/generator.js +39 -0
  456. package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -0
  457. package/src/py/dynamodb/fast-api-connection/schema.d.js +8 -0
  458. package/src/py/dynamodb/fast-api-connection/schema.d.js.map +1 -0
  459. package/src/py/dynamodb/fast-api-connection/schema.d.ts +13 -0
  460. package/src/py/dynamodb/fast-api-connection/schema.json +23 -0
  461. package/src/py/dynamodb/files/__name__/__init__.py.template +6 -0
  462. package/src/py/dynamodb/files/__name__/client.py.template +39 -0
  463. package/src/py/dynamodb/files/__name__/entities/__init__.py.template +4 -0
  464. package/src/py/dynamodb/files/__name__/entities/base.py.template +63 -0
  465. package/src/py/dynamodb/files/__name__/entities/example.py.template +64 -0
  466. package/src/py/dynamodb/files/config.json.template +24 -0
  467. package/src/py/dynamodb/generator.d.ts +39 -0
  468. package/src/py/dynamodb/generator.js +130 -0
  469. package/src/py/dynamodb/generator.js.map +1 -0
  470. package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +63 -0
  471. package/src/py/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  472. package/src/py/dynamodb/mcp-server-connection/generator.js +45 -0
  473. package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -0
  474. package/src/py/dynamodb/mcp-server-connection/schema.d.js +8 -0
  475. package/src/py/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  476. package/src/py/dynamodb/mcp-server-connection/schema.d.ts +15 -0
  477. package/src/py/dynamodb/mcp-server-connection/schema.json +27 -0
  478. package/src/py/dynamodb/schema.d.js +6 -0
  479. package/src/py/dynamodb/schema.d.js.map +1 -0
  480. package/src/py/dynamodb/schema.d.ts +16 -0
  481. package/src/py/dynamodb/schema.json +76 -0
  482. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +240 -4693
  483. package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +5409 -0
  484. package/src/py/fast-api/files/app/__name__/init.py.template +5 -22
  485. package/src/py/fast-api/files/app/__name__/main.py.template +4 -1
  486. package/src/py/fast-api/generator.d.ts +72 -0
  487. package/src/py/fast-api/generator.js +134 -95
  488. package/src/py/fast-api/generator.js.map +1 -1
  489. package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +4 -3
  490. package/src/py/fast-api/react/generator.d.ts +16 -1
  491. package/src/py/fast-api/react/generator.js +38 -26
  492. package/src/py/fast-api/react/generator.js.map +1 -1
  493. package/src/py/fast-api/react/open-api.js +31 -29
  494. package/src/py/fast-api/react/open-api.js.map +1 -1
  495. package/src/py/fast-api/react/schema.d.js +6 -0
  496. package/src/py/fast-api/react/schema.d.js.map +1 -0
  497. package/src/py/fast-api/react/schema.d.ts +1 -0
  498. package/src/py/fast-api/react/schema.json +5 -0
  499. package/src/py/fast-api/schema.d.js +6 -0
  500. package/src/py/fast-api/schema.d.js.map +1 -0
  501. package/src/py/fast-api/schema.d.ts +1 -0
  502. package/src/py/fast-api/schema.json +6 -0
  503. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
  504. package/src/py/lambda-function/generator.d.ts +21 -0
  505. package/src/py/lambda-function/generator.js +82 -62
  506. package/src/py/lambda-function/generator.js.map +1 -1
  507. package/src/py/lambda-function/schema.d.js +6 -0
  508. package/src/py/lambda-function/schema.d.js.map +1 -0
  509. package/src/py/lambda-function/schema.d.ts +1 -0
  510. package/src/py/lambda-function/schema.json +5 -0
  511. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +221 -21
  512. package/src/py/mcp-server/files/deploy/Dockerfile.template +8 -1
  513. package/src/py/mcp-server/generator.d.ts +68 -0
  514. package/src/py/mcp-server/generator.js +204 -131
  515. package/src/py/mcp-server/generator.js.map +1 -1
  516. package/src/py/mcp-server/schema.d.js +6 -0
  517. package/src/py/mcp-server/schema.d.js.map +1 -0
  518. package/src/py/mcp-server/schema.d.ts +1 -0
  519. package/src/py/mcp-server/schema.json +6 -0
  520. package/src/py/project/generator.d.ts +27 -1
  521. package/src/py/project/generator.js +248 -130
  522. package/src/py/project/generator.js.map +1 -1
  523. package/src/py/project/schema.d.js +6 -0
  524. package/src/py/project/schema.d.js.map +1 -0
  525. package/src/py/project/schema.d.ts +1 -0
  526. package/src/py/project/schema.json +5 -0
  527. package/src/py/rdb/__snapshots__/generator.spec.ts.snap +2070 -0
  528. package/src/py/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +123 -0
  529. package/src/py/rdb/agent-connection/generator.d.ts +10 -0
  530. package/src/py/rdb/agent-connection/generator.js +52 -0
  531. package/src/py/rdb/agent-connection/generator.js.map +1 -0
  532. package/src/py/rdb/agent-connection/schema.d.js +8 -0
  533. package/src/py/rdb/agent-connection/schema.d.js.map +1 -0
  534. package/src/py/rdb/agent-connection/schema.d.ts +15 -0
  535. package/src/py/rdb/agent-connection/schema.json +27 -0
  536. package/src/py/rdb/fast-api-connection/__snapshots__/generator.spec.ts.snap +51 -0
  537. package/src/py/rdb/fast-api-connection/files/__apiModuleName__/dependencies/__rdbNameSnake__.py.template +14 -0
  538. package/src/py/rdb/fast-api-connection/generator.d.ts +10 -0
  539. package/src/py/rdb/fast-api-connection/generator.js +56 -0
  540. package/src/py/rdb/fast-api-connection/generator.js.map +1 -0
  541. package/src/py/rdb/fast-api-connection/schema.d.js +8 -0
  542. package/src/py/rdb/fast-api-connection/schema.d.js.map +1 -0
  543. package/src/py/rdb/fast-api-connection/schema.d.ts +13 -0
  544. package/src/py/rdb/fast-api-connection/schema.json +23 -0
  545. package/src/py/rdb/files/Dockerfile.create-db-user.template +14 -0
  546. package/src/py/rdb/files/Dockerfile.migration.template +14 -0
  547. package/src/py/rdb/files/__name__/__init__.py.template +3 -0
  548. package/src/py/rdb/files/__name__/connection.py.template +55 -0
  549. package/src/py/rdb/files/__name__/create_db_user_handler.py.template +97 -0
  550. package/src/py/rdb/files/__name__/migration_handler.py.template +36 -0
  551. package/src/py/rdb/files/__name__/models/__init__.py.template +3 -0
  552. package/src/py/rdb/files/__name__/models/example.py.template +8 -0
  553. package/src/py/rdb/files/__name__/utils.py.template +104 -0
  554. package/src/py/rdb/files/alembic.ini.template +38 -0
  555. package/src/py/rdb/files/config.json.template +14 -0
  556. package/src/py/rdb/files/migrations/env.py.template +80 -0
  557. package/src/py/rdb/files/migrations/script.py.mako.template +28 -0
  558. package/src/py/rdb/generator.d.ts +103 -0
  559. package/src/py/rdb/generator.js +328 -0
  560. package/src/py/rdb/generator.js.map +1 -0
  561. package/src/py/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +119 -0
  562. package/src/py/rdb/mcp-server-connection/generator.d.ts +10 -0
  563. package/src/py/rdb/mcp-server-connection/generator.js +52 -0
  564. package/src/py/rdb/mcp-server-connection/generator.js.map +1 -0
  565. package/src/py/rdb/mcp-server-connection/schema.d.js +8 -0
  566. package/src/py/rdb/mcp-server-connection/schema.d.js.map +1 -0
  567. package/src/py/rdb/mcp-server-connection/schema.d.ts +15 -0
  568. package/src/py/rdb/mcp-server-connection/schema.json +27 -0
  569. package/src/py/rdb/schema.d.js +6 -0
  570. package/src/py/rdb/schema.d.js.map +1 -0
  571. package/src/py/rdb/schema.d.ts +16 -0
  572. package/src/py/rdb/schema.json +78 -0
  573. package/src/py/rdb/utils.d.ts +6 -0
  574. package/src/py/rdb/utils.js +16 -0
  575. package/src/py/rdb/utils.js.map +1 -0
  576. package/src/sdk/agentcore-gateway.d.ts +6 -0
  577. package/src/sdk/agentcore-gateway.js +7 -0
  578. package/src/sdk/agentcore-gateway.js.map +1 -0
  579. package/src/sdk/connection.d.ts +6 -0
  580. package/src/sdk/connection.js +6 -0
  581. package/src/sdk/connection.js.map +1 -0
  582. package/src/sdk/license.d.ts +8 -0
  583. package/src/sdk/license.js +7 -0
  584. package/src/sdk/license.js.map +1 -0
  585. package/src/sdk/open-api.d.ts +10 -0
  586. package/src/sdk/open-api.js +8 -0
  587. package/src/sdk/open-api.js.map +1 -0
  588. package/src/sdk/py.d.ts +18 -0
  589. package/src/sdk/py.js +12 -0
  590. package/src/sdk/py.js.map +1 -0
  591. package/src/sdk/terraform.d.ts +6 -0
  592. package/src/sdk/terraform.js +7 -0
  593. package/src/sdk/terraform.js.map +1 -0
  594. package/src/sdk/ts.d.ts +39 -0
  595. package/src/sdk/ts.js +41 -0
  596. package/src/sdk/ts.js.map +1 -0
  597. package/{sdk/utils/format.d.ts → src/sdk/utils/ast.d.ts} +1 -1
  598. package/src/sdk/utils/ast.js +6 -0
  599. package/src/sdk/utils/ast.js.map +1 -0
  600. package/{sdk/utils/ast.d.ts → src/sdk/utils/format.d.ts} +1 -2
  601. package/src/sdk/utils/format.js +6 -0
  602. package/src/sdk/utils/format.js.map +1 -0
  603. package/{sdk → src/sdk}/utils/test.d.ts +1 -1
  604. package/src/sdk/utils/test.js +6 -0
  605. package/src/sdk/utils/test.js.map +1 -0
  606. package/src/smithy/project/__snapshots__/generator.spec.ts.snap +245 -242
  607. package/src/smithy/project/files/{smithy-build.json.template → service/smithy-build.json.template} +5 -5
  608. package/src/smithy/project/files/{src → service/src}/operations/echo.smithy.template +1 -0
  609. package/src/smithy/project/files/shapes/smithy-build.json.template +7 -0
  610. package/src/smithy/project/files/shapes/src/main.smithy.template +11 -0
  611. package/src/smithy/project/files/ssdk-bundle/ssdk.rolldown.config.mjs.template +52 -0
  612. package/src/smithy/project/generator.d.ts +90 -0
  613. package/src/smithy/project/generator.js +223 -56
  614. package/src/smithy/project/generator.js.map +1 -1
  615. package/src/smithy/project/schema.d.js +6 -0
  616. package/src/smithy/project/schema.d.js.map +1 -0
  617. package/src/smithy/project/schema.d.ts +2 -0
  618. package/src/smithy/project/schema.json +28 -1
  619. package/src/smithy/react-connection/__snapshots__/generator.spec.ts.snap +1 -1
  620. package/src/smithy/react-connection/generator.d.ts +15 -0
  621. package/src/smithy/react-connection/generator.js +54 -48
  622. package/src/smithy/react-connection/generator.js.map +1 -1
  623. package/src/smithy/react-connection/schema.d.js +6 -0
  624. package/src/smithy/react-connection/schema.d.js.map +1 -0
  625. package/src/smithy/react-connection/schema.d.ts +1 -0
  626. package/src/smithy/react-connection/schema.json +5 -0
  627. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +871 -109
  628. package/src/smithy/ts/api/files/handler.ts.template +3 -3
  629. package/src/smithy/ts/api/files/local-server.ts.template +3 -3
  630. package/src/smithy/ts/api/files/operations/echo.ts.template +2 -2
  631. package/src/smithy/ts/api/files/service.ts.template +3 -3
  632. package/src/smithy/ts/api/generator.d.ts +88 -0
  633. package/src/smithy/ts/api/generator.js +187 -114
  634. package/src/smithy/ts/api/generator.js.map +1 -1
  635. package/src/smithy/ts/api/schema.d.js +6 -0
  636. package/src/smithy/ts/api/schema.d.js.map +1 -0
  637. package/src/smithy/ts/api/schema.d.ts +1 -0
  638. package/src/smithy/ts/api/schema.json +6 -0
  639. package/src/terraform/project/files/application/scripts/bootstrap.ts.template +40 -1
  640. package/src/terraform/project/files/application/src/main.tf.template +6 -1
  641. package/src/terraform/project/files/application/src/providers.tf.template +1 -1
  642. package/src/terraform/project/generator.d.ts +50 -0
  643. package/src/terraform/project/generator.js +212 -111
  644. package/src/terraform/project/generator.js.map +1 -1
  645. package/src/terraform/project/schema.d.js +9 -0
  646. package/src/terraform/project/schema.d.js.map +1 -0
  647. package/src/terraform/project/schema.d.ts +1 -0
  648. package/src/terraform/project/schema.json +5 -0
  649. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +1182 -184
  650. package/src/trpc/backend/files/src/client/index.ts.template +1 -1
  651. package/src/trpc/backend/files/src/handler.ts.template +1 -1
  652. package/src/trpc/backend/files/src/index.ts.template +5 -5
  653. package/src/trpc/backend/files/src/init.ts.template +1 -1
  654. package/src/trpc/backend/files/src/local-server.ts.template +1 -1
  655. package/src/trpc/backend/files/src/middleware/index.ts.template +7 -7
  656. package/src/trpc/backend/files/src/procedures/echo.ts.template +3 -3
  657. package/src/trpc/backend/files/src/router.ts.template +2 -2
  658. package/src/trpc/backend/files/src/schema/echo.ts.template +2 -2
  659. package/src/trpc/backend/files/src/schema/index.ts.template +1 -1
  660. package/src/trpc/backend/generator.d.ts +90 -1
  661. package/src/trpc/backend/generator.js +177 -100
  662. package/src/trpc/backend/generator.js.map +1 -1
  663. package/src/trpc/backend/schema.d.js +6 -0
  664. package/src/trpc/backend/schema.d.js.map +1 -0
  665. package/src/trpc/backend/schema.d.ts +1 -0
  666. package/src/trpc/backend/schema.json +6 -0
  667. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +4 -4
  668. package/src/trpc/react/files/src/components/__apiNameClassName__ClientProvider.tsx.template +3 -3
  669. package/src/trpc/react/generator.d.ts +38 -1
  670. package/src/trpc/react/generator.js +105 -63
  671. package/src/trpc/react/generator.js.map +1 -1
  672. package/src/trpc/react/schema.d.js +6 -0
  673. package/src/trpc/react/schema.d.js.map +1 -0
  674. package/src/trpc/react/schema.d.ts +1 -0
  675. package/src/trpc/react/schema.json +5 -0
  676. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +1452 -25
  677. package/src/ts/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +258 -0
  678. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +23 -0
  679. package/src/ts/agent/a2a-connection/generator.d.ts +46 -0
  680. package/src/ts/agent/a2a-connection/generator.js +110 -63
  681. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  682. package/src/ts/agent/a2a-connection/schema.d.js +8 -0
  683. package/src/ts/agent/a2a-connection/schema.d.js.map +1 -0
  684. package/src/ts/agent/a2a-connection/schema.d.ts +1 -0
  685. package/src/ts/agent/a2a-connection/schema.json +5 -0
  686. package/src/ts/agent/files/a2a/index.ts.template +1 -1
  687. package/src/ts/agent/files/ag-ui/index.ts.template +36 -11
  688. package/src/ts/agent/files/common/agent.ts.template +15 -2
  689. package/src/ts/agent/files/common/session.ts.template +43 -0
  690. package/src/ts/agent/files/deploy/Dockerfile.template +13 -2
  691. package/src/ts/agent/files/http/client.ts.template +2 -2
  692. package/src/ts/agent/files/http/index.ts.template +2 -2
  693. package/src/ts/agent/files/http/router.ts.template +5 -5
  694. package/src/ts/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +222 -0
  695. package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +30 -0
  696. package/src/ts/agent/gateway-connection/generator.d.ts +47 -0
  697. package/src/ts/agent/gateway-connection/generator.js +144 -0
  698. package/src/ts/agent/gateway-connection/generator.js.map +1 -0
  699. package/src/ts/agent/gateway-connection/schema.d.js +6 -0
  700. package/src/ts/agent/gateway-connection/schema.d.js.map +1 -0
  701. package/src/ts/agent/gateway-connection/schema.d.ts +13 -0
  702. package/src/ts/agent/gateway-connection/schema.json +31 -0
  703. package/src/ts/agent/generator.d.ts +205 -0
  704. package/src/ts/agent/generator.js +339 -156
  705. package/src/ts/agent/generator.js.map +1 -1
  706. package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +194 -113
  707. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +23 -0
  708. package/src/ts/agent/mcp-connection/generator.d.ts +37 -0
  709. package/src/ts/agent/mcp-connection/generator.js +88 -65
  710. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  711. package/src/ts/agent/mcp-connection/schema.d.js +8 -0
  712. package/src/ts/agent/mcp-connection/schema.d.js.map +1 -0
  713. package/src/ts/agent/mcp-connection/schema.d.ts +1 -0
  714. package/src/ts/agent/mcp-connection/schema.json +5 -0
  715. package/src/ts/agent/react-connection/__snapshots__/generator.spec.ts.snap +8 -4
  716. package/src/ts/agent/react-connection/files/src/components/__agentNameClassName__AgentClientProvider.tsx.template +2 -1
  717. package/src/ts/agent/react-connection/generator.d.ts +202 -1
  718. package/src/ts/agent/react-connection/generator.js +158 -99
  719. package/src/ts/agent/react-connection/generator.js.map +1 -1
  720. package/src/ts/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +2 -2
  721. package/src/ts/agent/react-connection/local-dev.js +17 -0
  722. package/src/ts/agent/react-connection/local-dev.js.map +1 -0
  723. package/src/ts/agent/react-connection/schema.d.js +8 -0
  724. package/src/ts/agent/react-connection/schema.d.js.map +1 -0
  725. package/src/ts/agent/react-connection/schema.d.ts +1 -0
  726. package/src/ts/agent/react-connection/schema.json +5 -0
  727. package/src/ts/agent/schema.d.js +6 -0
  728. package/src/ts/agent/schema.d.js.map +1 -0
  729. package/src/ts/agent/schema.d.ts +4 -0
  730. package/src/ts/agent/schema.json +14 -0
  731. package/src/ts/api/generator.js +16 -16
  732. package/src/ts/api/generator.js.map +1 -1
  733. package/src/ts/api/schema.d.js +6 -0
  734. package/src/ts/api/schema.d.js.map +1 -0
  735. package/src/ts/api/schema.d.ts +1 -0
  736. package/src/ts/api/schema.json +5 -0
  737. package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +28 -14
  738. package/src/ts/astro-docs/files/base/src/content/docs/en/index.mdx.template +2 -2
  739. package/src/ts/astro-docs/files/base/src/content.config.ts.template +4 -4
  740. package/src/ts/astro-docs/files/translation/scripts/translate.ts.template +272 -150
  741. package/src/ts/astro-docs/generator.d.ts +38 -0
  742. package/src/ts/astro-docs/generator.js +126 -61
  743. package/src/ts/astro-docs/generator.js.map +1 -1
  744. package/src/ts/astro-docs/schema.d.js +6 -0
  745. package/src/ts/astro-docs/schema.d.js.map +1 -0
  746. package/src/ts/astro-docs/schema.d.ts +2 -2
  747. package/src/ts/astro-docs/schema.json +3 -3
  748. package/src/ts/dcr-proxy/__snapshots__/generator.spec.ts.snap +982 -0
  749. package/src/ts/dcr-proxy/generator.d.ts +34 -0
  750. package/src/ts/dcr-proxy/generator.js +115 -0
  751. package/src/ts/dcr-proxy/generator.js.map +1 -0
  752. package/src/ts/dcr-proxy/schema.d.js +6 -0
  753. package/src/ts/dcr-proxy/schema.d.js.map +1 -0
  754. package/src/ts/dcr-proxy/schema.d.ts +13 -0
  755. package/src/ts/dcr-proxy/schema.json +44 -0
  756. package/src/ts/docs/generator.js +10 -10
  757. package/src/ts/docs/generator.js.map +1 -1
  758. package/src/ts/docs/schema.d.js +6 -0
  759. package/src/ts/docs/schema.d.js.map +1 -0
  760. package/src/ts/docs/schema.d.ts +1 -4
  761. package/src/ts/docs/schema.json +3 -3
  762. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +400 -518
  763. package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +23 -5
  764. package/src/ts/dynamodb/agent-connection/generator.js +27 -23
  765. package/src/ts/dynamodb/agent-connection/generator.js.map +1 -1
  766. package/src/ts/dynamodb/agent-connection/schema.d.js +8 -0
  767. package/src/ts/dynamodb/agent-connection/schema.d.js.map +1 -0
  768. package/src/ts/dynamodb/agent-connection/schema.d.ts +1 -0
  769. package/src/ts/dynamodb/agent-connection/schema.json +5 -0
  770. package/src/ts/dynamodb/files/config.json.template +24 -0
  771. package/src/ts/dynamodb/files/src/client.ts.template +30 -11
  772. package/src/ts/dynamodb/files/src/entities/example.ts.template +1 -1
  773. package/src/ts/dynamodb/files/src/entities/index.ts.template +1 -1
  774. package/src/ts/dynamodb/files/src/index.ts.template +2 -11
  775. package/src/ts/dynamodb/generator.d.ts +41 -0
  776. package/src/ts/dynamodb/generator.js +106 -64
  777. package/src/ts/dynamodb/generator.js.map +1 -1
  778. package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +23 -5
  779. package/src/ts/dynamodb/mcp-server-connection/generator.js +27 -23
  780. package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -1
  781. package/src/ts/dynamodb/mcp-server-connection/schema.d.js +8 -0
  782. package/src/ts/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  783. package/src/ts/dynamodb/mcp-server-connection/schema.d.ts +1 -0
  784. package/src/ts/dynamodb/mcp-server-connection/schema.json +5 -0
  785. package/src/ts/dynamodb/schema.d.js +6 -0
  786. package/src/ts/dynamodb/schema.d.js.map +1 -0
  787. package/src/ts/dynamodb/schema.d.ts +2 -0
  788. package/src/ts/dynamodb/schema.json +26 -2
  789. package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +12 -3
  790. package/src/ts/dynamodb/smithy-connection/generator.js +22 -22
  791. package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -1
  792. package/src/ts/dynamodb/smithy-connection/schema.d.js +8 -0
  793. package/src/ts/dynamodb/smithy-connection/schema.d.js.map +1 -0
  794. package/src/ts/dynamodb/smithy-connection/schema.d.ts +1 -0
  795. package/src/ts/dynamodb/smithy-connection/schema.json +5 -0
  796. package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +12 -3
  797. package/src/ts/dynamodb/trpc-connection/generator.js +22 -22
  798. package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -1
  799. package/src/ts/dynamodb/trpc-connection/schema.d.js +8 -0
  800. package/src/ts/dynamodb/trpc-connection/schema.d.js.map +1 -0
  801. package/src/ts/dynamodb/trpc-connection/schema.d.ts +1 -0
  802. package/src/ts/dynamodb/trpc-connection/schema.json +5 -0
  803. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +8 -6
  804. package/src/ts/lambda-function/files/handler/__lambdaFunctionKebabCase__.ts.template +2 -1
  805. package/src/ts/lambda-function/generator.d.ts +38 -0
  806. package/src/ts/lambda-function/generator.js +98 -65
  807. package/src/ts/lambda-function/generator.js.map +1 -1
  808. package/src/ts/lambda-function/io.js +83 -52
  809. package/src/ts/lambda-function/io.js.map +1 -1
  810. package/src/ts/lambda-function/schema.d.js +6 -0
  811. package/src/ts/lambda-function/schema.d.js.map +1 -0
  812. package/src/ts/lambda-function/schema.d.ts +1 -0
  813. package/src/ts/lambda-function/schema.json +5 -0
  814. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +83 -45
  815. package/src/ts/lib/__snapshots__/vitest.spec.ts.snap +1 -1
  816. package/src/ts/lib/biome.js +71 -35
  817. package/src/ts/lib/biome.js.map +1 -1
  818. package/src/ts/lib/generator.d.ts +7 -0
  819. package/src/ts/lib/generator.js +115 -103
  820. package/src/ts/lib/generator.js.map +1 -1
  821. package/src/ts/lib/grit/vitest-pass-with-no-tests.grit +1 -4
  822. package/src/ts/lib/schema.d.js +6 -0
  823. package/src/ts/lib/schema.d.js.map +1 -0
  824. package/src/ts/lib/schema.d.ts +1 -1
  825. package/src/ts/lib/schema.json +5 -0
  826. package/src/ts/lib/ts-project-utils.d.ts +13 -1
  827. package/src/ts/lib/ts-project-utils.js +96 -71
  828. package/src/ts/lib/ts-project-utils.js.map +1 -1
  829. package/src/ts/lib/types.d.ts +6 -0
  830. package/src/ts/lib/types.js +5 -2
  831. package/src/ts/lib/types.js.map +1 -1
  832. package/src/ts/lib/vitest.d.ts +10 -1
  833. package/src/ts/lib/vitest.js +54 -26
  834. package/src/ts/lib/vitest.js.map +1 -1
  835. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +221 -44
  836. package/src/ts/mcp-server/files/Dockerfile.template +13 -2
  837. package/src/ts/mcp-server/generator.d.ts +110 -0
  838. package/src/ts/mcp-server/generator.js +231 -148
  839. package/src/ts/mcp-server/generator.js.map +1 -1
  840. package/src/ts/mcp-server/schema.d.js +6 -0
  841. package/src/ts/mcp-server/schema.d.js.map +1 -0
  842. package/src/ts/mcp-server/schema.d.ts +1 -0
  843. package/src/ts/mcp-server/schema.json +6 -0
  844. package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +28 -13
  845. package/src/ts/nx-generator/files/common/schema.d.ts.template +1 -0
  846. package/src/ts/nx-generator/files/common/schema.json.template +5 -0
  847. package/src/ts/nx-generator/files/local/generator.spec.ts.template +1 -1
  848. package/src/ts/nx-generator/files/local/generator.ts.template +3 -3
  849. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +6 -7
  850. package/src/ts/nx-generator/generator.d.ts +3 -0
  851. package/src/ts/nx-generator/generator.js +124 -73
  852. package/src/ts/nx-generator/generator.js.map +1 -1
  853. package/src/ts/nx-generator/schema.d.js +6 -0
  854. package/src/ts/nx-generator/schema.d.js.map +1 -0
  855. package/src/ts/nx-generator/schema.d.ts +1 -0
  856. package/src/ts/nx-generator/schema.json +5 -0
  857. package/src/ts/nx-migration/files/migration.spec.ts.template +26 -0
  858. package/src/ts/nx-migration/files/migration.ts.template +65 -0
  859. package/src/ts/nx-migration/files/prompt.md.template +46 -0
  860. package/src/ts/nx-migration/generator.d.ts +27 -0
  861. package/src/ts/nx-migration/generator.js +147 -0
  862. package/src/ts/nx-migration/generator.js.map +1 -0
  863. package/src/ts/nx-migration/schema.d.js +6 -0
  864. package/src/ts/nx-migration/schema.d.js.map +1 -0
  865. package/src/ts/nx-migration/schema.d.ts +13 -0
  866. package/src/ts/nx-migration/schema.json +63 -0
  867. package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +36 -25
  868. package/src/ts/nx-plugin/files/mcp-server/resources/GENERAL_GUIDANCE.md.template +5 -6
  869. package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
  870. package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
  871. package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
  872. package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
  873. package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
  874. package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +4 -4
  875. package/src/ts/nx-plugin/generator.d.ts +3 -0
  876. package/src/ts/nx-plugin/generator.js +67 -50
  877. package/src/ts/nx-plugin/generator.js.map +1 -1
  878. package/src/ts/nx-plugin/schema.d.js +9 -0
  879. package/src/ts/nx-plugin/schema.d.js.map +1 -0
  880. package/src/ts/nx-plugin/schema.json +5 -0
  881. package/src/ts/nx-plugin/utils.d.ts +27 -2
  882. package/src/ts/nx-plugin/utils.js +66 -51
  883. package/src/ts/nx-plugin/utils.js.map +1 -1
  884. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +553 -644
  885. package/src/ts/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +16 -6
  886. package/src/ts/rdb/agent-connection/generator.js +44 -39
  887. package/src/ts/rdb/agent-connection/generator.js.map +1 -1
  888. package/src/ts/rdb/agent-connection/schema.d.js +8 -0
  889. package/src/ts/rdb/agent-connection/schema.d.js.map +1 -0
  890. package/src/ts/rdb/agent-connection/schema.d.ts +1 -0
  891. package/src/ts/rdb/agent-connection/schema.json +5 -0
  892. package/src/ts/rdb/files/Dockerfile.template +19 -1
  893. package/src/ts/rdb/files/config.json.template +14 -0
  894. package/src/ts/rdb/files/prisma.config.ts.template +6 -5
  895. package/src/ts/rdb/files/src/create-db-user-handler.ts.template +9 -11
  896. package/src/ts/rdb/files/src/index.ts.template +1 -2
  897. package/src/ts/rdb/files/src/migration-handler.ts.template +5 -30
  898. package/src/ts/rdb/files/src/prisma.ts.template +33 -25
  899. package/src/ts/rdb/files/src/utils.ts.template +3 -0
  900. package/src/ts/rdb/generator.d.ts +117 -4
  901. package/src/ts/rdb/generator.js +257 -138
  902. package/src/ts/rdb/generator.js.map +1 -1
  903. package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +16 -6
  904. package/src/ts/rdb/mcp-server-connection/generator.js +42 -37
  905. package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
  906. package/src/ts/rdb/mcp-server-connection/schema.d.js +8 -0
  907. package/src/ts/rdb/mcp-server-connection/schema.d.js.map +1 -0
  908. package/src/ts/rdb/mcp-server-connection/schema.d.ts +1 -0
  909. package/src/ts/rdb/mcp-server-connection/schema.json +5 -0
  910. package/src/ts/rdb/schema.d.js +6 -0
  911. package/src/ts/rdb/schema.d.js.map +1 -0
  912. package/src/ts/rdb/schema.d.ts +1 -0
  913. package/src/ts/rdb/schema.json +7 -1
  914. package/src/ts/rdb/smithy-connection/__snapshots__/generator.spec.ts.snap +18 -9
  915. package/src/ts/rdb/smithy-connection/generator.js +48 -43
  916. package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
  917. package/src/ts/rdb/smithy-connection/schema.d.js +8 -0
  918. package/src/ts/rdb/smithy-connection/schema.d.js.map +1 -0
  919. package/src/ts/rdb/smithy-connection/schema.d.ts +1 -0
  920. package/src/ts/rdb/smithy-connection/schema.json +5 -0
  921. package/src/ts/rdb/trpc-connection/__snapshots__/generator.spec.ts.snap +12 -3
  922. package/src/ts/rdb/trpc-connection/generator.js +37 -31
  923. package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
  924. package/src/ts/rdb/trpc-connection/schema.d.js +8 -0
  925. package/src/ts/rdb/trpc-connection/schema.d.js.map +1 -0
  926. package/src/ts/rdb/trpc-connection/schema.d.ts +1 -0
  927. package/src/ts/rdb/trpc-connection/schema.json +5 -0
  928. package/src/ts/rdb/utils.js +9 -11
  929. package/src/ts/rdb/utils.js.map +1 -1
  930. package/src/ts/react-website/agui/files/common/src/hooks/useAgui__agentNameClassName__.tsx.template +17 -16
  931. package/src/ts/react-website/agui/generator.d.ts +97 -0
  932. package/src/ts/react-website/agui/generator.js +114 -67
  933. package/src/ts/react-website/agui/generator.js.map +1 -1
  934. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +1391 -644
  935. package/src/ts/react-website/app/files/app/common/README.md.template +1 -1
  936. package/src/ts/react-website/app/generator.d.ts +142 -2
  937. package/src/ts/react-website/app/generator.js +333 -209
  938. package/src/ts/react-website/app/generator.js.map +1 -1
  939. package/src/ts/react-website/app/schema.d.js +6 -0
  940. package/src/ts/react-website/app/schema.d.js.map +1 -0
  941. package/src/ts/react-website/app/schema.d.ts +1 -1
  942. package/src/ts/react-website/app/schema.json +12 -6
  943. package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +161 -26
  944. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +48 -12
  945. package/src/ts/react-website/cognito-auth/__snapshots__/generator.ux-provider.spec.ts.snap +0 -20
  946. package/src/ts/react-website/cognito-auth/files/app/components/CognitoAuth/index.tsx.template +2 -2
  947. package/src/ts/react-website/cognito-auth/generator.d.ts +25 -1
  948. package/src/ts/react-website/cognito-auth/generator.js +79 -64
  949. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  950. package/src/ts/react-website/cognito-auth/grit/cloudscape-auth-menu.grit +3 -1
  951. package/src/ts/react-website/cognito-auth/grit/none-auth-menu.grit +1 -0
  952. package/src/ts/react-website/cognito-auth/grit/shadcn-auth-menu.grit +3 -1
  953. package/src/ts/react-website/cognito-auth/grit/shadcn-state-declarations.grit +3 -1
  954. package/src/ts/react-website/cognito-auth/schema.d.js +6 -0
  955. package/src/ts/react-website/cognito-auth/schema.d.js.map +1 -0
  956. package/src/ts/react-website/cognito-auth/schema.d.ts +1 -0
  957. package/src/ts/react-website/cognito-auth/schema.json +5 -0
  958. package/src/ts/react-website/cognito-auth/utils.js +34 -32
  959. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  960. package/src/ts/react-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -2
  961. package/src/ts/react-website/runtime-config/files/app/components/RuntimeConfig/index.tsx.template +2 -2
  962. package/src/ts/react-website/runtime-config/generator.js +29 -31
  963. package/src/ts/react-website/runtime-config/generator.js.map +1 -1
  964. package/src/ts/react-website/runtime-config/schema.d.js +6 -0
  965. package/src/ts/react-website/runtime-config/schema.d.js.map +1 -0
  966. package/src/ts/react-website/runtime-config/schema.d.ts +1 -0
  967. package/src/ts/react-website/runtime-config/schema.json +5 -0
  968. package/src/ts/sync/generator.js +137 -60
  969. package/src/ts/sync/generator.js.map +1 -1
  970. package/src/ts/website/app/generator.js +10 -10
  971. package/src/ts/website/app/generator.js.map +1 -1
  972. package/src/ts/website/app/schema.d.js +6 -0
  973. package/src/ts/website/app/schema.d.js.map +1 -0
  974. package/src/ts/website/app/schema.d.ts +1 -1
  975. package/src/ts/website/app/schema.json +11 -6
  976. package/src/ts/website/auth/generator.d.ts +1 -1
  977. package/src/ts/website/auth/generator.js +11 -10
  978. package/src/ts/website/auth/generator.js.map +1 -1
  979. package/src/ts/website/auth/schema.d.js +6 -0
  980. package/src/ts/website/auth/schema.d.js.map +1 -0
  981. package/src/ts/website/auth/schema.d.ts +1 -0
  982. package/src/ts/website/auth/schema.json +5 -0
  983. package/src/utils/__snapshots__/shared-constructs.spec.ts.snap +21 -0
  984. package/src/utils/add-dependencies.d.ts +38 -0
  985. package/src/utils/add-dependencies.js +83 -0
  986. package/src/utils/add-dependencies.js.map +1 -0
  987. package/src/utils/agent-chat/agent-chat.d.ts +31 -0
  988. package/src/utils/agent-chat/agent-chat.js +31 -0
  989. package/src/utils/agent-chat/agent-chat.js.map +1 -0
  990. package/src/utils/agent-chat/files/a2a/chat.ts.template +33 -0
  991. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +17 -0
  992. package/src/utils/agent-chat/files/common/agentcore.ts.template +81 -0
  993. package/src/utils/agent-chat/files/http-py/chat.ts.template +43 -0
  994. package/src/utils/agent-chat/files/http-ts/chat.ts.template +54 -0
  995. package/src/utils/agent-connection/agent-connection.d.ts +139 -26
  996. package/src/utils/agent-connection/agent-connection.js +500 -103
  997. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  998. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client-config.ts.template +93 -0
  999. package/src/utils/agent-connection/files/core-auth/agentcore-endpoints.ts.template +37 -0
  1000. package/src/utils/agent-connection/files/core-auth/agentcore-fetch.ts.template +54 -0
  1001. package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +41 -0
  1002. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-transport.ts.template +70 -0
  1003. package/src/utils/agent-connection/files/core-runtime-config/runtime-config.ts.template +33 -33
  1004. package/src/utils/agent-connection/files/core-shared/agentcore-transport.ts.template +39 -0
  1005. package/src/utils/agent-connection/files/core-strands/a2a/agentcore-a2a-client-strands.ts.template +61 -0
  1006. package/src/utils/agent-connection/files/core-strands/base/model-errors-strands.ts.template +47 -0
  1007. package/src/utils/agent-connection/files/core-strands/base/tool-errors-strands.ts.template +29 -0
  1008. package/src/utils/agent-connection/files/{core-runtime-config/with-session-id.ts.template → core-strands/base/with-session-id-strands.ts.template} +1 -1
  1009. package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +26 -0
  1010. package/src/utils/agent-connection/files/core-strands/mcp/agentcore-mcp-client-strands.ts.template +27 -0
  1011. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client_config.py.template +43 -0
  1012. package/src/utils/agent-connection/files/py-core-auth/agentcore_endpoints.py.template +47 -0
  1013. package/src/utils/agent-connection/files/py-core-auth/auth/session.py.template +51 -0
  1014. package/src/utils/agent-connection/files/py-core-gateway/agentcore_gateway_mcp_transport.py.template +28 -0
  1015. package/src/utils/agent-connection/files/py-core-langchain/a2a/agentcore_a2a_client_langchain.py.template +105 -0
  1016. package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +57 -0
  1017. package/src/utils/agent-connection/files/py-core-langchain/mcp/agentcore_mcp_client_langchain.py.template +64 -0
  1018. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_transport.py.template +34 -0
  1019. package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +6 -18
  1020. package/src/utils/agent-connection/files/py-core-runtime-config/session_context.py.template +2 -2
  1021. package/src/utils/agent-connection/files/py-core-shared/agentcore_transport.py.template +40 -0
  1022. package/src/utils/agent-connection/files/py-core-strands/a2a/agentcore_a2a_client_strands.py.template +111 -0
  1023. package/src/utils/agent-connection/files/py-core-strands/base/model_errors_strands.py.template +40 -0
  1024. package/src/utils/agent-connection/files/{py-core-runtime-config/with_session_id.py.template → py-core-strands/base/with_session_id_strands.py.template} +2 -2
  1025. package/src/utils/agent-connection/files/py-core-strands/gateway/agentcore_gateway_mcp_client_strands.py.template +22 -0
  1026. package/src/utils/agent-connection/files/py-core-strands/mcp/agentcore_mcp_client_strands.py.template +30 -0
  1027. package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +79 -0
  1028. package/src/utils/agent-core-constructs/agent-core-constructs.js +212 -38
  1029. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  1030. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +170 -6
  1031. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.ts.template +87 -0
  1032. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-harness/__nameKebabCase__/__nameKebabCase__.ts.template +366 -0
  1033. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/agentcore-gateway.ts.template +624 -0
  1034. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/readiness-probe/index.js.template +55 -0
  1035. package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +212 -1
  1036. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.tf.template +521 -0
  1037. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/render-cedar.cjs.template +13 -0
  1038. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-harness/__nameKebabCase__/__nameKebabCase__.tf.template +282 -0
  1039. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +159 -13
  1040. package/src/utils/agent-core-constructs/files/terraform/core/agentcore-gateway/gateway.tf.template +14 -0
  1041. package/src/utils/api-constructs/api-constructs.d.ts +30 -2
  1042. package/src/utils/api-constructs/api-constructs.js +82 -32
  1043. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  1044. package/src/utils/api-constructs/files/cdk/app/apis/http/__apiNameKebabCase__.ts.template +20 -15
  1045. package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +24 -16
  1046. package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +26 -9
  1047. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +70 -0
  1048. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +82 -0
  1049. package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +56 -17
  1050. package/src/utils/api-constructs/files/cdk/core/api/trpc/trpc-utils.ts.template +1 -1
  1051. package/src/utils/api-constructs/files/cdk/core/api/utils/utils.ts.template +61 -7
  1052. package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +101 -12
  1053. package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +194 -8
  1054. package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +1 -1
  1055. package/src/utils/api-constructs/files/terraform/core/api/rest/api-gateway-account/api-gateway-account.tf.template +83 -0
  1056. package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +5 -11
  1057. package/src/utils/api-constructs/open-api-metadata.js +22 -22
  1058. package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
  1059. package/src/utils/ast/website.js +18 -20
  1060. package/src/utils/ast/website.js.map +1 -1
  1061. package/src/utils/ast.d.ts +9 -0
  1062. package/src/utils/ast.js +125 -86
  1063. package/src/utils/ast.js.map +1 -1
  1064. package/src/utils/base-tsconfig.d.ts +30 -0
  1065. package/src/utils/base-tsconfig.js +32 -0
  1066. package/src/utils/base-tsconfig.js.map +1 -0
  1067. package/src/utils/bundle/bundle.d.ts +6 -1
  1068. package/src/utils/bundle/bundle.js +58 -48
  1069. package/src/utils/bundle/bundle.js.map +1 -1
  1070. package/src/utils/commands.d.ts +14 -3
  1071. package/src/utils/commands.js +83 -28
  1072. package/src/utils/commands.js.map +1 -1
  1073. package/src/utils/config/index.d.ts +18 -2
  1074. package/src/utils/config/index.js +5 -4
  1075. package/src/utils/config/index.js.map +1 -1
  1076. package/src/utils/config/utils.d.ts +8 -2
  1077. package/src/utils/config/utils.js +56 -59
  1078. package/src/utils/config/utils.js.map +1 -1
  1079. package/src/utils/connection/open-api/files/components/__apiNameClassName__Provider.tsx.template +16 -3
  1080. package/src/utils/connection/open-api/react.d.ts +31 -5
  1081. package/src/utils/connection/open-api/react.js +106 -76
  1082. package/src/utils/connection/open-api/react.js.map +1 -1
  1083. package/src/utils/containers.js +22 -23
  1084. package/src/utils/containers.js.map +1 -1
  1085. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.d.ts +38 -0
  1086. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js +93 -0
  1087. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js.map +1 -0
  1088. package/src/utils/dcr-proxy-constructs/files/cdk/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.ts.template +227 -0
  1089. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorization-server-metadata.ts.template +39 -0
  1090. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorize.ts.template +26 -0
  1091. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/mcp-proxy.ts.template +89 -0
  1092. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/protected-resource-metadata.ts.template +13 -0
  1093. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/register.ts.template +70 -0
  1094. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/token.ts.template +75 -0
  1095. package/src/utils/dcr-proxy-constructs/files/terraform/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.tf.template +410 -0
  1096. package/src/utils/declared-dependencies.d.ts +140 -0
  1097. package/src/utils/declared-dependencies.js +64 -0
  1098. package/src/utils/declared-dependencies.js.map +1 -0
  1099. package/src/utils/dependencies.d.ts +18 -0
  1100. package/src/utils/dependencies.js +206 -0
  1101. package/src/utils/dependencies.js.map +1 -0
  1102. package/src/utils/docker.d.ts +89 -0
  1103. package/src/utils/docker.js +125 -0
  1104. package/src/utils/docker.js.map +1 -0
  1105. package/src/utils/dynamodb-constructs/dynamodb-constructs.d.ts +1 -1
  1106. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +39 -41
  1107. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
  1108. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +18 -5
  1109. package/src/utils/dynamodb-constructs/files/cdk/core/dynamodb.ts.template +1 -1
  1110. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +24 -17
  1111. package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +1 -1
  1112. package/src/utils/files/common/constructs/src/core/cloudfront.ts.template +14 -0
  1113. package/src/utils/files/common/constructs/src/core/index.ts.template +5 -4
  1114. package/src/utils/files/common/constructs/src/index.ts.template +2 -2
  1115. package/src/utils/files/common/infra-config/src/index.ts.template +3 -3
  1116. package/src/utils/files/common/infra-config/src/resolve-stage.ts.template +2 -2
  1117. package/src/utils/files/common/infra-config/src/stages.config.ts.template +1 -1
  1118. package/src/{ts/dynamodb/files/scripts → utils/files/common/scripts/src/dynamodb}/create-local-table.ts.template +65 -31
  1119. package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +13 -0
  1120. package/src/utils/files/common/scripts/src/dynamodb/start-container.ts.template +103 -0
  1121. package/src/utils/files/common/scripts/src/infra/infra-deploy.ts.template +2 -0
  1122. package/src/utils/files/common/scripts/src/infra/infra-destroy.ts.template +2 -0
  1123. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/cdk-command.ts.template +6 -3
  1124. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/run.ts.template +3 -3
  1125. package/src/utils/files/common/scripts/src/rdb/mysql/wait-for-mysql-db.ts.template +32 -0
  1126. package/src/utils/files/common/scripts/src/rdb/postgres/wait-for-postgres-db.ts.template +32 -0
  1127. package/src/utils/files/common/scripts/src/rdb/shared/pull-image.ts.template +16 -0
  1128. package/src/utils/files/common/scripts/src/rdb/shared/start-container.ts.template +115 -0
  1129. package/src/utils/files/common/shadcn/readme/README.md.template +3 -3
  1130. package/src/utils/files/common/shadcn/src/index.ts.template +2 -2
  1131. package/src/utils/files/shadcn/components.json.template +1 -1
  1132. package/src/utils/files/terraform/src/core/asset-bucket/asset-bucket.tf.template +63 -72
  1133. package/src/utils/files/terraform/src/core/runtime-config/appconfig/appconfig.tf.template +1 -1
  1134. package/src/utils/files/terraform/src/core/runtime-config/appconfig-deployment/appconfig-deployment.tf.template +12 -6
  1135. package/src/utils/files/terraform/src/core/runtime-config/entry/entry.tf.template +1 -1
  1136. package/src/utils/files/terraform/src/core/runtime-config/read/read.tf.template +9 -4
  1137. package/src/utils/files/website/hooks/sigv4/useSigV4.tsx.template +1 -1
  1138. package/src/utils/format.d.ts +39 -4
  1139. package/src/utils/format.js +318 -198
  1140. package/src/utils/format.js.map +1 -1
  1141. package/src/utils/fs.d.ts +24 -5
  1142. package/src/utils/fs.js +40 -15
  1143. package/src/utils/fs.js.map +1 -1
  1144. package/src/utils/function-constructs/files/cdk/app/lambda-functions/__nameKebabCase__.ts.template +1 -1
  1145. package/src/utils/function-constructs/files/terraform/app/lambda-functions/__nameKebabCase__/__nameKebabCase__.tf.template +2 -2
  1146. package/src/utils/function-constructs/function-constructs.js +22 -25
  1147. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  1148. package/src/utils/generators.js +18 -20
  1149. package/src/utils/generators.js.map +1 -1
  1150. package/src/utils/git.js +19 -34
  1151. package/src/utils/git.js.map +1 -1
  1152. package/src/utils/iac-providers.js +5 -5
  1153. package/src/utils/iac-providers.js.map +1 -1
  1154. package/src/utils/iac.js +12 -14
  1155. package/src/utils/iac.js.map +1 -1
  1156. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +153 -24
  1157. package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +28 -9
  1158. package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +129 -12
  1159. package/src/utils/identity-constructs/files/terraform/core/user-identity/main.tf.template +7 -0
  1160. package/src/utils/identity-constructs/identity-constructs.d.ts +10 -0
  1161. package/src/utils/identity-constructs/identity-constructs.js +52 -31
  1162. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  1163. package/src/utils/init.d.ts +72 -0
  1164. package/src/utils/init.js +300 -0
  1165. package/src/utils/init.js.map +1 -0
  1166. package/src/utils/install.d.ts +32 -0
  1167. package/src/utils/install.js +58 -0
  1168. package/src/utils/install.js.map +1 -0
  1169. package/src/utils/js.js +27 -20
  1170. package/src/utils/js.js.map +1 -1
  1171. package/src/utils/mcp.d.ts +9 -0
  1172. package/src/utils/mcp.js +42 -41
  1173. package/src/utils/mcp.js.map +1 -1
  1174. package/src/utils/metrics.d.ts +7 -1
  1175. package/src/utils/metrics.js +61 -46
  1176. package/src/utils/metrics.js.map +1 -1
  1177. package/src/utils/migration-manifest.d.ts +58 -0
  1178. package/src/utils/migration-manifest.js +76 -0
  1179. package/src/utils/migration-manifest.js.map +1 -0
  1180. package/src/utils/migration-versions.d.ts +145 -0
  1181. package/src/utils/migration-versions.js +250 -0
  1182. package/src/utils/migration-versions.js.map +1 -0
  1183. package/src/utils/mock-project-graph.js +8 -12
  1184. package/src/utils/mock-project-graph.js.map +1 -1
  1185. package/src/utils/module-format.d.ts +25 -0
  1186. package/src/utils/module-format.js +45 -0
  1187. package/src/utils/module-format.js.map +1 -0
  1188. package/src/utils/names.d.ts +22 -0
  1189. package/src/utils/names.js +44 -48
  1190. package/src/utils/names.js.map +1 -1
  1191. package/src/utils/npm-scope.d.ts +0 -4
  1192. package/src/utils/npm-scope.js +7 -20
  1193. package/src/utils/npm-scope.js.map +1 -1
  1194. package/src/utils/nx.d.ts +74 -3
  1195. package/src/utils/nx.js +196 -75
  1196. package/src/utils/nx.js.map +1 -1
  1197. package/src/utils/nxlv-python.js +27 -15
  1198. package/src/utils/nxlv-python.js.map +1 -1
  1199. package/src/utils/object.js +5 -11
  1200. package/src/utils/object.js.map +1 -1
  1201. package/src/utils/paths.js +11 -15
  1202. package/src/utils/paths.js.map +1 -1
  1203. package/src/utils/pkg-manager.js +4 -9
  1204. package/src/utils/pkg-manager.js.map +1 -1
  1205. package/src/utils/pnpm-workspace.d.ts +1 -12
  1206. package/src/utils/pnpm-workspace.js +16 -43
  1207. package/src/utils/pnpm-workspace.js.map +1 -1
  1208. package/src/utils/port.d.ts +28 -6
  1209. package/src/utils/port.js +67 -28
  1210. package/src/utils/port.js.map +1 -1
  1211. package/src/utils/project-package-json.d.ts +39 -0
  1212. package/src/utils/project-package-json.js +119 -0
  1213. package/src/utils/project-package-json.js.map +1 -0
  1214. package/src/utils/py.d.ts +17 -3
  1215. package/src/utils/py.js +73 -48
  1216. package/src/utils/py.js.map +1 -1
  1217. package/src/utils/rdb-constructs/files/cdk/app/dbs/__nameKebabCase__.ts.template +72 -18
  1218. package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +112 -88
  1219. package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +127 -53
  1220. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +60 -53
  1221. package/src/utils/rdb-constructs/rdb-constructs.d.ts +12 -1
  1222. package/src/utils/rdb-constructs/rdb-constructs.js +38 -41
  1223. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  1224. package/src/utils/ruff.d.ts +59 -0
  1225. package/src/utils/ruff.js +140 -0
  1226. package/src/utils/ruff.js.map +1 -0
  1227. package/src/utils/shared-constructs-constants.d.ts +46 -4
  1228. package/src/utils/shared-constructs-constants.js +50 -15
  1229. package/src/utils/shared-constructs-constants.js.map +1 -1
  1230. package/src/utils/shared-constructs.d.ts +4 -1
  1231. package/src/utils/shared-constructs.js +62 -67
  1232. package/src/utils/shared-constructs.js.map +1 -1
  1233. package/src/utils/shared-dynamodb-scripts.d.ts +18 -0
  1234. package/src/utils/shared-dynamodb-scripts.js +35 -0
  1235. package/src/utils/shared-dynamodb-scripts.js.map +1 -0
  1236. package/src/utils/shared-infra-config.js +31 -30
  1237. package/src/utils/shared-infra-config.js.map +1 -1
  1238. package/src/utils/shared-infra-scripts.d.ts +26 -0
  1239. package/src/utils/shared-infra-scripts.js +58 -0
  1240. package/src/utils/shared-infra-scripts.js.map +1 -0
  1241. package/src/utils/shared-rdb-scripts.d.ts +27 -0
  1242. package/src/utils/shared-rdb-scripts.js +59 -0
  1243. package/src/utils/shared-rdb-scripts.js.map +1 -0
  1244. package/src/utils/shared-scripts.d.ts +1 -4
  1245. package/src/utils/shared-scripts.js +12 -38
  1246. package/src/utils/shared-scripts.js.map +1 -1
  1247. package/src/utils/shared-shadcn.d.ts +26 -1
  1248. package/src/utils/shared-shadcn.js +93 -67
  1249. package/src/utils/shared-shadcn.js.map +1 -1
  1250. package/src/utils/smithy.d.ts +59 -0
  1251. package/src/utils/smithy.js +73 -0
  1252. package/src/utils/smithy.js.map +1 -0
  1253. package/src/utils/test-git.d.ts +39 -0
  1254. package/src/utils/test-git.js +117 -0
  1255. package/src/utils/test-git.js.map +1 -0
  1256. package/src/utils/test.d.ts +10 -0
  1257. package/src/utils/test.js +44 -25
  1258. package/src/utils/test.js.map +1 -1
  1259. package/src/utils/toml.d.ts +5 -0
  1260. package/src/utils/toml.js +17 -15
  1261. package/src/utils/toml.js.map +1 -1
  1262. package/src/utils/version-upgrade-migration/migration.d.ts +14 -0
  1263. package/src/utils/version-upgrade-migration/migration.js +16 -0
  1264. package/src/utils/version-upgrade-migration/migration.js.map +1 -0
  1265. package/src/utils/version-upgrade-migration/nx-package-updates.d.ts +45 -0
  1266. package/src/utils/version-upgrade-migration/nx-package-updates.js +50 -0
  1267. package/src/utils/version-upgrade-migration/nx-package-updates.js.map +1 -0
  1268. package/src/utils/version-upgrade-migration/owned-dependencies.d.ts +76 -0
  1269. package/src/utils/version-upgrade-migration/owned-dependencies.js +146 -0
  1270. package/src/utils/version-upgrade-migration/owned-dependencies.js.map +1 -0
  1271. package/src/utils/version-upgrade-migration/register.d.ts +29 -0
  1272. package/src/utils/version-upgrade-migration/register.js +42 -0
  1273. package/src/utils/version-upgrade-migration/register.js.map +1 -0
  1274. package/src/utils/version-upgrade-migration/sync-embedded-versions.d.ts +26 -0
  1275. package/src/utils/version-upgrade-migration/sync-embedded-versions.js +352 -0
  1276. package/src/utils/version-upgrade-migration/sync-embedded-versions.js.map +1 -0
  1277. package/src/utils/version-upgrade-migration/sync-metrics-version.d.ts +13 -0
  1278. package/src/utils/version-upgrade-migration/sync-metrics-version.js +33 -0
  1279. package/src/utils/version-upgrade-migration/sync-metrics-version.js.map +1 -0
  1280. package/src/utils/version-upgrade-migration/sync-vended-versions.d.ts +10 -0
  1281. package/src/utils/version-upgrade-migration/sync-vended-versions.js +518 -0
  1282. package/src/utils/version-upgrade-migration/sync-vended-versions.js.map +1 -0
  1283. package/src/utils/version-upgrade-migration/vended-upgrade.d.ts +14 -0
  1284. package/src/utils/version-upgrade-migration/vended-upgrade.js +40 -0
  1285. package/src/utils/version-upgrade-migration/vended-upgrade.js.map +1 -0
  1286. package/src/utils/versions.d.ts +240 -108
  1287. package/src/utils/versions.js +265 -121
  1288. package/src/utils/versions.js.map +1 -1
  1289. package/src/utils/website-constructs/files/cdk/app/static-websites/__websiteNameKebabCase__.ts.template +2 -2
  1290. package/src/utils/website-constructs/files/cdk/core/static-website.ts.template +207 -41
  1291. package/src/utils/website-constructs/files/terraform/app/static-websites/__websiteNameKebabCase__/__websiteNameKebabCase__.tf.template +1 -1
  1292. package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +145 -93
  1293. package/src/utils/website-constructs/website-constructs.d.ts +11 -0
  1294. package/src/utils/website-constructs/website-constructs.js +49 -30
  1295. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  1296. package/bin/aws-nx-mcp.d.ts +0 -2
  1297. package/bin/aws-nx-mcp.js +0 -17
  1298. package/bin/aws-nx-mcp.js.map +0 -1
  1299. package/sdk/connection.d.ts +0 -6
  1300. package/sdk/connection.js +0 -10
  1301. package/sdk/connection.js.map +0 -1
  1302. package/sdk/license.d.ts +0 -8
  1303. package/sdk/license.js +0 -13
  1304. package/sdk/license.js.map +0 -1
  1305. package/sdk/open-api.d.ts +0 -10
  1306. package/sdk/open-api.js +0 -15
  1307. package/sdk/open-api.js.map +0 -1
  1308. package/sdk/py.d.ts +0 -14
  1309. package/sdk/py.js +0 -18
  1310. package/sdk/py.js.map +0 -1
  1311. package/sdk/terraform.d.ts +0 -6
  1312. package/sdk/terraform.js +0 -11
  1313. package/sdk/terraform.js.map +0 -1
  1314. package/sdk/ts.d.ts +0 -29
  1315. package/sdk/ts.js +0 -47
  1316. package/sdk/ts.js.map +0 -1
  1317. package/sdk/utils/ast.js +0 -12
  1318. package/sdk/utils/ast.js.map +0 -1
  1319. package/sdk/utils/format.js +0 -10
  1320. package/sdk/utils/format.js.map +0 -1
  1321. package/sdk/utils/test.js +0 -10
  1322. package/sdk/utils/test.js.map +0 -1
  1323. package/src/connection/agent-serve-local.d.ts +0 -33
  1324. package/src/connection/agent-serve-local.js +0 -48
  1325. package/src/connection/agent-serve-local.js.map +0 -1
  1326. package/src/connection/serve-local.js +0 -41
  1327. package/src/connection/serve-local.js.map +0 -1
  1328. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +0 -22
  1329. package/src/py/agent/files/ag-ui/main.py.template +0 -37
  1330. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +0 -22
  1331. package/src/py/agent/react-connection/serve-local.js +0 -30
  1332. package/src/py/agent/react-connection/serve-local.js.map +0 -1
  1333. package/src/py/agent/scripts/http/chat.ts.template +0 -38
  1334. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +0 -19
  1335. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +0 -19
  1336. package/src/ts/agent/react-connection/serve-local.js +0 -19
  1337. package/src/ts/agent/react-connection/serve-local.js.map +0 -1
  1338. package/src/ts/agent/scripts/http/chat.ts.template +0 -35
  1339. package/src/ts/dynamodb/files/scripts/pull-image.ts.template +0 -15
  1340. package/src/ts/dynamodb/files/scripts/start-container.ts.template +0 -81
  1341. package/src/ts/dynamodb/files/src/constants.ts.template +0 -9
  1342. package/src/ts/dynamodb/files/src/gsi.ts.template +0 -14
  1343. package/src/ts/rdb/files/scripts/pull-image.ts.template +0 -15
  1344. package/src/ts/rdb/files/scripts/start-container.ts.template +0 -84
  1345. package/src/ts/rdb/files/scripts/wait-for-db.ts.template +0 -55
  1346. package/src/ts/rdb/files/src/constants.ts.template +0 -8
  1347. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client.ts.template +0 -123
  1348. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-client.ts.template +0 -128
  1349. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client.py.template +0 -120
  1350. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_client.py.template +0 -89
  1351. package/src/utils/files/common/scripts/src/infra-deploy.ts.template +0 -2
  1352. package/src/utils/files/common/scripts/src/infra-destroy.ts.template +0 -2
  1353. package/src/utils/files/terraform/scripts/reset-runtime-config.ts.template +0 -25
  1354. /package/src/py/agent/files/{common → strands/common}/__init__.py.template +0 -0
  1355. /package/src/smithy/project/files/{src → service/src}/main.smithy.template +0 -0
  1356. /package/src/utils/files/common/scripts/src/{index.ts.template → infra/index.ts.template} +0 -0
  1357. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/credentials.ts.template +0 -0
  1358. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/stage-parser.ts.template +0 -0
@@ -0,0 +1,212 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { addProjectConfiguration, generateFiles, joinPathFragments, logger, OverwriteStrategy, updateProjectConfiguration } from "@nx/devkit";
5
+ import { addTsDependencies } from "../utils/add-dependencies.js";
6
+ import { AGENT_CORE_CONSTRUCTS_DEPENDENCIES, AGENT_CORE_CONSTRUCTS_PY_DEPENDENCIES, addAgentCoreGatewayInfra } from "../utils/agent-core-constructs/agent-core-constructs.js";
7
+ import { declareDependencies, ownedElsewhere } from "../utils/declared-dependencies.js";
8
+ import { formatFilesInSubtree } from "../utils/format.js";
9
+ import { resolveIac } from "../utils/iac.js";
10
+ import { installDependencies } from "../utils/install.js";
11
+ import { addGeneratorMetricsIfApplicable } from "../utils/metrics.js";
12
+ import { kebabCase, toClassName } from "../utils/names.js";
13
+ import { getNpmScopePrefix } from "../utils/npm-scope.js";
14
+ import { addGeneratorMetadata, getGeneratorInfo, projectExists, readProjectConfigurationUnqualified } from "../utils/nx.js";
15
+ import { assignPort } from "../utils/port.js";
16
+ import { ensureProjectPackageJson } from "../utils/project-package-json.js";
17
+ import { SHARED_CONSTRUCTS_DEPENDENCIES, sharedConstructsGenerator } from "../utils/shared-constructs.js";
18
+ // The gateway's local-dev server and Cedar policy rendering need these
19
+ // whatever the auth; only the MCP SDK is protocol-specific (the http local
20
+ // gateway is a plain proxy).
21
+ export const DEPENDENCIES = declareDependencies()({
22
+ ts: [
23
+ {
24
+ name: '@modelcontextprotocol/sdk',
25
+ when: (m)=>m.protocol === 'mcp'
26
+ },
27
+ {
28
+ name: 'express'
29
+ },
30
+ {
31
+ name: '@types/express',
32
+ dev: true
33
+ },
34
+ // ejs renders the Cedar policy in the shared gateway construct.
35
+ {
36
+ name: 'ejs',
37
+ dev: true
38
+ },
39
+ {
40
+ name: '@types/ejs',
41
+ dev: true
42
+ },
43
+ // local-dev.ts runs via tsx, which is shared tooling.
44
+ {
45
+ name: 'tsx',
46
+ dev: true,
47
+ root: true
48
+ },
49
+ ...ownedElsewhere(AGENT_CORE_CONSTRUCTS_DEPENDENCIES),
50
+ ...ownedElsewhere(SHARED_CONSTRUCTS_DEPENDENCIES)
51
+ ],
52
+ py: ownedElsewhere(AGENT_CORE_CONSTRUCTS_PY_DEPENDENCIES)
53
+ });
54
+ export const AGENTCORE_GATEWAY_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
55
+ export const agentcoreGatewayGenerator = async (tree, options)=>{
56
+ const name = kebabCase(options.name);
57
+ const nameClassName = toClassName(name);
58
+ const parentDir = options.directory ?? 'packages';
59
+ const subDir = options.subDirectory ?? name;
60
+ const projectRoot = joinPathFragments(parentDir, subDir);
61
+ const fullyQualifiedName = `${getNpmScopePrefix(tree)}${name}`;
62
+ // Protocol is mcp (aggregate MCP server targets into one MCP endpoint) or
63
+ // http (proxy agent runtime targets via path-based routing). Persisted in
64
+ // metadata so connection generators can validate it.
65
+ const protocol = options.protocol ?? 'mcp';
66
+ // Inbound auth is iam (default) or cognito. Persisted in metadata so
67
+ // connection generators can validate it (agent -> gateway connections
68
+ // require an IAM gateway).
69
+ const auth = options.auth ?? 'iam';
70
+ // Cedar policies authorize MCP tool actions, which an http gateway has none
71
+ // of — its runtime targets are plain proxied endpoints — so the policy
72
+ // engine only applies to mcp gateways. cedarPolicy defaults to true in the
73
+ // schema, so an http gateway quietly drops it rather than requiring
74
+ // --cedarPolicy=false.
75
+ if (protocol === 'http' && options.cedarPolicy) {
76
+ logger.warn('Cedar policies authorize MCP tool actions, so cedarPolicy is ignored for http-protocol gateways.');
77
+ }
78
+ const cedarPolicy = protocol === 'mcp' && (options.cedarPolicy ?? true);
79
+ const infra = options.infra ?? 'agentcore';
80
+ // local-dev.ts is the local gateway: a continuous MCP aggregator chaining
81
+ // onto attached MCP servers' dev targets (added by the mcp-connection
82
+ // generator), so a single `nx dev <gateway>` boots the gateway and every
83
+ // attached MCP server together.
84
+ //
85
+ // `serve` exists for parity with other generators; the deployed Gateway is
86
+ // a managed AWS resource, so `serve`-mode agents talk to it via runtime
87
+ // config and the local gateway sits idle.
88
+ const localGatewayTarget = (port)=>({
89
+ executor: 'nx:run-commands',
90
+ continuous: true,
91
+ options: {
92
+ command: 'tsx local-dev.ts',
93
+ cwd: '{projectRoot}',
94
+ env: {
95
+ PORT: `${port}`
96
+ }
97
+ },
98
+ dependsOn: []
99
+ });
100
+ let project;
101
+ if (projectExists(tree, fullyQualifiedName)) {
102
+ project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);
103
+ } else {
104
+ addProjectConfiguration(tree, fullyQualifiedName, {
105
+ name: fullyQualifiedName,
106
+ root: projectRoot,
107
+ projectType: 'library',
108
+ sourceRoot: projectRoot,
109
+ tags: [],
110
+ targets: {},
111
+ metadata: {
112
+ generator: AGENTCORE_GATEWAY_GENERATOR_INFO.id
113
+ }
114
+ });
115
+ project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);
116
+ }
117
+ // Ensure the project has its own package.json so its runtime dependencies
118
+ // (added below) are declared in it rather than the workspace root.
119
+ ensureProjectPackageJson(tree, {
120
+ dir: projectRoot,
121
+ fullyQualifiedName
122
+ });
123
+ const port = assignPort(tree, project, 8100);
124
+ // A gateway is its own standalone project, so it uses plain `serve` / `dev`
125
+ // targets. Re-run: keep existing targets (their dependsOn may have been
126
+ // populated by the mcp-connection generator), just ensure both exist.
127
+ project.targets ??= {};
128
+ project.targets['serve'] ??= localGatewayTarget(port);
129
+ project.targets['dev'] ??= localGatewayTarget(port);
130
+ updateProjectConfiguration(tree, project.name, project);
131
+ // Scaffold the gateway project: local-dev.ts (+ Cedar policies if requested)
132
+ generateFiles(tree, joinPathFragments(import.meta.dirname, 'files', 'project', protocol), projectRoot, {
133
+ nameClassName,
134
+ nameKebabCase: name,
135
+ port,
136
+ attachedMcpServers: [],
137
+ attachedAgents: []
138
+ }, {
139
+ overwriteStrategy: OverwriteStrategy.KeepExisting
140
+ });
141
+ if (cedarPolicy) {
142
+ // The default permit-all policy differs by auth type: AgentCore represents
143
+ // IAM callers as `AgentCore::IamEntity` and Cognito/JWT callers as
144
+ // `AgentCore::OAuthUser`, so the two policies match different principals.
145
+ generateFiles(tree, joinPathFragments(import.meta.dirname, 'files', 'cedar'), projectRoot, {
146
+ nameClassName,
147
+ auth
148
+ }, {
149
+ overwriteStrategy: OverwriteStrategy.KeepExisting
150
+ });
151
+ }
152
+ // Recorded in the metadata below so the version sync can tell a CDK
153
+ // project from a Terraform one; undefined when no infrastructure was
154
+ // generated, in which case neither provider's packages were added.
155
+ const iac = infra !== 'none' ? await resolveIac(tree, options.iac) : undefined;
156
+ // Recorded below and read by the declaration's predicates, so the packages
157
+ // added here are exactly the ones the version sync will own.
158
+ const metadata = {
159
+ name,
160
+ rc: nameClassName,
161
+ protocol,
162
+ auth,
163
+ port,
164
+ ...iac ? {
165
+ iac
166
+ } : {}
167
+ };
168
+ addGeneratorMetadata(tree, fullyQualifiedName, AGENTCORE_GATEWAY_GENERATOR_INFO, metadata);
169
+ addTsDependencies(tree, DEPENDENCIES, {
170
+ metadata,
171
+ projectRoot
172
+ });
173
+ // Wire up infra (CDK or Terraform); re-running with infra=agentcore adds
174
+ // the infrastructure to a previously infra-less gateway.
175
+ if (infra === 'agentcore') {
176
+ await sharedConstructsGenerator(tree, {
177
+ iac
178
+ }, DEPENDENCIES);
179
+ await addAgentCoreGatewayInfra(tree, {
180
+ gatewayNameClassName: nameClassName,
181
+ gatewayNameKebabCase: name,
182
+ projectName: fullyQualifiedName,
183
+ projectDirectory: projectRoot,
184
+ cedarPolicy,
185
+ auth,
186
+ protocol,
187
+ iac
188
+ }, DEPENDENCIES);
189
+ }
190
+ await addGeneratorMetricsIfApplicable(tree, [
191
+ AGENTCORE_GATEWAY_GENERATOR_INFO
192
+ ]);
193
+ await formatFilesInSubtree(tree);
194
+ return ()=>installDependencies(tree, options.preferInstallDependencies, {
195
+ languages: [
196
+ 'typescript'
197
+ ]
198
+ });
199
+ };
200
+ /**
201
+ * Read a gateway project's metadata, validating it was generated by the
202
+ * agentcore-gateway generator.
203
+ */ export const readAgentCoreGatewayMetadata = (project)=>{
204
+ const metadata = project.metadata;
205
+ if (metadata?.generator !== AGENTCORE_GATEWAY_GENERATOR_INFO.id) {
206
+ throw new Error(`Project '${project.name}' was not generated by the '${AGENTCORE_GATEWAY_GENERATOR_INFO.id}' generator.`);
207
+ }
208
+ return metadata;
209
+ };
210
+ export default agentcoreGatewayGenerator;
211
+
212
+ //# sourceMappingURL=generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../packages/nx-plugin/src/agentcore-gateway/generator.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n addProjectConfiguration,\n type GeneratorCallback,\n generateFiles,\n joinPathFragments,\n logger,\n OverwriteStrategy,\n type ProjectConfiguration,\n type Tree,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport { addTsDependencies } from '../utils/add-dependencies';\nimport {\n AGENT_CORE_CONSTRUCTS_DEPENDENCIES,\n AGENT_CORE_CONSTRUCTS_PY_DEPENDENCIES,\n addAgentCoreGatewayInfra,\n} from '../utils/agent-core-constructs/agent-core-constructs';\nimport {\n declareDependencies,\n ownedElsewhere,\n} from '../utils/declared-dependencies';\nimport { formatFilesInSubtree } from '../utils/format';\nimport { resolveIac } from '../utils/iac';\nimport { installDependencies } from '../utils/install';\nimport { addGeneratorMetricsIfApplicable } from '../utils/metrics';\nimport { kebabCase, toClassName } from '../utils/names';\nimport { getNpmScopePrefix } from '../utils/npm-scope';\nimport {\n addGeneratorMetadata,\n getGeneratorInfo,\n type NxGeneratorInfo,\n projectExists,\n readProjectConfigurationUnqualified,\n} from '../utils/nx';\nimport { assignPort } from '../utils/port';\nimport { ensureProjectPackageJson } from '../utils/project-package-json';\nimport {\n SHARED_CONSTRUCTS_DEPENDENCIES,\n sharedConstructsGenerator,\n} from '../utils/shared-constructs';\nimport type { IacMetadata } from '../utils/shared-constructs-constants';\nimport type { AgentcoreGatewayGeneratorSchema } from './schema';\n\n// The gateway's local-dev server and Cedar policy rendering need these\n// whatever the auth; only the MCP SDK is protocol-specific (the http local\n// gateway is a plain proxy).\nexport const DEPENDENCIES = declareDependencies<AgentCoreGatewayMetadata>()({\n ts: [\n { name: '@modelcontextprotocol/sdk', when: (m) => m.protocol === 'mcp' },\n { name: 'express' },\n { name: '@types/express', dev: true },\n // ejs renders the Cedar policy in the shared gateway construct.\n { name: 'ejs', dev: true },\n { name: '@types/ejs', dev: true },\n // local-dev.ts runs via tsx, which is shared tooling.\n { name: 'tsx', dev: true, root: true },\n ...ownedElsewhere(AGENT_CORE_CONSTRUCTS_DEPENDENCIES),\n ...ownedElsewhere(SHARED_CONSTRUCTS_DEPENDENCIES),\n ],\n py: ownedElsewhere(AGENT_CORE_CONSTRUCTS_PY_DEPENDENCIES),\n});\n\nexport const AGENTCORE_GATEWAY_GENERATOR_INFO: NxGeneratorInfo =\n getGeneratorInfo(import.meta.filename);\n\nexport const agentcoreGatewayGenerator = async (\n tree: Tree,\n options: AgentcoreGatewayGeneratorSchema,\n): Promise<GeneratorCallback> => {\n const name = kebabCase(options.name);\n const nameClassName = toClassName(name);\n const parentDir = options.directory ?? 'packages';\n const subDir = options.subDirectory ?? name;\n const projectRoot = joinPathFragments(parentDir, subDir);\n const fullyQualifiedName = `${getNpmScopePrefix(tree)}${name}`;\n\n // Protocol is mcp (aggregate MCP server targets into one MCP endpoint) or\n // http (proxy agent runtime targets via path-based routing). Persisted in\n // metadata so connection generators can validate it.\n const protocol = options.protocol ?? 'mcp';\n // Inbound auth is iam (default) or cognito. Persisted in metadata so\n // connection generators can validate it (agent -> gateway connections\n // require an IAM gateway).\n const auth = options.auth ?? 'iam';\n // Cedar policies authorize MCP tool actions, which an http gateway has none\n // of — its runtime targets are plain proxied endpoints — so the policy\n // engine only applies to mcp gateways. cedarPolicy defaults to true in the\n // schema, so an http gateway quietly drops it rather than requiring\n // --cedarPolicy=false.\n if (protocol === 'http' && options.cedarPolicy) {\n logger.warn(\n 'Cedar policies authorize MCP tool actions, so cedarPolicy is ignored for http-protocol gateways.',\n );\n }\n const cedarPolicy = protocol === 'mcp' && (options.cedarPolicy ?? true);\n const infra = options.infra ?? 'agentcore';\n\n // local-dev.ts is the local gateway: a continuous MCP aggregator chaining\n // onto attached MCP servers' dev targets (added by the mcp-connection\n // generator), so a single `nx dev <gateway>` boots the gateway and every\n // attached MCP server together.\n //\n // `serve` exists for parity with other generators; the deployed Gateway is\n // a managed AWS resource, so `serve`-mode agents talk to it via runtime\n // config and the local gateway sits idle.\n const localGatewayTarget = (port: number) => ({\n executor: 'nx:run-commands' as const,\n continuous: true,\n options: {\n command: 'tsx local-dev.ts',\n cwd: '{projectRoot}',\n env: { PORT: `${port}` },\n },\n dependsOn: [] as Array<string | { projects: string[]; target: string }>,\n });\n let project: ProjectConfiguration;\n if (projectExists(tree, fullyQualifiedName)) {\n project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);\n } else {\n addProjectConfiguration(tree, fullyQualifiedName, {\n name: fullyQualifiedName,\n root: projectRoot,\n projectType: 'library',\n sourceRoot: projectRoot,\n tags: [],\n targets: {},\n metadata: {\n generator: AGENTCORE_GATEWAY_GENERATOR_INFO.id,\n } as any,\n });\n project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);\n }\n // Ensure the project has its own package.json so its runtime dependencies\n // (added below) are declared in it rather than the workspace root.\n ensureProjectPackageJson(tree, {\n dir: projectRoot,\n fullyQualifiedName,\n });\n const port = assignPort(tree, project, 8100);\n // A gateway is its own standalone project, so it uses plain `serve` / `dev`\n // targets. Re-run: keep existing targets (their dependsOn may have been\n // populated by the mcp-connection generator), just ensure both exist.\n project.targets ??= {};\n project.targets['serve'] ??= localGatewayTarget(port);\n project.targets['dev'] ??= localGatewayTarget(port);\n updateProjectConfiguration(tree, project.name, project);\n\n // Scaffold the gateway project: local-dev.ts (+ Cedar policies if requested)\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'project', protocol),\n projectRoot,\n {\n nameClassName,\n nameKebabCase: name,\n port,\n attachedMcpServers: [],\n attachedAgents: [],\n },\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n if (cedarPolicy) {\n // The default permit-all policy differs by auth type: AgentCore represents\n // IAM callers as `AgentCore::IamEntity` and Cognito/JWT callers as\n // `AgentCore::OAuthUser`, so the two policies match different principals.\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'cedar'),\n projectRoot,\n { nameClassName, auth },\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n }\n\n // Recorded in the metadata below so the version sync can tell a CDK\n // project from a Terraform one; undefined when no infrastructure was\n // generated, in which case neither provider's packages were added.\n const iac =\n infra !== 'none' ? await resolveIac(tree, options.iac) : undefined;\n\n // Recorded below and read by the declaration's predicates, so the packages\n // added here are exactly the ones the version sync will own.\n const metadata: AgentCoreGatewayMetadata = {\n name,\n rc: nameClassName,\n protocol,\n auth,\n port,\n ...(iac ? { iac } : {}),\n };\n\n addGeneratorMetadata(\n tree,\n fullyQualifiedName,\n AGENTCORE_GATEWAY_GENERATOR_INFO,\n metadata,\n );\n\n addTsDependencies(tree, DEPENDENCIES, { metadata, projectRoot });\n\n // Wire up infra (CDK or Terraform); re-running with infra=agentcore adds\n // the infrastructure to a previously infra-less gateway.\n\n if (infra === 'agentcore') {\n await sharedConstructsGenerator(tree, { iac }, DEPENDENCIES);\n\n await addAgentCoreGatewayInfra(\n tree,\n {\n gatewayNameClassName: nameClassName,\n gatewayNameKebabCase: name,\n projectName: fullyQualifiedName,\n projectDirectory: projectRoot,\n cedarPolicy,\n auth,\n protocol,\n iac,\n },\n DEPENDENCIES,\n );\n }\n\n await addGeneratorMetricsIfApplicable(tree, [\n AGENTCORE_GATEWAY_GENERATOR_INFO,\n ]);\n\n await formatFilesInSubtree(tree);\n return () =>\n installDependencies(tree, options.preferInstallDependencies, {\n languages: ['typescript'],\n });\n};\n\n/**\n * Gateway details stored in the gateway project's metadata.\n */\nexport interface AgentCoreGatewayMetadata extends IacMetadata {\n name: string;\n rc: string;\n protocol: string;\n auth: string;\n port: number;\n}\n\n/**\n * Read a gateway project's metadata, validating it was generated by the\n * agentcore-gateway generator.\n */\nexport const readAgentCoreGatewayMetadata = (\n project: ProjectConfiguration,\n): AgentCoreGatewayMetadata => {\n const metadata = project.metadata as any;\n if (metadata?.generator !== AGENTCORE_GATEWAY_GENERATOR_INFO.id) {\n throw new Error(\n `Project '${project.name}' was not generated by the '${AGENTCORE_GATEWAY_GENERATOR_INFO.id}' generator.`,\n );\n }\n return metadata as AgentCoreGatewayMetadata;\n};\n\nexport default agentcoreGatewayGenerator;\n"],"names":["addProjectConfiguration","generateFiles","joinPathFragments","logger","OverwriteStrategy","updateProjectConfiguration","addTsDependencies","AGENT_CORE_CONSTRUCTS_DEPENDENCIES","AGENT_CORE_CONSTRUCTS_PY_DEPENDENCIES","addAgentCoreGatewayInfra","declareDependencies","ownedElsewhere","formatFilesInSubtree","resolveIac","installDependencies","addGeneratorMetricsIfApplicable","kebabCase","toClassName","getNpmScopePrefix","addGeneratorMetadata","getGeneratorInfo","projectExists","readProjectConfigurationUnqualified","assignPort","ensureProjectPackageJson","SHARED_CONSTRUCTS_DEPENDENCIES","sharedConstructsGenerator","DEPENDENCIES","ts","name","when","m","protocol","dev","root","py","AGENTCORE_GATEWAY_GENERATOR_INFO","filename","agentcoreGatewayGenerator","tree","options","nameClassName","parentDir","directory","subDir","subDirectory","projectRoot","fullyQualifiedName","auth","cedarPolicy","warn","infra","localGatewayTarget","port","executor","continuous","command","cwd","env","PORT","dependsOn","project","projectType","sourceRoot","tags","targets","metadata","generator","id","dir","dirname","nameKebabCase","attachedMcpServers","attachedAgents","overwriteStrategy","KeepExisting","iac","undefined","rc","gatewayNameClassName","gatewayNameKebabCase","projectName","projectDirectory","preferInstallDependencies","languages","readAgentCoreGatewayMetadata","Error"],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import type { GeneratorCallback, Tree } from '@nx/devkit';
6
+ import { type NxGeneratorInfo } from '../../utils/nx';
7
+ import type { AgentcoreGatewayMcpConnectionGeneratorSchema } from './schema';
8
+ export declare const AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
9
+ /**
10
+ * Connect an AgentCore Gateway to an MCP server.
11
+ *
12
+ * Chains the gateway's dev target to the MCP server's dev
13
+ * target, and registers the server in the gateway's local local-dev.ts so
14
+ * the local gateway aggregates its tools. Users must still call
15
+ * `gateway.addMcpServer(...)` in their application stack to create the
16
+ * actual CDK/Terraform resource.
17
+ */
18
+ export declare const agentcoreGatewayMcpConnectionGenerator: (tree: Tree, options: AgentcoreGatewayMcpConnectionGeneratorSchema) => Promise<GeneratorCallback>;
19
+ export default agentcoreGatewayMcpConnectionGenerator;
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { formatFilesInSubtree } from "../../utils/format.js";
5
+ import { installDependencies } from "../../utils/install.js";
6
+ import { addGeneratorMetricsIfApplicable } from "../../utils/metrics.js";
7
+ import { kebabCase } from "../../utils/names.js";
8
+ import { addComponentGeneratorMetadata, getGeneratorInfo, readProjectConfigurationUnqualified } from "../../utils/nx.js";
9
+ import { attachUpstreamToLocalGateway } from "../attach-upstream.js";
10
+ import { readAgentCoreGatewayMetadata } from "../generator.js";
11
+ export const AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
12
+ /**
13
+ * Connect an AgentCore Gateway to an MCP server.
14
+ *
15
+ * Chains the gateway's dev target to the MCP server's dev
16
+ * target, and registers the server in the gateway's local local-dev.ts so
17
+ * the local gateway aggregates its tools. Users must still call
18
+ * `gateway.addMcpServer(...)` in their application stack to create the
19
+ * actual CDK/Terraform resource.
20
+ */ export const agentcoreGatewayMcpConnectionGenerator = async (tree, options)=>{
21
+ const sourceProject = readProjectConfigurationUnqualified(tree, options.sourceProject);
22
+ const targetProject = readProjectConfigurationUnqualified(tree, options.targetProject);
23
+ const gateway = readAgentCoreGatewayMetadata(sourceProject);
24
+ const mcpComponent = options.targetComponent;
25
+ if (!mcpComponent) {
26
+ throw new Error(`Target project '${options.targetProject}' has no MCP server component metadata. Did you run the 'ts#mcp-server' or 'py#mcp-server' generator?`);
27
+ }
28
+ if (gateway.protocol !== 'mcp') {
29
+ throw new Error(`Gateway '${gateway.name}' has protocol='${gateway.protocol}'. MCP server targets can only be attached to MCP-protocol gateways.`);
30
+ }
31
+ if (mcpComponent.auth && mcpComponent.auth !== 'iam') {
32
+ throw new Error(`MCP server '${mcpComponent.name}' uses auth='${mcpComponent.auth}'. Gateway->MCP connections currently require the MCP server to use IAM authentication.`);
33
+ }
34
+ // The target name must match what the deployed Gateway uses
35
+ // (`mcpServerName` on the MCP construct, derived from the project's class
36
+ // name) so `<target>___<tool>` resolves identically locally and deployed.
37
+ // Component-level `name` would clash whenever two MCP server projects
38
+ // both default to `mcp-server`.
39
+ const mcpTargetName = kebabCase(mcpComponent.rc);
40
+ const mcpComponentName = mcpComponent.name ?? 'mcp-server';
41
+ await attachUpstreamToLocalGateway(tree, sourceProject, 'dev', {
42
+ targetName: mcpTargetName,
43
+ port: mcpComponent.port ?? 8000,
44
+ upstreamProjectName: targetProject.name,
45
+ upstreamDevTargetName: `${mcpComponentName}-dev`
46
+ });
47
+ // Recorded so the version sync can identify this connection.
48
+ addComponentGeneratorMetadata(tree, sourceProject.name, AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO, targetProject.root, mcpTargetName);
49
+ await addGeneratorMetricsIfApplicable(tree, [
50
+ AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO
51
+ ]);
52
+ await formatFilesInSubtree(tree);
53
+ return ()=>installDependencies(tree, options.preferInstallDependencies, {
54
+ languages: [
55
+ 'typescript'
56
+ ]
57
+ });
58
+ };
59
+ export default agentcoreGatewayMcpConnectionGenerator;
60
+
61
+ //# sourceMappingURL=generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/agentcore-gateway/mcp-connection/generator.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport type { GeneratorCallback, Tree } from '@nx/devkit';\nimport { formatFilesInSubtree } from '../../utils/format';\nimport { installDependencies } from '../../utils/install';\nimport { addGeneratorMetricsIfApplicable } from '../../utils/metrics';\nimport { kebabCase } from '../../utils/names';\nimport {\n addComponentGeneratorMetadata,\n getGeneratorInfo,\n type NxGeneratorInfo,\n readProjectConfigurationUnqualified,\n} from '../../utils/nx';\nimport { attachUpstreamToLocalGateway } from '../attach-upstream';\nimport { readAgentCoreGatewayMetadata } from '../generator';\nimport type { AgentcoreGatewayMcpConnectionGeneratorSchema } from './schema';\n\nexport const AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO: NxGeneratorInfo =\n getGeneratorInfo(import.meta.filename);\n\n/**\n * Connect an AgentCore Gateway to an MCP server.\n *\n * Chains the gateway's dev target to the MCP server's dev\n * target, and registers the server in the gateway's local local-dev.ts so\n * the local gateway aggregates its tools. Users must still call\n * `gateway.addMcpServer(...)` in their application stack to create the\n * actual CDK/Terraform resource.\n */\nexport const agentcoreGatewayMcpConnectionGenerator = async (\n tree: Tree,\n options: AgentcoreGatewayMcpConnectionGeneratorSchema,\n): Promise<GeneratorCallback> => {\n const sourceProject = readProjectConfigurationUnqualified(\n tree,\n options.sourceProject,\n );\n const targetProject = readProjectConfigurationUnqualified(\n tree,\n options.targetProject,\n );\n\n const gateway = readAgentCoreGatewayMetadata(sourceProject);\n const mcpComponent = options.targetComponent;\n\n if (!mcpComponent) {\n throw new Error(\n `Target project '${options.targetProject}' has no MCP server component metadata. Did you run the 'ts#mcp-server' or 'py#mcp-server' generator?`,\n );\n }\n\n if (gateway.protocol !== 'mcp') {\n throw new Error(\n `Gateway '${gateway.name}' has protocol='${gateway.protocol}'. MCP server targets can only be attached to MCP-protocol gateways.`,\n );\n }\n if (mcpComponent.auth && mcpComponent.auth !== 'iam') {\n throw new Error(\n `MCP server '${mcpComponent.name}' uses auth='${mcpComponent.auth}'. Gateway->MCP connections currently require the MCP server to use IAM authentication.`,\n );\n }\n\n // The target name must match what the deployed Gateway uses\n // (`mcpServerName` on the MCP construct, derived from the project's class\n // name) so `<target>___<tool>` resolves identically locally and deployed.\n // Component-level `name` would clash whenever two MCP server projects\n // both default to `mcp-server`.\n const mcpTargetName = kebabCase(mcpComponent.rc as string);\n const mcpComponentName = mcpComponent.name ?? 'mcp-server';\n\n await attachUpstreamToLocalGateway(tree, sourceProject, 'dev', {\n targetName: mcpTargetName,\n port: (mcpComponent.port as number | undefined) ?? 8000,\n upstreamProjectName: targetProject.name,\n upstreamDevTargetName: `${mcpComponentName}-dev`,\n });\n\n // Recorded so the version sync can identify this connection.\n addComponentGeneratorMetadata(\n tree,\n sourceProject.name,\n AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO,\n targetProject.root,\n mcpTargetName,\n );\n\n await addGeneratorMetricsIfApplicable(tree, [\n AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO,\n ]);\n\n await formatFilesInSubtree(tree);\n\n return () =>\n installDependencies(tree, options.preferInstallDependencies, {\n languages: ['typescript'],\n });\n};\n\nexport default agentcoreGatewayMcpConnectionGenerator;\n"],"names":["formatFilesInSubtree","installDependencies","addGeneratorMetricsIfApplicable","kebabCase","addComponentGeneratorMetadata","getGeneratorInfo","readProjectConfigurationUnqualified","attachUpstreamToLocalGateway","readAgentCoreGatewayMetadata","AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO","filename","agentcoreGatewayMcpConnectionGenerator","tree","options","sourceProject","targetProject","gateway","mcpComponent","targetComponent","Error","protocol","name","auth","mcpTargetName","rc","mcpComponentName","targetName","port","upstreamProjectName","upstreamDevTargetName","root","preferInstallDependencies","languages"],"mappings":"AAAA;;;CAGC,GAED,SAASA,oBAAoB,QAAQ,wBAAqB;AAC1D,SAASC,mBAAmB,QAAQ,yBAAsB;AAC1D,SAASC,+BAA+B,QAAQ,yBAAsB;AACtE,SAASC,SAAS,QAAQ,uBAAoB;AAC9C,SACEC,6BAA6B,EAC7BC,gBAAgB,EAEhBC,mCAAmC,QAC9B,oBAAiB;AACxB,SAASC,4BAA4B,QAAQ,wBAAqB;AAClE,SAASC,4BAA4B,QAAQ,kBAAe;AAG5D,OAAO,MAAMC,kDACXJ,iBAAiB,YAAYK,QAAQ,EAAE;AAEzC;;;;;;;;CAQC,GACD,OAAO,MAAMC,yCAAyC,OACpDC,MACAC;IAEA,MAAMC,gBAAgBR,oCACpBM,MACAC,QAAQC,aAAa;IAEvB,MAAMC,gBAAgBT,oCACpBM,MACAC,QAAQE,aAAa;IAGvB,MAAMC,UAAUR,6BAA6BM;IAC7C,MAAMG,eAAeJ,QAAQK,eAAe;IAE5C,IAAI,CAACD,cAAc;QACjB,MAAM,IAAIE,MACR,CAAC,gBAAgB,EAAEN,QAAQE,aAAa,CAAC,qGAAqG,CAAC;IAEnJ;IAEA,IAAIC,QAAQI,QAAQ,KAAK,OAAO;QAC9B,MAAM,IAAID,MACR,CAAC,SAAS,EAAEH,QAAQK,IAAI,CAAC,gBAAgB,EAAEL,QAAQI,QAAQ,CAAC,oEAAoE,CAAC;IAErI;IACA,IAAIH,aAAaK,IAAI,IAAIL,aAAaK,IAAI,KAAK,OAAO;QACpD,MAAM,IAAIH,MACR,CAAC,YAAY,EAAEF,aAAaI,IAAI,CAAC,aAAa,EAAEJ,aAAaK,IAAI,CAAC,uFAAuF,CAAC;IAE9J;IAEA,4DAA4D;IAC5D,0EAA0E;IAC1E,0EAA0E;IAC1E,sEAAsE;IACtE,gCAAgC;IAChC,MAAMC,gBAAgBpB,UAAUc,aAAaO,EAAE;IAC/C,MAAMC,mBAAmBR,aAAaI,IAAI,IAAI;IAE9C,MAAMd,6BAA6BK,MAAME,eAAe,OAAO;QAC7DY,YAAYH;QACZI,MAAM,AAACV,aAAaU,IAAI,IAA2B;QACnDC,qBAAqBb,cAAcM,IAAI;QACvCQ,uBAAuB,GAAGJ,iBAAiB,IAAI,CAAC;IAClD;IAEA,6DAA6D;IAC7DrB,8BACEQ,MACAE,cAAcO,IAAI,EAClBZ,iDACAM,cAAce,IAAI,EAClBP;IAGF,MAAMrB,gCAAgCU,MAAM;QAC1CH;KACD;IAED,MAAMT,qBAAqBY;IAE3B,OAAO,IACLX,oBAAoBW,MAAMC,QAAQkB,yBAAyB,EAAE;YAC3DC,WAAW;gBAAC;aAAa;QAC3B;AACJ,EAAE;AAEF,eAAerB,uCAAuC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ export { };
5
+
6
+ //# sourceMappingURL=schema.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/agentcore-gateway/mcp-connection/schema.d.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport type { ComponentMetadata } from '../../utils/nx';\n\nexport interface AgentcoreGatewayMcpConnectionGeneratorSchema {\n sourceProject: string;\n targetProject: string;\n sourceComponent?: ComponentMetadata;\n targetComponent?: ComponentMetadata;\n preferInstallDependencies?: boolean;\n}\n"],"names":[],"mappings":"AAAA;;;CAGC,GAGD,WAMC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import type { ComponentMetadata } from '../../utils/nx';
6
+
7
+ export interface AgentcoreGatewayMcpConnectionGeneratorSchema {
8
+ sourceProject: string;
9
+ targetProject: string;
10
+ sourceComponent?: ComponentMetadata;
11
+ targetComponent?: ComponentMetadata;
12
+ preferInstallDependencies?: boolean;
13
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "$schema": "https://json-schema.org/schema",
3
+ "$id": "agentcore-gateway#mcp-connection",
4
+ "title": "agentcore-gateway#mcp-connection",
5
+ "description": "Connect an AgentCore Gateway to an MCP server",
6
+ "type": "object",
7
+ "properties": {
8
+ "sourceProject": {
9
+ "type": "string",
10
+ "description": "The gateway project"
11
+ },
12
+ "targetProject": {
13
+ "type": "string",
14
+ "description": "The MCP server project"
15
+ },
16
+ "sourceComponent": {
17
+ "type": "string",
18
+ "description": "The gateway component in the source project"
19
+ },
20
+ "targetComponent": {
21
+ "type": "string",
22
+ "description": "The MCP server component in the target project"
23
+ },
24
+ "preferInstallDependencies": {
25
+ "type": "boolean",
26
+ "description": "Whether to prefer installing dependencies after the generator runs. Set to false to defer installing when batching multiple generators (an install still runs if needed so subsequent generators can compute the Nx project graph); install once at the end.",
27
+ "default": true
28
+ }
29
+ },
30
+ "required": ["sourceProject", "targetProject"]
31
+ }
@@ -0,0 +1,68 @@
1
+ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
+
3
+ exports[`agentcore-gateway#react-connection generator > generates a gateway-routed AG-UI hook for each fronted agent > useAguiMyAgent.tsx 1`] = `
4
+ "import { HttpAgent } from '@ag-ui/client';
5
+ import type { AbstractAgent, RunAgentInput } from '@ag-ui/client';
6
+ import { useMemo } from 'react';
7
+ import { useRuntimeConfig } from './useRuntimeConfig';
8
+ import { useSigV4, type SigV4Client } from './useSigV4';
9
+
10
+ // The agent sits behind an AgentCore Gateway, which proxies
11
+ // \`/<targetName>/invocations\` to the agent runtime.
12
+ function buildGatewayUrl(gatewayUrl: string): string {
13
+ return \`\${new URL(gatewayUrl).origin}/my-agent/invocations\`;
14
+ }
15
+
16
+ // AgentCore session ids must be at least 33 characters.
17
+ function agentCoreSessionId(input: RunAgentInput): string {
18
+ return (input.threadId ?? '').padEnd(33, '0');
19
+ }
20
+
21
+ class SigV4HttpAgent extends HttpAgent {
22
+ sigV4Client: SigV4Client;
23
+
24
+ constructor(
25
+ config: ConstructorParameters<typeof HttpAgent>[0],
26
+ sigV4Client: SigV4Client,
27
+ ) {
28
+ super({
29
+ ...config,
30
+ fetch: sigV4Client.fetch as (
31
+ url: string,
32
+ init: RequestInit,
33
+ ) => Promise<Response>,
34
+ });
35
+ this.sigV4Client = sigV4Client;
36
+ }
37
+
38
+ protected override requestInit(input: RunAgentInput): RequestInit {
39
+ const init = super.requestInit(input);
40
+ init.headers = {
41
+ ...(init.headers as Record<string, string>),
42
+ 'X-Amzn-Bedrock-AgentCore-Runtime-Session-Id': agentCoreSessionId(input),
43
+ };
44
+ return init;
45
+ }
46
+
47
+ override clone(): SigV4HttpAgent {
48
+ const cloned = super.clone() as SigV4HttpAgent;
49
+ cloned.sigV4Client = this.sigV4Client;
50
+ return cloned;
51
+ }
52
+ }
53
+
54
+ export const useAguiMyAgent = (): Record<string, AbstractAgent> => {
55
+ const runtimeConfig = useRuntimeConfig();
56
+ const gatewayUrl = runtimeConfig.gateways.MyGateway;
57
+ const sigv4 = useSigV4();
58
+
59
+ const url = useMemo(() => buildGatewayUrl(gatewayUrl), [gatewayUrl]);
60
+
61
+ return useMemo((): Record<string, AbstractAgent> => {
62
+ const agent = new SigV4HttpAgent({ url }, sigv4);
63
+
64
+ return { 'my-agent': agent };
65
+ }, [url, sigv4]);
66
+ };
67
+ "
68
+ `;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { type Tree } from '@nx/devkit';
6
+ import { type NxGeneratorInfo } from '../../utils/nx';
7
+ import type { AgentcoreGatewayReactConnectionGeneratorSchema } from './schema';
8
+ export declare const AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
9
+ /**
10
+ * Connect a React website to an AgentCore Gateway fronting agents.
11
+ *
12
+ * For each agent attached to the gateway (via the
13
+ * `agentcore-gateway#agent-connection` generator), generates the same website
14
+ * client as connecting to the agent directly, but routed through the
15
+ * gateway's `/<targetName>` path — so the browser only needs to reach the
16
+ * gateway, and the agent runtimes can sit in a VPC behind it.
17
+ */
18
+ export declare const agentcoreGatewayReactConnectionGenerator: (tree: Tree, options: AgentcoreGatewayReactConnectionGeneratorSchema) => Promise<() => Promise<void>>;
19
+ export default agentcoreGatewayReactConnectionGenerator;
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { getProjects, logger } from "@nx/devkit";
5
+ import { addGatewayTargetToLocalDev } from "../../connection/agent-local-dev.js";
6
+ import { addGatewayUrlToConnectionNamespace } from "../../connection/gateway-runtime-config.js";
7
+ import { PY_AGENT_GENERATOR_INFO } from "../../py/agent/generator.js";
8
+ import { pyAgentReactConnectionGenerator } from "../../py/agent/react-connection/generator.js";
9
+ import { TS_AGENT_GENERATOR_INFO } from "../../ts/agent/generator.js";
10
+ import { tsAgentReactConnectionGenerator } from "../../ts/agent/react-connection/generator.js";
11
+ import { formatFilesInSubtree } from "../../utils/format.js";
12
+ import { installDependencies } from "../../utils/install.js";
13
+ import { addGeneratorMetricsIfApplicable } from "../../utils/metrics.js";
14
+ import { kebabCase } from "../../utils/names.js";
15
+ import { addComponentGeneratorMetadata, getGeneratorInfo, readProjectConfigurationUnqualified } from "../../utils/nx.js";
16
+ import { AGENTCORE_GATEWAY_AGENT_CONNECTION_GENERATOR_INFO } from "../agent-connection/generator.js";
17
+ import { readAgentCoreGatewayMetadata } from "../generator.js";
18
+ export const AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
19
+ /**
20
+ * Connect a React website to an AgentCore Gateway fronting agents.
21
+ *
22
+ * For each agent attached to the gateway (via the
23
+ * `agentcore-gateway#agent-connection` generator), generates the same website
24
+ * client as connecting to the agent directly, but routed through the
25
+ * gateway's `/<targetName>` path — so the browser only needs to reach the
26
+ * gateway, and the agent runtimes can sit in a VPC behind it.
27
+ */ export const agentcoreGatewayReactConnectionGenerator = async (tree, options)=>{
28
+ const frontendProject = readProjectConfigurationUnqualified(tree, options.sourceProject);
29
+ const gatewayProject = readProjectConfigurationUnqualified(tree, options.targetProject);
30
+ const gateway = readAgentCoreGatewayMetadata(gatewayProject);
31
+ if (gateway.protocol !== 'http') {
32
+ throw new Error(`Gateway '${gateway.name}' has protocol='${gateway.protocol}'. Websites can only connect to http-protocol gateways, which proxy requests to their agent targets.`);
33
+ }
34
+ // A2A targets speak agent-to-agent JSON-RPC, not a browser protocol, so
35
+ // the website only connects to the gateway's AG-UI / HTTP agents. A gateway
36
+ // with none attached yet still gets its URL published and dev wiring —
37
+ // re-running this connection after attaching agents generates their
38
+ // website clients.
39
+ const agents = frontedAgents(tree, gatewayProject.name).filter((agent)=>(agent.component.protocol ?? '').toLowerCase() !== 'a2a');
40
+ if (agents.length === 0) {
41
+ logger.warn(`Gateway '${gateway.name}' has no AG-UI or HTTP agents attached, so no website clients were generated. Connect agents to the gateway, then re-run this connection to generate their clients.`);
42
+ }
43
+ // One website client per fronted agent, routed through the gateway.
44
+ for (const agent of agents){
45
+ const generator = agent.language === 'ts' ? tsAgentReactConnectionGenerator : pyAgentReactConnectionGenerator;
46
+ await generator(tree, {
47
+ sourceProject: frontendProject.name,
48
+ targetProject: agent.projectName,
49
+ targetComponent: agent.component,
50
+ preferInstallDependencies: options.preferInstallDependencies,
51
+ gatewayRoute: {
52
+ gatewayClassName: gateway.rc,
53
+ targetName: agent.targetName,
54
+ gatewayAuth: gateway.auth
55
+ }
56
+ });
57
+ }
58
+ // Publish the gateway URL to the website via the 'connection' namespace.
59
+ await addGatewayUrlToConnectionNamespace(tree, {
60
+ gatewayNameKebabCase: kebabCase(gateway.rc),
61
+ gatewayNameClassName: gateway.rc
62
+ });
63
+ // Wire the website's dev target to the local gateway, which proxies to the
64
+ // attached agents (transitively starting them via its own dev dependencies).
65
+ await addGatewayTargetToLocalDev(tree, frontendProject.name, gatewayProject.name, {
66
+ gatewayClassName: gateway.rc,
67
+ port: gateway.port
68
+ });
69
+ // Recorded so the version sync can identify this connection.
70
+ addComponentGeneratorMetadata(tree, frontendProject.name, AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO, gatewayProject.root, gateway.rc);
71
+ await addGeneratorMetricsIfApplicable(tree, [
72
+ AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO
73
+ ]);
74
+ await formatFilesInSubtree(tree);
75
+ return ()=>installDependencies(tree, options.preferInstallDependencies, {
76
+ languages: [
77
+ 'typescript'
78
+ ]
79
+ });
80
+ };
81
+ /**
82
+ * The agents attached to the gateway, resolved from the connection entries
83
+ * the `agentcore-gateway#agent-connection` generator recorded: each names the
84
+ * agent project by root (`path`) and its gateway target name (`name`), which
85
+ * matches the agent component's class name in kebab-case.
86
+ */ const frontedAgents = (tree, gatewayProjectName)=>{
87
+ const gatewayProject = readProjectConfigurationUnqualified(tree, gatewayProjectName);
88
+ const connections = (gatewayProject.metadata?.components ?? []).filter((c)=>c.generator === AGENTCORE_GATEWAY_AGENT_CONNECTION_GENERATOR_INFO.id);
89
+ const projectsByRoot = new Map([
90
+ ...getProjects(tree).values()
91
+ ].map((p)=>[
92
+ p.root,
93
+ p
94
+ ]));
95
+ return connections.flatMap((connection)=>{
96
+ const agentProject = connection.path ? projectsByRoot.get(connection.path) : undefined;
97
+ if (!agentProject) {
98
+ return [];
99
+ }
100
+ const component = (agentProject.metadata?.components ?? []).find((c)=>[
101
+ TS_AGENT_GENERATOR_INFO.id,
102
+ PY_AGENT_GENERATOR_INFO.id
103
+ ].includes(c.generator) && kebabCase(c.rc ?? '') === connection.name);
104
+ if (!component) {
105
+ return [];
106
+ }
107
+ return [
108
+ {
109
+ projectName: agentProject.name,
110
+ component,
111
+ targetName: connection.name,
112
+ language: component.generator === TS_AGENT_GENERATOR_INFO.id ? 'ts' : 'py'
113
+ }
114
+ ];
115
+ });
116
+ };
117
+ export default agentcoreGatewayReactConnectionGenerator;
118
+
119
+ //# sourceMappingURL=generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/agentcore-gateway/react-connection/generator.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport { getProjects, logger, type Tree } from '@nx/devkit';\nimport { addGatewayTargetToLocalDev } from '../../connection/agent-local-dev';\nimport { addGatewayUrlToConnectionNamespace } from '../../connection/gateway-runtime-config';\nimport { PY_AGENT_GENERATOR_INFO } from '../../py/agent/generator';\nimport { pyAgentReactConnectionGenerator } from '../../py/agent/react-connection/generator';\nimport { TS_AGENT_GENERATOR_INFO } from '../../ts/agent/generator';\nimport { tsAgentReactConnectionGenerator } from '../../ts/agent/react-connection/generator';\nimport { formatFilesInSubtree } from '../../utils/format';\nimport { installDependencies } from '../../utils/install';\nimport { addGeneratorMetricsIfApplicable } from '../../utils/metrics';\nimport { kebabCase } from '../../utils/names';\nimport {\n addComponentGeneratorMetadata,\n type ComponentMetadata,\n getGeneratorInfo,\n type NxGeneratorInfo,\n readProjectConfigurationUnqualified,\n} from '../../utils/nx';\nimport { AGENTCORE_GATEWAY_AGENT_CONNECTION_GENERATOR_INFO } from '../agent-connection/generator';\nimport { readAgentCoreGatewayMetadata } from '../generator';\nimport type { AgentcoreGatewayReactConnectionGeneratorSchema } from './schema';\n\nexport const AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO: NxGeneratorInfo =\n getGeneratorInfo(import.meta.filename);\n\n/** An agent fronted by the gateway, resolved from its connection metadata. */\ninterface FrontedAgent {\n readonly projectName: string;\n readonly component: ComponentMetadata;\n readonly targetName: string;\n readonly language: 'ts' | 'py';\n}\n\n/**\n * Connect a React website to an AgentCore Gateway fronting agents.\n *\n * For each agent attached to the gateway (via the\n * `agentcore-gateway#agent-connection` generator), generates the same website\n * client as connecting to the agent directly, but routed through the\n * gateway's `/<targetName>` path — so the browser only needs to reach the\n * gateway, and the agent runtimes can sit in a VPC behind it.\n */\nexport const agentcoreGatewayReactConnectionGenerator = async (\n tree: Tree,\n options: AgentcoreGatewayReactConnectionGeneratorSchema,\n) => {\n const frontendProject = readProjectConfigurationUnqualified(\n tree,\n options.sourceProject,\n );\n const gatewayProject = readProjectConfigurationUnqualified(\n tree,\n options.targetProject,\n );\n const gateway = readAgentCoreGatewayMetadata(gatewayProject);\n\n if (gateway.protocol !== 'http') {\n throw new Error(\n `Gateway '${gateway.name}' has protocol='${gateway.protocol}'. Websites can only connect to http-protocol gateways, which proxy requests to their agent targets.`,\n );\n }\n\n // A2A targets speak agent-to-agent JSON-RPC, not a browser protocol, so\n // the website only connects to the gateway's AG-UI / HTTP agents. A gateway\n // with none attached yet still gets its URL published and dev wiring —\n // re-running this connection after attaching agents generates their\n // website clients.\n const agents = frontedAgents(tree, gatewayProject.name).filter(\n (agent) =>\n ((agent.component.protocol as string) ?? '').toLowerCase() !== 'a2a',\n );\n if (agents.length === 0) {\n logger.warn(\n `Gateway '${gateway.name}' has no AG-UI or HTTP agents attached, so no website clients were generated. Connect agents to the gateway, then re-run this connection to generate their clients.`,\n );\n }\n\n // One website client per fronted agent, routed through the gateway.\n for (const agent of agents) {\n const generator =\n agent.language === 'ts'\n ? tsAgentReactConnectionGenerator\n : pyAgentReactConnectionGenerator;\n await generator(tree, {\n sourceProject: frontendProject.name,\n targetProject: agent.projectName,\n targetComponent: agent.component,\n preferInstallDependencies: options.preferInstallDependencies,\n gatewayRoute: {\n gatewayClassName: gateway.rc,\n targetName: agent.targetName,\n gatewayAuth: gateway.auth,\n },\n });\n }\n\n // Publish the gateway URL to the website via the 'connection' namespace.\n await addGatewayUrlToConnectionNamespace(tree, {\n gatewayNameKebabCase: kebabCase(gateway.rc),\n gatewayNameClassName: gateway.rc,\n });\n\n // Wire the website's dev target to the local gateway, which proxies to the\n // attached agents (transitively starting them via its own dev dependencies).\n await addGatewayTargetToLocalDev(\n tree,\n frontendProject.name,\n gatewayProject.name,\n {\n gatewayClassName: gateway.rc,\n port: gateway.port,\n },\n );\n\n // Recorded so the version sync can identify this connection.\n addComponentGeneratorMetadata(\n tree,\n frontendProject.name,\n AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO,\n gatewayProject.root,\n gateway.rc,\n );\n\n await addGeneratorMetricsIfApplicable(tree, [\n AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO,\n ]);\n\n await formatFilesInSubtree(tree);\n return () =>\n installDependencies(tree, options.preferInstallDependencies, {\n languages: ['typescript'],\n });\n};\n\n/**\n * The agents attached to the gateway, resolved from the connection entries\n * the `agentcore-gateway#agent-connection` generator recorded: each names the\n * agent project by root (`path`) and its gateway target name (`name`), which\n * matches the agent component's class name in kebab-case.\n */\nconst frontedAgents = (\n tree: Tree,\n gatewayProjectName: string,\n): FrontedAgent[] => {\n const gatewayProject = readProjectConfigurationUnqualified(\n tree,\n gatewayProjectName,\n );\n const connections = (\n ((gatewayProject.metadata as any)?.components ?? []) as ComponentMetadata[]\n ).filter(\n (c) => c.generator === AGENTCORE_GATEWAY_AGENT_CONNECTION_GENERATOR_INFO.id,\n );\n\n const projectsByRoot = new Map(\n [...getProjects(tree).values()].map((p) => [p.root, p]),\n );\n\n return connections.flatMap((connection) => {\n const agentProject = connection.path\n ? projectsByRoot.get(connection.path)\n : undefined;\n if (!agentProject) {\n return [];\n }\n const component = (\n ((agentProject.metadata as any)?.components ?? []) as ComponentMetadata[]\n ).find(\n (c) =>\n [TS_AGENT_GENERATOR_INFO.id, PY_AGENT_GENERATOR_INFO.id].includes(\n c.generator,\n ) && kebabCase((c.rc as string) ?? '') === connection.name,\n );\n if (!component) {\n return [];\n }\n return [\n {\n projectName: agentProject.name,\n component,\n targetName: connection.name,\n language: (component.generator === TS_AGENT_GENERATOR_INFO.id\n ? 'ts'\n : 'py') as 'ts' | 'py',\n },\n ];\n });\n};\n\nexport default agentcoreGatewayReactConnectionGenerator;\n"],"names":["getProjects","logger","addGatewayTargetToLocalDev","addGatewayUrlToConnectionNamespace","PY_AGENT_GENERATOR_INFO","pyAgentReactConnectionGenerator","TS_AGENT_GENERATOR_INFO","tsAgentReactConnectionGenerator","formatFilesInSubtree","installDependencies","addGeneratorMetricsIfApplicable","kebabCase","addComponentGeneratorMetadata","getGeneratorInfo","readProjectConfigurationUnqualified","AGENTCORE_GATEWAY_AGENT_CONNECTION_GENERATOR_INFO","readAgentCoreGatewayMetadata","AGENTCORE_GATEWAY_REACT_CONNECTION_GENERATOR_INFO","filename","agentcoreGatewayReactConnectionGenerator","tree","options","frontendProject","sourceProject","gatewayProject","targetProject","gateway","protocol","Error","name","agents","frontedAgents","filter","agent","component","toLowerCase","length","warn","generator","language","projectName","targetComponent","preferInstallDependencies","gatewayRoute","gatewayClassName","rc","targetName","gatewayAuth","auth","gatewayNameKebabCase","gatewayNameClassName","port","root","languages","gatewayProjectName","connections","metadata","components","c","id","projectsByRoot","Map","values","map","p","flatMap","connection","agentProject","path","get","undefined","find","includes"],"mappings":"AAAA;;;CAGC,GACD,SAASA,WAAW,EAAEC,MAAM,QAAmB,aAAa;AAC5D,SAASC,0BAA0B,QAAQ,sCAAmC;AAC9E,SAASC,kCAAkC,QAAQ,6CAA0C;AAC7F,SAASC,uBAAuB,QAAQ,8BAA2B;AACnE,SAASC,+BAA+B,QAAQ,+CAA4C;AAC5F,SAASC,uBAAuB,QAAQ,8BAA2B;AACnE,SAASC,+BAA+B,QAAQ,+CAA4C;AAC5F,SAASC,oBAAoB,QAAQ,wBAAqB;AAC1D,SAASC,mBAAmB,QAAQ,yBAAsB;AAC1D,SAASC,+BAA+B,QAAQ,yBAAsB;AACtE,SAASC,SAAS,QAAQ,uBAAoB;AAC9C,SACEC,6BAA6B,EAE7BC,gBAAgB,EAEhBC,mCAAmC,QAC9B,oBAAiB;AACxB,SAASC,iDAAiD,QAAQ,mCAAgC;AAClG,SAASC,4BAA4B,QAAQ,kBAAe;AAG5D,OAAO,MAAMC,oDACXJ,iBAAiB,YAAYK,QAAQ,EAAE;AAUzC;;;;;;;;CAQC,GACD,OAAO,MAAMC,2CAA2C,OACtDC,MACAC;IAEA,MAAMC,kBAAkBR,oCACtBM,MACAC,QAAQE,aAAa;IAEvB,MAAMC,iBAAiBV,oCACrBM,MACAC,QAAQI,aAAa;IAEvB,MAAMC,UAAUV,6BAA6BQ;IAE7C,IAAIE,QAAQC,QAAQ,KAAK,QAAQ;QAC/B,MAAM,IAAIC,MACR,CAAC,SAAS,EAAEF,QAAQG,IAAI,CAAC,gBAAgB,EAAEH,QAAQC,QAAQ,CAAC,oGAAoG,CAAC;IAErK;IAEA,wEAAwE;IACxE,4EAA4E;IAC5E,uEAAuE;IACvE,oEAAoE;IACpE,mBAAmB;IACnB,MAAMG,SAASC,cAAcX,MAAMI,eAAeK,IAAI,EAAEG,MAAM,CAC5D,CAACC,QACC,AAAC,CAAA,AAACA,MAAMC,SAAS,CAACP,QAAQ,IAAe,EAAC,EAAGQ,WAAW,OAAO;IAEnE,IAAIL,OAAOM,MAAM,KAAK,GAAG;QACvBnC,OAAOoC,IAAI,CACT,CAAC,SAAS,EAAEX,QAAQG,IAAI,CAAC,mKAAmK,CAAC;IAEjM;IAEA,oEAAoE;IACpE,KAAK,MAAMI,SAASH,OAAQ;QAC1B,MAAMQ,YACJL,MAAMM,QAAQ,KAAK,OACfhC,kCACAF;QACN,MAAMiC,UAAUlB,MAAM;YACpBG,eAAeD,gBAAgBO,IAAI;YACnCJ,eAAeQ,MAAMO,WAAW;YAChCC,iBAAiBR,MAAMC,SAAS;YAChCQ,2BAA2BrB,QAAQqB,yBAAyB;YAC5DC,cAAc;gBACZC,kBAAkBlB,QAAQmB,EAAE;gBAC5BC,YAAYb,MAAMa,UAAU;gBAC5BC,aAAarB,QAAQsB,IAAI;YAC3B;QACF;IACF;IAEA,yEAAyE;IACzE,MAAM7C,mCAAmCiB,MAAM;QAC7C6B,sBAAsBtC,UAAUe,QAAQmB,EAAE;QAC1CK,sBAAsBxB,QAAQmB,EAAE;IAClC;IAEA,2EAA2E;IAC3E,6EAA6E;IAC7E,MAAM3C,2BACJkB,MACAE,gBAAgBO,IAAI,EACpBL,eAAeK,IAAI,EACnB;QACEe,kBAAkBlB,QAAQmB,EAAE;QAC5BM,MAAMzB,QAAQyB,IAAI;IACpB;IAGF,6DAA6D;IAC7DvC,8BACEQ,MACAE,gBAAgBO,IAAI,EACpBZ,mDACAO,eAAe4B,IAAI,EACnB1B,QAAQmB,EAAE;IAGZ,MAAMnC,gCAAgCU,MAAM;QAC1CH;KACD;IAED,MAAMT,qBAAqBY;IAC3B,OAAO,IACLX,oBAAoBW,MAAMC,QAAQqB,yBAAyB,EAAE;YAC3DW,WAAW;gBAAC;aAAa;QAC3B;AACJ,EAAE;AAEF;;;;;CAKC,GACD,MAAMtB,gBAAgB,CACpBX,MACAkC;IAEA,MAAM9B,iBAAiBV,oCACrBM,MACAkC;IAEF,MAAMC,cAAc,AACjB,CAAA,AAAC/B,eAAegC,QAAQ,EAAUC,cAAc,EAAE,AAAD,EAClDzB,MAAM,CACN,CAAC0B,IAAMA,EAAEpB,SAAS,KAAKvB,kDAAkD4C,EAAE;IAG7E,MAAMC,iBAAiB,IAAIC,IACzB;WAAI7D,YAAYoB,MAAM0C,MAAM;KAAG,CAACC,GAAG,CAAC,CAACC,IAAM;YAACA,EAAEZ,IAAI;YAAEY;SAAE;IAGxD,OAAOT,YAAYU,OAAO,CAAC,CAACC;QAC1B,MAAMC,eAAeD,WAAWE,IAAI,GAChCR,eAAeS,GAAG,CAACH,WAAWE,IAAI,IAClCE;QACJ,IAAI,CAACH,cAAc;YACjB,OAAO,EAAE;QACX;QACA,MAAMjC,YAAY,AACf,CAAA,AAACiC,aAAaX,QAAQ,EAAUC,cAAc,EAAE,AAAD,EAChDc,IAAI,CACJ,CAACb,IACC;gBAACpD,wBAAwBqD,EAAE;gBAAEvD,wBAAwBuD,EAAE;aAAC,CAACa,QAAQ,CAC/Dd,EAAEpB,SAAS,KACR3B,UAAU,AAAC+C,EAAEb,EAAE,IAAe,QAAQqB,WAAWrC,IAAI;QAE9D,IAAI,CAACK,WAAW;YACd,OAAO,EAAE;QACX;QACA,OAAO;YACL;gBACEM,aAAa2B,aAAatC,IAAI;gBAC9BK;gBACAY,YAAYoB,WAAWrC,IAAI;gBAC3BU,UAAWL,UAAUI,SAAS,KAAKhC,wBAAwBqD,EAAE,GACzD,OACA;YACN;SACD;IACH;AACF;AAEA,eAAexC,yCAAyC"}