@aws/nx-plugin 0.115.1 → 0.117.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.
- package/LICENSE-THIRD-PARTY +557 -327
- package/README.md +3 -3
- package/generators.json +43 -43
- package/package.json +9 -9
- package/sdk/py.d.ts +2 -2
- package/sdk/py.js +3 -3
- package/sdk/py.js.map +1 -1
- package/sdk/ts.d.ts +2 -2
- package/sdk/ts.js +4 -4
- package/sdk/ts.js.map +1 -1
- package/src/connection/generator.js +31 -31
- package/src/connection/generator.js.map +1 -1
- package/src/infra/app/__snapshots__/generator.spec.ts.snap +22 -22
- package/src/preset/__snapshots__/generator.spec.ts.snap +7 -5
- package/src/py/{strands-agent → agent}/__snapshots__/generator.spec.ts.snap +19 -19
- package/src/py/agent/a2a-connection/generator.d.ts +10 -0
- package/src/py/{strands-agent → agent}/a2a-connection/generator.js +7 -7
- package/src/py/agent/a2a-connection/generator.js.map +1 -0
- package/src/py/{strands-agent → agent}/a2a-connection/schema.d.ts +1 -1
- package/src/py/{strands-agent → agent}/a2a-connection/schema.json +5 -5
- package/src/py/agent/generator.d.ts +10 -0
- package/src/py/{strands-agent → agent}/generator.js +7 -9
- package/src/py/agent/generator.js.map +1 -0
- package/src/py/{strands-agent → agent}/mcp-connection/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/py/agent/mcp-connection/generator.d.ts +10 -0
- package/src/py/{strands-agent → agent}/mcp-connection/generator.js +7 -7
- package/src/py/agent/mcp-connection/generator.js.map +1 -0
- package/src/{ts/strands-agent/a2a-connection → py/agent/mcp-connection}/schema.d.ts +1 -1
- package/src/py/{strands-agent → agent}/mcp-connection/schema.json +4 -4
- package/src/{ts/strands-agent → py/agent}/react-connection/generator.d.ts +3 -3
- package/src/py/{strands-agent → agent}/react-connection/generator.js +7 -7
- package/src/py/agent/react-connection/generator.js.map +1 -0
- package/src/py/{strands-agent/mcp-connection → agent/react-connection}/schema.d.ts +1 -1
- package/src/py/{strands-agent → agent}/react-connection/schema.json +4 -4
- package/src/py/{strands-agent → agent}/react-connection/serve-local.d.ts +2 -2
- package/src/py/{strands-agent → agent}/react-connection/serve-local.js +3 -3
- package/src/py/agent/react-connection/serve-local.js.map +1 -0
- package/src/py/agent/schema.d.ts +22 -0
- package/src/py/{strands-agent → agent}/schema.json +21 -13
- package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/{strands-agent → agent}/__snapshots__/generator.spec.ts.snap +16 -16
- package/src/ts/agent/a2a-connection/generator.d.ts +10 -0
- package/src/ts/{strands-agent → agent}/a2a-connection/generator.js +7 -7
- package/src/ts/agent/a2a-connection/generator.js.map +1 -0
- package/src/ts/{strands-agent/mcp-connection → agent/a2a-connection}/schema.d.ts +1 -1
- package/src/ts/{strands-agent → agent}/a2a-connection/schema.json +5 -5
- package/src/ts/agent/generator.d.ts +10 -0
- package/src/ts/{strands-agent → agent}/generator.js +9 -11
- package/src/ts/agent/generator.js.map +1 -0
- package/src/ts/{strands-agent → agent}/mcp-connection/__snapshots__/generator.spec.ts.snap +4 -4
- package/src/ts/agent/mcp-connection/generator.d.ts +10 -0
- package/src/ts/{strands-agent → agent}/mcp-connection/generator.js +7 -7
- package/src/ts/agent/mcp-connection/generator.js.map +1 -0
- package/src/ts/agent/mcp-connection/schema.d.ts +15 -0
- package/src/ts/{strands-agent → agent}/mcp-connection/schema.json +4 -4
- package/src/{py/strands-agent → ts/agent}/react-connection/generator.d.ts +3 -3
- package/src/ts/{strands-agent → agent}/react-connection/generator.js +7 -7
- package/src/ts/agent/react-connection/generator.js.map +1 -0
- package/src/ts/agent/react-connection/schema.d.ts +15 -0
- package/src/ts/{strands-agent → agent}/react-connection/schema.json +5 -5
- package/src/ts/agent/react-connection/serve-local.d.ts +13 -0
- package/src/ts/{strands-agent → agent}/react-connection/serve-local.js +3 -7
- package/src/ts/agent/react-connection/serve-local.js.map +1 -0
- package/src/ts/agent/schema.d.ts +22 -0
- package/src/ts/{strands-agent → agent}/schema.json +21 -13
- package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +3 -3
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/__snapshots__/generator.spec.ts.snap +12 -12
- package/src/ts/rdb/agent-connection/generator.d.ts +10 -0
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/generator.js +6 -6
- package/src/ts/rdb/agent-connection/generator.js.map +1 -0
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/schema.d.ts +1 -1
- package/src/ts/rdb/{strands-agent-connection → agent-connection}/schema.json +4 -4
- package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +45 -43
- package/src/ts/react-website/cognito-auth/generator.js +5 -4
- package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
- package/src/ts/react-website/cognito-auth/schema.d.ts +1 -1
- package/src/ts/react-website/cognito-auth/schema.json +3 -3
- package/src/ts/react-website/cognito-auth/utils.d.ts +1 -0
- package/src/ts/react-website/cognito-auth/utils.js +23 -0
- package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
- package/src/utils/agent-connection/agent-connection.js +2 -2
- package/src/utils/agent-connection/agent-connection.js.map +1 -1
- package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +1 -4
- package/src/utils/agent-core-constructs/agent-core-constructs.js +0 -3
- package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
- package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +1 -1
- package/src/utils/ast.d.ts +1 -1
- package/src/utils/ast.js +13 -1
- package/src/utils/ast.js.map +1 -1
- package/src/utils/files/common/shadcn/src/components/ui/sidebar.tsx.template +1 -1
- package/src/utils/versions.d.ts +55 -56
- package/src/utils/versions.js +54 -55
- package/src/utils/versions.js.map +1 -1
- package/src/py/strands-agent/a2a-connection/generator.d.ts +0 -10
- package/src/py/strands-agent/a2a-connection/generator.js.map +0 -1
- package/src/py/strands-agent/generator.d.ts +0 -10
- package/src/py/strands-agent/generator.js.map +0 -1
- package/src/py/strands-agent/mcp-connection/generator.d.ts +0 -10
- package/src/py/strands-agent/mcp-connection/generator.js.map +0 -1
- package/src/py/strands-agent/react-connection/generator.js.map +0 -1
- package/src/py/strands-agent/react-connection/schema.d.ts +0 -15
- package/src/py/strands-agent/react-connection/serve-local.js.map +0 -1
- package/src/py/strands-agent/schema.d.ts +0 -20
- package/src/ts/rdb/strands-agent-connection/generator.d.ts +0 -10
- package/src/ts/rdb/strands-agent-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/a2a-connection/generator.d.ts +0 -10
- package/src/ts/strands-agent/a2a-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/generator.d.ts +0 -10
- package/src/ts/strands-agent/generator.js.map +0 -1
- package/src/ts/strands-agent/mcp-connection/generator.d.ts +0 -10
- package/src/ts/strands-agent/mcp-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/react-connection/generator.js.map +0 -1
- package/src/ts/strands-agent/react-connection/schema.d.ts +0 -15
- package/src/ts/strands-agent/react-connection/serve-local.d.ts +0 -17
- package/src/ts/strands-agent/react-connection/serve-local.js.map +0 -1
- package/src/ts/strands-agent/schema.d.ts +0 -20
- /package/src/py/{strands-agent → agent}/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/a2a/main.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/ag-ui/main.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/common/__init__.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/common/agent.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/deploy/Dockerfile.template +0 -0
- /package/src/py/{strands-agent → agent}/files/http/init.py.template +0 -0
- /package/src/py/{strands-agent → agent}/files/http/main.py.template +0 -0
- /package/src/py/{strands-agent → agent}/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +0 -0
- /package/src/py/{strands-agent → agent}/react-connection/__snapshots__/generator.spec.ts.snap +0 -0
- /package/src/py/{strands-agent → agent}/react-connection/files/agent/scripts/__agentNameSnakeCase___openapi.py.template +0 -0
- /package/src/py/{strands-agent → agent}/scripts/http/chat.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/a2a/index.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/common/agent.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/deploy/Dockerfile.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/agent-core-trpc-client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/index.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/init.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/router.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/files/http/schema/z-async-iterable.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +0 -0
- /package/src/ts/{strands-agent → agent}/react-connection/__snapshots__/generator.spec.ts.snap +0 -0
- /package/src/ts/{strands-agent → agent}/react-connection/files/src/components/__agentNameClassName__AgentClientProvider.tsx.template +0 -0
- /package/src/ts/{strands-agent → agent}/react-connection/files/src/hooks/use__agentNameClassName__Agent.tsx.template +0 -0
- /package/src/ts/{strands-agent → agent}/scripts/http/chat.ts.template +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
|
-
exports[`py#
|
|
3
|
+
exports[`py#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > agent-Dockerfile 1`] = `
|
|
4
4
|
"FROM public.ecr.aws/docker/library/python:3.14-slim
|
|
5
5
|
|
|
6
6
|
WORKDIR /app
|
|
@@ -19,7 +19,7 @@ CMD ["python", "bin/opentelemetry-instrument", "python", "-m", "proj_test_projec
|
|
|
19
19
|
"
|
|
20
20
|
`;
|
|
21
21
|
|
|
22
|
-
exports[`py#
|
|
22
|
+
exports[`py#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > agent-construct.ts 1`] = `
|
|
23
23
|
"import { Lazy, Names } from 'aws-cdk-lib';
|
|
24
24
|
import { Platform } from 'aws-cdk-lib/aws-ecr-assets';
|
|
25
25
|
import { Connections, IConnectable } from 'aws-cdk-lib/aws-ec2';
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
ProtocolType,
|
|
32
32
|
Runtime,
|
|
33
33
|
RuntimeProps,
|
|
34
|
-
} from '
|
|
34
|
+
} from 'aws-cdk-lib/aws-bedrockagentcore';
|
|
35
35
|
import {
|
|
36
36
|
PolicyStatement,
|
|
37
37
|
IGrantable,
|
|
@@ -142,17 +142,17 @@ export class SnapshotBedrockAgent
|
|
|
142
142
|
"
|
|
143
143
|
`;
|
|
144
144
|
|
|
145
|
-
exports[`py#
|
|
145
|
+
exports[`py#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > agents-index.ts 1`] = `
|
|
146
146
|
"export * from './snapshot-bedrock-agent/snapshot-bedrock-agent.js';
|
|
147
147
|
"
|
|
148
148
|
`;
|
|
149
149
|
|
|
150
|
-
exports[`py#
|
|
150
|
+
exports[`py#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > app-index.ts 1`] = `
|
|
151
151
|
"export * from './agents/index.js';
|
|
152
152
|
"
|
|
153
153
|
`;
|
|
154
154
|
|
|
155
|
-
exports[`py#
|
|
155
|
+
exports[`py#agent generator > should match snapshot for BedrockAgentCoreRuntime generated constructs files > core-index.ts 1`] = `
|
|
156
156
|
"export * from './app.js';
|
|
157
157
|
export * from './checkov.js';
|
|
158
158
|
export * from './runtime-config.js';
|
|
@@ -160,7 +160,7 @@ export * from './workspace.js';
|
|
|
160
160
|
"
|
|
161
161
|
`;
|
|
162
162
|
|
|
163
|
-
exports[`py#
|
|
163
|
+
exports[`py#agent generator > should match snapshot for Terraform generated files > terraform-agent.tf 1`] = `
|
|
164
164
|
"variable "env" {
|
|
165
165
|
description = "Environment variables to pass to the agent core runtime"
|
|
166
166
|
type = map(string)
|
|
@@ -255,7 +255,7 @@ output "appconfig_application_id" {
|
|
|
255
255
|
"
|
|
256
256
|
`;
|
|
257
257
|
|
|
258
|
-
exports[`py#
|
|
258
|
+
exports[`py#agent generator > should match snapshot for Terraform generated files > terraform-agent-core-runtime.tf 1`] = `
|
|
259
259
|
"terraform {
|
|
260
260
|
required_version = ">= 1.0"
|
|
261
261
|
|
|
@@ -626,9 +626,9 @@ output "agent_runtime_version" {
|
|
|
626
626
|
"
|
|
627
627
|
`;
|
|
628
628
|
|
|
629
|
-
exports[`py#
|
|
629
|
+
exports[`py#agent generator > should match snapshot for generated files > agent-__init__.py 1`] = `""`;
|
|
630
630
|
|
|
631
|
-
exports[`py#
|
|
631
|
+
exports[`py#agent generator > should match snapshot for generated files > agent-agent.py 1`] = `
|
|
632
632
|
"from contextlib import contextmanager
|
|
633
633
|
|
|
634
634
|
from strands import Agent, tool
|
|
@@ -655,7 +655,7 @@ Refer to tools as your 'spellbook'.
|
|
|
655
655
|
"
|
|
656
656
|
`;
|
|
657
657
|
|
|
658
|
-
exports[`py#
|
|
658
|
+
exports[`py#agent generator > should match snapshot for generated files > agent-main.py 1`] = `
|
|
659
659
|
"import uuid
|
|
660
660
|
|
|
661
661
|
import uvicorn
|
|
@@ -740,7 +740,7 @@ if __name__ == "__main__":
|
|
|
740
740
|
"
|
|
741
741
|
`;
|
|
742
742
|
|
|
743
|
-
exports[`py#
|
|
743
|
+
exports[`py#agent generator > should match snapshot for generated files > updated-pyproject.toml 1`] = `
|
|
744
744
|
"[project]
|
|
745
745
|
name = "proj.test_project"
|
|
746
746
|
version = "0.1.0"
|
|
@@ -748,17 +748,17 @@ dependencies = [
|
|
|
748
748
|
"proj.agent_connection",
|
|
749
749
|
"aws-lambda-powertools==3.29.0",
|
|
750
750
|
"aws-opentelemetry-distro==0.17.0",
|
|
751
|
-
"bedrock-agentcore==1.
|
|
752
|
-
"boto3==1.43.
|
|
753
|
-
"fastapi==0.136.
|
|
751
|
+
"bedrock-agentcore==1.11.0",
|
|
752
|
+
"boto3==1.43.14",
|
|
753
|
+
"fastapi==0.136.3",
|
|
754
754
|
"mcp==1.27.1",
|
|
755
|
-
"strands-agents==1.
|
|
756
|
-
"strands-agents-tools==0.
|
|
757
|
-
"uvicorn==0.
|
|
755
|
+
"strands-agents==1.41.0",
|
|
756
|
+
"strands-agents-tools==0.6.0",
|
|
757
|
+
"uvicorn==0.48.0"
|
|
758
758
|
]
|
|
759
759
|
|
|
760
760
|
[dependency-groups]
|
|
761
|
-
dev = [ "fastapi[standard]==0.136.
|
|
761
|
+
dev = [ "fastapi[standard]==0.136.3" ]
|
|
762
762
|
|
|
763
763
|
[tool.uv]
|
|
764
764
|
dev-dependencies = [ ]
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
6
|
+
import { PyAgentA2aConnectionGeneratorSchema } from './schema';
|
|
7
|
+
import { NxGeneratorInfo } from '../../../utils/nx';
|
|
8
|
+
export declare const PY_AGENT_A2A_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare const pyAgentA2aConnectionGenerator: (tree: Tree, options: PyAgentA2aConnectionGeneratorSchema) => Promise<GeneratorCallback>;
|
|
10
|
+
export default pyAgentA2aConnectionGenerator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.pyAgentA2aConnectionGenerator = exports.PY_AGENT_A2A_CONNECTION_GENERATOR_INFO = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -15,14 +15,14 @@ const agent_connection_1 = require("../../../utils/agent-connection/agent-connec
|
|
|
15
15
|
const ast_1 = require("../../../utils/ast");
|
|
16
16
|
/** Prefix a GritQL pattern with `language python` */
|
|
17
17
|
const py = (pattern) => `language python\n${pattern}`;
|
|
18
|
-
exports.
|
|
19
|
-
const
|
|
18
|
+
exports.PY_AGENT_A2A_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
19
|
+
const pyAgentA2aConnectionGenerator = async (tree, options) => {
|
|
20
20
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
21
21
|
const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
22
22
|
const agentComponent = options.sourceComponent;
|
|
23
23
|
const targetAgentComponent = options.targetComponent;
|
|
24
24
|
if (!agentComponent || !targetAgentComponent) {
|
|
25
|
-
throw new Error('Both sourceComponent and targetComponent must be provided for py#
|
|
25
|
+
throw new Error('Both sourceComponent and targetComponent must be provided for py#agent -> a2a connections');
|
|
26
26
|
}
|
|
27
27
|
if (targetAgentComponent.protocol !== 'A2A') {
|
|
28
28
|
throw new Error(`Target agent '${targetAgentComponent.name}' uses the ${targetAgentComponent.protocol ?? 'HTTP'} protocol — only A2A agents can be connected as tools.`);
|
|
@@ -89,14 +89,14 @@ const pyStrandsAgentA2aConnectionGenerator = async (tree, options) => {
|
|
|
89
89
|
(0, devkit_1.updateProjectConfiguration)(tree, sourceProject.name, sourceProject);
|
|
90
90
|
}
|
|
91
91
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
92
|
-
exports.
|
|
92
|
+
exports.PY_AGENT_A2A_CONNECTION_GENERATOR_INFO,
|
|
93
93
|
]);
|
|
94
94
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
95
95
|
return () => {
|
|
96
96
|
(0, devkit_1.installPackagesTask)(tree);
|
|
97
97
|
};
|
|
98
98
|
};
|
|
99
|
-
exports.
|
|
99
|
+
exports.pyAgentA2aConnectionGenerator = pyAgentA2aConnectionGenerator;
|
|
100
100
|
/**
|
|
101
101
|
* Add imports to agent.py:
|
|
102
102
|
* - `tool` from `strands`
|
|
@@ -156,5 +156,5 @@ const addClientToolToGetAgent = async (tree, filePath, clientClassName, clientVa
|
|
|
156
156
|
${toolBlock}
|
|
157
157
|
$body\``));
|
|
158
158
|
};
|
|
159
|
-
exports.default = exports.
|
|
159
|
+
exports.default = exports.pyAgentA2aConnectionGenerator;
|
|
160
160
|
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/agent/a2a-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAQoB;AAEpB,0CAK2B;AAC3B,oDAAyE;AACzE,kDAA6D;AAC7D,gDAAiD;AACjD,0CAG2B;AAC3B,uFAO0D;AAC1D,4CAI4B;AAE5B,qDAAqD;AACrD,MAAM,EAAE,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,oBAAoB,OAAO,EAAE,CAAC;AAEjD,QAAA,sCAAsC,GACjD,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,6BAA6B,GAAG,KAAK,EAChD,IAAU,EACV,OAA4C,EAChB,EAAE;IAC9B,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,wCAAmC,EACvD,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAC/C,MAAM,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAErD,IAAI,CAAC,cAAc,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAC;IACJ,CAAC;IAED,IAAI,oBAAoB,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACb,iBAAiB,oBAAoB,CAAC,IAAI,cAAc,oBAAoB,CAAC,QAAQ,IAAI,MAAM,wDAAwD,CACxJ,CAAC;IACJ,CAAC;IAED,IAAI,oBAAoB,CAAC,IAAI,IAAI,oBAAoB,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,yEAAyE,oBAAoB,CAAC,IAAI,WAAW,oBAAoB,CAAC,IAAI,mBAAmB,CAC1J,CAAC;IACJ,CAAC;IAED,MAAM,wBAAwB,GAAG,oBAAoB,CAAC,IAAI,IAAI,OAAO,CAAC;IACtE,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,EAAY,CAAC;IAC/D,MAAM,oBAAoB,GAAG,IAAA,iBAAS,EAAC,oBAAoB,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,IAAI,IAAI,CAAC;IAE1D,wEAAwE;IACxE,uDAAuD;IACvD,MAAM,IAAA,qDAAkC,EAAC,IAAI,CAAC,CAAC;IAC/C,IAAA,sCAAmB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAClC,IAAA,sCAAmB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEjC,MAAM,yBAAyB,GAAG,IAAA,qDAAkC,EAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,yBAAyB,GAAG,IAAA,qDAAkC,EAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,0BAA0B,GAAG,IAAA,sDAAmC,EAAC,IAAI,CAAC,CAAC;IAE7E,oEAAoE;IACpE,IAAA,mCAA8B,EAAC,IAAI,EAAE,yBAAyB,EAAE;QAC9D,OAAO;QACP,OAAO;QACP,qBAAqB;KACtB,CAAC,CAAC;IAEH,iFAAiF;IACjF,MAAM,MAAM,GAAG,IAAA,0BAAiB,EAC9B,yBAAyB,EACzB,yBAAyB,EACzB,KAAK,CACN,CAAC;IACF,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,SAAS,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAChE,MAAM,EACN;QACE,oBAAoB;QACpB,oBAAoB;QACpB,eAAe;QACf,yBAAyB;KAC1B,EACD,EAAE,iBAAiB,EAAE,0BAAiB,CAAC,YAAY,EAAE,CACtD,CAAC;IAEF,gCAAgC;IAChC,MAAM,WAAW,GAAG,IAAA,0BAAiB,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC7D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,sCAAsC;IACtC,MAAM,cAAc,GAAG,IAAA,0BAAiB,EACtC,yBAAyB,EACzB,yBAAyB,EACzB,aAAa,CACd,CAAC;IACF,MAAM,IAAA,oCAAiB,EACrB,IAAI,EACJ,cAAc,EACd,QAAQ,oBAAoB,SAAS,EACrC,GAAG,oBAAoB,QAAQ,CAChC,CAAC;IAEF,yEAAyE;IACzE,MAAM,cAAc,GAAG,IAAA,0BAAiB,EACtC,aAAa,CAAC,IAAI,EAClB,cAAc,CAAC,IAAI,IAAI,KAAK,CAC7B,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,0BAAiB,EAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAEpE,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/B,MAAM,eAAe,GAAG,GAAG,oBAAoB,QAAQ,CAAC;QACxD,MAAM,aAAa,GAAG,oBAAoB,CAAC;QAC3C,MAAM,QAAQ,GAAG,OAAO,oBAAoB,EAAE,CAAC;QAE/C,MAAM,oBAAoB,CACxB,IAAI,EACJ,aAAa,EACb,yBAAyB,EACzB,eAAe,CAChB,CAAC;QACF,MAAM,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,uBAAuB,CAC3B,IAAI,EACJ,aAAa,EACb,eAAe,EACf,aAAa,EACb,QAAQ,EACR,oBAAoB,CACrB,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,IAAA,sCAAiC,EAC/B,IAAI,EACJ,aAAa,CAAC,IAAI,EAClB,0BAA0B,CAC3B,CAAC;IAEF,0EAA0E;IAC1E,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,IAAI,OAAO,CAAC;IACjD,MAAM,oBAAoB,GAAG,GAAG,SAAS,cAAc,CAAC;IACxD,MAAM,0BAA0B,GAAG,GAAG,wBAAwB,cAAc,CAAC;IAE7E,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAClD,IAAA,sCAAiC,EAAC,aAAa,EAAE,oBAAoB,EAAE;YACrE,QAAQ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9B,MAAM,EAAE,0BAA0B;SACnC,CAAC,CAAC;QACH,IAAA,mCAA0B,EAAC,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAA,yCAA+B,EAAC,IAAI,EAAE;QAC1C,8CAAsC;KACvC,CAAC,CAAC;IAEH,MAAM,IAAA,6BAAoB,EAAC,IAAI,CAAC,CAAC;IACjC,OAAO,GAAG,EAAE;QACV,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;AACJ,CAAC,CAAC;AAvJW,QAAA,6BAA6B,iCAuJxC;AAEF;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,KAAK,EAChC,IAAU,EACV,QAAgB,EAChB,yBAAiC,EACjC,eAAuB,EACR,EAAE;IACjB,MAAM,IAAA,iCAA2B,EAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;IACvE,MAAM,IAAA,iCAA2B,EAC/B,IAAI,EACJ,QAAQ,EACR,CAAC,eAAe,CAAC,EACjB,yBAAyB,CAC1B,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,cAAc,GAAG,KAAK,EAC1B,IAAU,EACV,QAAgB,EAChB,QAAgB,EACD,EAAE;IACjB,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,QAAQ,EACR,EAAE,CAAC;;2BAEoB,QAAQ;;iBAElB,QAAQ;;iDAEwB,QAAQ;;EAEvD,CAAC,CACA,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,uBAAuB,GAAG,KAAK,EACnC,IAAU,EACV,QAAgB,EAChB,eAAuB,EACvB,aAAqB,EACrB,QAAgB,EAChB,oBAA4B,EACb,EAAE;IACjB,IAAI,MAAM,IAAA,iBAAW,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,eAAe,WAAW,CAAC,EAAE,CAAC;QACvE,OAAO;IACT,CAAC;IAED,mEAAmE;IACnE,oEAAoE;IACpE,sEAAsE;IACtE,MAAM,SAAS,GAAG,GAAG,aAAa,MAAM,eAAe;;;UAG/C,QAAQ;+CAC6B,oBAAoB;qBAC9C,aAAa;CACjC,CAAC;IAEA,kEAAkE;IAClE,yEAAyE;IACzE,yCAAyC;IACzC,MAAM,IAAA,iBAAW,EACf,IAAI,EACJ,QAAQ,EACR,EAAE,CAAC;;;4BAGqB,eAAe;;MAErC,SAAS;YACH,CAAC,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,qCAA6B,CAAC"}
|
|
@@ -7,7 +7,7 @@ import { ComponentMetadata } from '../../../utils/nx';
|
|
|
7
7
|
/**
|
|
8
8
|
* TypeScript types for options defined in schema.json
|
|
9
9
|
*/
|
|
10
|
-
export interface
|
|
10
|
+
export interface PyAgentA2aConnectionGeneratorSchema {
|
|
11
11
|
sourceProject: string;
|
|
12
12
|
targetProject: string;
|
|
13
13
|
sourceComponent?: ComponentMetadata;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/schema",
|
|
3
|
-
"$id": "py#
|
|
4
|
-
"title": "py#
|
|
5
|
-
"description": "Connect a Python
|
|
3
|
+
"$id": "py#agent#a2a-connection",
|
|
4
|
+
"title": "py#agent#a2a-connection",
|
|
5
|
+
"description": "Connect a Python Agent to an A2A agent",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|
|
8
8
|
"sourceProject": {
|
|
9
9
|
"type": "string",
|
|
10
|
-
"description": "The project containing the host
|
|
10
|
+
"description": "The project containing the host Agent"
|
|
11
11
|
},
|
|
12
12
|
"targetProject": {
|
|
13
13
|
"type": "string",
|
|
14
|
-
"description": "The project containing the target A2A
|
|
14
|
+
"description": "The project containing the target A2A Agent"
|
|
15
15
|
},
|
|
16
16
|
"sourceComponent": {
|
|
17
17
|
"type": "string",
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
6
|
+
import { PyAgentGeneratorSchema } from './schema';
|
|
7
|
+
import { NxGeneratorInfo } from '../../utils/nx';
|
|
8
|
+
export declare const PY_AGENT_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare const pyAgentGenerator: (tree: Tree, options: PyAgentGeneratorSchema) => Promise<GeneratorCallback>;
|
|
10
|
+
export default pyAgentGenerator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.pyAgentGenerator = exports.PY_AGENT_GENERATOR_INFO = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -25,8 +25,8 @@ const nxlv_python_1 = require("../../utils/nxlv-python");
|
|
|
25
25
|
const iac_1 = require("../../utils/iac");
|
|
26
26
|
const port_1 = require("../../utils/port");
|
|
27
27
|
const paths_1 = require("../../utils/paths");
|
|
28
|
-
exports.
|
|
29
|
-
const
|
|
28
|
+
exports.PY_AGENT_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
29
|
+
const pyAgentGenerator = async (tree, options) => {
|
|
30
30
|
const project = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.project);
|
|
31
31
|
const pyProjectPath = (0, devkit_1.joinPathFragments)(project.root, 'pyproject.toml');
|
|
32
32
|
// Check if the project has a pyproject.toml file
|
|
@@ -263,21 +263,19 @@ const pyStrandsAgentGenerator = async (tree, options) => {
|
|
|
263
263
|
},
|
|
264
264
|
}),
|
|
265
265
|
});
|
|
266
|
-
(0, nx_1.addComponentGeneratorMetadata)(tree, project.name, exports.
|
|
266
|
+
(0, nx_1.addComponentGeneratorMetadata)(tree, project.name, exports.PY_AGENT_GENERATOR_INFO, (0, paths_1.toProjectRelativePath)(project, targetSourceDir), agentTargetPrefix, {
|
|
267
267
|
port: localDevPort,
|
|
268
268
|
rc: agentNameClassName,
|
|
269
269
|
auth,
|
|
270
270
|
protocol,
|
|
271
271
|
});
|
|
272
|
-
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
273
|
-
exports.PY_STRANDS_AGENT_GENERATOR_INFO,
|
|
274
|
-
]);
|
|
272
|
+
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [exports.PY_AGENT_GENERATOR_INFO]);
|
|
275
273
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
276
274
|
return async () => {
|
|
277
275
|
(0, devkit_1.installPackagesTask)(tree);
|
|
278
276
|
await new nxlv_python_1.UVProvider(tree.root, new nxlv_python_1.Logger(), tree).install();
|
|
279
277
|
};
|
|
280
278
|
};
|
|
281
|
-
exports.
|
|
282
|
-
exports.default = exports.
|
|
279
|
+
exports.pyAgentGenerator = pyAgentGenerator;
|
|
280
|
+
exports.default = exports.pyAgentGenerator;
|
|
283
281
|
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/py/agent/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
|
-
exports[`py#
|
|
3
|
+
exports[`py#agent#mcp-connection generator > should match snapshot for generated files > agent-connection-init.py 1`] = `
|
|
4
4
|
""""Automatically generated by Nx."""
|
|
5
5
|
|
|
6
6
|
from .core.session_context import get_current_session_id, session_id_context
|
|
@@ -19,7 +19,7 @@ __all__ = [
|
|
|
19
19
|
"
|
|
20
20
|
`;
|
|
21
21
|
|
|
22
|
-
exports[`py#
|
|
22
|
+
exports[`py#agent#mcp-connection generator > should match snapshot for generated files > agentcore_mcp_client.py 1`] = `
|
|
23
23
|
"from collections.abc import Callable
|
|
24
24
|
|
|
25
25
|
import boto3
|
|
@@ -112,7 +112,7 @@ class AgentCoreMCPClient:
|
|
|
112
112
|
"
|
|
113
113
|
`;
|
|
114
114
|
|
|
115
|
-
exports[`py#
|
|
115
|
+
exports[`py#agent#mcp-connection generator > should match snapshot for generated files > inventory_mcp_client.py 1`] = `
|
|
116
116
|
"import os
|
|
117
117
|
|
|
118
118
|
from strands.tools.mcp.mcp_client import MCPClient
|
|
@@ -136,7 +136,7 @@ class InventoryMcpClient:
|
|
|
136
136
|
"
|
|
137
137
|
`;
|
|
138
138
|
|
|
139
|
-
exports[`py#
|
|
139
|
+
exports[`py#agent#mcp-connection generator > should match snapshot for generated files > transformed-agent.py 1`] = `
|
|
140
140
|
"from proj_agent_connection import InventoryMcpClient
|
|
141
141
|
from contextlib import contextmanager
|
|
142
142
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
6
|
+
import { PyAgentMcpConnectionGeneratorSchema } from './schema';
|
|
7
|
+
import { NxGeneratorInfo } from '../../../utils/nx';
|
|
8
|
+
export declare const PY_AGENT_MCP_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare const pyAgentMcpConnectionGenerator: (tree: Tree, options: PyAgentMcpConnectionGeneratorSchema) => Promise<GeneratorCallback>;
|
|
10
|
+
export default pyAgentMcpConnectionGenerator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.pyAgentMcpConnectionGenerator = exports.PY_AGENT_MCP_CONNECTION_GENERATOR_INFO = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -15,14 +15,14 @@ const agent_connection_1 = require("../../../utils/agent-connection/agent-connec
|
|
|
15
15
|
const ast_1 = require("../../../utils/ast");
|
|
16
16
|
/** Prefix a GritQL pattern with `language python` */
|
|
17
17
|
const py = (pattern) => `language python\n${pattern}`;
|
|
18
|
-
exports.
|
|
19
|
-
const
|
|
18
|
+
exports.PY_AGENT_MCP_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
19
|
+
const pyAgentMcpConnectionGenerator = async (tree, options) => {
|
|
20
20
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
21
21
|
const targetProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
22
22
|
const agentComponent = options.sourceComponent;
|
|
23
23
|
const mcpComponent = options.targetComponent;
|
|
24
24
|
if (!agentComponent || !mcpComponent) {
|
|
25
|
-
throw new Error('Both sourceComponent and targetComponent must be provided for py#
|
|
25
|
+
throw new Error('Both sourceComponent and targetComponent must be provided for py#agent -> mcp connections');
|
|
26
26
|
}
|
|
27
27
|
if (mcpComponent.auth && mcpComponent.auth !== 'IAM') {
|
|
28
28
|
throw new Error(`MCP server connection currently only supports IAM authentication, but '${mcpComponent.name}' uses '${mcpComponent.auth}' authentication.`);
|
|
@@ -86,14 +86,14 @@ const pyStrandsAgentMcpConnectionGenerator = async (tree, options) => {
|
|
|
86
86
|
(0, devkit_1.updateProjectConfiguration)(tree, sourceProject.name, sourceProject);
|
|
87
87
|
}
|
|
88
88
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
89
|
-
exports.
|
|
89
|
+
exports.PY_AGENT_MCP_CONNECTION_GENERATOR_INFO,
|
|
90
90
|
]);
|
|
91
91
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
92
92
|
return () => {
|
|
93
93
|
(0, devkit_1.installPackagesTask)(tree);
|
|
94
94
|
};
|
|
95
95
|
};
|
|
96
|
-
exports.
|
|
96
|
+
exports.pyAgentMcpConnectionGenerator = pyAgentMcpConnectionGenerator;
|
|
97
97
|
/**
|
|
98
98
|
* Add an import for the MCP client class to agent.py.
|
|
99
99
|
*
|
|
@@ -161,5 +161,5 @@ const addMcpClientToGetAgent = async (tree, filePath, clientClassName, clientVar
|
|
|
161
161
|
):
|
|
162
162
|
$body\``));
|
|
163
163
|
};
|
|
164
|
-
exports.default = exports.
|
|
164
|
+
exports.default = exports.pyAgentMcpConnectionGenerator;
|
|
165
165
|
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/agent/mcp-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { ComponentMetadata } from '../../../utils/nx';
|
|
|
7
7
|
/**
|
|
8
8
|
* TypeScript types for options defined in schema.json
|
|
9
9
|
*/
|
|
10
|
-
export interface
|
|
10
|
+
export interface PyAgentMcpConnectionGeneratorSchema {
|
|
11
11
|
sourceProject: string;
|
|
12
12
|
targetProject: string;
|
|
13
13
|
sourceComponent?: ComponentMetadata;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/schema",
|
|
3
|
-
"$id": "py#
|
|
4
|
-
"title": "py#
|
|
5
|
-
"description": "Connect a Python
|
|
3
|
+
"$id": "py#agent#mcp-connection",
|
|
4
|
+
"title": "py#agent#mcp-connection",
|
|
5
|
+
"description": "Connect a Python Agent to an MCP server",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|
|
8
8
|
"sourceProject": {
|
|
9
9
|
"type": "string",
|
|
10
|
-
"description": "The project containing the
|
|
10
|
+
"description": "The project containing the Agent"
|
|
11
11
|
},
|
|
12
12
|
"targetProject": {
|
|
13
13
|
"type": "string",
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
import { Tree } from '@nx/devkit';
|
|
6
6
|
import { NxGeneratorInfo } from '../../../utils/nx';
|
|
7
7
|
import { ResolvedConnectionOptions } from '../../../connection/generator';
|
|
8
|
-
export declare const
|
|
9
|
-
export declare
|
|
10
|
-
export default
|
|
8
|
+
export declare const PY_AGENT_REACT_CONNECTION_GENERATOR_INFO: NxGeneratorInfo;
|
|
9
|
+
export declare const pyAgentReactConnectionGenerator: (tree: Tree, options: ResolvedConnectionOptions) => Promise<() => void>;
|
|
10
|
+
export default pyAgentReactConnectionGenerator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.pyAgentReactConnectionGenerator = exports.PY_AGENT_REACT_CONNECTION_GENERATOR_INFO = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -15,8 +15,8 @@ const names_1 = require("../../../utils/names");
|
|
|
15
15
|
const object_1 = require("../../../utils/object");
|
|
16
16
|
const serve_local_1 = require("./serve-local");
|
|
17
17
|
const generator_1 = require("../../../ts/react-website/agui/generator");
|
|
18
|
-
exports.
|
|
19
|
-
const
|
|
18
|
+
exports.PY_AGENT_REACT_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
19
|
+
const pyAgentReactConnectionGenerator = async (tree, options) => {
|
|
20
20
|
const frontendProjectConfig = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
21
21
|
const agentProjectConfig = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.targetProject);
|
|
22
22
|
const targetComponent = options.targetComponent;
|
|
@@ -97,7 +97,7 @@ const pyStrandsAgentReactConnectionGenerator = async (tree, options) => {
|
|
|
97
97
|
agentNameClassName,
|
|
98
98
|
});
|
|
99
99
|
}
|
|
100
|
-
await (0, serve_local_1.
|
|
100
|
+
await (0, serve_local_1.addPyAgentTargetToServeLocal)(tree, frontendProjectConfig.name, agentProjectConfig.name, {
|
|
101
101
|
agentName,
|
|
102
102
|
agentNameClassName,
|
|
103
103
|
port: agentPort,
|
|
@@ -105,14 +105,14 @@ const pyStrandsAgentReactConnectionGenerator = async (tree, options) => {
|
|
|
105
105
|
additionalDependencyTargets: additionalServeLocalDeps,
|
|
106
106
|
});
|
|
107
107
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
108
|
-
exports.
|
|
108
|
+
exports.PY_AGENT_REACT_CONNECTION_GENERATOR_INFO,
|
|
109
109
|
]);
|
|
110
110
|
await (0, format_1.formatFilesInSubtree)(tree);
|
|
111
111
|
return () => {
|
|
112
112
|
(0, devkit_1.installPackagesTask)(tree);
|
|
113
113
|
};
|
|
114
114
|
};
|
|
115
|
-
exports.
|
|
115
|
+
exports.pyAgentReactConnectionGenerator = pyAgentReactConnectionGenerator;
|
|
116
116
|
/**
|
|
117
117
|
* Determine the Python module name from the project configuration
|
|
118
118
|
*/
|
|
@@ -123,5 +123,5 @@ const getModuleName = (projectConfig) => {
|
|
|
123
123
|
}
|
|
124
124
|
throw new Error(`Could not determine sourceRoot for project ${projectConfig.name}`);
|
|
125
125
|
};
|
|
126
|
-
exports.default = exports.
|
|
126
|
+
exports.default = exports.pyAgentReactConnectionGenerator;
|
|
127
127
|
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/agent/react-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { ComponentMetadata } from '../../../utils/nx';
|
|
|
7
7
|
/**
|
|
8
8
|
* TypeScript types for options defined in schema.json
|
|
9
9
|
*/
|
|
10
|
-
export interface
|
|
10
|
+
export interface PyAgentReactConnectionGeneratorSchema {
|
|
11
11
|
sourceProject: string;
|
|
12
12
|
targetProject: string;
|
|
13
13
|
sourceComponent?: ComponentMetadata;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/schema",
|
|
3
|
-
"$id": "py#
|
|
4
|
-
"title": "py#
|
|
5
|
-
"description": "Connect a React website to a Python
|
|
3
|
+
"$id": "py#agent#react-connection",
|
|
4
|
+
"title": "py#agent#react-connection",
|
|
5
|
+
"description": "Connect a React website to a Python Agent",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|
|
8
8
|
"sourceProject": {
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
},
|
|
12
12
|
"targetProject": {
|
|
13
13
|
"type": "string",
|
|
14
|
-
"description": "The project containing the Python
|
|
14
|
+
"description": "The project containing the Python Agent"
|
|
15
15
|
},
|
|
16
16
|
"sourceComponent": {
|
|
17
17
|
"type": "string",
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { Tree } from '@nx/devkit';
|
|
6
6
|
import { ComponentMetadata } from '../../../utils/nx';
|
|
7
|
-
export interface
|
|
7
|
+
export interface PyAgentServeLocalOptions {
|
|
8
8
|
agentName: string;
|
|
9
9
|
agentNameClassName: string;
|
|
10
10
|
port: number;
|
|
@@ -15,7 +15,7 @@ export interface PyStrandsAgentServeLocalOptions {
|
|
|
15
15
|
* Adds the given py strands agent target project to the source project's serve-local target.
|
|
16
16
|
* Updates the runtime config provider (if it exists) to point to the local HTTP URL.
|
|
17
17
|
*/
|
|
18
|
-
export declare const
|
|
18
|
+
export declare const addPyAgentTargetToServeLocal: (tree: Tree, sourceProjectName: string, targetProjectName: string, options: PyAgentServeLocalOptions) => Promise<void>;
|
|
19
19
|
/**
|
|
20
20
|
* Build the OpenAPI client generation target names for an HTTP agent so
|
|
21
21
|
* that local API changes regenerate the client.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.openApiClientServeLocalDeps = exports.
|
|
3
|
+
exports.openApiClientServeLocalDeps = exports.addPyAgentTargetToServeLocal = void 0;
|
|
4
4
|
const agent_serve_local_1 = require("../../../connection/agent-serve-local");
|
|
5
5
|
const names_1 = require("../../../utils/names");
|
|
6
6
|
/**
|
|
7
7
|
* Adds the given py strands agent target project to the source project's serve-local target.
|
|
8
8
|
* Updates the runtime config provider (if it exists) to point to the local HTTP URL.
|
|
9
9
|
*/
|
|
10
|
-
const
|
|
10
|
+
const addPyAgentTargetToServeLocal = async (tree, sourceProjectName, targetProjectName, options) => {
|
|
11
11
|
await (0, agent_serve_local_1.addAgentTargetToServeLocal)(tree, sourceProjectName, targetProjectName, {
|
|
12
12
|
agentNameClassName: options.agentNameClassName,
|
|
13
13
|
port: options.port,
|
|
@@ -17,7 +17,7 @@ const addPyStrandsAgentTargetToServeLocal = async (tree, sourceProjectName, targ
|
|
|
17
17
|
additionalDependencyTargets: options.additionalDependencyTargets,
|
|
18
18
|
});
|
|
19
19
|
};
|
|
20
|
-
exports.
|
|
20
|
+
exports.addPyAgentTargetToServeLocal = addPyAgentTargetToServeLocal;
|
|
21
21
|
/**
|
|
22
22
|
* Build the OpenAPI client generation target names for an HTTP agent so
|
|
23
23
|
* that local API changes regenerate the client.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serve-local.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/agent/react-connection/serve-local.ts"],"names":[],"mappings":";;;AAKA,6EAAmF;AAEnF,gDAAiD;AAUjD;;;GAGG;AACI,MAAM,4BAA4B,GAAG,KAAK,EAC/C,IAAU,EACV,iBAAyB,EACzB,iBAAyB,EACzB,OAAiC,EACjC,EAAE;IACF,MAAM,IAAA,8CAA0B,EAAC,IAAI,EAAE,iBAAiB,EAAE,iBAAiB,EAAE;QAC3E,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;QAC9C,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,sBAAsB,EAAE,eAAe;QACvC,QAAQ,EAAE,oBAAoB,OAAO,CAAC,IAAI,cAAc;QACxD,2BAA2B,EAAE,OAAO,CAAC,2BAA2B;KACjE,CAAC,CAAC;AACL,CAAC,CAAC;AAdW,QAAA,4BAA4B,gCAcvC;AAEF;;;GAGG;AACI,MAAM,2BAA2B,GAAG,CACzC,kBAA0B,EAChB,EAAE;IACZ,MAAM,eAAe,GAAG,YAAY,IAAA,iBAAS,EAAC,kBAAkB,CAAC,SAAS,CAAC;IAC3E,OAAO,CAAC,eAAe,EAAE,SAAS,eAAe,EAAE,CAAC,CAAC;AACvD,CAAC,CAAC;AALW,QAAA,2BAA2B,+BAKtC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { IacProviderOption } from '../../utils/iac';
|
|
7
|
+
|
|
8
|
+
export type PyAgentSdk = 'strands';
|
|
9
|
+
export type PyAgentComputeType = 'BedrockAgentCoreRuntime' | 'None';
|
|
10
|
+
export type AgentProtocol = 'HTTP' | 'A2A' | 'AG-UI';
|
|
11
|
+
|
|
12
|
+
export type PyAgentAuth = 'IAM' | 'Cognito';
|
|
13
|
+
|
|
14
|
+
export interface PyAgentGeneratorSchema {
|
|
15
|
+
project: string;
|
|
16
|
+
sdk?: PyAgentSdk;
|
|
17
|
+
name?: string;
|
|
18
|
+
computeType?: PyAgentComputeType;
|
|
19
|
+
auth?: PyAgentAuth;
|
|
20
|
+
protocol?: AgentProtocol;
|
|
21
|
+
iacProvider: IacProviderOption;
|
|
22
|
+
}
|