@aws/nx-plugin 0.97.1 → 0.99.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 (84) hide show
  1. package/generators.json +17 -1
  2. package/package.json +1 -1
  3. package/src/connection/agent-runtime-config.d.ts +19 -0
  4. package/src/connection/agent-runtime-config.js +52 -0
  5. package/src/connection/agent-runtime-config.js.map +1 -0
  6. package/src/connection/generator.js +15 -5
  7. package/src/connection/generator.js.map +1 -1
  8. package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +3 -17
  9. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +3 -3
  10. package/src/py/strands-agent/__snapshots__/generator.spec.ts.snap +8 -5
  11. package/src/py/strands-agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +29 -0
  12. package/src/py/strands-agent/a2a-connection/generator.d.ts +10 -0
  13. package/src/py/strands-agent/a2a-connection/generator.js +164 -0
  14. package/src/py/strands-agent/a2a-connection/generator.js.map +1 -0
  15. package/src/py/strands-agent/a2a-connection/schema.d.ts +15 -0
  16. package/src/py/strands-agent/a2a-connection/schema.json +26 -0
  17. package/src/py/strands-agent/files/a2a/main.py.template +33 -0
  18. package/src/py/strands-agent/files/{app → common}/agent.py.template +2 -0
  19. package/src/py/strands-agent/files/deploy/Dockerfile.template +9 -0
  20. package/src/py/strands-agent/generator.js +29 -16
  21. package/src/py/strands-agent/generator.js.map +1 -1
  22. package/src/py/strands-agent/mcp-connection/__snapshots__/generator.spec.ts.snap +9 -63
  23. package/src/py/strands-agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +4 -19
  24. package/src/py/strands-agent/mcp-connection/generator.js +16 -19
  25. package/src/py/strands-agent/mcp-connection/generator.js.map +1 -1
  26. package/src/py/strands-agent/react-connection/__snapshots__/generator.spec.ts.snap +3 -17
  27. package/src/py/strands-agent/react-connection/generator.js +12 -0
  28. package/src/py/strands-agent/react-connection/generator.js.map +1 -1
  29. package/src/py/strands-agent/schema.d.ts +2 -0
  30. package/src/py/strands-agent/schema.json +8 -0
  31. package/src/smithy/react-connection/__snapshots__/generator.spec.ts.snap +3 -17
  32. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +3 -3
  33. package/src/ts/strands-agent/__snapshots__/generator.spec.ts.snap +3 -3
  34. package/src/ts/strands-agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +27 -0
  35. package/src/ts/strands-agent/a2a-connection/generator.d.ts +10 -0
  36. package/src/ts/strands-agent/a2a-connection/generator.js +119 -0
  37. package/src/ts/strands-agent/a2a-connection/generator.js.map +1 -0
  38. package/src/ts/strands-agent/a2a-connection/schema.d.ts +15 -0
  39. package/src/ts/strands-agent/a2a-connection/schema.json +26 -0
  40. package/src/ts/strands-agent/files/a2a/index.ts.template +28 -0
  41. package/src/ts/strands-agent/files/deploy/Dockerfile.template +4 -0
  42. package/src/ts/strands-agent/generator.js +30 -14
  43. package/src/ts/strands-agent/generator.js.map +1 -1
  44. package/src/ts/strands-agent/mcp-connection/__snapshots__/generator.spec.ts.snap +9 -31
  45. package/src/ts/strands-agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +2 -9
  46. package/src/ts/strands-agent/mcp-connection/generator.js +4 -2
  47. package/src/ts/strands-agent/mcp-connection/generator.js.map +1 -1
  48. package/src/ts/strands-agent/react-connection/generator.js +12 -0
  49. package/src/ts/strands-agent/react-connection/generator.js.map +1 -1
  50. package/src/ts/strands-agent/schema.d.ts +2 -0
  51. package/src/ts/strands-agent/schema.json +8 -0
  52. package/src/utils/agent-connection/agent-connection.d.ts +31 -3
  53. package/src/utils/agent-connection/agent-connection.js +62 -30
  54. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  55. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client.ts.template +134 -0
  56. package/src/utils/agent-connection/files/{core → core-mcp}/agentcore-mcp-client.ts.template +7 -22
  57. package/src/utils/agent-connection/files/core-runtime-config/runtime-config.ts.template +40 -0
  58. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client.py.template +91 -0
  59. package/src/utils/agent-connection/files/py-core-auth/auth/__init__.py.template +3 -0
  60. package/src/utils/agent-connection/files/py-core-auth/auth/sigv4.py.template +48 -0
  61. package/src/utils/agent-connection/files/{py-core → py-core-mcp}/agentcore_mcp_client.py.template +2 -36
  62. package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +44 -0
  63. package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +3 -2
  64. package/src/utils/agent-core-constructs/agent-core-constructs.js +2 -2
  65. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  66. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +8 -3
  67. package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +1 -1
  68. package/src/utils/ast.d.ts +18 -0
  69. package/src/utils/ast.js +58 -9
  70. package/src/utils/ast.js.map +1 -1
  71. package/src/utils/connection/open-api/files/components/__apiNameClassName__Provider.tsx.template +3 -16
  72. package/src/utils/versions.d.ts +6 -3
  73. package/src/utils/versions.js +5 -2
  74. package/src/utils/versions.js.map +1 -1
  75. /package/src/py/strands-agent/files/{app → common}/__init__.py.template +0 -0
  76. /package/src/py/strands-agent/files/{app → http}/init.py.template +0 -0
  77. /package/src/py/strands-agent/files/{app → http}/main.py.template +0 -0
  78. /package/src/ts/strands-agent/files/{app → common}/agent.ts.template +0 -0
  79. /package/src/ts/strands-agent/files/{app → http}/agent-core-trpc-client.ts.template +0 -0
  80. /package/src/ts/strands-agent/files/{app → http}/client.ts.template +0 -0
  81. /package/src/ts/strands-agent/files/{app → http}/index.ts.template +0 -0
  82. /package/src/ts/strands-agent/files/{app → http}/init.ts.template +0 -0
  83. /package/src/ts/strands-agent/files/{app → http}/router.ts.template +0 -0
  84. /package/src/ts/strands-agent/files/{app → http}/schema/z-async-iterable.ts.template +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"agent-core-constructs.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/agent-core-constructs/agent-core-constructs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-core-constructs.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/agent-core-constructs/agent-core-constructs.ts"],"names":[],"mappings":"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"}
