@aws/nx-plugin 1.0.0-rc.3 → 1.0.0-rc.30

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 (996) hide show
  1. package/LICENSE-THIRD-PARTY +7246 -5532
  2. package/README.md +8 -8
  3. package/executors.json +9 -0
  4. package/generators.json +100 -1
  5. package/package.json +35 -16
  6. package/src/agentcore-gateway/attach-upstream.d.ts +33 -0
  7. package/src/agentcore-gateway/attach-upstream.js +38 -0
  8. package/src/agentcore-gateway/attach-upstream.js.map +1 -0
  9. package/src/agentcore-gateway/files/cedar/policies/README.md +52 -0
  10. package/src/agentcore-gateway/files/cedar/policies/permit-all.cedar +11 -0
  11. package/src/agentcore-gateway/files/project/local-dev.ts.template +134 -0
  12. package/src/agentcore-gateway/gateway-connection/generator.d.ts +21 -0
  13. package/src/agentcore-gateway/gateway-connection/generator.js +101 -0
  14. package/src/agentcore-gateway/gateway-connection/generator.js.map +1 -0
  15. package/src/agentcore-gateway/gateway-connection/schema.d.js +6 -0
  16. package/src/agentcore-gateway/gateway-connection/schema.d.js.map +1 -0
  17. package/src/agentcore-gateway/gateway-connection/schema.d.ts +13 -0
  18. package/src/agentcore-gateway/gateway-connection/schema.json +31 -0
  19. package/src/agentcore-gateway/generator.d.ts +25 -0
  20. package/src/agentcore-gateway/generator.js +149 -0
  21. package/src/agentcore-gateway/generator.js.map +1 -0
  22. package/src/agentcore-gateway/mcp-connection/generator.d.ts +19 -0
  23. package/src/agentcore-gateway/mcp-connection/generator.js +59 -0
  24. package/src/agentcore-gateway/mcp-connection/generator.js.map +1 -0
  25. package/src/agentcore-gateway/mcp-connection/schema.d.js +6 -0
  26. package/src/agentcore-gateway/mcp-connection/schema.d.js.map +1 -0
  27. package/src/agentcore-gateway/mcp-connection/schema.d.ts +13 -0
  28. package/src/agentcore-gateway/mcp-connection/schema.json +31 -0
  29. package/src/agentcore-gateway/schema.d.js +6 -0
  30. package/src/agentcore-gateway/schema.d.js.map +1 -0
  31. package/src/agentcore-gateway/schema.d.ts +17 -0
  32. package/src/agentcore-gateway/schema.json +70 -0
  33. package/src/bin/aws-nx-mcp.js +14 -0
  34. package/src/bin/aws-nx-mcp.js.map +1 -0
  35. package/src/connection/{agent-serve-local.d.ts → agent-local-dev.d.ts} +7 -7
  36. package/src/connection/agent-local-dev.js +42 -0
  37. package/src/connection/agent-local-dev.js.map +1 -0
  38. package/src/connection/agent-runtime-config.d.ts +1 -1
  39. package/src/connection/agent-runtime-config.js +9 -14
  40. package/src/connection/agent-runtime-config.js.map +1 -1
  41. package/src/connection/generator.d.ts +7 -14
  42. package/src/connection/generator.js +158 -177
  43. package/src/connection/generator.js.map +1 -1
  44. package/src/connection/local-dev.d.ts +15 -0
  45. package/src/connection/local-dev.js +37 -0
  46. package/src/connection/local-dev.js.map +1 -0
  47. package/src/connection/schema.d.js +6 -0
  48. package/src/connection/schema.d.js.map +1 -0
  49. package/src/connection/schema.d.ts +1 -0
  50. package/src/connection/schema.json +5 -0
  51. package/src/connection/supported-connections.d.ts +98 -0
  52. package/src/connection/supported-connections.js +138 -0
  53. package/src/connection/supported-connections.js.map +1 -0
  54. package/src/index.js +2 -5
  55. package/src/index.js.map +1 -1
  56. package/src/infra/app/__snapshots__/generator.spec.ts.snap +51 -81
  57. package/src/infra/app/generator.d.ts +3 -3
  58. package/src/infra/app/generator.js +141 -123
  59. package/src/infra/app/generator.js.map +1 -1
  60. package/src/infra/app/schema.d.js +6 -0
  61. package/src/infra/app/schema.d.js.map +1 -0
  62. package/src/infra/app/schema.d.ts +1 -1
  63. package/src/infra/app/schema.json +5 -0
  64. package/src/license/__snapshots__/config.spec.ts.snap +23 -0
  65. package/src/license/config-types.d.ts +18 -1
  66. package/src/license/config-types.js +8 -2
  67. package/src/license/config-types.js.map +1 -1
  68. package/src/license/config.d.ts +65 -7
  69. package/src/license/config.js +442 -109
  70. package/src/license/config.js.map +1 -1
  71. package/src/license/dependency-check/check.d.ts +16 -0
  72. package/src/license/dependency-check/check.js +116 -0
  73. package/src/license/dependency-check/check.js.map +1 -0
  74. package/src/license/dependency-check/collectors/collector.d.ts +21 -0
  75. package/src/license/dependency-check/collectors/collector.js +46 -0
  76. package/src/license/dependency-check/collectors/collector.js.map +1 -0
  77. package/src/license/dependency-check/collectors/npm-collector.d.ts +10 -0
  78. package/src/license/dependency-check/collectors/npm-collector.js +68 -0
  79. package/src/license/dependency-check/collectors/npm-collector.js.map +1 -0
  80. package/src/license/dependency-check/collectors/python-collector.d.ts +23 -0
  81. package/src/license/dependency-check/collectors/python-collector.js +114 -0
  82. package/src/license/dependency-check/collectors/python-collector.js.map +1 -0
  83. package/src/license/dependency-check/evaluator.d.ts +9 -0
  84. package/src/license/dependency-check/evaluator.js +94 -0
  85. package/src/license/dependency-check/evaluator.js.map +1 -0
  86. package/src/license/dependency-check/executor-schema.json +6 -0
  87. package/src/license/dependency-check/executor.d.ts +9 -0
  88. package/src/license/dependency-check/executor.js +51 -0
  89. package/src/license/dependency-check/executor.js.map +1 -0
  90. package/src/license/dependency-check/pre-approved.d.ts +6 -0
  91. package/src/license/dependency-check/pre-approved.js +1893 -0
  92. package/src/license/dependency-check/pre-approved.js.map +1 -0
  93. package/src/license/dependency-check/types.d.ts +45 -0
  94. package/src/license/dependency-check/types.js +6 -0
  95. package/src/license/dependency-check/types.js.map +1 -0
  96. package/src/license/generator.d.ts +3 -3
  97. package/src/license/generator.js +127 -30
  98. package/src/license/generator.js.map +1 -1
  99. package/src/license/index.d.ts +8 -0
  100. package/src/license/index.js +7 -0
  101. package/src/license/index.js.map +1 -0
  102. package/src/license/known-exceptions.d.ts +7 -0
  103. package/src/license/known-exceptions.js +39 -0
  104. package/src/license/known-exceptions.js.map +1 -0
  105. package/src/license/schema.d.js +6 -0
  106. package/src/license/schema.d.js.map +1 -0
  107. package/src/license/schema.d.ts +7 -0
  108. package/src/license/schema.json +11 -0
  109. package/src/license/sync/generator.d.ts +2 -2
  110. package/src/license/sync/generator.js +100 -125
  111. package/src/license/sync/generator.js.map +1 -1
  112. package/src/license/sync/project-file-sync.d.ts +3 -3
  113. package/src/license/sync/project-file-sync.js +28 -35
  114. package/src/license/sync/project-file-sync.js.map +1 -1
  115. package/src/mcp-server/generator-info.d.ts +5 -1
  116. package/src/mcp-server/generator-info.js +130 -160
  117. package/src/mcp-server/generator-info.js.map +1 -1
  118. package/src/mcp-server/guide-pipeline.d.ts +1 -1
  119. package/src/mcp-server/guide-pipeline.js +184 -206
  120. package/src/mcp-server/guide-pipeline.js.map +1 -1
  121. package/src/mcp-server/guide-render.js +10 -25
  122. package/src/mcp-server/guide-render.js.map +1 -1
  123. package/src/mcp-server/index.js +6 -10
  124. package/src/mcp-server/index.js.map +1 -1
  125. package/src/mcp-server/mdx-ast.js +42 -56
  126. package/src/mcp-server/mdx-ast.js.map +1 -1
  127. package/src/mcp-server/option-filter.js +33 -47
  128. package/src/mcp-server/option-filter.js.map +1 -1
  129. package/src/mcp-server/schema-registry.d.ts +9 -3
  130. package/src/mcp-server/schema-registry.js +41 -38
  131. package/src/mcp-server/schema-registry.js.map +1 -1
  132. package/src/mcp-server/schema.js +9 -7
  133. package/src/mcp-server/schema.js.map +1 -1
  134. package/src/mcp-server/server.js +20 -24
  135. package/src/mcp-server/server.js.map +1 -1
  136. package/src/mcp-server/tools/create-workspace-command.d.ts +1 -1
  137. package/src/mcp-server/tools/create-workspace-command.js +23 -24
  138. package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
  139. package/src/mcp-server/tools/general-guidance.d.ts +2 -2
  140. package/src/mcp-server/tools/general-guidance.js +46 -25
  141. package/src/mcp-server/tools/general-guidance.js.map +1 -1
  142. package/src/mcp-server/tools/generator-guide.d.ts +2 -2
  143. package/src/mcp-server/tools/generator-guide.js +29 -37
  144. package/src/mcp-server/tools/generator-guide.js.map +1 -1
  145. package/src/mcp-server/tools/list-generators.d.ts +2 -2
  146. package/src/mcp-server/tools/list-generators.js +19 -25
  147. package/src/mcp-server/tools/list-generators.js.map +1 -1
  148. package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +1 -1
  149. package/src/open-api/ts-client/generator.d.ts +3 -3
  150. package/src/open-api/ts-client/generator.js +16 -26
  151. package/src/open-api/ts-client/generator.js.map +1 -1
  152. package/src/open-api/ts-client/schema.d.js +6 -0
  153. package/src/open-api/ts-client/schema.d.js.map +1 -0
  154. package/src/open-api/ts-hooks/generator.d.ts +3 -3
  155. package/src/open-api/ts-hooks/generator.js +13 -21
  156. package/src/open-api/ts-hooks/generator.js.map +1 -1
  157. package/src/open-api/ts-hooks/generator.spec.tsx +14 -14
  158. package/src/open-api/ts-hooks/schema.d.js +6 -0
  159. package/src/open-api/ts-hooks/schema.d.js.map +1 -0
  160. package/src/open-api/ts-metadata/generator.d.ts +3 -3
  161. package/src/open-api/ts-metadata/generator.js +12 -20
  162. package/src/open-api/ts-metadata/generator.js.map +1 -1
  163. package/src/open-api/ts-metadata/schema.d.js +6 -0
  164. package/src/open-api/ts-metadata/schema.d.js.map +1 -0
  165. package/src/open-api/utils/codegen-data/languages.d.ts +5 -1
  166. package/src/open-api/utils/codegen-data/languages.js +42 -60
  167. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  168. package/src/open-api/utils/codegen-data/types.js +31 -30
  169. package/src/open-api/utils/codegen-data/types.js.map +1 -1
  170. package/src/open-api/utils/codegen-data.d.ts +6 -2
  171. package/src/open-api/utils/codegen-data.js +253 -269
  172. package/src/open-api/utils/codegen-data.js.map +1 -1
  173. package/src/open-api/utils/normalise.d.ts +5 -1
  174. package/src/open-api/utils/normalise.js +242 -241
  175. package/src/open-api/utils/normalise.js.map +1 -1
  176. package/src/open-api/utils/parse.d.ts +2 -2
  177. package/src/open-api/utils/parse.js +11 -13
  178. package/src/open-api/utils/parse.js.map +1 -1
  179. package/src/open-api/utils/refs.d.ts +1 -1
  180. package/src/open-api/utils/refs.js +12 -22
  181. package/src/open-api/utils/refs.js.map +1 -1
  182. package/src/open-api/utils/types.js +5 -2
  183. package/src/open-api/utils/types.js.map +1 -1
  184. package/src/preset/__snapshots__/generator.spec.ts.snap +160 -17
  185. package/src/preset/generator.d.ts +4 -4
  186. package/src/preset/generator.js +140 -112
  187. package/src/preset/generator.js.map +1 -1
  188. package/src/preset/schema.d.js +6 -0
  189. package/src/preset/schema.d.js.map +1 -0
  190. package/src/preset/schema.d.ts +4 -2
  191. package/src/preset/schema.json +10 -5
  192. package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +304 -0
  193. package/src/py/agent/__snapshots__/generator.frameworks.spec.ts.snap +734 -0
  194. package/src/py/agent/__snapshots__/{generator.spec.ts.snap → generator.protocols.spec.ts.snap} +80 -314
  195. package/src/py/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +189 -0
  196. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client_strands.py.template +30 -0
  197. package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +28 -0
  198. package/src/py/agent/a2a-connection/generator.d.ts +3 -3
  199. package/src/py/agent/a2a-connection/generator.js +113 -85
  200. package/src/py/agent/a2a-connection/generator.js.map +1 -1
  201. package/src/py/agent/a2a-connection/schema.d.js +8 -0
  202. package/src/py/agent/a2a-connection/schema.d.js.map +1 -0
  203. package/src/py/agent/a2a-connection/schema.d.ts +1 -0
  204. package/src/py/agent/a2a-connection/schema.json +5 -0
  205. package/src/py/agent/files/a2a-langchain/main.py.template +89 -0
  206. package/src/py/agent/files/ag-ui-langchain/main.py.template +83 -0
  207. package/src/py/agent/files/common/agent.py.template +2 -0
  208. package/src/py/agent/files/common-langchain/agent.py.template +30 -0
  209. package/src/py/agent/files/http/init.py.template +7 -25
  210. package/src/py/agent/files/http/main.py.template +2 -3
  211. package/src/py/agent/files/http-langchain/main.py.template +84 -0
  212. package/src/py/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +184 -0
  213. package/src/py/agent/gateway-connection/files/agent-connection/app/__gatewaySnakeCase___client_strands.py.template +35 -0
  214. package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +34 -0
  215. package/src/py/agent/gateway-connection/generator.d.ts +10 -0
  216. package/src/py/agent/gateway-connection/generator.js +119 -0
  217. package/src/py/agent/gateway-connection/generator.js.map +1 -0
  218. package/src/py/agent/gateway-connection/schema.d.js +6 -0
  219. package/src/py/agent/gateway-connection/schema.d.js.map +1 -0
  220. package/src/py/agent/gateway-connection/schema.d.ts +13 -0
  221. package/src/py/agent/gateway-connection/schema.json +31 -0
  222. package/src/py/agent/generator.d.ts +3 -3
  223. package/src/py/agent/generator.js +280 -180
  224. package/src/py/agent/generator.js.map +1 -1
  225. package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +153 -89
  226. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client_strands.py.template +30 -0
  227. package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +30 -0
  228. package/src/py/agent/mcp-connection/generator.d.ts +3 -3
  229. package/src/py/agent/mcp-connection/generator.js +65 -126
  230. package/src/py/agent/mcp-connection/generator.js.map +1 -1
  231. package/src/py/agent/mcp-connection/schema.d.js +8 -0
  232. package/src/py/agent/mcp-connection/schema.d.js.map +1 -0
  233. package/src/py/agent/mcp-connection/schema.d.ts +1 -0
  234. package/src/py/agent/mcp-connection/schema.json +5 -0
  235. package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +11 -19
  236. package/src/py/agent/react-connection/generator.d.ts +4 -4
  237. package/src/py/agent/react-connection/generator.js +55 -59
  238. package/src/py/agent/react-connection/generator.js.map +1 -1
  239. package/src/py/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +6 -6
  240. package/src/py/agent/react-connection/local-dev.js +36 -0
  241. package/src/py/agent/react-connection/local-dev.js.map +1 -0
  242. package/src/py/agent/react-connection/schema.d.js +8 -0
  243. package/src/py/agent/react-connection/schema.d.js.map +1 -0
  244. package/src/py/agent/react-connection/schema.d.ts +1 -0
  245. package/src/py/agent/react-connection/schema.json +5 -0
  246. package/src/py/agent/schema.d.js +6 -0
  247. package/src/py/agent/schema.d.js.map +1 -0
  248. package/src/py/agent/schema.d.ts +2 -1
  249. package/src/py/agent/schema.json +6 -1
  250. package/src/py/api/generator.d.ts +3 -3
  251. package/src/py/api/generator.js +12 -11
  252. package/src/py/api/generator.js.map +1 -1
  253. package/src/py/api/schema.d.js +6 -0
  254. package/src/py/api/schema.d.js.map +1 -0
  255. package/src/py/api/schema.d.ts +1 -0
  256. package/src/py/api/schema.json +5 -0
  257. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +1526 -0
  258. package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +45 -0
  259. package/src/py/dynamodb/agent-connection/generator.d.ts +10 -0
  260. package/src/py/dynamodb/agent-connection/generator.js +39 -0
  261. package/src/py/dynamodb/agent-connection/generator.js.map +1 -0
  262. package/src/py/dynamodb/agent-connection/schema.d.js +8 -0
  263. package/src/py/dynamodb/agent-connection/schema.d.js.map +1 -0
  264. package/src/py/dynamodb/agent-connection/schema.d.ts +15 -0
  265. package/src/py/dynamodb/agent-connection/schema.json +27 -0
  266. package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +23 -0
  267. package/src/py/dynamodb/fast-api-connection/generator.d.ts +10 -0
  268. package/src/py/dynamodb/fast-api-connection/generator.js +37 -0
  269. package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -0
  270. package/src/py/dynamodb/fast-api-connection/schema.d.js +8 -0
  271. package/src/py/dynamodb/fast-api-connection/schema.d.js.map +1 -0
  272. package/src/py/dynamodb/fast-api-connection/schema.d.ts +13 -0
  273. package/src/py/dynamodb/fast-api-connection/schema.json +23 -0
  274. package/src/py/dynamodb/files/__name__/__init__.py.template +6 -0
  275. package/src/py/dynamodb/files/__name__/client.py.template +39 -0
  276. package/src/py/dynamodb/files/__name__/entities/__init__.py.template +4 -0
  277. package/src/py/dynamodb/files/__name__/entities/base.py.template +63 -0
  278. package/src/py/dynamodb/files/__name__/entities/example.py.template +64 -0
  279. package/src/py/dynamodb/files/config.json.template +24 -0
  280. package/src/py/dynamodb/generator.d.ts +10 -0
  281. package/src/py/dynamodb/generator.js +110 -0
  282. package/src/py/dynamodb/generator.js.map +1 -0
  283. package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +45 -0
  284. package/src/py/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  285. package/src/py/dynamodb/mcp-server-connection/generator.js +39 -0
  286. package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -0
  287. package/src/py/dynamodb/mcp-server-connection/schema.d.js +8 -0
  288. package/src/py/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  289. package/src/py/dynamodb/mcp-server-connection/schema.d.ts +15 -0
  290. package/src/py/dynamodb/mcp-server-connection/schema.json +27 -0
  291. package/src/py/dynamodb/schema.d.js +6 -0
  292. package/src/py/dynamodb/schema.d.js.map +1 -0
  293. package/src/py/dynamodb/schema.d.ts +16 -0
  294. package/src/py/dynamodb/schema.json +75 -0
  295. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +212 -4678
  296. package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +4833 -0
  297. package/src/py/fast-api/files/app/__name__/init.py.template +5 -22
  298. package/src/py/fast-api/files/app/__name__/main.py.template +4 -1
  299. package/src/py/fast-api/generator.d.ts +3 -3
  300. package/src/py/fast-api/generator.js +90 -87
  301. package/src/py/fast-api/generator.js.map +1 -1
  302. package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +4 -3
  303. package/src/py/fast-api/react/generator.d.ts +4 -4
  304. package/src/py/fast-api/react/generator.js +25 -25
  305. package/src/py/fast-api/react/generator.js.map +1 -1
  306. package/src/py/fast-api/react/open-api.d.ts +1 -1
  307. package/src/py/fast-api/react/open-api.js +31 -29
  308. package/src/py/fast-api/react/open-api.js.map +1 -1
  309. package/src/py/fast-api/react/schema.d.js +6 -0
  310. package/src/py/fast-api/react/schema.d.js.map +1 -0
  311. package/src/py/fast-api/react/schema.d.ts +1 -0
  312. package/src/py/fast-api/react/schema.json +5 -0
  313. package/src/py/fast-api/schema.d.js +6 -0
  314. package/src/py/fast-api/schema.d.js.map +1 -0
  315. package/src/py/fast-api/schema.d.ts +1 -0
  316. package/src/py/fast-api/schema.json +5 -0
  317. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
  318. package/src/py/lambda-function/generator.d.ts +3 -3
  319. package/src/py/lambda-function/generator.js +60 -59
  320. package/src/py/lambda-function/generator.js.map +1 -1
  321. package/src/py/lambda-function/schema.d.js +6 -0
  322. package/src/py/lambda-function/schema.d.js.map +1 -0
  323. package/src/py/lambda-function/schema.d.ts +1 -0
  324. package/src/py/lambda-function/schema.json +5 -0
  325. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +87 -17
  326. package/src/py/mcp-server/generator.d.ts +3 -3
  327. package/src/py/mcp-server/generator.js +152 -125
  328. package/src/py/mcp-server/generator.js.map +1 -1
  329. package/src/py/mcp-server/schema.d.js +6 -0
  330. package/src/py/mcp-server/schema.d.js.map +1 -0
  331. package/src/py/mcp-server/schema.d.ts +1 -0
  332. package/src/py/mcp-server/schema.json +5 -0
  333. package/src/py/project/generator.d.ts +17 -4
  334. package/src/py/project/generator.js +205 -127
  335. package/src/py/project/generator.js.map +1 -1
  336. package/src/py/project/schema.d.js +6 -0
  337. package/src/py/project/schema.d.js.map +1 -0
  338. package/src/py/project/schema.d.ts +1 -0
  339. package/src/py/project/schema.json +5 -0
  340. package/src/sdk/agentcore-gateway.d.ts +6 -0
  341. package/src/sdk/agentcore-gateway.js +7 -0
  342. package/src/sdk/agentcore-gateway.js.map +1 -0
  343. package/src/sdk/connection.d.ts +6 -0
  344. package/src/sdk/connection.js +6 -0
  345. package/src/sdk/connection.js.map +1 -0
  346. package/src/sdk/license.d.ts +8 -0
  347. package/src/sdk/license.js +7 -0
  348. package/src/sdk/license.js.map +1 -0
  349. package/src/sdk/open-api.d.ts +10 -0
  350. package/src/sdk/open-api.js +8 -0
  351. package/src/sdk/open-api.js.map +1 -0
  352. package/src/sdk/py.d.ts +14 -0
  353. package/src/sdk/py.js +10 -0
  354. package/src/sdk/py.js.map +1 -0
  355. package/src/sdk/terraform.d.ts +6 -0
  356. package/src/sdk/terraform.js +7 -0
  357. package/src/sdk/terraform.js.map +1 -0
  358. package/src/sdk/ts.d.ts +33 -0
  359. package/src/sdk/ts.js +35 -0
  360. package/src/sdk/ts.js.map +1 -0
  361. package/{sdk → src/sdk}/utils/ast.d.ts +1 -2
  362. package/src/sdk/utils/ast.js +6 -0
  363. package/src/sdk/utils/ast.js.map +1 -0
  364. package/{sdk → src/sdk}/utils/format.d.ts +1 -1
  365. package/src/sdk/utils/format.js +6 -0
  366. package/src/sdk/utils/format.js.map +1 -0
  367. package/{sdk → src/sdk}/utils/test.d.ts +1 -1
  368. package/src/sdk/utils/test.js +6 -0
  369. package/src/sdk/utils/test.js.map +1 -0
  370. package/src/smithy/project/__snapshots__/generator.spec.ts.snap +19 -24
  371. package/src/smithy/project/files/build.Dockerfile.template +1 -4
  372. package/src/smithy/project/files/src/operations/echo.smithy.template +1 -0
  373. package/src/smithy/project/generator.d.ts +3 -3
  374. package/src/smithy/project/generator.js +64 -57
  375. package/src/smithy/project/generator.js.map +1 -1
  376. package/src/smithy/project/schema.d.js +6 -0
  377. package/src/smithy/project/schema.d.js.map +1 -0
  378. package/src/smithy/project/schema.d.ts +1 -0
  379. package/src/smithy/project/schema.json +5 -0
  380. package/src/smithy/react-connection/__snapshots__/generator.spec.ts.snap +1 -1
  381. package/src/smithy/react-connection/generator.d.ts +3 -3
  382. package/src/smithy/react-connection/generator.js +39 -47
  383. package/src/smithy/react-connection/generator.js.map +1 -1
  384. package/src/smithy/react-connection/schema.d.js +6 -0
  385. package/src/smithy/react-connection/schema.d.js.map +1 -0
  386. package/src/smithy/react-connection/schema.d.ts +1 -0
  387. package/src/smithy/react-connection/schema.json +5 -0
  388. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +409 -106
  389. package/src/smithy/ts/api/generator.d.ts +3 -3
  390. package/src/smithy/ts/api/generator.js +127 -106
  391. package/src/smithy/ts/api/generator.js.map +1 -1
  392. package/src/smithy/ts/api/schema.d.js +6 -0
  393. package/src/smithy/ts/api/schema.d.js.map +1 -0
  394. package/src/smithy/ts/api/schema.d.ts +1 -0
  395. package/src/smithy/ts/api/schema.json +5 -0
  396. package/src/terraform/project/files/application/src/main.tf.template +6 -1
  397. package/src/terraform/project/files/application/src/providers.tf.template +1 -1
  398. package/src/terraform/project/generator.d.ts +3 -3
  399. package/src/terraform/project/generator.js +156 -104
  400. package/src/terraform/project/generator.js.map +1 -1
  401. package/src/terraform/project/schema.d.js +9 -0
  402. package/src/terraform/project/schema.d.js.map +1 -0
  403. package/src/terraform/project/schema.d.ts +1 -0
  404. package/src/terraform/project/schema.json +5 -0
  405. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +499 -110
  406. package/src/trpc/backend/files/src/procedures/echo.ts.template +1 -1
  407. package/src/trpc/backend/files/src/schema/echo.ts.template +2 -2
  408. package/src/trpc/backend/generator.d.ts +4 -4
  409. package/src/trpc/backend/generator.js +97 -85
  410. package/src/trpc/backend/generator.js.map +1 -1
  411. package/src/trpc/backend/schema.d.js +6 -0
  412. package/src/trpc/backend/schema.d.js.map +1 -0
  413. package/src/trpc/backend/schema.d.ts +3 -2
  414. package/src/trpc/backend/schema.json +5 -0
  415. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +4 -4
  416. package/src/trpc/react/files/src/components/__apiNameClassName__ClientProvider.tsx.template +3 -3
  417. package/src/trpc/react/generator.d.ts +4 -4
  418. package/src/trpc/react/generator.js +63 -58
  419. package/src/trpc/react/generator.js.map +1 -1
  420. package/src/trpc/react/schema.d.js +6 -0
  421. package/src/trpc/react/schema.d.js.map +1 -0
  422. package/src/trpc/react/schema.d.ts +1 -0
  423. package/src/trpc/react/schema.json +5 -0
  424. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +656 -18
  425. package/src/ts/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +256 -0
  426. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +23 -0
  427. package/src/ts/agent/a2a-connection/generator.d.ts +3 -3
  428. package/src/ts/agent/a2a-connection/generator.js +63 -56
  429. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  430. package/src/ts/agent/a2a-connection/schema.d.js +8 -0
  431. package/src/ts/agent/a2a-connection/schema.d.js.map +1 -0
  432. package/src/ts/agent/a2a-connection/schema.d.ts +1 -0
  433. package/src/ts/agent/a2a-connection/schema.json +5 -0
  434. package/src/ts/agent/files/common/agent.ts.template +6 -2
  435. package/src/ts/agent/files/http/router.ts.template +1 -1
  436. package/src/ts/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +220 -0
  437. package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +30 -0
  438. package/src/ts/agent/gateway-connection/generator.d.ts +10 -0
  439. package/src/ts/agent/gateway-connection/generator.js +114 -0
  440. package/src/ts/agent/gateway-connection/generator.js.map +1 -0
  441. package/src/ts/agent/gateway-connection/schema.d.js +6 -0
  442. package/src/ts/agent/gateway-connection/schema.d.js.map +1 -0
  443. package/src/ts/agent/gateway-connection/schema.d.ts +13 -0
  444. package/src/ts/agent/gateway-connection/schema.json +31 -0
  445. package/src/ts/agent/generator.d.ts +3 -3
  446. package/src/ts/agent/generator.js +188 -144
  447. package/src/ts/agent/generator.js.map +1 -1
  448. package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +192 -111
  449. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +22 -0
  450. package/src/ts/agent/mcp-connection/generator.d.ts +3 -3
  451. package/src/ts/agent/mcp-connection/generator.js +53 -60
  452. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  453. package/src/ts/agent/mcp-connection/schema.d.js +8 -0
  454. package/src/ts/agent/mcp-connection/schema.d.js.map +1 -0
  455. package/src/ts/agent/mcp-connection/schema.d.ts +1 -0
  456. package/src/ts/agent/mcp-connection/schema.json +5 -0
  457. package/src/ts/agent/react-connection/generator.d.ts +4 -4
  458. package/src/ts/agent/react-connection/generator.js +86 -80
  459. package/src/ts/agent/react-connection/generator.js.map +1 -1
  460. package/src/ts/agent/react-connection/local-dev.d.ts +13 -0
  461. package/src/ts/agent/react-connection/local-dev.js +17 -0
  462. package/src/ts/agent/react-connection/local-dev.js.map +1 -0
  463. package/src/ts/agent/react-connection/schema.d.js +8 -0
  464. package/src/ts/agent/react-connection/schema.d.js.map +1 -0
  465. package/src/ts/agent/react-connection/schema.d.ts +1 -0
  466. package/src/ts/agent/react-connection/schema.json +5 -0
  467. package/src/ts/agent/schema.d.js +6 -0
  468. package/src/ts/agent/schema.d.js.map +1 -0
  469. package/src/ts/agent/schema.d.ts +1 -0
  470. package/src/ts/agent/schema.json +5 -0
  471. package/src/ts/api/generator.d.ts +3 -3
  472. package/src/ts/api/generator.js +16 -16
  473. package/src/ts/api/generator.js.map +1 -1
  474. package/src/ts/api/schema.d.js +6 -0
  475. package/src/ts/api/schema.d.js.map +1 -0
  476. package/src/ts/api/schema.d.ts +3 -1
  477. package/src/ts/api/schema.json +5 -0
  478. package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +15 -16
  479. package/src/ts/astro-docs/generator.d.ts +3 -3
  480. package/src/ts/astro-docs/generator.js +69 -54
  481. package/src/ts/astro-docs/generator.js.map +1 -1
  482. package/src/ts/astro-docs/schema.d.js +6 -0
  483. package/src/ts/astro-docs/schema.d.js.map +1 -0
  484. package/src/ts/astro-docs/schema.d.ts +2 -2
  485. package/src/ts/astro-docs/schema.json +3 -3
  486. package/src/ts/docs/generator.d.ts +3 -3
  487. package/src/ts/docs/generator.js +10 -10
  488. package/src/ts/docs/generator.js.map +1 -1
  489. package/src/ts/docs/schema.d.js +6 -0
  490. package/src/ts/docs/schema.d.js.map +1 -0
  491. package/src/ts/docs/schema.d.ts +1 -4
  492. package/src/ts/docs/schema.json +3 -3
  493. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +1390 -0
  494. package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +45 -0
  495. package/src/ts/dynamodb/agent-connection/generator.d.ts +10 -0
  496. package/src/ts/dynamodb/agent-connection/generator.js +30 -0
  497. package/src/ts/dynamodb/agent-connection/generator.js.map +1 -0
  498. package/src/ts/dynamodb/agent-connection/schema.d.js +8 -0
  499. package/src/ts/dynamodb/agent-connection/schema.d.js.map +1 -0
  500. package/src/ts/dynamodb/agent-connection/schema.d.ts +15 -0
  501. package/src/ts/dynamodb/agent-connection/schema.json +27 -0
  502. package/src/ts/dynamodb/files/config.json.template +24 -0
  503. package/src/ts/dynamodb/files/src/client.ts.template +61 -0
  504. package/src/ts/dynamodb/files/src/entities/example.ts.template +47 -0
  505. package/src/ts/dynamodb/files/src/entities/index.ts.template +1 -0
  506. package/src/ts/dynamodb/files/src/index.ts.template +2 -0
  507. package/src/ts/dynamodb/generator.d.ts +10 -0
  508. package/src/ts/dynamodb/generator.js +116 -0
  509. package/src/ts/dynamodb/generator.js.map +1 -0
  510. package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +45 -0
  511. package/src/ts/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  512. package/src/ts/dynamodb/mcp-server-connection/generator.js +30 -0
  513. package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -0
  514. package/src/ts/dynamodb/mcp-server-connection/schema.d.js +8 -0
  515. package/src/ts/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  516. package/src/ts/dynamodb/mcp-server-connection/schema.d.ts +15 -0
  517. package/src/ts/dynamodb/mcp-server-connection/schema.json +27 -0
  518. package/src/ts/dynamodb/schema.d.js +6 -0
  519. package/src/ts/dynamodb/schema.d.js.map +1 -0
  520. package/src/ts/dynamodb/schema.d.ts +16 -0
  521. package/src/ts/dynamodb/schema.json +75 -0
  522. package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +23 -0
  523. package/src/ts/dynamodb/smithy-connection/generator.d.ts +10 -0
  524. package/src/ts/dynamodb/smithy-connection/generator.js +28 -0
  525. package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -0
  526. package/src/ts/dynamodb/smithy-connection/schema.d.js +8 -0
  527. package/src/ts/dynamodb/smithy-connection/schema.d.js.map +1 -0
  528. package/src/ts/dynamodb/smithy-connection/schema.d.ts +13 -0
  529. package/src/ts/dynamodb/smithy-connection/schema.json +23 -0
  530. package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +23 -0
  531. package/src/ts/dynamodb/trpc-connection/generator.d.ts +10 -0
  532. package/src/ts/dynamodb/trpc-connection/generator.js +28 -0
  533. package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -0
  534. package/src/ts/dynamodb/trpc-connection/schema.d.js +8 -0
  535. package/src/ts/dynamodb/trpc-connection/schema.d.js.map +1 -0
  536. package/src/ts/dynamodb/trpc-connection/schema.d.ts +13 -0
  537. package/src/ts/dynamodb/trpc-connection/schema.json +23 -0
  538. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +4 -4
  539. package/src/ts/lambda-function/generator.d.ts +3 -3
  540. package/src/ts/lambda-function/generator.js +59 -56
  541. package/src/ts/lambda-function/generator.js.map +1 -1
  542. package/src/ts/lambda-function/io.js +83 -52
  543. package/src/ts/lambda-function/io.js.map +1 -1
  544. package/src/ts/lambda-function/schema.d.js +6 -0
  545. package/src/ts/lambda-function/schema.d.js.map +1 -0
  546. package/src/ts/lambda-function/schema.d.ts +1 -0
  547. package/src/ts/lambda-function/schema.json +5 -0
  548. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +53 -99
  549. package/src/ts/lib/__snapshots__/vitest.spec.ts.snap +24 -0
  550. package/src/ts/lib/biome.d.ts +7 -0
  551. package/src/ts/lib/biome.js +58 -0
  552. package/src/ts/lib/biome.js.map +1 -0
  553. package/src/ts/lib/generator.d.ts +3 -3
  554. package/src/ts/lib/generator.js +96 -96
  555. package/src/ts/lib/generator.js.map +1 -1
  556. package/src/ts/lib/grit/vitest-pass-with-no-tests.grit +1 -4
  557. package/src/ts/lib/schema.d.js +6 -0
  558. package/src/ts/lib/schema.d.js.map +1 -0
  559. package/src/ts/lib/schema.d.ts +1 -1
  560. package/src/ts/lib/schema.json +5 -0
  561. package/src/ts/lib/ts-project-utils.d.ts +12 -2
  562. package/src/ts/lib/ts-project-utils.js +80 -65
  563. package/src/ts/lib/ts-project-utils.js.map +1 -1
  564. package/src/ts/lib/types.js +5 -2
  565. package/src/ts/lib/types.js.map +1 -1
  566. package/src/ts/lib/vitest.d.ts +2 -2
  567. package/src/ts/lib/vitest.js +29 -26
  568. package/src/ts/lib/vitest.js.map +1 -1
  569. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +83 -13
  570. package/src/ts/mcp-server/generator.d.ts +3 -3
  571. package/src/ts/mcp-server/generator.js +164 -120
  572. package/src/ts/mcp-server/generator.js.map +1 -1
  573. package/src/ts/mcp-server/schema.d.js +6 -0
  574. package/src/ts/mcp-server/schema.d.js.map +1 -0
  575. package/src/ts/mcp-server/schema.d.ts +1 -0
  576. package/src/ts/mcp-server/schema.json +5 -0
  577. package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +46 -26
  578. package/src/ts/nx-generator/files/common/schema.d.ts.template +1 -0
  579. package/src/ts/nx-generator/files/common/schema.json.template +5 -0
  580. package/src/ts/nx-generator/files/local/generator.ts.template +3 -3
  581. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +6 -7
  582. package/src/ts/nx-generator/generator.d.ts +2 -2
  583. package/src/ts/nx-generator/generator.js +111 -74
  584. package/src/ts/nx-generator/generator.js.map +1 -1
  585. package/src/ts/nx-generator/schema.d.js +6 -0
  586. package/src/ts/nx-generator/schema.d.js.map +1 -0
  587. package/src/ts/nx-generator/schema.d.ts +1 -0
  588. package/src/ts/nx-generator/schema.json +5 -0
  589. package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +30 -18
  590. package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
  591. package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
  592. package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
  593. package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
  594. package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
  595. package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +3 -3
  596. package/src/ts/nx-plugin/generator.d.ts +3 -3
  597. package/src/ts/nx-plugin/generator.js +60 -51
  598. package/src/ts/nx-plugin/generator.js.map +1 -1
  599. package/src/ts/nx-plugin/schema.d.js +9 -0
  600. package/src/ts/nx-plugin/schema.d.js.map +1 -0
  601. package/src/ts/nx-plugin/schema.json +5 -0
  602. package/src/ts/nx-plugin/utils.d.ts +1 -1
  603. package/src/ts/nx-plugin/utils.js +32 -38
  604. package/src/ts/nx-plugin/utils.js.map +1 -1
  605. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +312 -482
  606. package/src/ts/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +6 -6
  607. package/src/ts/rdb/agent-connection/generator.d.ts +3 -3
  608. package/src/ts/rdb/agent-connection/generator.js +38 -39
  609. package/src/ts/rdb/agent-connection/generator.js.map +1 -1
  610. package/src/ts/rdb/agent-connection/schema.d.js +8 -0
  611. package/src/ts/rdb/agent-connection/schema.d.js.map +1 -0
  612. package/src/ts/rdb/agent-connection/schema.d.ts +1 -0
  613. package/src/ts/rdb/agent-connection/schema.json +5 -0
  614. package/src/ts/rdb/files/config.json.template +14 -0
  615. package/src/ts/rdb/files/prisma.config.ts.template +6 -5
  616. package/src/ts/rdb/files/src/create-db-user-handler.ts.template +7 -9
  617. package/src/ts/rdb/files/src/index.ts.template +0 -1
  618. package/src/ts/rdb/files/src/migration-handler.ts.template +1 -28
  619. package/src/ts/rdb/files/src/prisma.ts.template +28 -23
  620. package/src/ts/rdb/files/src/utils.ts.template +3 -0
  621. package/src/ts/rdb/generator.d.ts +3 -7
  622. package/src/ts/rdb/generator.js +158 -130
  623. package/src/ts/rdb/generator.js.map +1 -1
  624. package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +6 -6
  625. package/src/ts/rdb/mcp-server-connection/generator.d.ts +3 -3
  626. package/src/ts/rdb/mcp-server-connection/generator.js +36 -37
  627. package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
  628. package/src/ts/rdb/mcp-server-connection/schema.d.js +8 -0
  629. package/src/ts/rdb/mcp-server-connection/schema.d.js.map +1 -0
  630. package/src/ts/rdb/mcp-server-connection/schema.d.ts +1 -0
  631. package/src/ts/rdb/mcp-server-connection/schema.json +5 -0
  632. package/src/ts/rdb/schema.d.js +6 -0
  633. package/src/ts/rdb/schema.d.js.map +1 -0
  634. package/src/ts/rdb/schema.d.ts +1 -0
  635. package/src/ts/rdb/schema.json +5 -0
  636. package/src/ts/rdb/smithy-connection/__snapshots__/generator.spec.ts.snap +3 -3
  637. package/src/ts/rdb/smithy-connection/generator.d.ts +3 -3
  638. package/src/ts/rdb/smithy-connection/generator.js +46 -43
  639. package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
  640. package/src/ts/rdb/smithy-connection/schema.d.js +8 -0
  641. package/src/ts/rdb/smithy-connection/schema.d.js.map +1 -0
  642. package/src/ts/rdb/smithy-connection/schema.d.ts +1 -0
  643. package/src/ts/rdb/smithy-connection/schema.json +5 -0
  644. package/src/ts/rdb/trpc-connection/__snapshots__/generator.spec.ts.snap +3 -3
  645. package/src/ts/rdb/trpc-connection/generator.d.ts +3 -3
  646. package/src/ts/rdb/trpc-connection/generator.js +36 -31
  647. package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
  648. package/src/ts/rdb/trpc-connection/schema.d.js +8 -0
  649. package/src/ts/rdb/trpc-connection/schema.d.js.map +1 -0
  650. package/src/ts/rdb/trpc-connection/schema.d.ts +1 -0
  651. package/src/ts/rdb/trpc-connection/schema.json +5 -0
  652. package/src/ts/rdb/utils.d.ts +1 -1
  653. package/src/ts/rdb/utils.js +9 -11
  654. package/src/ts/rdb/utils.js.map +1 -1
  655. package/src/ts/react-website/agui/files/common/src/hooks/useAgui__agentNameClassName__.tsx.template +1 -16
  656. package/src/ts/react-website/agui/generator.d.ts +1 -1
  657. package/src/ts/react-website/agui/generator.js +69 -62
  658. package/src/ts/react-website/agui/generator.js.map +1 -1
  659. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +626 -612
  660. package/src/ts/react-website/app/generator.d.ts +4 -4
  661. package/src/ts/react-website/app/generator.js +217 -192
  662. package/src/ts/react-website/app/generator.js.map +1 -1
  663. package/src/ts/react-website/app/schema.d.js +6 -0
  664. package/src/ts/react-website/app/schema.d.js.map +1 -0
  665. package/src/ts/react-website/app/schema.d.ts +1 -1
  666. package/src/ts/react-website/app/schema.json +11 -6
  667. package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +129 -18
  668. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +36 -10
  669. package/src/ts/react-website/cognito-auth/__snapshots__/generator.ux-provider.spec.ts.snap +0 -20
  670. package/src/ts/react-website/cognito-auth/files/app/components/CognitoAuth/index.tsx.template +2 -2
  671. package/src/ts/react-website/cognito-auth/generator.d.ts +4 -4
  672. package/src/ts/react-website/cognito-auth/generator.js +64 -63
  673. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  674. package/src/ts/react-website/cognito-auth/grit/cloudscape-auth-menu.grit +8 -6
  675. package/src/ts/react-website/cognito-auth/grit/cognito-auth-wrapper.grit +1 -1
  676. package/src/ts/react-website/cognito-auth/grit/none-auth-menu.grit +1 -0
  677. package/src/ts/react-website/cognito-auth/grit/shadcn-auth-menu.grit +3 -1
  678. package/src/ts/react-website/cognito-auth/grit/shadcn-state-declarations.grit +3 -1
  679. package/src/ts/react-website/cognito-auth/schema.d.js +6 -0
  680. package/src/ts/react-website/cognito-auth/schema.d.js.map +1 -0
  681. package/src/ts/react-website/cognito-auth/schema.d.ts +1 -0
  682. package/src/ts/react-website/cognito-auth/schema.json +5 -0
  683. package/src/ts/react-website/cognito-auth/utils.d.ts +1 -1
  684. package/src/ts/react-website/cognito-auth/utils.js +34 -32
  685. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  686. package/src/ts/react-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -2
  687. package/src/ts/react-website/runtime-config/files/app/components/RuntimeConfig/index.tsx.template +2 -2
  688. package/src/ts/react-website/runtime-config/generator.d.ts +3 -3
  689. package/src/ts/react-website/runtime-config/generator.js +29 -31
  690. package/src/ts/react-website/runtime-config/generator.js.map +1 -1
  691. package/src/ts/react-website/runtime-config/schema.d.js +6 -0
  692. package/src/ts/react-website/runtime-config/schema.d.js.map +1 -0
  693. package/src/ts/react-website/runtime-config/schema.d.ts +1 -0
  694. package/src/ts/react-website/runtime-config/schema.json +5 -0
  695. package/src/ts/sync/generator.d.ts +3 -3
  696. package/src/ts/sync/generator.js +60 -59
  697. package/src/ts/sync/generator.js.map +1 -1
  698. package/src/ts/website/app/generator.d.ts +3 -3
  699. package/src/ts/website/app/generator.js +10 -10
  700. package/src/ts/website/app/generator.js.map +1 -1
  701. package/src/ts/website/app/schema.d.js +6 -0
  702. package/src/ts/website/app/schema.d.js.map +1 -0
  703. package/src/ts/website/app/schema.d.ts +1 -1
  704. package/src/ts/website/app/schema.json +11 -6
  705. package/src/ts/website/auth/generator.d.ts +4 -4
  706. package/src/ts/website/auth/generator.js +11 -10
  707. package/src/ts/website/auth/generator.js.map +1 -1
  708. package/src/ts/website/auth/schema.d.js +6 -0
  709. package/src/ts/website/auth/schema.d.js.map +1 -0
  710. package/src/ts/website/auth/schema.d.ts +1 -0
  711. package/src/ts/website/auth/schema.json +5 -0
  712. package/src/utils/agent-chat/agent-chat.d.ts +31 -0
  713. package/src/utils/agent-chat/agent-chat.js +29 -0
  714. package/src/utils/agent-chat/agent-chat.js.map +1 -0
  715. package/src/utils/agent-chat/files/a2a/chat.ts.template +33 -0
  716. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +17 -0
  717. package/src/utils/agent-chat/files/common/agentcore.ts.template +81 -0
  718. package/src/utils/agent-chat/files/http-py/chat.ts.template +43 -0
  719. package/src/utils/agent-chat/files/http-ts/chat.ts.template +54 -0
  720. package/src/utils/agent-connection/agent-connection.d.ts +117 -25
  721. package/src/utils/agent-connection/agent-connection.js +411 -103
  722. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  723. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client-config.ts.template +93 -0
  724. package/src/utils/agent-connection/files/core-auth/agentcore-endpoints.ts.template +37 -0
  725. package/src/utils/agent-connection/files/core-auth/agentcore-fetch.ts.template +54 -0
  726. package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +41 -0
  727. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-transport.ts.template +70 -0
  728. package/src/utils/agent-connection/files/core-runtime-config/runtime-config.ts.template +22 -32
  729. package/src/utils/agent-connection/files/core-shared/agentcore-transport.ts.template +39 -0
  730. package/src/utils/agent-connection/files/core-strands/a2a/agentcore-a2a-client-strands.ts.template +61 -0
  731. package/src/utils/agent-connection/files/core-strands/base/model-errors-strands.ts.template +36 -0
  732. package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +26 -0
  733. package/src/utils/agent-connection/files/core-strands/mcp/agentcore-mcp-client-strands.ts.template +27 -0
  734. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client_config.py.template +43 -0
  735. package/src/utils/agent-connection/files/py-core-auth/agentcore_endpoints.py.template +47 -0
  736. package/src/utils/agent-connection/files/py-core-auth/auth/session.py.template +51 -0
  737. package/src/utils/agent-connection/files/py-core-gateway/agentcore_gateway_mcp_transport.py.template +28 -0
  738. package/src/utils/agent-connection/files/py-core-langchain/a2a/agentcore_a2a_client_langchain.py.template +99 -0
  739. package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +57 -0
  740. package/src/utils/agent-connection/files/py-core-langchain/mcp/agentcore_mcp_client_langchain.py.template +64 -0
  741. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_transport.py.template +34 -0
  742. package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +5 -18
  743. package/src/utils/agent-connection/files/py-core-shared/agentcore_transport.py.template +40 -0
  744. package/src/utils/agent-connection/files/py-core-strands/a2a/agentcore_a2a_client_strands.py.template +66 -0
  745. package/src/utils/agent-connection/files/py-core-strands/base/model_errors_strands.py.template +40 -0
  746. package/src/utils/agent-connection/files/py-core-strands/gateway/agentcore_gateway_mcp_client_strands.py.template +22 -0
  747. package/src/utils/agent-connection/files/py-core-strands/mcp/agentcore_mcp_client_strands.py.template +30 -0
  748. package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +11 -3
  749. package/src/utils/agent-core-constructs/agent-core-constructs.js +86 -38
  750. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  751. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +4 -0
  752. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.ts.template +50 -0
  753. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/agentcore-gateway.ts.template +487 -0
  754. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/readiness-probe/index.js.template +55 -0
  755. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.tf.template +449 -0
  756. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/render-cedar.cjs.template +13 -0
  757. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +80 -12
  758. package/src/utils/agent-core-constructs/files/terraform/core/agentcore-gateway/gateway.tf.template +14 -0
  759. package/src/utils/api-constructs/api-constructs.d.ts +2 -2
  760. package/src/utils/api-constructs/api-constructs.js +30 -31
  761. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  762. package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +3 -0
  763. package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +23 -6
  764. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +58 -0
  765. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +82 -0
  766. package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +51 -15
  767. package/src/utils/api-constructs/files/cdk/core/api/utils/utils.ts.template +61 -7
  768. package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +1 -8
  769. package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +94 -4
  770. package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +1 -1
  771. package/src/utils/api-constructs/files/terraform/core/api/rest/api-gateway-account/api-gateway-account.tf.template +83 -0
  772. package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +5 -11
  773. package/src/utils/api-constructs/open-api-metadata.d.ts +2 -2
  774. package/src/utils/api-constructs/open-api-metadata.js +22 -22
  775. package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
  776. package/src/utils/ast/website.d.ts +5 -1
  777. package/src/utils/ast/website.js +18 -20
  778. package/src/utils/ast/website.js.map +1 -1
  779. package/src/utils/ast.d.ts +33 -1
  780. package/src/utils/ast.js +130 -70
  781. package/src/utils/ast.js.map +1 -1
  782. package/src/utils/bundle/bundle.d.ts +1 -1
  783. package/src/utils/bundle/bundle.js +50 -47
  784. package/src/utils/bundle/bundle.js.map +1 -1
  785. package/src/utils/commands.js +47 -26
  786. package/src/utils/commands.js.map +1 -1
  787. package/src/utils/config/index.d.ts +5 -5
  788. package/src/utils/config/index.js +5 -4
  789. package/src/utils/config/index.js.map +1 -1
  790. package/src/utils/config/utils.d.ts +13 -3
  791. package/src/utils/config/utils.js +65 -43
  792. package/src/utils/config/utils.js.map +1 -1
  793. package/src/utils/connection/open-api/files/components/__apiNameClassName__Provider.tsx.template +1 -1
  794. package/src/utils/connection/open-api/react.d.ts +6 -6
  795. package/src/utils/connection/open-api/react.js +81 -77
  796. package/src/utils/connection/open-api/react.js.map +1 -1
  797. package/src/utils/containers.d.ts +1 -1
  798. package/src/utils/containers.js +22 -23
  799. package/src/utils/containers.js.map +1 -1
  800. package/src/utils/dynamodb-constructs/dynamodb-constructs.d.ts +18 -0
  801. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +48 -0
  802. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -0
  803. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +43 -0
  804. package/src/utils/dynamodb-constructs/files/cdk/core/dynamodb.ts.template +105 -0
  805. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +72 -0
  806. package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +155 -0
  807. package/src/utils/files/common/scripts/src/dynamodb/create-local-table.ts.template +195 -0
  808. package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +13 -0
  809. package/src/utils/files/common/scripts/src/dynamodb/start-container.ts.template +106 -0
  810. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/cdk-command.ts.template +6 -3
  811. package/src/utils/files/common/scripts/src/rdb/mysql/wait-for-mysql-db.ts.template +32 -0
  812. package/src/utils/files/common/scripts/src/rdb/postgres/wait-for-postgres-db.ts.template +32 -0
  813. package/src/utils/files/common/scripts/src/rdb/shared/pull-image.ts.template +16 -0
  814. package/src/utils/files/common/scripts/src/rdb/shared/start-container.ts.template +117 -0
  815. package/src/utils/files/terraform/src/core/asset-bucket/asset-bucket.tf.template +2 -2
  816. package/src/utils/files/terraform/src/core/runtime-config/appconfig/appconfig.tf.template +1 -1
  817. package/src/utils/files/terraform/src/core/runtime-config/appconfig-deployment/appconfig-deployment.tf.template +12 -6
  818. package/src/utils/files/terraform/src/core/runtime-config/entry/entry.tf.template +1 -1
  819. package/src/utils/files/terraform/src/core/runtime-config/read/read.tf.template +9 -4
  820. package/src/utils/files/website/hooks/sigv4/useSigV4.tsx.template +1 -1
  821. package/src/utils/format.d.ts +45 -2
  822. package/src/utils/format.js +323 -81
  823. package/src/utils/format.js.map +1 -1
  824. package/src/utils/fs.d.ts +1 -1
  825. package/src/utils/fs.js +14 -13
  826. package/src/utils/fs.js.map +1 -1
  827. package/src/utils/function-constructs/files/terraform/app/lambda-functions/__nameKebabCase__/__nameKebabCase__.tf.template +2 -2
  828. package/src/utils/function-constructs/function-constructs.d.ts +2 -2
  829. package/src/utils/function-constructs/function-constructs.js +21 -26
  830. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  831. package/src/utils/generators.d.ts +4 -0
  832. package/src/utils/generators.js +18 -20
  833. package/src/utils/generators.js.map +1 -1
  834. package/src/utils/git.d.ts +1 -1
  835. package/src/utils/git.js +19 -34
  836. package/src/utils/git.js.map +1 -1
  837. package/src/utils/iac-providers.js +5 -5
  838. package/src/utils/iac-providers.js.map +1 -1
  839. package/src/utils/iac.d.ts +1 -1
  840. package/src/utils/iac.js +12 -14
  841. package/src/utils/iac.js.map +1 -1
  842. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +123 -14
  843. package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +28 -9
  844. package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +106 -6
  845. package/src/utils/identity-constructs/files/terraform/core/user-identity/main.tf.template +7 -0
  846. package/src/utils/identity-constructs/identity-constructs.d.ts +2 -2
  847. package/src/utils/identity-constructs/identity-constructs.js +24 -28
  848. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  849. package/src/utils/install.d.ts +32 -0
  850. package/src/utils/install.js +56 -0
  851. package/src/utils/install.js.map +1 -0
  852. package/src/utils/js.d.ts +4 -0
  853. package/src/utils/js.js +27 -20
  854. package/src/utils/js.js.map +1 -1
  855. package/src/utils/mcp.d.ts +25 -0
  856. package/src/utils/mcp.js +74 -0
  857. package/src/utils/mcp.js.map +1 -0
  858. package/src/utils/metrics.d.ts +9 -3
  859. package/src/utils/metrics.js +61 -46
  860. package/src/utils/metrics.js.map +1 -1
  861. package/src/utils/mock-project-graph.js +8 -12
  862. package/src/utils/mock-project-graph.js.map +1 -1
  863. package/src/utils/names.d.ts +16 -0
  864. package/src/utils/names.js +39 -48
  865. package/src/utils/names.js.map +1 -1
  866. package/src/utils/npm-scope.d.ts +1 -1
  867. package/src/utils/npm-scope.js +9 -17
  868. package/src/utils/npm-scope.js.map +1 -1
  869. package/src/utils/nx.d.ts +25 -4
  870. package/src/utils/nx.js +144 -75
  871. package/src/utils/nx.js.map +1 -1
  872. package/src/utils/nxlv-python.d.ts +1 -1
  873. package/src/utils/nxlv-python.js +27 -15
  874. package/src/utils/nxlv-python.js.map +1 -1
  875. package/src/utils/object.js +5 -11
  876. package/src/utils/object.js.map +1 -1
  877. package/src/utils/paths.d.ts +1 -1
  878. package/src/utils/paths.js +11 -15
  879. package/src/utils/paths.js.map +1 -1
  880. package/src/utils/pkg-manager.js +4 -9
  881. package/src/utils/pkg-manager.js.map +1 -1
  882. package/src/utils/pnpm-workspace.d.ts +1 -1
  883. package/src/utils/pnpm-workspace.js +22 -22
  884. package/src/utils/pnpm-workspace.js.map +1 -1
  885. package/src/utils/port.d.ts +31 -3
  886. package/src/utils/port.js +72 -12
  887. package/src/utils/port.js.map +1 -1
  888. package/src/utils/py.d.ts +16 -3
  889. package/src/utils/py.js +72 -47
  890. package/src/utils/py.js.map +1 -1
  891. package/src/utils/rdb-constructs/files/cdk/app/dbs/__nameKebabCase__.ts.template +12 -2
  892. package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +35 -16
  893. package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +42 -48
  894. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +31 -16
  895. package/src/utils/rdb-constructs/rdb-constructs.d.ts +5 -4
  896. package/src/utils/rdb-constructs/rdb-constructs.js +31 -41
  897. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  898. package/src/utils/shared-constructs-constants.d.ts +1 -0
  899. package/src/utils/shared-constructs-constants.js +16 -15
  900. package/src/utils/shared-constructs-constants.js.map +1 -1
  901. package/src/utils/shared-constructs.d.ts +2 -2
  902. package/src/utils/shared-constructs.js +57 -54
  903. package/src/utils/shared-constructs.js.map +1 -1
  904. package/src/utils/shared-dynamodb-scripts.d.ts +11 -0
  905. package/src/utils/shared-dynamodb-scripts.js +25 -0
  906. package/src/utils/shared-dynamodb-scripts.js.map +1 -0
  907. package/src/utils/shared-infra-config.d.ts +1 -1
  908. package/src/utils/shared-infra-config.js +30 -31
  909. package/src/utils/shared-infra-config.js.map +1 -1
  910. package/src/utils/shared-infra-scripts.d.ts +11 -0
  911. package/src/utils/shared-infra-scripts.js +40 -0
  912. package/src/utils/shared-infra-scripts.js.map +1 -0
  913. package/src/utils/shared-rdb-scripts.d.ts +16 -0
  914. package/src/utils/shared-rdb-scripts.js +28 -0
  915. package/src/utils/shared-rdb-scripts.js.map +1 -0
  916. package/src/utils/shared-scripts.d.ts +2 -5
  917. package/src/utils/shared-scripts.js +12 -38
  918. package/src/utils/shared-scripts.js.map +1 -1
  919. package/src/utils/shared-shadcn.d.ts +1 -1
  920. package/src/utils/shared-shadcn.js +64 -72
  921. package/src/utils/shared-shadcn.js.map +1 -1
  922. package/src/utils/test.d.ts +13 -1
  923. package/src/utils/test.js +35 -23
  924. package/src/utils/test.js.map +1 -1
  925. package/src/utils/toml.d.ts +1 -1
  926. package/src/utils/toml.js +10 -14
  927. package/src/utils/toml.js.map +1 -1
  928. package/src/utils/versions.d.ts +116 -84
  929. package/src/utils/versions.js +124 -102
  930. package/src/utils/versions.js.map +1 -1
  931. package/src/utils/website-constructs/files/cdk/core/static-website.ts.template +73 -5
  932. package/src/utils/website-constructs/files/terraform/app/static-websites/__websiteNameKebabCase__/__websiteNameKebabCase__.tf.template +1 -1
  933. package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +68 -19
  934. package/src/utils/website-constructs/website-constructs.d.ts +2 -2
  935. package/src/utils/website-constructs/website-constructs.js +31 -30
  936. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  937. package/bin/aws-nx-mcp.js +0 -17
  938. package/bin/aws-nx-mcp.js.map +0 -1
  939. package/sdk/connection.d.ts +0 -6
  940. package/sdk/connection.js +0 -10
  941. package/sdk/connection.js.map +0 -1
  942. package/sdk/open-api.d.ts +0 -10
  943. package/sdk/open-api.js +0 -15
  944. package/sdk/open-api.js.map +0 -1
  945. package/sdk/py.d.ts +0 -14
  946. package/sdk/py.js +0 -18
  947. package/sdk/py.js.map +0 -1
  948. package/sdk/terraform.d.ts +0 -6
  949. package/sdk/terraform.js +0 -11
  950. package/sdk/terraform.js.map +0 -1
  951. package/sdk/ts.d.ts +0 -29
  952. package/sdk/ts.js +0 -47
  953. package/sdk/ts.js.map +0 -1
  954. package/sdk/utils/ast.js +0 -12
  955. package/sdk/utils/ast.js.map +0 -1
  956. package/sdk/utils/format.js +0 -10
  957. package/sdk/utils/format.js.map +0 -1
  958. package/sdk/utils/test.js +0 -10
  959. package/sdk/utils/test.js.map +0 -1
  960. package/src/connection/agent-serve-local.js +0 -48
  961. package/src/connection/agent-serve-local.js.map +0 -1
  962. package/src/connection/serve-local.d.ts +0 -15
  963. package/src/connection/serve-local.js +0 -41
  964. package/src/connection/serve-local.js.map +0 -1
  965. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +0 -22
  966. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +0 -22
  967. package/src/py/agent/react-connection/serve-local.js +0 -30
  968. package/src/py/agent/react-connection/serve-local.js.map +0 -1
  969. package/src/py/agent/scripts/http/chat.ts.template +0 -38
  970. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +0 -19
  971. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +0 -19
  972. package/src/ts/agent/react-connection/serve-local.d.ts +0 -13
  973. package/src/ts/agent/react-connection/serve-local.js +0 -19
  974. package/src/ts/agent/react-connection/serve-local.js.map +0 -1
  975. package/src/ts/agent/scripts/http/chat.ts.template +0 -35
  976. package/src/ts/lib/eslint.d.ts +0 -14
  977. package/src/ts/lib/eslint.js +0 -90
  978. package/src/ts/lib/eslint.js.map +0 -1
  979. package/src/ts/lib/grit/eslint-dependency-checks-warn.grit +0 -1
  980. package/src/ts/rdb/files/scripts/docker-pull.ts.template +0 -15
  981. package/src/ts/rdb/files/scripts/docker-start.ts.template +0 -84
  982. package/src/ts/rdb/files/scripts/wait-for-db.ts.template +0 -55
  983. package/src/ts/rdb/files/src/constants.ts.template +0 -8
  984. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client.ts.template +0 -123
  985. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-client.ts.template +0 -128
  986. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client.py.template +0 -120
  987. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_client.py.template +0 -89
  988. /package/{bin → src/bin}/aws-nx-mcp.d.ts +0 -0
  989. /package/src/utils/agent-connection/files/{core-runtime-config/with-session-id.ts.template → core-strands/base/with-session-id-strands.ts.template} +0 -0
  990. /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} +0 -0
  991. /package/src/utils/files/common/scripts/src/{index.ts.template → infra/index.ts.template} +0 -0
  992. /package/src/utils/files/common/scripts/src/{infra-deploy.ts.template → infra/infra-deploy.ts.template} +0 -0
  993. /package/src/utils/files/common/scripts/src/{infra-destroy.ts.template → infra/infra-destroy.ts.template} +0 -0
  994. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/credentials.ts.template +0 -0
  995. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/run.ts.template +0 -0
  996. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/stage-parser.ts.template +0 -0
