@aws/agentcore 0.3.0-preview.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/LICENSE +175 -0
  2. package/README.md +147 -0
  3. package/dist/assets/README.md +79 -0
  4. package/dist/assets/__tests__/__snapshots__/assets.snapshot.test.ts.snap +2862 -0
  5. package/dist/assets/__tests__/assets.snapshot.test.ts +139 -0
  6. package/dist/assets/agents/AGENTS.md +102 -0
  7. package/dist/assets/cdk/.prettierrc +8 -0
  8. package/dist/assets/cdk/README.md +14 -0
  9. package/dist/assets/cdk/bin/cdk.ts +50 -0
  10. package/dist/assets/cdk/cdk.json +88 -0
  11. package/dist/assets/cdk/gitignore.template +9 -0
  12. package/dist/assets/cdk/jest.config.js +9 -0
  13. package/dist/assets/cdk/lib/cdk-stack.ts +38 -0
  14. package/dist/assets/cdk/npmignore.template +6 -0
  15. package/dist/assets/cdk/package.json +30 -0
  16. package/dist/assets/cdk/test/cdk.test.ts +16 -0
  17. package/dist/assets/cdk/tsconfig.json +28 -0
  18. package/dist/assets/mcp/python/README.md +27 -0
  19. package/dist/assets/mcp/python/pyproject.toml +22 -0
  20. package/dist/assets/mcp/python/server.py +117 -0
  21. package/dist/assets/mcp/python-lambda/README.md +22 -0
  22. package/dist/assets/mcp/python-lambda/handler.py +144 -0
  23. package/dist/assets/mcp/python-lambda/pyproject.toml +15 -0
  24. package/dist/assets/python/autogen/base/README.md +41 -0
  25. package/dist/assets/python/autogen/base/gitignore.template +40 -0
  26. package/dist/assets/python/autogen/base/main.py +52 -0
  27. package/dist/assets/python/autogen/base/mcp_client/client.py +18 -0
  28. package/dist/assets/python/autogen/base/model/load.py +136 -0
  29. package/dist/assets/python/autogen/base/pyproject.toml +35 -0
  30. package/dist/assets/python/crewai/base/README.md +41 -0
  31. package/dist/assets/python/crewai/base/gitignore.template +40 -0
  32. package/dist/assets/python/crewai/base/main.py +55 -0
  33. package/dist/assets/python/crewai/base/model/load.py +133 -0
  34. package/dist/assets/python/crewai/base/pyproject.toml +32 -0
  35. package/dist/assets/python/googleadk/base/README.md +39 -0
  36. package/dist/assets/python/googleadk/base/gitignore.template +40 -0
  37. package/dist/assets/python/googleadk/base/main.py +84 -0
  38. package/dist/assets/python/googleadk/base/mcp_client/client.py +15 -0
  39. package/dist/assets/python/googleadk/base/model/load.py +41 -0
  40. package/dist/assets/python/googleadk/base/pyproject.toml +21 -0
  41. package/dist/assets/python/langchain_langgraph/base/README.md +41 -0
  42. package/dist/assets/python/langchain_langgraph/base/gitignore.template +40 -0
  43. package/dist/assets/python/langchain_langgraph/base/main.py +51 -0
  44. package/dist/assets/python/langchain_langgraph/base/mcp_client/client.py +19 -0
  45. package/dist/assets/python/langchain_langgraph/base/model/load.py +123 -0
  46. package/dist/assets/python/langchain_langgraph/base/pyproject.toml +37 -0
  47. package/dist/assets/python/openaiagents/base/README.md +39 -0
  48. package/dist/assets/python/openaiagents/base/gitignore.template +40 -0
  49. package/dist/assets/python/openaiagents/base/main.py +56 -0
  50. package/dist/assets/python/openaiagents/base/mcp_client/client.py +14 -0
  51. package/dist/assets/python/openaiagents/base/model/load.py +37 -0
  52. package/dist/assets/python/openaiagents/base/pyproject.toml +20 -0
  53. package/dist/assets/python/strands/base/README.md +41 -0
  54. package/dist/assets/python/strands/base/gitignore.template +41 -0
  55. package/dist/assets/python/strands/base/main.py +76 -0
  56. package/dist/assets/python/strands/base/mcp_client/client.py +12 -0
  57. package/dist/assets/python/strands/base/model/load.py +123 -0
  58. package/dist/assets/python/strands/base/pyproject.toml +23 -0
  59. package/dist/assets/python/strands/capabilities/memory/session.py +39 -0
  60. package/dist/assets/typescript/.gitkeep +0 -0
  61. package/dist/cli/index.mjs +985 -0
  62. package/dist/index.d.ts +9 -0
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +27 -0
  65. package/dist/index.js.map +1 -0
  66. package/dist/lib/constants.d.ts +25 -0
  67. package/dist/lib/constants.d.ts.map +1 -0
  68. package/dist/lib/constants.js +49 -0
  69. package/dist/lib/constants.js.map +1 -0
  70. package/dist/lib/errors/config.d.ts +49 -0
  71. package/dist/lib/errors/config.d.ts.map +1 -0
  72. package/dist/lib/errors/config.js +167 -0
  73. package/dist/lib/errors/config.js.map +1 -0
  74. package/dist/lib/errors/index.d.ts +2 -0
  75. package/dist/lib/errors/index.d.ts.map +1 -0
  76. package/dist/lib/errors/index.js +18 -0
  77. package/dist/lib/errors/index.js.map +1 -0
  78. package/dist/lib/index.d.ts +7 -0
  79. package/dist/lib/index.d.ts.map +1 -0
  80. package/dist/lib/index.js +39 -0
  81. package/dist/lib/index.js.map +1 -0
  82. package/dist/lib/packaging/errors.d.ts +16 -0
  83. package/dist/lib/packaging/errors.d.ts.map +1 -0
  84. package/dist/lib/packaging/errors.js +36 -0
  85. package/dist/lib/packaging/errors.js.map +1 -0
  86. package/dist/lib/packaging/helpers.d.ts +54 -0
  87. package/dist/lib/packaging/helpers.d.ts.map +1 -0
  88. package/dist/lib/packaging/helpers.js +461 -0
  89. package/dist/lib/packaging/helpers.js.map +1 -0
  90. package/dist/lib/packaging/index.d.ts +36 -0
  91. package/dist/lib/packaging/index.d.ts.map +1 -0
  92. package/dist/lib/packaging/index.js +89 -0
  93. package/dist/lib/packaging/index.js.map +1 -0
  94. package/dist/lib/packaging/node.d.ts +17 -0
  95. package/dist/lib/packaging/node.d.ts.map +1 -0
  96. package/dist/lib/packaging/node.js +108 -0
  97. package/dist/lib/packaging/node.js.map +1 -0
  98. package/dist/lib/packaging/python.d.ts +17 -0
  99. package/dist/lib/packaging/python.d.ts.map +1 -0
  100. package/dist/lib/packaging/python.js +162 -0
  101. package/dist/lib/packaging/python.js.map +1 -0
  102. package/dist/lib/packaging/types/index.d.ts +2 -0
  103. package/dist/lib/packaging/types/index.d.ts.map +1 -0
  104. package/dist/lib/packaging/types/index.js +3 -0
  105. package/dist/lib/packaging/types/index.js.map +1 -0
  106. package/dist/lib/packaging/types/packaging.d.ts +57 -0
  107. package/dist/lib/packaging/types/packaging.d.ts.map +1 -0
  108. package/dist/lib/packaging/types/packaging.js +3 -0
  109. package/dist/lib/packaging/types/packaging.js.map +1 -0
  110. package/dist/lib/packaging/uv.d.ts +7 -0
  111. package/dist/lib/packaging/uv.d.ts.map +1 -0
  112. package/dist/lib/packaging/uv.js +40 -0
  113. package/dist/lib/packaging/uv.js.map +1 -0
  114. package/dist/lib/schemas/io/config-io.d.ts +106 -0
  115. package/dist/lib/schemas/io/config-io.d.ts.map +1 -0
  116. package/dist/lib/schemas/io/config-io.js +293 -0
  117. package/dist/lib/schemas/io/config-io.js.map +1 -0
  118. package/dist/lib/schemas/io/index.d.ts +3 -0
  119. package/dist/lib/schemas/io/index.d.ts.map +1 -0
  120. package/dist/lib/schemas/io/index.js +17 -0
  121. package/dist/lib/schemas/io/index.js.map +1 -0
  122. package/dist/lib/schemas/io/path-resolver.d.ts +112 -0
  123. package/dist/lib/schemas/io/path-resolver.d.ts.map +1 -0
  124. package/dist/lib/schemas/io/path-resolver.js +195 -0
  125. package/dist/lib/schemas/io/path-resolver.js.map +1 -0
  126. package/dist/lib/utils/aws-account.d.ts +7 -0
  127. package/dist/lib/utils/aws-account.d.ts.map +1 -0
  128. package/dist/lib/utils/aws-account.js +24 -0
  129. package/dist/lib/utils/aws-account.js.map +1 -0
  130. package/dist/lib/utils/credentials.d.ts +86 -0
  131. package/dist/lib/utils/credentials.d.ts.map +1 -0
  132. package/dist/lib/utils/credentials.js +153 -0
  133. package/dist/lib/utils/credentials.js.map +1 -0
  134. package/dist/lib/utils/env.d.ts +22 -0
  135. package/dist/lib/utils/env.d.ts.map +1 -0
  136. package/dist/lib/utils/env.js +65 -0
  137. package/dist/lib/utils/env.js.map +1 -0
  138. package/dist/lib/utils/index.d.ts +7 -0
  139. package/dist/lib/utils/index.d.ts.map +1 -0
  140. package/dist/lib/utils/index.js +23 -0
  141. package/dist/lib/utils/index.js.map +1 -0
  142. package/dist/lib/utils/platform.d.ts +63 -0
  143. package/dist/lib/utils/platform.d.ts.map +1 -0
  144. package/dist/lib/utils/platform.js +88 -0
  145. package/dist/lib/utils/platform.js.map +1 -0
  146. package/dist/lib/utils/subprocess.d.ts +29 -0
  147. package/dist/lib/utils/subprocess.d.ts.map +1 -0
  148. package/dist/lib/utils/subprocess.js +94 -0
  149. package/dist/lib/utils/subprocess.js.map +1 -0
  150. package/dist/lib/utils/zod.d.ts +14 -0
  151. package/dist/lib/utils/zod.d.ts.map +1 -0
  152. package/dist/lib/utils/zod.js +32 -0
  153. package/dist/lib/utils/zod.js.map +1 -0
  154. package/dist/schema/constants.d.ts +82 -0
  155. package/dist/schema/constants.d.ts.map +1 -0
  156. package/dist/schema/constants.js +117 -0
  157. package/dist/schema/constants.js.map +1 -0
  158. package/dist/schema/index.d.ts +4 -0
  159. package/dist/schema/index.d.ts.map +1 -0
  160. package/dist/schema/index.js +21 -0
  161. package/dist/schema/index.js.map +1 -0
  162. package/dist/schema/schemas/agent-env.d.ts +75 -0
  163. package/dist/schema/schemas/agent-env.d.ts.map +1 -0
  164. package/dist/schema/schemas/agent-env.js +84 -0
  165. package/dist/schema/schemas/agent-env.js.map +1 -0
  166. package/dist/schema/schemas/agentcore-project.d.ts +88 -0
  167. package/dist/schema/schemas/agentcore-project.d.ts.map +1 -0
  168. package/dist/schema/schemas/agentcore-project.js +83 -0
  169. package/dist/schema/schemas/agentcore-project.js.map +1 -0
  170. package/dist/schema/schemas/aws-targets.d.ts +50 -0
  171. package/dist/schema/schemas/aws-targets.d.ts.map +1 -0
  172. package/dist/schema/schemas/aws-targets.js +49 -0
  173. package/dist/schema/schemas/aws-targets.js.map +1 -0
  174. package/dist/schema/schemas/deployed-state.d.ts +260 -0
  175. package/dist/schema/schemas/deployed-state.d.ts.map +1 -0
  176. package/dist/schema/schemas/deployed-state.js +100 -0
  177. package/dist/schema/schemas/deployed-state.js.map +1 -0
  178. package/dist/schema/schemas/index.d.ts +8 -0
  179. package/dist/schema/schemas/index.d.ts.map +1 -0
  180. package/dist/schema/schemas/index.js +25 -0
  181. package/dist/schema/schemas/index.js.map +1 -0
  182. package/dist/schema/schemas/mcp-defs.d.ts +52 -0
  183. package/dist/schema/schemas/mcp-defs.d.ts.map +1 -0
  184. package/dist/schema/schemas/mcp-defs.js +50 -0
  185. package/dist/schema/schemas/mcp-defs.js.map +1 -0
  186. package/dist/schema/schemas/mcp.d.ts +659 -0
  187. package/dist/schema/schemas/mcp.d.ts.map +1 -0
  188. package/dist/schema/schemas/mcp.js +283 -0
  189. package/dist/schema/schemas/mcp.js.map +1 -0
  190. package/dist/schema/schemas/primitives/index.d.ts +3 -0
  191. package/dist/schema/schemas/primitives/index.d.ts.map +1 -0
  192. package/dist/schema/schemas/primitives/index.js +9 -0
  193. package/dist/schema/schemas/primitives/index.js.map +1 -0
  194. package/dist/schema/schemas/primitives/memory.d.ts +42 -0
  195. package/dist/schema/schemas/primitives/memory.d.ts.map +1 -0
  196. package/dist/schema/schemas/primitives/memory.js +50 -0
  197. package/dist/schema/schemas/primitives/memory.js.map +1 -0
  198. package/dist/schema/schemas/zod-util.d.ts +10 -0
  199. package/dist/schema/schemas/zod-util.d.ts.map +1 -0
  200. package/dist/schema/schemas/zod-util.js +23 -0
  201. package/dist/schema/schemas/zod-util.js.map +1 -0
  202. package/dist/schema/types/index.d.ts +2 -0
  203. package/dist/schema/types/index.d.ts.map +1 -0
  204. package/dist/schema/types/index.js +18 -0
  205. package/dist/schema/types/index.js.map +1 -0
  206. package/dist/schema/types/path.d.ts +27 -0
  207. package/dist/schema/types/path.d.ts.map +1 -0
  208. package/dist/schema/types/path.js +13 -0
  209. package/dist/schema/types/path.js.map +1 -0
  210. package/package.json +111 -0
  211. package/scripts/bump-version.ts +442 -0
  212. package/scripts/check-old-cli.mjs +26 -0
  213. package/scripts/copy-assets.mjs +50 -0
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runSubprocess = runSubprocess;
4
+ exports.checkSubprocess = checkSubprocess;
5
+ exports.runSubprocessCapture = runSubprocessCapture;
6
+ exports.runSubprocessCaptureSync = runSubprocessCaptureSync;
7
+ exports.checkSubprocessSync = checkSubprocessSync;
8
+ const platform_1 = require("./platform");
9
+ const child_process_1 = require("child_process");
10
+ async function runSubprocess(command, args, options = {}) {
11
+ return new Promise((resolve, reject) => {
12
+ const child = (0, child_process_1.spawn)(command, args, {
13
+ cwd: options.cwd,
14
+ env: options.env,
15
+ stdio: options.stdio ?? 'inherit',
16
+ shell: options.shell ?? platform_1.isWindows,
17
+ });
18
+ child.on('error', reject);
19
+ child.on('close', (code, signal) => {
20
+ if (code === 0) {
21
+ resolve();
22
+ return;
23
+ }
24
+ const reason = code !== null ? `code ${code}` : `signal ${String(signal)}`;
25
+ reject(new Error(`${command} exited with ${reason}`));
26
+ });
27
+ });
28
+ }
29
+ async function checkSubprocess(command, args, options = {}) {
30
+ return new Promise(resolve => {
31
+ const child = (0, child_process_1.spawn)(command, args, {
32
+ cwd: options.cwd,
33
+ env: options.env,
34
+ stdio: options.stdio ?? 'ignore',
35
+ shell: options.shell ?? platform_1.isWindows,
36
+ });
37
+ child.on('error', () => resolve(false));
38
+ child.on('close', code => resolve(code === 0));
39
+ });
40
+ }
41
+ async function runSubprocessCapture(command, args, options = {}) {
42
+ return new Promise(resolve => {
43
+ const child = (0, child_process_1.spawn)(command, args, {
44
+ cwd: options.cwd,
45
+ env: options.env,
46
+ stdio: 'pipe',
47
+ shell: options.shell ?? platform_1.isWindows,
48
+ });
49
+ let stdout = '';
50
+ let stderr = '';
51
+ child.stdout?.on('data', (chunk) => {
52
+ stdout += typeof chunk === 'string' ? chunk : Buffer.from(chunk).toString();
53
+ });
54
+ child.stderr?.on('data', (chunk) => {
55
+ stderr += typeof chunk === 'string' ? chunk : Buffer.from(chunk).toString();
56
+ });
57
+ child.on('close', (code, signal) => {
58
+ resolve({ stdout, stderr, code, signal });
59
+ });
60
+ child.on('error', () => {
61
+ resolve({ stdout, stderr, code: -1, signal: null });
62
+ });
63
+ });
64
+ }
65
+ function runSubprocessCaptureSync(command, args, options = {}) {
66
+ const result = (0, child_process_1.spawnSync)(command, args, {
67
+ cwd: options.cwd,
68
+ env: options.env,
69
+ stdio: 'pipe',
70
+ shell: options.shell ?? platform_1.isWindows,
71
+ encoding: 'utf-8',
72
+ });
73
+ return {
74
+ stdout: result.stdout ?? '',
75
+ stderr: result.stderr ?? '',
76
+ code: result.status,
77
+ signal: result.signal,
78
+ };
79
+ }
80
+ function checkSubprocessSync(command, args, options = {}) {
81
+ try {
82
+ const result = (0, child_process_1.spawnSync)(command, args, {
83
+ cwd: options.cwd,
84
+ env: options.env,
85
+ stdio: options.stdio ?? 'ignore',
86
+ shell: options.shell ?? platform_1.isWindows,
87
+ });
88
+ return result.status === 0;
89
+ }
90
+ catch {
91
+ return false;
92
+ }
93
+ }
94
+ //# sourceMappingURL=subprocess.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subprocess.js","sourceRoot":"","sources":["../../../src/lib/utils/subprocess.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { AgentCoreProjectSpec, AgentEnvSpec } from '../../schema';
2
+ /**
3
+ * Pass agent spec through zod validator
4
+ * @param spec Agent spec to validate
5
+ * @returns Validated AgentEnvSpec
6
+ */
7
+ export declare function validateAgentSchema(spec: unknown): AgentEnvSpec;
8
+ /**
9
+ * Pass project spec through zod validator
10
+ * @param spec Project spec to validate
11
+ * @returns Validated AgentCoreProjectSpec
12
+ */
13
+ export declare function validateProjectSchema(spec: unknown): AgentCoreProjectSpec;
14
+ //# sourceMappingURL=zod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/zod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGvE;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAO/D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,oBAAoB,CAOzE"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateAgentSchema = validateAgentSchema;
4
+ exports.validateProjectSchema = validateProjectSchema;
5
+ const schema_1 = require("../../schema");
6
+ /**
7
+ * Pass agent spec through zod validator
8
+ * @param spec Agent spec to validate
9
+ * @returns Validated AgentEnvSpec
10
+ */
11
+ function validateAgentSchema(spec) {
12
+ const validationResult = schema_1.AgentEnvSpecSchema.safeParse(spec);
13
+ if (!validationResult.success) {
14
+ const errors = validationResult.error.issues.map(e => `${String(e.path.join('.'))}: ${e.message}`).join('; ');
15
+ throw new Error(`Invalid AgentEnvSpec: ${errors}`);
16
+ }
17
+ return validationResult.data;
18
+ }
19
+ /**
20
+ * Pass project spec through zod validator
21
+ * @param spec Project spec to validate
22
+ * @returns Validated AgentCoreProjectSpec
23
+ */
24
+ function validateProjectSchema(spec) {
25
+ const validationResult = schema_1.AgentCoreProjectSpecSchema.safeParse(spec);
26
+ if (!validationResult.success) {
27
+ const errors = validationResult.error.issues.map(e => `${String(e.path.join('.'))}: ${e.message}`).join('; ');
28
+ throw new Error(`Invalid AgentCoreProjectSpec: ${errors}`);
29
+ }
30
+ return validationResult.data;
31
+ }
32
+ //# sourceMappingURL=zod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod.js","sourceRoot":"","sources":["../../../src/lib/utils/zod.ts"],"names":[],"mappings":";;AAQA,kDAOC;AAOD,sDAOC;AA5BD,yCAA8E;AAE9E;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,IAAa;IAC/C,MAAM,gBAAgB,GAAG,2BAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9G,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,gBAAgB,CAAC,IAAI,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,IAAa;IACjD,MAAM,gBAAgB,GAAG,mCAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACpE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9G,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,gBAAgB,CAAC,IAAI,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,82 @@
1
+ import { z } from 'zod';
2
+ export declare const SDKFrameworkSchema: z.ZodEnum<{
3
+ Strands: "Strands";
4
+ LangChain_LangGraph: "LangChain_LangGraph";
5
+ CrewAI: "CrewAI";
6
+ GoogleADK: "GoogleADK";
7
+ OpenAIAgents: "OpenAIAgents";
8
+ }>;
9
+ export type SDKFramework = z.infer<typeof SDKFrameworkSchema>;
10
+ export declare const TargetLanguageSchema: z.ZodEnum<{
11
+ Python: "Python";
12
+ TypeScript: "TypeScript";
13
+ Other: "Other";
14
+ }>;
15
+ export type TargetLanguage = z.infer<typeof TargetLanguageSchema>;
16
+ export declare const ModelProviderSchema: z.ZodEnum<{
17
+ Bedrock: "Bedrock";
18
+ Gemini: "Gemini";
19
+ OpenAI: "OpenAI";
20
+ Anthropic: "Anthropic";
21
+ }>;
22
+ export type ModelProvider = z.infer<typeof ModelProviderSchema>;
23
+ /**
24
+ * Matrix defining which model providers are supported for each SDK framework.
25
+ * - Most SDKs support all 4 providers (Bedrock, Anthropic, OpenAI, Gemini)
26
+ * - GoogleADK only supports Gemini (uses Google's native API)
27
+ * - OpenAIAgents only supports OpenAI (uses OpenAI's native API)
28
+ */
29
+ export declare const SDK_MODEL_PROVIDER_MATRIX: Record<SDKFramework, readonly ModelProvider[]>;
30
+ /**
31
+ * Returns the supported model providers for a given SDK framework.
32
+ */
33
+ export declare function getSupportedModelProviders(sdk: SDKFramework): readonly ModelProvider[];
34
+ /**
35
+ * Checks if a model provider is supported for a given SDK framework.
36
+ */
37
+ export declare function isModelProviderSupported(sdk: SDKFramework, provider: ModelProvider): boolean;
38
+ /**
39
+ * Project/agent names that would conflict with Python package names when
40
+ * creating a virtual environment. If the project directory name matches
41
+ * a dependency name, uv/pip will fail to resolve dependencies correctly.
42
+ *
43
+ * This list includes all dependencies used across SDK templates, normalized
44
+ * to valid project name format (lowercase, underscores replaced with nothing
45
+ * since project names are alphanumeric only).
46
+ */
47
+ export declare const RESERVED_PROJECT_NAMES: readonly string[];
48
+ /**
49
+ * Check if a project name is reserved (case-insensitive).
50
+ */
51
+ export declare function isReservedProjectName(name: string): boolean;
52
+ export declare const PythonRuntimeSchema: z.ZodEnum<{
53
+ PYTHON_3_10: "PYTHON_3_10";
54
+ PYTHON_3_11: "PYTHON_3_11";
55
+ PYTHON_3_12: "PYTHON_3_12";
56
+ PYTHON_3_13: "PYTHON_3_13";
57
+ }>;
58
+ export type PythonRuntime = z.infer<typeof PythonRuntimeSchema>;
59
+ export declare const NodeRuntimeSchema: z.ZodEnum<{
60
+ NODE_18: "NODE_18";
61
+ NODE_20: "NODE_20";
62
+ NODE_22: "NODE_22";
63
+ }>;
64
+ export type NodeRuntime = z.infer<typeof NodeRuntimeSchema>;
65
+ /** Combined runtime version schema supporting both Python and Node/TypeScript runtimes */
66
+ export declare const RuntimeVersionSchema: z.ZodUnion<readonly [z.ZodEnum<{
67
+ PYTHON_3_10: "PYTHON_3_10";
68
+ PYTHON_3_11: "PYTHON_3_11";
69
+ PYTHON_3_12: "PYTHON_3_12";
70
+ PYTHON_3_13: "PYTHON_3_13";
71
+ }>, z.ZodEnum<{
72
+ NODE_18: "NODE_18";
73
+ NODE_20: "NODE_20";
74
+ NODE_22: "NODE_22";
75
+ }>]>;
76
+ export type RuntimeVersion = z.infer<typeof RuntimeVersionSchema>;
77
+ export declare const NetworkModeSchema: z.ZodEnum<{
78
+ PUBLIC: "PUBLIC";
79
+ PRIVATE: "PRIVATE";
80
+ }>;
81
+ export type NetworkMode = z.infer<typeof NetworkModeSchema>;
82
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/schema/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,kBAAkB;;;;;;EAAoF,CAAC;AACpH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB;;;;EAA4C,CAAC;AAC9E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,mBAAmB;;;;;EAAuD,CAAC;AACxF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,aAAa,EAAE,CAMpF,CAAC;AAEF;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,YAAY,GAAG,SAAS,aAAa,EAAE,CAEtF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,GAAG,OAAO,CAE5F;AAMD;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAmD1C,CAAC;AAEX;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE3D;AAMD,eAAO,MAAM,mBAAmB;;;;;EAAuE,CAAC;AACxG,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB;;;;EAA4C,CAAC;AAC3E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,0FAA0F;AAC1F,eAAO,MAAM,oBAAoB;;;;;;;;;IAAoD,CAAC;AACtF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,iBAAiB;;;EAAgC,CAAC;AAC/D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NetworkModeSchema = exports.RuntimeVersionSchema = exports.NodeRuntimeSchema = exports.PythonRuntimeSchema = exports.RESERVED_PROJECT_NAMES = exports.SDK_MODEL_PROVIDER_MATRIX = exports.ModelProviderSchema = exports.TargetLanguageSchema = exports.SDKFrameworkSchema = void 0;
4
+ exports.getSupportedModelProviders = getSupportedModelProviders;
5
+ exports.isModelProviderSupported = isModelProviderSupported;
6
+ exports.isReservedProjectName = isReservedProjectName;
7
+ const zod_1 = require("zod");
8
+ // ============================================================================
9
+ // Feature Constants (shared across all schemas)
10
+ // ============================================================================
11
+ exports.SDKFrameworkSchema = zod_1.z.enum(['Strands', 'LangChain_LangGraph', 'CrewAI', 'GoogleADK', 'OpenAIAgents']);
12
+ exports.TargetLanguageSchema = zod_1.z.enum(['Python', 'TypeScript', 'Other']);
13
+ exports.ModelProviderSchema = zod_1.z.enum(['Bedrock', 'Gemini', 'OpenAI', 'Anthropic']);
14
+ /**
15
+ * Matrix defining which model providers are supported for each SDK framework.
16
+ * - Most SDKs support all 4 providers (Bedrock, Anthropic, OpenAI, Gemini)
17
+ * - GoogleADK only supports Gemini (uses Google's native API)
18
+ * - OpenAIAgents only supports OpenAI (uses OpenAI's native API)
19
+ */
20
+ exports.SDK_MODEL_PROVIDER_MATRIX = {
21
+ Strands: ['Bedrock', 'Anthropic', 'OpenAI', 'Gemini'],
22
+ LangChain_LangGraph: ['Bedrock', 'Anthropic', 'OpenAI', 'Gemini'],
23
+ CrewAI: ['Bedrock', 'Anthropic', 'OpenAI', 'Gemini'],
24
+ GoogleADK: ['Gemini'],
25
+ OpenAIAgents: ['OpenAI'],
26
+ };
27
+ /**
28
+ * Returns the supported model providers for a given SDK framework.
29
+ */
30
+ function getSupportedModelProviders(sdk) {
31
+ return exports.SDK_MODEL_PROVIDER_MATRIX[sdk];
32
+ }
33
+ /**
34
+ * Checks if a model provider is supported for a given SDK framework.
35
+ */
36
+ function isModelProviderSupported(sdk, provider) {
37
+ return exports.SDK_MODEL_PROVIDER_MATRIX[sdk].includes(provider);
38
+ }
39
+ // ============================================================================
40
+ // Reserved Project Names (Python package conflicts)
41
+ // ============================================================================
42
+ /**
43
+ * Project/agent names that would conflict with Python package names when
44
+ * creating a virtual environment. If the project directory name matches
45
+ * a dependency name, uv/pip will fail to resolve dependencies correctly.
46
+ *
47
+ * This list includes all dependencies used across SDK templates, normalized
48
+ * to valid project name format (lowercase, underscores replaced with nothing
49
+ * since project names are alphanumeric only).
50
+ */
51
+ exports.RESERVED_PROJECT_NAMES = [
52
+ // Core SDK packages
53
+ 'anthropic',
54
+ 'autogen',
55
+ 'autogenagentchat',
56
+ 'autogenext',
57
+ 'bedrock',
58
+ 'bedrockagentcore',
59
+ 'crewai',
60
+ 'crewaitools',
61
+ 'googleadk',
62
+ 'googlegenerativeai',
63
+ 'langchain',
64
+ 'langchainanthropic',
65
+ 'langchainaws',
66
+ 'langchaingooglegenai',
67
+ 'langchainmcpadapters',
68
+ 'langchainopenai',
69
+ 'langgraph',
70
+ 'mcp',
71
+ 'openai',
72
+ 'openaiagents',
73
+ 'strands',
74
+ 'strandsagents',
75
+ 'strandsagentstools',
76
+ // Common utilities
77
+ 'httpx',
78
+ 'pytest',
79
+ 'pytestasyncio',
80
+ 'pythondotenv',
81
+ 'tiktoken',
82
+ // Build tools
83
+ 'hatchling',
84
+ 'setuptools',
85
+ 'wheel',
86
+ // AWS packages
87
+ 'awsopentelemetrydistro',
88
+ 'boto3',
89
+ 'botocore',
90
+ // Common Python stdlib/package names that could cause issues
91
+ 'test',
92
+ 'tests',
93
+ 'src',
94
+ 'lib',
95
+ 'dist',
96
+ 'build',
97
+ 'env',
98
+ 'venv',
99
+ 'site',
100
+ 'pip',
101
+ 'uv',
102
+ ];
103
+ /**
104
+ * Check if a project name is reserved (case-insensitive).
105
+ */
106
+ function isReservedProjectName(name) {
107
+ return exports.RESERVED_PROJECT_NAMES.includes(name.toLowerCase());
108
+ }
109
+ // ============================================================================
110
+ // Infrastructure Constants (shared between agent-env and mcp schemas)
111
+ // ============================================================================
112
+ exports.PythonRuntimeSchema = zod_1.z.enum(['PYTHON_3_10', 'PYTHON_3_11', 'PYTHON_3_12', 'PYTHON_3_13']);
113
+ exports.NodeRuntimeSchema = zod_1.z.enum(['NODE_18', 'NODE_20', 'NODE_22']);
114
+ /** Combined runtime version schema supporting both Python and Node/TypeScript runtimes */
115
+ exports.RuntimeVersionSchema = zod_1.z.union([exports.PythonRuntimeSchema, exports.NodeRuntimeSchema]);
116
+ exports.NetworkModeSchema = zod_1.z.enum(['PUBLIC', 'PRIVATE']);
117
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/schema/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './constants';
2
+ export * from './schemas';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ // Re-export all public APIs
18
+ __exportStar(require("./constants"), exports);
19
+ __exportStar(require("./schemas"), exports);
20
+ __exportStar(require("./types"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4BAA4B;AAC5B,8CAA4B;AAC5B,4CAA0B;AAC1B,0CAAwB"}
@@ -0,0 +1,75 @@
1
+ import type { DirectoryPath, FilePath } from '../types';
2
+ import { z } from 'zod';
3
+ export type { DirectoryPath, FilePath, PathType } from '../types';
4
+ export type { PythonRuntime, NodeRuntime, RuntimeVersion, NetworkMode } from '../constants';
5
+ export declare const AgentNameSchema: z.ZodString;
6
+ export declare const EnvVarNameSchema: z.ZodString;
7
+ export declare const GatewayNameSchema: z.ZodString;
8
+ /** Access level for resource sharing */
9
+ export declare const AccessSchema: z.ZodEnum<{
10
+ read: "read";
11
+ readwrite: "readwrite";
12
+ }>;
13
+ export type Access = z.infer<typeof AccessSchema>;
14
+ export declare const AgentTypeSchema: z.ZodLiteral<"AgentCoreRuntime">;
15
+ export type AgentType = z.infer<typeof AgentTypeSchema>;
16
+ export declare const BuildTypeSchema: z.ZodEnum<{
17
+ CodeZip: "CodeZip";
18
+ Container: "Container";
19
+ }>;
20
+ export type BuildType = z.infer<typeof BuildTypeSchema>;
21
+ /**
22
+ * Entrypoint schema - supports both Python (.py) and TypeScript (.ts/.js) files.
23
+ * Python: main.py or main.py:handler
24
+ * TypeScript: main.ts, main.js, or index.ts
25
+ */
26
+ export declare const EntrypointSchema: z.ZodType<FilePath>;
27
+ export declare const EnvVarSchema: z.ZodObject<{
28
+ name: z.ZodString;
29
+ value: z.ZodString;
30
+ }, z.core.$strip>;
31
+ export type EnvVar = z.infer<typeof EnvVarSchema>;
32
+ /**
33
+ * Instrumentation configuration for runtime observability.
34
+ */
35
+ export declare const InstrumentationSchema: z.ZodObject<{
36
+ enableOtel: z.ZodDefault<z.ZodBoolean>;
37
+ }, z.core.$strip>;
38
+ export type Instrumentation = z.infer<typeof InstrumentationSchema>;
39
+ /**
40
+ * AgentEnvSpec - represents an AgentCore Runtime.
41
+ * This is a top-level resource in the schema.
42
+ */
43
+ export declare const AgentEnvSpecSchema: z.ZodObject<{
44
+ type: z.ZodLiteral<"AgentCoreRuntime">;
45
+ name: z.ZodString;
46
+ build: z.ZodEnum<{
47
+ CodeZip: "CodeZip";
48
+ Container: "Container";
49
+ }>;
50
+ entrypoint: z.ZodType<FilePath, unknown, z.core.$ZodTypeInternals<FilePath, unknown>>;
51
+ codeLocation: z.ZodType<DirectoryPath, unknown, z.core.$ZodTypeInternals<DirectoryPath, unknown>>;
52
+ runtimeVersion: z.ZodUnion<readonly [z.ZodEnum<{
53
+ PYTHON_3_10: "PYTHON_3_10";
54
+ PYTHON_3_11: "PYTHON_3_11";
55
+ PYTHON_3_12: "PYTHON_3_12";
56
+ PYTHON_3_13: "PYTHON_3_13";
57
+ }>, z.ZodEnum<{
58
+ NODE_18: "NODE_18";
59
+ NODE_20: "NODE_20";
60
+ NODE_22: "NODE_22";
61
+ }>]>;
62
+ envVars: z.ZodOptional<z.ZodArray<z.ZodObject<{
63
+ name: z.ZodString;
64
+ value: z.ZodString;
65
+ }, z.core.$strip>>>;
66
+ networkMode: z.ZodOptional<z.ZodEnum<{
67
+ PUBLIC: "PUBLIC";
68
+ PRIVATE: "PRIVATE";
69
+ }>>;
70
+ instrumentation: z.ZodOptional<z.ZodObject<{
71
+ enableOtel: z.ZodDefault<z.ZodBoolean>;
72
+ }, z.core.$strip>>;
73
+ }, z.core.$strip>;
74
+ export type AgentEnvSpec = z.infer<typeof AgentEnvSpecSchema>;
75
+ //# sourceMappingURL=agent-env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-env.d.ts","sourceRoot":"","sources":["../../../src/schema/schemas/agent-env.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAClE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAM5F,eAAO,MAAM,eAAe,aAOzB,CAAC;AAEJ,eAAO,MAAM,gBAAgB,aAO1B,CAAC;AAEJ,eAAO,MAAM,iBAAiB,aAImF,CAAC;AAMlH,wCAAwC;AACxC,eAAO,MAAM,YAAY;;;EAAgC,CAAC;AAC1D,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAMlD,eAAO,MAAM,eAAe,kCAAgC,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,eAAe;;;EAAmC,CAAC;AAChE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAKxD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAMX,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAItC,eAAO,MAAM,YAAY;;;iBAGvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,qBAAqB;;iBAOhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAa7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AgentEnvSpecSchema = exports.InstrumentationSchema = exports.EnvVarSchema = exports.EntrypointSchema = exports.BuildTypeSchema = exports.AgentTypeSchema = exports.AccessSchema = exports.GatewayNameSchema = exports.EnvVarNameSchema = exports.AgentNameSchema = void 0;
4
+ /**
5
+ * Agent Schema v2 - Clean, simplified model
6
+ *
7
+ * @module agent-env
8
+ */
9
+ const constants_1 = require("../constants");
10
+ const zod_1 = require("zod");
11
+ // ============================================================================
12
+ // Name Schemas
13
+ // ============================================================================
14
+ exports.AgentNameSchema = zod_1.z
15
+ .string()
16
+ .min(1, 'Name is required')
17
+ .max(48)
18
+ .regex(/^[a-zA-Z][a-zA-Z0-9_]{0,47}$/, 'Must begin with a letter and contain only alphanumeric characters and underscores (max 48 chars)');
19
+ exports.EnvVarNameSchema = zod_1.z
20
+ .string()
21
+ .min(1)
22
+ .max(255)
23
+ .regex(/^[A-Za-z_][A-Za-z0-9_]*$/, 'Must start with a letter or underscore, contain only letters, digits, and underscores');
24
+ exports.GatewayNameSchema = zod_1.z
25
+ .string()
26
+ .min(1)
27
+ .max(100)
28
+ .regex(/^([0-9a-zA-Z][-]?){1,100}$/, 'Gateway name must be alphanumeric with optional hyphens (max 100 chars)');
29
+ // ============================================================================
30
+ // Common Types
31
+ // ============================================================================
32
+ /** Access level for resource sharing */
33
+ exports.AccessSchema = zod_1.z.enum(['read', 'readwrite']);
34
+ // ============================================================================
35
+ // Agent Schema
36
+ // ============================================================================
37
+ exports.AgentTypeSchema = zod_1.z.literal('AgentCoreRuntime');
38
+ exports.BuildTypeSchema = zod_1.z.enum(['CodeZip', 'Container']);
39
+ // Use RuntimeVersionSchema from constants (supports both Python and Node/TypeScript)
40
+ // Not re-exported here to avoid duplicate export conflicts
41
+ /**
42
+ * Entrypoint schema - supports both Python (.py) and TypeScript (.ts/.js) files.
43
+ * Python: main.py or main.py:handler
44
+ * TypeScript: main.ts, main.js, or index.ts
45
+ */
46
+ exports.EntrypointSchema = zod_1.z
47
+ .string()
48
+ .min(1)
49
+ .regex(/^[a-zA-Z0-9_][a-zA-Z0-9_/.-]*\.(py|ts|js)(:[a-zA-Z_][a-zA-Z0-9_]*)?$/, 'Must be a Python (.py) or TypeScript (.ts/.js) file path with optional handler (e.g., "main.py:handler" or "index.ts")');
50
+ const DirectoryPathSchema = zod_1.z.string().min(1);
51
+ exports.EnvVarSchema = zod_1.z.object({
52
+ name: exports.EnvVarNameSchema,
53
+ value: zod_1.z.string(),
54
+ });
55
+ /**
56
+ * Instrumentation configuration for runtime observability.
57
+ */
58
+ exports.InstrumentationSchema = zod_1.z.object({
59
+ /**
60
+ * Enable OpenTelemetry instrumentation using aws-opentelemetry-distro.
61
+ * When enabled, the runtime entrypoint is wrapped with opentelemetry-instrument.
62
+ * Defaults to true for new runtimes.
63
+ */
64
+ enableOtel: zod_1.z.boolean().default(true),
65
+ });
66
+ /**
67
+ * AgentEnvSpec - represents an AgentCore Runtime.
68
+ * This is a top-level resource in the schema.
69
+ */
70
+ exports.AgentEnvSpecSchema = zod_1.z.object({
71
+ type: exports.AgentTypeSchema,
72
+ name: exports.AgentNameSchema,
73
+ build: exports.BuildTypeSchema,
74
+ entrypoint: exports.EntrypointSchema,
75
+ codeLocation: DirectoryPathSchema,
76
+ runtimeVersion: constants_1.RuntimeVersionSchema,
77
+ /** Environment variables to set on the runtime */
78
+ envVars: zod_1.z.array(exports.EnvVarSchema).optional(),
79
+ /** Network mode for the runtime. Defaults to PUBLIC. */
80
+ networkMode: constants_1.NetworkModeSchema.optional(),
81
+ /** Instrumentation settings for observability. Defaults to OTel enabled. */
82
+ instrumentation: exports.InstrumentationSchema.optional(),
83
+ });
84
+ //# sourceMappingURL=agent-env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-env.js","sourceRoot":"","sources":["../../../src/schema/schemas/agent-env.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,4CAA4G;AAE5G,6BAAwB;AAMxB,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAElE,QAAA,eAAe,GAAG,OAAC;KAC7B,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;KAC1B,GAAG,CAAC,EAAE,CAAC;KACP,KAAK,CACJ,8BAA8B,EAC9B,kGAAkG,CACnG,CAAC;AAES,QAAA,gBAAgB,GAAG,OAAC;KAC9B,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,GAAG,CAAC,GAAG,CAAC;KACR,KAAK,CACJ,0BAA0B,EAC1B,uFAAuF,CACxF,CAAC;AAES,QAAA,iBAAiB,GAAG,OAAC;KAC/B,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,GAAG,CAAC,GAAG,CAAC;KACR,KAAK,CAAC,4BAA4B,EAAE,yEAAyE,CAAC,CAAC;AAElH,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,wCAAwC;AAC3B,QAAA,YAAY,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;AAG1D,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAElE,QAAA,eAAe,GAAG,OAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAGhD,QAAA,eAAe,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;AAGhE,qFAAqF;AACrF,2DAA2D;AAE3D;;;;GAIG;AACU,QAAA,gBAAgB,GAAG,OAAC;KAC9B,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,KAAK,CACJ,sEAAsE,EACtE,wHAAwH,CACvF,CAAC;AAEtC,MAAM,mBAAmB,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAwC,CAAC;AAExE,QAAA,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,wBAAgB;IACtB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAGH;;GAEG;AACU,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C;;;;OAIG;IACH,UAAU,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACtC,CAAC,CAAC;AAGH;;;GAGG;AACU,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,uBAAe;IACrB,IAAI,EAAE,uBAAe;IACrB,KAAK,EAAE,uBAAe;IACtB,UAAU,EAAE,wBAAgB;IAC5B,YAAY,EAAE,mBAAmB;IACjC,cAAc,EAAE,gCAAiC;IACjD,kDAAkD;IAClD,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,oBAAY,CAAC,CAAC,QAAQ,EAAE;IACzC,wDAAwD;IACxD,WAAW,EAAE,6BAAiB,CAAC,QAAQ,EAAE;IACzC,4EAA4E;IAC5E,eAAe,EAAE,6BAAqB,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC"}