@@ -97,8 +97,8 @@ export class <%- nameClassName %> extends Construct implements IGrantable {
97
97
 
98
98
  rc.grantReadAppConfig(this.agentCoreRuntime);
99
99
 
100
- rc.set('connection', 'agentRuntimes', {
101
- ...rc.get('connection').agentRuntimes,
100
+ rc.set('agentcore', 'agentRuntimes', {
101
+ ...rc.get('agentcore').agentRuntimes,
102
102
  <%- nameClassName %>: this.agentCoreRuntime.agentRuntimeArn,
103
103
  });
104
104
  }
@@ -121,7 +121,12 @@ export class <%- nameClassName %> extends Construct implements IGrantable {
121
121
 
122
122
  Grant.addToPrincipal({
123
123
  grantee,
124
- actions: ['bedrock-agentcore:InvokeAgentRuntimeWithWebSocketStream'],
124
+ actions: [
125
+ 'bedrock-agentcore:InvokeAgentRuntimeWithWebSocketStream',
126
+ <%_ if (serverProtocol === 'A2A') { _%>
127
+ 'bedrock-agentcore:GetAgentCard',
128
+ <%_ } _%>
129
+ ],
125
130
  resourceArns: [
126
131
  this.agentCoreRuntime.agentRuntimeArn,
127
132
  `${this.agentCoreRuntime.agentRuntimeArn}/*`,
@@ -80,7 +80,7 @@ module "agent_core_runtime" {
80
80
  module "add_agent_runtime_to_runtime_config" {
81
81
  source = "../../../core/runtime-config/entry"
82
82
 
83
- namespace = "connection"
83
+ namespace = "agentcore"
84
84
  key = "agentRuntimes"
85
85
  value = { "<%= nameClassName %>" = module.agent_core_runtime.agent_core_runtime_arn }
86
86
 
@@ -4,6 +4,20 @@
4
4
  */
5
5
  import { Tree } from '@nx/devkit';
6
6
  export declare const addDestructuredImport: (tree: Tree, filePath: string, variableNames: string[], from: string) => Promise<void>;
7
+ /**
8
+ * Ensure a Python `from <module> import <name1>, <name2>, ...` statement
9
+ * exists in the given file. If the module already has a `from <module> import`
10
+ * line, any missing names are appended; otherwise a fresh import statement is
11
+ * prepended to the file (ruff's import sorter will reorder it into place on
12
+ * the next format pass).
13
+ *
14
+ * We try to append first (which only succeeds if an import-from for the
15
+ * module already exists AND the name isn't yet in the list). If nothing
16
+ * was rewritten after trying every requested name, we fall back to checking
17
+ * whether the module is imported at all; if not, we prepend a fresh
18
+ * `from <module> import ...` line.
19
+ */
20
+ export declare const addPythonDestructuredImport: (tree: Tree, filePath: string, variableNames: string[], from: string) => Promise<void>;
7
21
  /**
8
22
  * Adds an `import <variableName> from '<from>'; statement to the beginning of the file,
9
23
  * if it doesn't already exist
@@ -26,5 +40,9 @@ export declare const applyGritQL: (tree: Tree, filePath: string, pattern: string
26
40
  /**
27
41
  * Check whether a GritQL pattern matches anywhere in a file.
28
42
  * Returns true if the pattern matches at least once.
43
+ *
44
+ * Accepts raw GritQL, including patterns that start with a `language <name>`
45
+ * header (e.g. `language python\n\`print($_)\``) — the pattern is passed
46
+ * straight through to QueryBuilder without any wrapping rewrite.
29
47
  */
30
48
  export declare const matchGritQL: (tree: Tree, filePath: string, pattern: string) => Promise<boolean>;
package/src/utils/ast.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.matchGritQL = exports.applyGritQL = exports.hasExportDeclaration = exports.addStarExport = exports.addSingleImport = exports.addDestructuredImport = void 0;
3
+ exports.matchGritQL = exports.applyGritQL = exports.hasExportDeclaration = exports.addStarExport = exports.addSingleImport = exports.addPythonDestructuredImport = exports.addDestructuredImport = void 0;
4
4
  const gritql_1 = require("@getgrit/gritql");
5
5
  const assertFilePath = (tree, filePath) => {
6
6
  if (!tree.exists(filePath)) {
@@ -29,6 +29,52 @@ const addDestructuredImport = async (tree, filePath, variableNames, from) => {
29
29
  }
30
30
  };
31
31
  exports.addDestructuredImport = addDestructuredImport;
32
+ /**
33
+ * Ensure a Python `from <module> import <name1>, <name2>, ...` statement
34
+ * exists in the given file. If the module already has a `from <module> import`
35
+ * line, any missing names are appended; otherwise a fresh import statement is
36
+ * prepended to the file (ruff's import sorter will reorder it into place on
37
+ * the next format pass).
38
+ *
39
+ * We try to append first (which only succeeds if an import-from for the
40
+ * module already exists AND the name isn't yet in the list). If nothing
41
+ * was rewritten after trying every requested name, we fall back to checking
42
+ * whether the module is imported at all; if not, we prepend a fresh
43
+ * `from <module> import ...` line.
44
+ */
45
+ const addPythonDestructuredImport = async (tree, filePath, variableNames, from) => {
46
+ assertFilePath(tree, filePath);
47
+ // Determine whether there's any `from <module> import ...` line in the file.
48
+ // We detect this by attempting a no-op transformation — the file is unchanged,
49
+ // but a successful match tells us the line exists.
50
+ const beforeContents = tree.read(filePath).toString();
51
+ let moduleAlreadyImported = false;
52
+ for (const variableName of variableNames) {
53
+ // Appends the name if the import-from exists and the name isn't already there.
54
+ const appended = await (0, exports.applyGritQL)(tree, filePath, `language python\n\`from ${from} import $names\` where { $names <: not contains \`${variableName}\`, $names += \`, ${variableName}\` }`);
55
+ if (appended) {
56
+ moduleAlreadyImported = true;
57
+ }
58
+ }
59
+ // If the append succeeded for at least one name, we know the module line
60
+ // exists; we're done. If nothing was appended we need to distinguish
61
+ // between "module not imported" (need to add a new line) and "module
62
+ // imported but all names already present" (no-op).
63
+ if (moduleAlreadyImported) {
64
+ return;
65
+ }
66
+ const allAlreadyPresent = await (0, exports.matchGritQL)(tree, filePath, `language python\n\`from ${from} import $names\` where { ${variableNames
67
+ .map((n) => `$names <: contains \`${n}\``)
68
+ .join(', ')} }`);
69
+ if (allAlreadyPresent) {
70
+ return;
71
+ }
72
+ // No existing `from <module> import` line — prepend one. Ruff's import
73
+ // sorter will place it in the right group on the next formatter pass.
74
+ const specifiers = variableNames.join(', ');
75
+ tree.write(filePath, `from ${from} import ${specifiers}\n${beforeContents}`);
76
+ };
77
+ exports.addPythonDestructuredImport = addPythonDestructuredImport;
32
78
  /**
33
79
  * Adds an `import <variableName> from '<from>'; statement to the beginning of the file,
34
80
  * if it doesn't already exist
@@ -111,25 +157,28 @@ exports.applyGritQL = applyGritQL;
111
157
  /**
112
158
  * Check whether a GritQL pattern matches anywhere in a file.
113
159
  * Returns true if the pattern matches at least once.
160
+ *
161
+ * Accepts raw GritQL, including patterns that start with a `language <name>`
162
+ * header (e.g. `language python\n\`print($_)\``) — the pattern is passed
163
+ * straight through to QueryBuilder without any wrapping rewrite.
114
164
  */
115
165
  const matchGritQL = async (tree, filePath, pattern) => {
116
166
  if (!tree.exists(filePath))
117
167
  return false;
118
168
  const source = tree.read(filePath).toString();
169
+ let matched = false;
119
170
  try {
120
- // Use a metavariable rewrite to check for matches — $p is constrained to
121
- // the caller's pattern and rewritten to itself, avoiding rendering the
122
- // pattern string twice in the query.
123
- const query = new gritql_1.QueryBuilder(`$p => $p where { $p <: ${pattern} }`);
124
- const result = await query.applyToFile({
125
- path: filePath,
126
- content: source,
171
+ const query = new gritql_1.QueryBuilder(pattern);
172
+ query.filter(() => {
173
+ matched = true;
174
+ return true;
127
175
  });
128
- return result !== null;
176
+ await query.applyToFile({ path: filePath, content: source });
129
177
  }
130
178
  catch {
131
179
  return false;
132
180
  }
181
+ return matched;
133
182
  };
134
183
  exports.matchGritQL = matchGritQL;
135
184
  //# sourceMappingURL=ast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/ast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/ast.ts"],"names":[],"mappings":"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"}
@@ -38,22 +38,9 @@ const useCreate<%- apiNameClassName %>Client = (): <%- apiNameClassName %> => {
38
38
  const auth = useAuth();
39
39
  const user = auth?.user;
40
40
  const cognitoClient: typeof fetch = (url, init) => {
41
- const headers = { Authorization: `Bearer ${user?.id_token}` };
42
- const existingHeaders = init?.headers;
43
-
44
- return fetch(url, {
45
- ...init,
46
- headers: !existingHeaders ? headers :
47
- existingHeaders instanceof Headers ?
48
- (() => {
49
- const h = new Headers(existingHeaders);
50
- Object.entries(headers).forEach(([k, v]) => h.append(k, v));
51
- return h;
52
- })() :
53
- Array.isArray(existingHeaders) ?
54
- [...existingHeaders, ...Object.entries(headers)] :
55
- { ...existingHeaders, ...headers }
56
- });
41
+ const headers = new Headers(init?.headers);
42
+ headers.set('Authorization', `Bearer ${user?.id_token}`);
43
+ return fetch(url, { ...init, headers });
57
44
  };
58
45
  <%_ } _%>
59
46
  return useMemo(() => new <%- apiNameClassName %>({
@@ -6,6 +6,7 @@
6
6
  * Versons for TypeScript dependencies added by generators
7
7
  */
8
8
  export declare const TS_VERSIONS: {
9
+ readonly '@a2a-js/sdk': "0.3.13";
9
10
  readonly '@aws/aws-distro-opentelemetry-node-autoinstrumentation': "0.10.0";
10
11
  readonly '@aws-sdk/client-dynamodb': "3.1029.0";
11
12
  readonly '@aws-sdk/client-sts': "3.1029.0";
@@ -26,7 +27,7 @@ export declare const TS_VERSIONS: {
26
27
  readonly 'create-nx-workspace': "22.6.5";
27
28
  readonly '@modelcontextprotocol/sdk': "1.29.0";
28
29
  readonly '@modelcontextprotocol/inspector': "0.19.0";
29
- readonly '@strands-agents/sdk': "0.7.0";
30
+ readonly '@strands-agents/sdk': "1.0.0-rc.4";
30
31
  readonly '@tanstack/react-router': "1.168.17";
31
32
  readonly '@tanstack/router-plugin': "1.167.16";
32
33
  readonly '@tanstack/router-generator': "1.166.28";
@@ -97,7 +98,7 @@ export type ITsDepVersion = keyof typeof TS_VERSIONS;
97
98
  * Add versions to the given dependencies
98
99
  */
99
100
  export declare const withVersions: (deps: ITsDepVersion[]) => {
100
- [k: string]: "22.6.5" | "3.8.2" | "1.29.0" | "22.1.1" | "6.0.2" | "8.0.8" | "4.1.4" | "4.3.6" | "0.10.0" | "3.1029.0" | "1.0.0-alpha.10" | "2.32.0" | "7.2.1" | "10.2.1" | "0.19.0" | "0.7.0" | "1.168.17" | "1.167.16" | "1.166.28" | "1.161.7" | "1.161.6" | "3.0.166" | "3.0.1272" | "1.0.57" | "5.99.0" | "11.16.0" | "25.6.0" | "8.10.161" | "2.8.19" | "8.18.1" | "5.0.6" | "4.14.0" | "1.0.20" | "2.1118.0" | "2.248.0" | "2.248.0-alpha.0" | "3.12.0" | "10.6.0" | "2.8.6" | "0.7.1" | "2.1.1" | "3.7.5" | "0.28.0" | "1.0.31" | "1.0.5" | "8.58.1" | "5.5.5" | "5.2.1" | "3.1.0" | "4.0.0" | "2.0.0" | "19.6.6" | "3.5.0" | "3.3.1" | "19.2.5" | "6.1.3" | "1.0.0-rc.15" | "0.5.21" | "4.2.2" | "4.21.0" | "1.8.0" | "1.4.3" | "4.2.0" | "1.4.0" | "8.20.0";
101
+ [k: string]: "22.6.5" | "3.8.2" | "1.29.0" | "22.1.1" | "6.0.2" | "8.0.8" | "4.1.4" | "4.3.6" | "0.3.13" | "0.10.0" | "3.1029.0" | "1.0.0-alpha.10" | "2.32.0" | "7.2.1" | "10.2.1" | "0.19.0" | "1.0.0-rc.4" | "1.168.17" | "1.167.16" | "1.166.28" | "1.161.7" | "1.161.6" | "3.0.166" | "3.0.1272" | "1.0.57" | "5.99.0" | "11.16.0" | "25.6.0" | "8.10.161" | "2.8.19" | "8.18.1" | "5.0.6" | "4.14.0" | "1.0.20" | "2.1118.0" | "2.248.0" | "2.248.0-alpha.0" | "3.12.0" | "10.6.0" | "2.8.6" | "0.7.1" | "2.1.1" | "3.7.5" | "0.28.0" | "1.0.31" | "1.0.5" | "8.58.1" | "5.5.5" | "5.2.1" | "3.1.0" | "4.0.0" | "2.0.0" | "19.6.6" | "3.5.0" | "3.3.1" | "19.2.5" | "6.1.3" | "1.0.0-rc.15" | "0.5.21" | "4.2.2" | "4.21.0" | "1.8.0" | "1.4.3" | "4.2.0" | "1.4.0" | "8.20.0";
101
102
  };
102
103
  /**
103
104
  * Versions for Python dependencies added by generators
@@ -112,9 +113,11 @@ export declare const PY_VERSIONS: {
112
113
  readonly checkov: "==3.2.519";
113
114
  readonly fastapi: "==0.135.3";
114
115
  readonly 'fastapi[standard]': "==0.135.3";
116
+ readonly httpx: "==0.28.1";
115
117
  readonly mcp: "==1.27.0";
116
118
  readonly 'pip-check-updates': "==0.28.0";
117
- readonly 'strands-agents': "==1.35.0";
119
+ readonly 'strands-agents': "==1.36.0";
120
+ readonly 'strands-agents[a2a]': "==1.36.0";
118
121
  readonly 'strands-agents-tools': "==0.4.1";
119
122
  readonly uvicorn: "==0.44.0";
120
123
  };
@@ -9,6 +9,7 @@ exports.withPyVersions = exports.PY_VERSIONS = exports.withVersions = exports.TS
9
9
  * Versons for TypeScript dependencies added by generators
10
10
  */
11
11
  exports.TS_VERSIONS = {
12
+ '@a2a-js/sdk': '0.3.13',
12
13
  '@aws/aws-distro-opentelemetry-node-autoinstrumentation': '0.10.0',
13
14
  '@aws-sdk/client-dynamodb': '3.1029.0',
14
15
  '@aws-sdk/client-sts': '3.1029.0',
@@ -29,7 +30,7 @@ exports.TS_VERSIONS = {
29
30
  'create-nx-workspace': '22.6.5',
30
31
  '@modelcontextprotocol/sdk': '1.29.0',
31
32
  '@modelcontextprotocol/inspector': '0.19.0',
32
- '@strands-agents/sdk': '0.7.0',
33
+ '@strands-agents/sdk': '1.0.0-rc.4',
33
34
  '@tanstack/react-router': '1.168.17',
34
35
  '@tanstack/router-plugin': '1.167.16',
35
36
  '@tanstack/router-generator': '1.166.28',
@@ -113,9 +114,11 @@ exports.PY_VERSIONS = {
113
114
  checkov: '==3.2.519',
114
115
  fastapi: '==0.135.3',
115
116
  'fastapi[standard]': '==0.135.3',
117
+ httpx: '==0.28.1',
116
118
  mcp: '==1.27.0',
117
119
  'pip-check-updates': '==0.28.0',
118
- 'strands-agents': '==1.35.0',
120
+ 'strands-agents': '==1.36.0',
121
+ 'strands-agents[a2a]': '==1.36.0',
119
122
  'strands-agents-tools': '==0.4.1',
120
123
  uvicorn: '==0.44.0',
121
124
  };
@@ -1 +1 @@
1
- {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/versions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/versions.ts"],"names":[],"mappings":"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"}