@@ -0,0 +1,101 @@
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 { getGeneratorInfo, readProjectConfigurationUnqualified } from "../../utils/nx.js";
9
+ import { attachUpstreamToLocalGateway } from "../attach-upstream.js";
10
+ import { AGENTCORE_GATEWAY_GENERATOR_INFO, readAgentCoreGatewayMetadata } from "../generator.js";
11
+ export const AGENTCORE_GATEWAY_GATEWAY_CONNECTION_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
12
+ /**
13
+ * Connect an AgentCore Gateway to another AgentCore Gateway.
14
+ *
15
+ * Chains the source gateway's dev target to the target gateway's
16
+ * dev target, and registers the target gateway in the source
17
+ * gateway's local local-dev.ts so the local gateway aggregates its tools
18
+ * (already prefixed by the target gateway) under
19
+ * `<targetGateway>___<targetName>___<toolName>`. Users must still call
20
+ * `gateway.addGateway(...)` in their application stack to create the
21
+ * actual CDK/Terraform resource.
22
+ */ export const agentcoreGatewayGatewayConnectionGenerator = async (tree, options)=>{
23
+ const sourceProject = readProjectConfigurationUnqualified(tree, options.sourceProject);
24
+ const targetProject = readProjectConfigurationUnqualified(tree, options.targetProject);
25
+ const sourceGateway = readAgentCoreGatewayMetadata(sourceProject);
26
+ const targetGateway = readAgentCoreGatewayMetadata(targetProject);
27
+ if (sourceProject.name === targetProject.name) {
28
+ throw new Error(`Cannot connect gateway '${sourceGateway.name}' to itself.`);
29
+ }
30
+ for (const gateway of [
31
+ sourceGateway,
32
+ targetGateway
33
+ ]){
34
+ if (gateway.protocol !== 'mcp') {
35
+ throw new Error(`Gateway '${gateway.name}' has protocol='${gateway.protocol}'. Gateway->Gateway connections are only supported between MCP-protocol gateways.`);
36
+ }
37
+ }
38
+ // The source gateway invokes the target signing with its own IAM role, so
39
+ // only the target's inbound auth must be IAM. The source's inbound auth (how
40
+ // its own callers reach it) is irrelevant to this hop.
41
+ if (targetGateway.auth !== 'iam') {
42
+ throw new Error(`Gateway '${targetGateway.name}' uses auth='${targetGateway.auth}'. Gateway->Gateway connections currently require the target gateway to use IAM authentication.`);
43
+ }
44
+ assertNoCycle(tree, sourceProject.name, targetProject.name);
45
+ // The target name must match the deployed Gateway target (`gatewayName` on
46
+ // the gateway construct, the project's class name in kebab-case) so
47
+ // `<targetGateway>___<target>___<tool>` resolves identically locally and
48
+ // deployed.
49
+ const targetGatewayKebabCase = kebabCase(targetGateway.rc);
50
+ await attachUpstreamToLocalGateway(tree, sourceProject, 'dev', {
51
+ targetName: targetGatewayKebabCase,
52
+ port: targetGateway.port,
53
+ upstreamProjectName: targetProject.name,
54
+ upstreamDevTargetName: 'dev'
55
+ });
56
+ await addGeneratorMetricsIfApplicable(tree, [
57
+ AGENTCORE_GATEWAY_GATEWAY_CONNECTION_GENERATOR_INFO
58
+ ]);
59
+ await formatFilesInSubtree(tree);
60
+ return ()=>installDependencies(tree, options.preferInstallDependencies, {
61
+ languages: [
62
+ 'typescript'
63
+ ]
64
+ });
65
+ };
66
+ /**
67
+ * Reject connections that would make the local gateway graph cyclic — a
68
+ * cycle would recurse infinitely on tools/list both locally and deployed.
69
+ *
70
+ * Walks gateway dev dependsOn edges from the target gateway; the
71
+ * source gateway must not be reachable.
72
+ */ const assertNoCycle = (tree, sourceProjectName, targetProjectName)=>{
73
+ const visited = new Set();
74
+ const stack = [
75
+ targetProjectName
76
+ ];
77
+ while(stack.length > 0){
78
+ const current = stack.pop();
79
+ if (current === sourceProjectName) {
80
+ throw new Error(`Connecting '${sourceProjectName}' to '${targetProjectName}' would create a cycle: '${targetProjectName}' already routes to '${sourceProjectName}'.`);
81
+ }
82
+ if (visited.has(current)) {
83
+ continue;
84
+ }
85
+ visited.add(current);
86
+ const project = readProjectConfigurationUnqualified(tree, current);
87
+ if (project.metadata?.generator !== AGENTCORE_GATEWAY_GENERATOR_INFO.id) {
88
+ continue;
89
+ }
90
+ readAgentCoreGatewayMetadata(project);
91
+ const devTarget = project.targets?.['dev'];
92
+ for (const dep of devTarget?.dependsOn ?? []){
93
+ if (typeof dep !== 'string') {
94
+ stack.push(...dep.projects ?? []);
95
+ }
96
+ }
97
+ }
98
+ };
99
+ export default agentcoreGatewayGatewayConnectionGenerator;
100
+
101
+ //# sourceMappingURL=generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/agentcore-gateway/gateway-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 getGeneratorInfo,\n type NxGeneratorInfo,\n readProjectConfigurationUnqualified,\n} from '../../utils/nx';\nimport { attachUpstreamToLocalGateway } from '../attach-upstream';\nimport {\n AGENTCORE_GATEWAY_GENERATOR_INFO,\n readAgentCoreGatewayMetadata,\n} from '../generator';\nimport type { AgentcoreGatewayGatewayConnectionGeneratorSchema } from './schema';\n\nexport const AGENTCORE_GATEWAY_GATEWAY_CONNECTION_GENERATOR_INFO: NxGeneratorInfo =\n getGeneratorInfo(import.meta.filename);\n\n/**\n * Connect an AgentCore Gateway to another AgentCore Gateway.\n *\n * Chains the source gateway's dev target to the target gateway's\n * dev target, and registers the target gateway in the source\n * gateway's local local-dev.ts so the local gateway aggregates its tools\n * (already prefixed by the target gateway) under\n * `<targetGateway>___<targetName>___<toolName>`. Users must still call\n * `gateway.addGateway(...)` in their application stack to create the\n * actual CDK/Terraform resource.\n */\nexport const agentcoreGatewayGatewayConnectionGenerator = async (\n tree: Tree,\n options: AgentcoreGatewayGatewayConnectionGeneratorSchema,\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 sourceGateway = readAgentCoreGatewayMetadata(sourceProject);\n const targetGateway = readAgentCoreGatewayMetadata(targetProject);\n\n if (sourceProject.name === targetProject.name) {\n throw new Error(\n `Cannot connect gateway '${sourceGateway.name}' to itself.`,\n );\n }\n\n for (const gateway of [sourceGateway, targetGateway]) {\n if (gateway.protocol !== 'mcp') {\n throw new Error(\n `Gateway '${gateway.name}' has protocol='${gateway.protocol}'. Gateway->Gateway connections are only supported between MCP-protocol gateways.`,\n );\n }\n }\n\n // The source gateway invokes the target signing with its own IAM role, so\n // only the target's inbound auth must be IAM. The source's inbound auth (how\n // its own callers reach it) is irrelevant to this hop.\n if (targetGateway.auth !== 'iam') {\n throw new Error(\n `Gateway '${targetGateway.name}' uses auth='${targetGateway.auth}'. Gateway->Gateway connections currently require the target gateway to use IAM authentication.`,\n );\n }\n\n assertNoCycle(tree, sourceProject.name, targetProject.name);\n\n // The target name must match the deployed Gateway target (`gatewayName` on\n // the gateway construct, the project's class name in kebab-case) so\n // `<targetGateway>___<target>___<tool>` resolves identically locally and\n // deployed.\n const targetGatewayKebabCase = kebabCase(targetGateway.rc);\n\n await attachUpstreamToLocalGateway(tree, sourceProject, 'dev', {\n targetName: targetGatewayKebabCase,\n port: targetGateway.port,\n upstreamProjectName: targetProject.name,\n upstreamDevTargetName: 'dev',\n });\n\n await addGeneratorMetricsIfApplicable(tree, [\n AGENTCORE_GATEWAY_GATEWAY_CONNECTION_GENERATOR_INFO,\n ]);\n\n await formatFilesInSubtree(tree);\n\n return () =>\n installDependencies(tree, options.preferInstallDependencies, {\n languages: ['typescript'],\n });\n};\n\n/**\n * Reject connections that would make the local gateway graph cyclic — a\n * cycle would recurse infinitely on tools/list both locally and deployed.\n *\n * Walks gateway dev dependsOn edges from the target gateway; the\n * source gateway must not be reachable.\n */\nconst assertNoCycle = (\n tree: Tree,\n sourceProjectName: string,\n targetProjectName: string,\n) => {\n const visited = new Set<string>();\n const stack = [targetProjectName];\n while (stack.length > 0) {\n const current = stack.pop();\n if (current === sourceProjectName) {\n throw new Error(\n `Connecting '${sourceProjectName}' to '${targetProjectName}' would create a cycle: '${targetProjectName}' already routes to '${sourceProjectName}'.`,\n );\n }\n if (visited.has(current)) {\n continue;\n }\n visited.add(current);\n const project = readProjectConfigurationUnqualified(tree, current);\n if (\n (project.metadata as any)?.generator !==\n AGENTCORE_GATEWAY_GENERATOR_INFO.id\n ) {\n continue;\n }\n readAgentCoreGatewayMetadata(project);\n const devTarget = project.targets?.['dev'];\n for (const dep of devTarget?.dependsOn ?? []) {\n if (typeof dep !== 'string') {\n stack.push(...(dep.projects ?? []));\n }\n }\n }\n};\n\nexport default agentcoreGatewayGatewayConnectionGenerator;\n"],"names":["formatFilesInSubtree","installDependencies","addGeneratorMetricsIfApplicable","kebabCase","getGeneratorInfo","readProjectConfigurationUnqualified","attachUpstreamToLocalGateway","AGENTCORE_GATEWAY_GENERATOR_INFO","readAgentCoreGatewayMetadata","AGENTCORE_GATEWAY_GATEWAY_CONNECTION_GENERATOR_INFO","filename","agentcoreGatewayGatewayConnectionGenerator","tree","options","sourceProject","targetProject","sourceGateway","targetGateway","name","Error","gateway","protocol","auth","assertNoCycle","targetGatewayKebabCase","rc","targetName","port","upstreamProjectName","upstreamDevTargetName","preferInstallDependencies","languages","sourceProjectName","targetProjectName","visited","Set","stack","length","current","pop","has","add","project","metadata","generator","id","devTarget","targets","dep","dependsOn","push","projects"],"mappings":"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"}
@@ -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/gateway-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 AgentcoreGatewayGatewayConnectionGeneratorSchema {\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 AgentcoreGatewayGatewayConnectionGeneratorSchema {
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#gateway-connection",
4
+ "title": "agentcore-gateway#gateway-connection",
5
+ "description": "Connect an AgentCore Gateway to another AgentCore Gateway",
6
+ "type": "object",
7
+ "properties": {
8
+ "sourceProject": {
9
+ "type": "string",
10
+ "description": "The gateway project to add the target gateway to"
11
+ },
12
+ "targetProject": {
13
+ "type": "string",
14
+ "description": "The gateway project to register as a target"
15
+ },
16
+ "sourceComponent": {
17
+ "type": "string",
18
+ "description": "The gateway component in the source project"
19
+ },
20
+ "targetComponent": {
21
+ "type": "string",
22
+ "description": "The gateway 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,25 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { type GeneratorCallback, type ProjectConfiguration, type Tree } from '@nx/devkit';
6
+ import { type NxGeneratorInfo } from '../utils/nx';
7
+ import type { AgentcoreGatewayGeneratorSchema } from './schema';
8
+ export declare const AGENTCORE_GATEWAY_GENERATOR_INFO: NxGeneratorInfo;
9
+ export declare const agentcoreGatewayGenerator: (tree: Tree, options: AgentcoreGatewayGeneratorSchema) => Promise<GeneratorCallback>;
10
+ /**
11
+ * Gateway details stored in the gateway project's metadata.
12
+ */
13
+ export interface AgentCoreGatewayMetadata {
14
+ name: string;
15
+ rc: string;
16
+ protocol: string;
17
+ auth: string;
18
+ port: number;
19
+ }
20
+ /**
21
+ * Read a gateway project's metadata, validating it was generated by the
22
+ * agentcore-gateway generator.
23
+ */
24
+ export declare const readAgentCoreGatewayMetadata: (project: ProjectConfiguration) => AgentCoreGatewayMetadata;
25
+ export default agentcoreGatewayGenerator;
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { addDependenciesToPackageJson, addProjectConfiguration, generateFiles, joinPathFragments, OverwriteStrategy, updateProjectConfiguration } from "@nx/devkit";
5
+ import { addAgentCoreGatewayInfra } from "../utils/agent-core-constructs/agent-core-constructs.js";
6
+ import { formatFilesInSubtree } from "../utils/format.js";
7
+ import { resolveIac } from "../utils/iac.js";
8
+ import { installDependencies } from "../utils/install.js";
9
+ import { addGeneratorMetricsIfApplicable } from "../utils/metrics.js";
10
+ import { kebabCase, toClassName } from "../utils/names.js";
11
+ import { getNpmScopePrefix } from "../utils/npm-scope.js";
12
+ import { addGeneratorMetadata, getGeneratorInfo, projectExists, readProjectConfigurationUnqualified } from "../utils/nx.js";
13
+ import { assignPort } from "../utils/port.js";
14
+ import { sharedConstructsGenerator } from "../utils/shared-constructs.js";
15
+ import { withVersions } from "../utils/versions.js";
16
+ export const AGENTCORE_GATEWAY_GENERATOR_INFO = getGeneratorInfo(import.meta.filename);
17
+ export const agentcoreGatewayGenerator = async (tree, options)=>{
18
+ const name = kebabCase(options.name);
19
+ const nameClassName = toClassName(name);
20
+ const parentDir = options.directory ?? 'packages';
21
+ const subDir = options.subDirectory ?? name;
22
+ const projectRoot = joinPathFragments(parentDir, subDir);
23
+ const fullyQualifiedName = `${getNpmScopePrefix(tree)}${name}`;
24
+ // Protocol / auth are fixed to mcp / iam in v1 — the enums accept only
25
+ // these values, but we still persist the resolved value in metadata so
26
+ // that connection generators can read it uniformly (and future additions
27
+ // are non-breaking).
28
+ const protocol = options.protocol ?? 'mcp';
29
+ const auth = options.auth ?? 'iam';
30
+ const cedarPolicy = options.cedarPolicy ?? true;
31
+ const infra = options.infra ?? 'agentcore';
32
+ // local-dev.ts is the local gateway: a continuous MCP aggregator chaining
33
+ // onto attached MCP servers' dev targets (added by the mcp-connection
34
+ // generator), so a single `nx dev <gateway>` boots the gateway and every
35
+ // attached MCP server together.
36
+ //
37
+ // `serve` exists for parity with other generators; the deployed Gateway is
38
+ // a managed AWS resource, so `serve`-mode agents talk to it via runtime
39
+ // config and the local gateway sits idle.
40
+ const localGatewayTarget = (port)=>({
41
+ executor: 'nx:run-commands',
42
+ continuous: true,
43
+ options: {
44
+ command: 'tsx local-dev.ts',
45
+ cwd: '{projectRoot}',
46
+ env: {
47
+ PORT: `${port}`
48
+ }
49
+ },
50
+ dependsOn: []
51
+ });
52
+ let project;
53
+ if (projectExists(tree, fullyQualifiedName)) {
54
+ project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);
55
+ } else {
56
+ addProjectConfiguration(tree, fullyQualifiedName, {
57
+ name: fullyQualifiedName,
58
+ root: projectRoot,
59
+ projectType: 'library',
60
+ sourceRoot: projectRoot,
61
+ tags: [],
62
+ targets: {},
63
+ metadata: {
64
+ generator: AGENTCORE_GATEWAY_GENERATOR_INFO.id
65
+ }
66
+ });
67
+ project = readProjectConfigurationUnqualified(tree, fullyQualifiedName);
68
+ }
69
+ const port = assignPort(tree, project, 8100);
70
+ // A gateway is its own standalone project, so it uses plain `serve` / `dev`
71
+ // targets. Re-run: keep existing targets (their dependsOn may have been
72
+ // populated by the mcp-connection generator), just ensure both exist.
73
+ project.targets ??= {};
74
+ project.targets['serve'] ??= localGatewayTarget(port);
75
+ project.targets['dev'] ??= localGatewayTarget(port);
76
+ updateProjectConfiguration(tree, project.name, project);
77
+ // Scaffold the gateway project: local-dev.ts (+ Cedar policies if requested)
78
+ generateFiles(tree, joinPathFragments(import.meta.dirname, 'files', 'project'), projectRoot, {
79
+ nameClassName,
80
+ nameKebabCase: name,
81
+ port,
82
+ attachedMcpServers: []
83
+ }, {
84
+ overwriteStrategy: OverwriteStrategy.KeepExisting
85
+ });
86
+ if (cedarPolicy) {
87
+ generateFiles(tree, joinPathFragments(import.meta.dirname, 'files', 'cedar'), projectRoot, {
88
+ nameClassName
89
+ }, {
90
+ overwriteStrategy: OverwriteStrategy.KeepExisting
91
+ });
92
+ }
93
+ addGeneratorMetadata(tree, fullyQualifiedName, AGENTCORE_GATEWAY_GENERATOR_INFO, {
94
+ name,
95
+ rc: nameClassName,
96
+ protocol,
97
+ auth,
98
+ port
99
+ });
100
+ // local-dev.ts dependencies (+ ejs for Cedar policy rendering in the
101
+ // shared gateway construct)
102
+ addDependenciesToPackageJson(tree, withVersions([
103
+ '@modelcontextprotocol/sdk',
104
+ 'express'
105
+ ]), withVersions([
106
+ 'tsx',
107
+ '@types/express',
108
+ 'ejs',
109
+ '@types/ejs'
110
+ ]));
111
+ // Wire up infra (CDK or Terraform); re-running with infra=agentcore adds
112
+ // the infrastructure to a previously infra-less gateway.
113
+ if (infra === 'agentcore') {
114
+ const iac = await resolveIac(tree, options.iac);
115
+ await sharedConstructsGenerator(tree, {
116
+ iac
117
+ });
118
+ await addAgentCoreGatewayInfra(tree, {
119
+ gatewayNameClassName: nameClassName,
120
+ gatewayNameKebabCase: name,
121
+ projectName: fullyQualifiedName,
122
+ projectDirectory: projectRoot,
123
+ cedarPolicy,
124
+ iac
125
+ });
126
+ }
127
+ await addGeneratorMetricsIfApplicable(tree, [
128
+ AGENTCORE_GATEWAY_GENERATOR_INFO
129
+ ]);
130
+ await formatFilesInSubtree(tree);
131
+ return ()=>installDependencies(tree, options.preferInstallDependencies, {
132
+ languages: [
133
+ 'typescript'
134
+ ]
135
+ });
136
+ };
137
+ /**
138
+ * Read a gateway project's metadata, validating it was generated by the
139
+ * agentcore-gateway generator.
140
+ */ export const readAgentCoreGatewayMetadata = (project)=>{
141
+ const metadata = project.metadata;
142
+ if (metadata?.generator !== AGENTCORE_GATEWAY_GENERATOR_INFO.id) {
143
+ throw new Error(`Project '${project.name}' was not generated by the '${AGENTCORE_GATEWAY_GENERATOR_INFO.id}' generator.`);
144
+ }
145
+ return metadata;
146
+ };
147
+ export default agentcoreGatewayGenerator;
148
+
149
+ //# 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 addDependenciesToPackageJson,\n addProjectConfiguration,\n type GeneratorCallback,\n generateFiles,\n joinPathFragments,\n OverwriteStrategy,\n type ProjectConfiguration,\n type Tree,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport { addAgentCoreGatewayInfra } from '../utils/agent-core-constructs/agent-core-constructs';\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 { sharedConstructsGenerator } from '../utils/shared-constructs';\nimport { withVersions } from '../utils/versions';\nimport type { AgentcoreGatewayGeneratorSchema } from './schema';\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 / auth are fixed to mcp / iam in v1 — the enums accept only\n // these values, but we still persist the resolved value in metadata so\n // that connection generators can read it uniformly (and future additions\n // are non-breaking).\n const protocol = options.protocol ?? 'mcp';\n const auth = options.auth ?? 'iam';\n const cedarPolicy = 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 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'),\n projectRoot,\n { nameClassName, nameKebabCase: name, port, attachedMcpServers: [] },\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n if (cedarPolicy) {\n generateFiles(\n tree,\n joinPathFragments(import.meta.dirname, 'files', 'cedar'),\n projectRoot,\n { nameClassName },\n { overwriteStrategy: OverwriteStrategy.KeepExisting },\n );\n }\n\n addGeneratorMetadata(\n tree,\n fullyQualifiedName,\n AGENTCORE_GATEWAY_GENERATOR_INFO,\n {\n name,\n rc: nameClassName,\n protocol,\n auth,\n port,\n },\n );\n\n // local-dev.ts dependencies (+ ejs for Cedar policy rendering in the\n // shared gateway construct)\n addDependenciesToPackageJson(\n tree,\n withVersions(['@modelcontextprotocol/sdk', 'express']),\n withVersions(['tsx', '@types/express', 'ejs', '@types/ejs']),\n );\n\n // Wire up infra (CDK or Terraform); re-running with infra=agentcore adds\n // the infrastructure to a previously infra-less gateway.\n if (infra === 'agentcore') {\n const iac = await resolveIac(tree, options.iac);\n await sharedConstructsGenerator(tree, { iac });\n\n await addAgentCoreGatewayInfra(tree, {\n gatewayNameClassName: nameClassName,\n gatewayNameKebabCase: name,\n projectName: fullyQualifiedName,\n projectDirectory: projectRoot,\n cedarPolicy,\n iac,\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 {\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":["addDependenciesToPackageJson","addProjectConfiguration","generateFiles","joinPathFragments","OverwriteStrategy","updateProjectConfiguration","addAgentCoreGatewayInfra","formatFilesInSubtree","resolveIac","installDependencies","addGeneratorMetricsIfApplicable","kebabCase","toClassName","getNpmScopePrefix","addGeneratorMetadata","getGeneratorInfo","projectExists","readProjectConfigurationUnqualified","assignPort","sharedConstructsGenerator","withVersions","AGENTCORE_GATEWAY_GENERATOR_INFO","filename","agentcoreGatewayGenerator","tree","options","name","nameClassName","parentDir","directory","subDir","subDirectory","projectRoot","fullyQualifiedName","protocol","auth","cedarPolicy","infra","localGatewayTarget","port","executor","continuous","command","cwd","env","PORT","dependsOn","project","root","projectType","sourceRoot","tags","targets","metadata","generator","id","dirname","nameKebabCase","attachedMcpServers","overwriteStrategy","KeepExisting","rc","iac","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,59 @@
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 { 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
+ await addGeneratorMetricsIfApplicable(tree, [
48
+ AGENTCORE_GATEWAY_MCP_CONNECTION_GENERATOR_INFO
49
+ ]);
50
+ await formatFilesInSubtree(tree);
51
+ return ()=>installDependencies(tree, options.preferInstallDependencies, {
52
+ languages: [
53
+ 'typescript'
54
+ ]
55
+ });
56
+ };
57
+ export default agentcoreGatewayMcpConnectionGenerator;
58
+
59
+ //# 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 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 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","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","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,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,gBAAgBnB,UAAUa,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,MAAMtB,gCAAgCS,MAAM;QAC1CH;KACD;IAED,MAAMR,qBAAqBW;IAE3B,OAAO,IACLV,oBAAoBU,MAAMC,QAAQiB,yBAAyB,EAAE;YAC3DC,WAAW;gBAAC;aAAa;QAC3B;AACJ,EAAE;AAEF,eAAepB,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,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/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 { IacOption } from '../utils/iac';\n\nexport interface AgentcoreGatewayGeneratorSchema {\n name: string;\n directory?: string;\n subDirectory?: string;\n protocol?: 'mcp';\n auth?: 'iam';\n cedarPolicy?: boolean;\n infra?: 'agentcore' | 'none';\n iac: IacOption;\n preferInstallDependencies?: boolean;\n}\n"],"names":[],"mappings":"AAAA;;;CAGC,GAGD,WAUC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import type { IacOption } from '../utils/iac';
6
+
7
+ export interface AgentcoreGatewayGeneratorSchema {
8
+ name: string;
9
+ directory?: string;
10
+ subDirectory?: string;
11
+ protocol?: 'mcp';
12
+ auth?: 'iam';
13
+ cedarPolicy?: boolean;
14
+ infra?: 'agentcore' | 'none';
15
+ iac: IacOption;
16
+ preferInstallDependencies?: boolean;
17
+ }
@@ -0,0 +1,70 @@
1
+ {
2
+ "$schema": "https://json-schema.org/schema",
3
+ "$id": "agentcore-gateway",
4
+ "title": "agentcore-gateway",
5
+ "description": "Generate an AgentCore Gateway project",
6
+ "type": "object",
7
+ "properties": {
8
+ "name": {
9
+ "type": "string",
10
+ "description": "The name of your AgentCore Gateway project",
11
+ "$default": {
12
+ "$source": "argv",
13
+ "index": 0
14
+ },
15
+ "x-prompt": "What would you like to call your AgentCore Gateway?",
16
+ "x-priority": "important"
17
+ },
18
+ "directory": {
19
+ "type": "string",
20
+ "description": "Parent directory where the gateway project is placed.",
21
+ "default": "packages"
22
+ },
23
+ "subDirectory": {
24
+ "type": "string",
25
+ "description": "The sub directory the project is placed in. By default this is the project name."
26
+ },
27
+ "protocol": {
28
+ "type": "string",
29
+ "description": "The inbound protocol exposed by your gateway. Only mcp is supported today; additional protocols may be added in future.",
30
+ "enum": ["mcp"],
31
+ "default": "mcp",
32
+ "x-priority": "important"
33
+ },
34
+ "auth": {
35
+ "type": "string",
36
+ "description": "The method used to authenticate inbound requests to your gateway. Only iam is supported today; cognito and custom-jwt may be added in future.",
37
+ "enum": ["iam"],
38
+ "default": "iam",
39
+ "x-priority": "important"
40
+ },
41
+ "cedarPolicy": {
42
+ "type": "boolean",
43
+ "description": "Whether to include a Cedar policy engine enforcing fine-grained authorization on the gateway.",
44
+ "default": true,
45
+ "x-priority": "important"
46
+ },
47
+ "infra": {
48
+ "type": "string",
49
+ "description": "The type of infrastructure to host your gateway. Select none for no hosting.",
50
+ "x-prompt": "How would you like to host your gateway?",
51
+ "enum": ["agentcore", "none"],
52
+ "default": "agentcore",
53
+ "x-priority": "important"
54
+ },
55
+ "iac": {
56
+ "type": "string",
57
+ "description": "The preferred IaC provider. By default this is inherited from your initial selection.",
58
+ "enum": ["inherit", "cdk", "terraform"],
59
+ "x-priority": "important",
60
+ "default": "inherit",
61
+ "x-prompt": "Which provider would you like to manage your infrastructure? (default: inherit)"
62
+ },
63
+ "preferInstallDependencies": {
64
+ "type": "boolean",
65
+ "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.",
66
+ "default": true
67
+ }
68
+ },
69
+ "required": ["name"]
70
+ }