@aws/nx-plugin 0.97.1 → 0.98.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/package.json +1 -1
- package/src/py/strands-agent/__snapshots__/generator.spec.ts.snap +5 -2
- package/src/py/strands-agent/files/a2a/main.py.template +33 -0
- package/src/py/strands-agent/files/{app → common}/agent.py.template +2 -0
- package/src/py/strands-agent/files/deploy/Dockerfile.template +9 -0
- package/src/py/strands-agent/generator.js +29 -16
- package/src/py/strands-agent/generator.js.map +1 -1
- package/src/py/strands-agent/react-connection/generator.js +4 -0
- package/src/py/strands-agent/react-connection/generator.js.map +1 -1
- package/src/py/strands-agent/schema.d.ts +2 -0
- package/src/py/strands-agent/schema.json +8 -0
- package/src/ts/strands-agent/files/a2a/index.ts.template +28 -0
- package/src/ts/strands-agent/files/deploy/Dockerfile.template +4 -0
- package/src/ts/strands-agent/generator.js +30 -14
- package/src/ts/strands-agent/generator.js.map +1 -1
- package/src/ts/strands-agent/react-connection/generator.js +4 -0
- package/src/ts/strands-agent/react-connection/generator.js.map +1 -1
- package/src/ts/strands-agent/schema.d.ts +2 -0
- package/src/ts/strands-agent/schema.json +8 -0
- package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +3 -2
- package/src/utils/agent-core-constructs/agent-core-constructs.js +2 -2
- 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 +6 -1
- package/src/utils/versions.d.ts +5 -3
- package/src/utils/versions.js +4 -2
- package/src/utils/versions.js.map +1 -1
- /package/src/py/strands-agent/files/{app → common}/__init__.py.template +0 -0
- /package/src/py/strands-agent/files/{app → http}/init.py.template +0 -0
- /package/src/py/strands-agent/files/{app → http}/main.py.template +0 -0
- /package/src/ts/strands-agent/files/{app → common}/agent.ts.template +0 -0
- /package/src/ts/strands-agent/files/{app → http}/agent-core-trpc-client.ts.template +0 -0
- /package/src/ts/strands-agent/files/{app → http}/client.ts.template +0 -0
- /package/src/ts/strands-agent/files/{app → http}/index.ts.template +0 -0
- /package/src/ts/strands-agent/files/{app → http}/init.ts.template +0 -0
- /package/src/ts/strands-agent/files/{app → http}/router.ts.template +0 -0
- /package/src/ts/strands-agent/files/{app → http}/schema/z-async-iterable.ts.template +0 -0
package/package.json
CHANGED
|
@@ -11,6 +11,7 @@ COPY --from=workspace dist/apps/test-project/bundle-arm /app
|
|
|
11
11
|
EXPOSE 8080
|
|
12
12
|
|
|
13
13
|
ENV PYTHONPATH=/app
|
|
14
|
+
ENV PATH="/app/bin:\${PATH}"
|
|
14
15
|
|
|
15
16
|
# Auto-instrument with AWS Distro for OpenTelemetry
|
|
16
17
|
# https://aws-otel.github.io/docs/getting-started/python-sdk/auto-instr
|
|
@@ -599,6 +600,8 @@ def subtract(a: int, b: int) -> int:
|
|
|
599
600
|
@contextmanager
|
|
600
601
|
def get_agent(session_id: str):
|
|
601
602
|
yield Agent(
|
|
603
|
+
name="SnapshotAgent",
|
|
604
|
+
description="SnapshotAgent Strands Agent",
|
|
602
605
|
system_prompt="""
|
|
603
606
|
You are a mathematical wizard.
|
|
604
607
|
Use your tools for mathematical tasks.
|
|
@@ -683,10 +686,10 @@ dependencies = [
|
|
|
683
686
|
"aws-lambda-powertools==3.27.0",
|
|
684
687
|
"aws-opentelemetry-distro==0.17.0",
|
|
685
688
|
"bedrock-agentcore==1.6.1",
|
|
686
|
-
"fastapi==0.135.3",
|
|
687
689
|
"boto3==1.42.88",
|
|
690
|
+
"fastapi==0.135.3",
|
|
688
691
|
"mcp==1.27.0",
|
|
689
|
-
"strands-agents==1.
|
|
692
|
+
"strands-agents==1.36.0",
|
|
690
693
|
"strands-agents-tools==0.4.1",
|
|
691
694
|
"uvicorn==0.44.0"
|
|
692
695
|
]
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
import os
|
|
3
|
+
|
|
4
|
+
from fastapi import FastAPI
|
|
5
|
+
from strands.multiagent.a2a import A2AServer
|
|
6
|
+
|
|
7
|
+
from .agent import get_agent
|
|
8
|
+
|
|
9
|
+
logging.basicConfig(level=logging.INFO)
|
|
10
|
+
|
|
11
|
+
PORT = int(os.environ.get("PORT", "9000"))
|
|
12
|
+
|
|
13
|
+
RUNTIME_URL = os.environ.get("AGENTCORE_RUNTIME_URL", f"http://localhost:{PORT}/")
|
|
14
|
+
|
|
15
|
+
_agent_ctx = get_agent(session_id="default")
|
|
16
|
+
_agent = _agent_ctx.__enter__()
|
|
17
|
+
|
|
18
|
+
a2a_server = A2AServer(
|
|
19
|
+
agent=_agent,
|
|
20
|
+
port=PORT,
|
|
21
|
+
http_url=RUNTIME_URL,
|
|
22
|
+
serve_at_root=True,
|
|
23
|
+
)
|
|
24
|
+
|
|
25
|
+
app = FastAPI()
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
@app.get("/ping")
|
|
29
|
+
def ping() -> dict[str, str]:
|
|
30
|
+
return {"status": "Healthy"}
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
app.mount("/", a2a_server.to_fastapi_app())
|
|
@@ -13,6 +13,8 @@ def subtract(a: int, b: int) -> int:
|
|
|
13
13
|
@contextmanager
|
|
14
14
|
def get_agent(session_id: str):
|
|
15
15
|
yield Agent(
|
|
16
|
+
name="<%= agentNameClassName %>",
|
|
17
|
+
description="<%= agentNameClassName %> Strands Agent",
|
|
16
18
|
system_prompt="""
|
|
17
19
|
You are a mathematical wizard.
|
|
18
20
|
Use your tools for mathematical tasks.
|
|
@@ -5,10 +5,19 @@ WORKDIR /app
|
|
|
5
5
|
# Copy bundled package
|
|
6
6
|
COPY --from=workspace <%- bundleOutputDir %> /app
|
|
7
7
|
|
|
8
|
+
<%_ if (protocol === 'A2A') { _%>
|
|
9
|
+
EXPOSE 9000
|
|
10
|
+
<%_ } else { _%>
|
|
8
11
|
EXPOSE 8080
|
|
12
|
+
<%_ } _%>
|
|
9
13
|
|
|
10
14
|
ENV PYTHONPATH=/app
|
|
15
|
+
ENV PATH="/app/bin:${PATH}"
|
|
11
16
|
|
|
12
17
|
# Auto-instrument with AWS Distro for OpenTelemetry
|
|
13
18
|
# https://aws-otel.github.io/docs/getting-started/python-sdk/auto-instr
|
|
19
|
+
<%_ if (protocol === 'A2A') { _%>
|
|
20
|
+
CMD ["python", "bin/opentelemetry-instrument", "python", "-m", "uvicorn", "<%- moduleName %>.<%- agentNameSnakeCase %>.main:app", "--host", "0.0.0.0", "--port", "9000"]
|
|
21
|
+
<%_ } else { _%>
|
|
14
22
|
CMD ["python", "bin/opentelemetry-instrument", "python", "-m", "<%- moduleName %>.<%- agentNameSnakeCase %>.main"]
|
|
23
|
+
<%_ } _%>
|
|
@@ -40,21 +40,27 @@ const pyStrandsAgentGenerator = async (tree, options) => {
|
|
|
40
40
|
const targetSourceDir = (0, devkit_1.joinPathFragments)(project.sourceRoot, agentNameSnakeCase);
|
|
41
41
|
const computeType = options.computeType ?? 'BedrockAgentCoreRuntime';
|
|
42
42
|
const auth = options.auth ?? 'IAM';
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
const protocol = options.protocol ?? 'HTTP';
|
|
44
|
+
const templateContext = {
|
|
45
45
|
name,
|
|
46
46
|
agentNameSnakeCase,
|
|
47
47
|
agentNameClassName,
|
|
48
48
|
moduleName,
|
|
49
|
-
}
|
|
49
|
+
};
|
|
50
|
+
// Generate common files shared by both protocols
|
|
51
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'common'), targetSourceDir, templateContext, { overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting });
|
|
52
|
+
// Generate protocol-specific files
|
|
53
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', protocol.toLowerCase()), targetSourceDir, templateContext, { overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting });
|
|
50
54
|
(0, py_1.addDependenciesToPyProjectToml)(tree, project.root, [
|
|
51
55
|
'aws-lambda-powertools',
|
|
52
56
|
'aws-opentelemetry-distro',
|
|
53
57
|
'bedrock-agentcore',
|
|
54
|
-
'fastapi',
|
|
55
58
|
'boto3',
|
|
59
|
+
'fastapi',
|
|
56
60
|
'mcp',
|
|
57
|
-
'
|
|
61
|
+
...(protocol === 'A2A'
|
|
62
|
+
? ['strands-agents[a2a]']
|
|
63
|
+
: ['strands-agents']),
|
|
58
64
|
'strands-agents-tools',
|
|
59
65
|
'uvicorn',
|
|
60
66
|
]);
|
|
@@ -72,9 +78,10 @@ const pyStrandsAgentGenerator = async (tree, options) => {
|
|
|
72
78
|
agentNameSnakeCase,
|
|
73
79
|
moduleName,
|
|
74
80
|
bundleOutputDir,
|
|
81
|
+
protocol,
|
|
75
82
|
}, { overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting });
|
|
76
83
|
const dockerTargetName = `${agentTargetPrefix}-docker`;
|
|
77
|
-
// Add a docker target specific to this
|
|
84
|
+
// Add a docker target specific to this agent
|
|
78
85
|
project.targets[dockerTargetName] = {
|
|
79
86
|
cache: true,
|
|
80
87
|
executor: 'nx:run-commands',
|
|
@@ -99,12 +106,17 @@ const pyStrandsAgentGenerator = async (tree, options) => {
|
|
|
99
106
|
iacProvider,
|
|
100
107
|
projectName: project.name,
|
|
101
108
|
auth,
|
|
109
|
+
serverProtocol: protocol,
|
|
102
110
|
});
|
|
103
111
|
}
|
|
104
|
-
//
|
|
105
|
-
//
|
|
106
|
-
|
|
107
|
-
const localDevPort = (0, port_1.assignPort)(tree, project,
|
|
112
|
+
// A2A servers use port 9000 as per the Strands A2A SDK default and AgentCore A2A contract.
|
|
113
|
+
// HTTP agents use port 8081+ to avoid conflict with VS Code server on 8080.
|
|
114
|
+
const localDevPortStart = protocol === 'A2A' ? 9000 : 8081;
|
|
115
|
+
const localDevPort = (0, port_1.assignPort)(tree, project, localDevPortStart);
|
|
116
|
+
// Both protocols use fastapi dev for hot reload:
|
|
117
|
+
// - HTTP: FastAPI app directly defined in init.py
|
|
118
|
+
// - A2A: A2AServer.to_fastapi_app() creates a FastAPI app in main.py
|
|
119
|
+
const serveCommand = `uv run fastapi dev ${moduleName}/${agentNameSnakeCase}/main.py --port ${localDevPort}`;
|
|
108
120
|
(0, devkit_1.updateProjectConfiguration)(tree, project.name, {
|
|
109
121
|
...project,
|
|
110
122
|
targets: {
|
|
@@ -112,21 +124,21 @@ const pyStrandsAgentGenerator = async (tree, options) => {
|
|
|
112
124
|
[`${agentTargetPrefix}-serve`]: {
|
|
113
125
|
executor: 'nx:run-commands',
|
|
114
126
|
options: {
|
|
115
|
-
commands: [
|
|
116
|
-
`uv run fastapi dev ${moduleName}/${agentNameSnakeCase}/main.py --port ${localDevPort}`,
|
|
117
|
-
],
|
|
127
|
+
commands: [serveCommand],
|
|
118
128
|
cwd: '{projectRoot}',
|
|
129
|
+
env: {
|
|
130
|
+
PORT: `${localDevPort}`,
|
|
131
|
+
},
|
|
119
132
|
},
|
|
120
133
|
continuous: true,
|
|
121
134
|
},
|
|
122
135
|
[`${agentTargetPrefix}-serve-local`]: {
|
|
123
136
|
executor: 'nx:run-commands',
|
|
124
137
|
options: {
|
|
125
|
-
commands: [
|
|
126
|
-
`uv run fastapi dev ${moduleName}/${agentNameSnakeCase}/main.py --port ${localDevPort}`,
|
|
127
|
-
],
|
|
138
|
+
commands: [serveCommand],
|
|
128
139
|
cwd: '{projectRoot}',
|
|
129
140
|
env: {
|
|
141
|
+
PORT: `${localDevPort}`,
|
|
130
142
|
SERVE_LOCAL: 'true',
|
|
131
143
|
},
|
|
132
144
|
},
|
|
@@ -138,6 +150,7 @@ const pyStrandsAgentGenerator = async (tree, options) => {
|
|
|
138
150
|
port: localDevPort,
|
|
139
151
|
rc: agentNameClassName,
|
|
140
152
|
auth,
|
|
153
|
+
protocol,
|
|
141
154
|
});
|
|
142
155
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
143
156
|
exports.PY_STRANDS_AGENT_GENERATOR_INFO,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/py/strands-agent/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAQoB;AAEpB,uCAMwB;AACxB,iDAAsE;AACtE,+CAA0D;AAC1D,6CAAwE;AACxE,uCAGwB;AACxB,mGAAwF;AAExF,sDAAkE;AAClE,qDAAoD;AACpD,qEAA0E;AAC1E,yDAA6D;AAC7D,yCAAqD;AACrD,2CAA8C;AAC9C,6CAA0D;AAE7C,QAAA,+BAA+B,GAC1C,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,uBAAuB,GAAG,KAAK,EAC1C,IAAU,EACV,OAAsC,EACV,EAAE;IAC9B,MAAM,OAAO,GAAG,IAAA,wCAAmC,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3E,MAAM,aAAa,GAAG,IAAA,0BAAiB,EAAC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAExE,iDAAiD;IACjD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,uBAAuB,OAAO,CAAC,OAAO,qDAAqD,CAC5F,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,gIAAgI,CACjI,CAAC;IACJ,CAAC;IAED,mDAAmD;IACnD,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEvD,MAAM,IAAI,GAAG,IAAA,iBAAS,EACpB,OAAO,CAAC,IAAI,IAAI,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CACpE,CAAC;IACF,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;IAExD,MAAM,kBAAkB,GAAG,IAAA,mBAAW,EAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,CAAC;IAChE,MAAM,kBAAkB,GAAG,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC;IAE7C,MAAM,eAAe,GAAG,IAAA,0BAAiB,EACvC,OAAO,CAAC,UAAU,EAClB,kBAAkB,CACnB,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,yBAAyB,CAAC;IACrE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/py/strands-agent/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,10 @@ const pyStrandsAgentReactConnectionGenerator = async (tree, options) => {
|
|
|
24
24
|
const agentNameClassName = targetComponent?.rc ?? (0, names_1.toClassName)(agentName);
|
|
25
25
|
const agentPort = targetComponent?.port ?? metadata?.ports?.[0] ?? 8081;
|
|
26
26
|
const auth = targetComponent?.auth ?? metadata?.auth ?? 'IAM';
|
|
27
|
+
if (targetComponent?.protocol === 'A2A') {
|
|
28
|
+
throw new Error(`Cannot connect a React website to an A2A agent. ` +
|
|
29
|
+
`Consider generating an agent with the HTTP protocol instead.`);
|
|
30
|
+
}
|
|
27
31
|
// Determine the module name from the project source root
|
|
28
32
|
const moduleName = getModuleName(agentProjectConfig);
|
|
29
33
|
const agentNameSnakeCase = (0, names_1.toSnakeCase)(agentName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/strands-agent/react-connection/generator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/py/strands-agent/react-connection/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCAOoB;AACpB,kDAA6D;AAC7D,0CAK2B;AAC3B,oDAAyE;AACzE,oEAAiF;AAEjF,gDAAgE;AAChE,kDAAuD;AACvD,+CAAoE;AAEvD,QAAA,gDAAgD,GAC3D,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,sCAAsC,GAAG,KAAK,EACzD,IAAU,EACV,OAAkC,EAClC,EAAE;IACF,MAAM,qBAAqB,GAAG,IAAA,wCAAmC,EAC/D,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAA,wCAAmC,EAC5D,IAAI,EACJ,OAAO,CAAC,aAAa,CACtB,CAAC;IAEF,MAAM,eAAe,GACnB,OAAO,CAAC,eAAe,CAAC;IAE1B,uEAAuE;IACvE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAe,CAAC;IACpD,MAAM,SAAS,GAAG,eAAe,EAAE,IAAI,IAAI,OAAO,CAAC;IACnD,MAAM,kBAAkB,GAAG,eAAe,EAAE,EAAE,IAAI,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,eAAe,EAAE,IAAI,IAAI,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACxE,MAAM,IAAI,GAAG,eAAe,EAAE,IAAI,IAAI,QAAQ,EAAE,IAAI,IAAI,KAAK,CAAC;IAE9D,IAAI,eAAe,EAAE,QAAQ,KAAK,KAAK,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,kDAAkD;YAChD,8DAA8D,CACjE,CAAC;IACJ,CAAC;IAED,yDAAyD;IACzD,MAAM,UAAU,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC;IACrD,MAAM,kBAAkB,GAAG,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC;IAClD,MAAM,iBAAiB,GAAG,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IAEtE,0DAA0D;IAC1D,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,SAAS,EAAE,aAAa,CAAC,EAC3C,kBAAkB,CAAC,IAAI,EACvB;QACE,UAAU;QACV,kBAAkB;KACnB,EACD;QACE,iBAAiB,EAAE,0BAAiB,CAAC,YAAY;KAClD,CACF,CAAC;IAEF,0EAA0E;IAC1E,MAAM,iBAAiB,GAAG,GAAG,iBAAiB,UAAU,CAAC;IACzD,MAAM,WAAW,GAAG,IAAA,0BAAiB,EACnC,MAAM,EACN,kBAAkB,CAAC,IAAI,EACvB,SAAS,EACT,kBAAkB,CACnB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAA,0BAAiB,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAEhE,IAAA,mCAA0B,EAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE;QACxD,GAAG,kBAAkB;QACrB,OAAO,EAAE,IAAA,uBAAc,EAAC;YACtB,GAAG,kBAAkB,CAAC,OAAO;YAC7B,CAAC,iBAAiB,CAAC,EAAE;gBACnB,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,iBAAiB;gBAC3B,OAAO,EAAE;oBACP,8CAA8C,kBAAkB,EAAE;iBACnE;gBACD,OAAO,EAAE;oBACP,QAAQ,EAAE;wBACR,uCAAuC,kBAAkB,2CAA2C,kBAAkB,gBAAgB;qBACvI;iBACF;aACF;SACF,CAAC;KACH,CAAC,CAAC;IAEH,uFAAuF;IACvF,uFAAuF;IACvF,MAAM,OAAO,GAAG,kBAAkB,CAAC;IACnC,MAAM,IAAA,6BAAqB,EAAC,IAAI,EAAE;QAChC,OAAO;QACP,qBAAqB;QACrB,oBAAoB,EAAE,kBAAkB;QACxC,gBAAgB,EAAE,kBAAkB;QACpC,QAAQ;QACR,mBAAmB,EAAE,GAAG,kBAAkB,CAAC,IAAI,IAAI,iBAAiB,EAAE;QACtE,IAAI;QACJ,IAAI,EAAE,SAAS;QACf,cAAc,EAAE,IAAI;QACpB,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,mEAAmE;IACnE,MAAM,IAAA,iDAAmC,EACvC,IAAI,EACJ,qBAAqB,CAAC,IAAI,EAC1B,kBAAkB,CAAC,IAAI,EACvB;QACE,SAAS;QACT,kBAAkB;QAClB,IAAI,EAAE,SAAS;QACf,eAAe;KAChB,CACF,CAAC;IAEF,MAAM,IAAA,yCAA+B,EAAC,IAAI,EAAE;QAC1C,wDAAgD;KACjD,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;AAnHW,QAAA,sCAAsC,0CAmHjD;AAEF;;GAEG;AACH,MAAM,aAAa,GAAG,CACpB,aAAqE,EAC7D,EAAE;IACV,IAAI,aAAa,CAAC,UAAU,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5D,OAAO,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,IAAI,KAAK,CACb,8CAA8C,aAAa,CAAC,IAAI,EAAE,CACnE,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,8CAAsC,CAAC"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { IacProviderOption } from '../../utils/iac';
|
|
7
7
|
|
|
8
8
|
export type PyStrandsAgentComputeType = 'BedrockAgentCoreRuntime' | 'None';
|
|
9
|
+
export type StrandsAgentProtocol = 'HTTP' | 'A2A';
|
|
9
10
|
|
|
10
11
|
export type PyStrandsAgentAuth = 'IAM' | 'Cognito';
|
|
11
12
|
|
|
@@ -14,5 +15,6 @@ export interface PyStrandsAgentGeneratorSchema {
|
|
|
14
15
|
name?: string;
|
|
15
16
|
computeType?: PyStrandsAgentComputeType;
|
|
16
17
|
auth?: PyStrandsAgentAuth;
|
|
18
|
+
protocol?: StrandsAgentProtocol;
|
|
17
19
|
iacProvider: IacProviderOption;
|
|
18
20
|
}
|
|
@@ -36,6 +36,14 @@
|
|
|
36
36
|
"x-prompt": "How would you like to authenticate with your Strands Agent?",
|
|
37
37
|
"x-priority": "important"
|
|
38
38
|
},
|
|
39
|
+
"protocol": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"description": "The server protocol for your Strands Agent. HTTP exposes a FastAPI HTTP server. A2A exposes an Agent-to-Agent protocol server.",
|
|
42
|
+
"x-prompt": "Which protocol would you like to use for your Strands Agent?",
|
|
43
|
+
"enum": ["HTTP", "A2A"],
|
|
44
|
+
"default": "HTTP",
|
|
45
|
+
"x-priority": "important"
|
|
46
|
+
},
|
|
39
47
|
"iacProvider": {
|
|
40
48
|
"type": "string",
|
|
41
49
|
"description": "The preferred IaC provider. By default this is inherited from your initial selection.",
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { A2AExpressServer } from '@strands-agents/sdk/a2a/express';
|
|
2
|
+
import express from 'express';
|
|
3
|
+
import { getAgent } from './agent.js';
|
|
4
|
+
|
|
5
|
+
const PORT = parseInt(process.env.PORT || '9000');
|
|
6
|
+
const HOST = '0.0.0.0';
|
|
7
|
+
|
|
8
|
+
void (async () => {
|
|
9
|
+
const httpUrl =
|
|
10
|
+
process.env.AGENTCORE_RUNTIME_URL ?? `http://localhost:${PORT}/`;
|
|
11
|
+
|
|
12
|
+
const server = new A2AExpressServer({
|
|
13
|
+
agent: await getAgent('default'),
|
|
14
|
+
name: '<%= agentNameClassName %>',
|
|
15
|
+
description:
|
|
16
|
+
'A Strands Agent exposed via the Agent-to-Agent (A2A) protocol.',
|
|
17
|
+
host: HOST,
|
|
18
|
+
port: PORT,
|
|
19
|
+
httpUrl,
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const app = express();
|
|
23
|
+
app.get('/ping', (_req, res) => res.status(200).json({ status: 'Healthy' }));
|
|
24
|
+
app.use(server.createMiddleware());
|
|
25
|
+
app.listen(PORT, HOST, () => {
|
|
26
|
+
console.log(`A2A server listening on ${HOST}:${PORT}`);
|
|
27
|
+
});
|
|
28
|
+
})();
|
|
@@ -9,7 +9,11 @@ RUN npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation@<%- adotV
|
|
|
9
9
|
# Copy bundled agent
|
|
10
10
|
COPY --from=workspace <%- distDir %>/bundle/agent/<%- name %>/index.js /app
|
|
11
11
|
|
|
12
|
+
<%_ if (protocol === 'A2A') { _%>
|
|
13
|
+
EXPOSE 9000
|
|
14
|
+
<%_ } else { _%>
|
|
12
15
|
EXPOSE 8080
|
|
16
|
+
<%_ } _%>
|
|
13
17
|
|
|
14
18
|
# Auto-instrument with AWS Distro for OpenTelemetry
|
|
15
19
|
# https://aws-otel.github.io/docs/getting-started/js-sdk/trace-metric-auto-instr
|
|
@@ -33,12 +33,16 @@ const tsStrandsAgentGenerator = async (tree, options) => {
|
|
|
33
33
|
const distDir = (0, devkit_1.joinPathFragments)('dist', project.root);
|
|
34
34
|
const computeType = options.computeType ?? 'BedrockAgentCoreRuntime';
|
|
35
35
|
const auth = options.auth ?? 'IAM';
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
const protocol = options.protocol ?? 'HTTP';
|
|
37
|
+
const templateContext = {
|
|
38
38
|
name,
|
|
39
39
|
agentNameClassName,
|
|
40
40
|
distDir,
|
|
41
|
-
}
|
|
41
|
+
};
|
|
42
|
+
// Generate common files shared by both protocols
|
|
43
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'common'), targetSourceDir, templateContext, { overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting });
|
|
44
|
+
// Generate protocol-specific files
|
|
45
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', protocol.toLowerCase()), targetSourceDir, templateContext, { overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting });
|
|
42
46
|
if (computeType === 'BedrockAgentCoreRuntime') {
|
|
43
47
|
const dockerImageTag = `${(0, npm_scope_1.getNpmScope)(tree)}-${name}:latest`;
|
|
44
48
|
// Add bundle target
|
|
@@ -50,6 +54,7 @@ const tsStrandsAgentGenerator = async (tree, options) => {
|
|
|
50
54
|
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'deploy'), targetSourceDir, {
|
|
51
55
|
distDir,
|
|
52
56
|
name,
|
|
57
|
+
protocol,
|
|
53
58
|
adotVersion: versions_1.TS_VERSIONS['@aws/aws-distro-opentelemetry-node-autoinstrumentation'],
|
|
54
59
|
}, { overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting });
|
|
55
60
|
const dockerTargetName = `${agentTargetPrefix}-docker`;
|
|
@@ -73,26 +78,37 @@ const tsStrandsAgentGenerator = async (tree, options) => {
|
|
|
73
78
|
dockerImageTag,
|
|
74
79
|
iacProvider,
|
|
75
80
|
auth,
|
|
81
|
+
serverProtocol: protocol,
|
|
76
82
|
});
|
|
77
83
|
}
|
|
78
84
|
// Add dependencies
|
|
79
85
|
(0, devkit_1.addDependenciesToPackageJson)(tree, (0, versions_1.withVersions)([
|
|
80
|
-
'@trpc/server',
|
|
81
|
-
'@trpc/client',
|
|
82
86
|
'zod',
|
|
83
87
|
'@strands-agents/sdk',
|
|
84
|
-
'ws',
|
|
85
|
-
'cors',
|
|
86
88
|
'@aws-sdk/credential-providers',
|
|
87
89
|
'@aws-sdk/client-appconfigdata',
|
|
88
90
|
'@aws-lambda-powertools/parameters',
|
|
89
|
-
'aws4fetch',
|
|
90
91
|
'@modelcontextprotocol/sdk',
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
92
|
+
...(protocol === 'A2A'
|
|
93
|
+
? ['express', '@a2a-js/sdk']
|
|
94
|
+
: [
|
|
95
|
+
'@trpc/server',
|
|
96
|
+
'@trpc/client',
|
|
97
|
+
'ws',
|
|
98
|
+
'cors',
|
|
99
|
+
'aws4fetch',
|
|
100
|
+
]),
|
|
101
|
+
]), (0, versions_1.withVersions)([
|
|
102
|
+
'tsx',
|
|
103
|
+
'@types/node',
|
|
104
|
+
...(protocol === 'A2A'
|
|
105
|
+
? ['@types/express']
|
|
106
|
+
: ['@types/ws', '@types/cors']),
|
|
107
|
+
]));
|
|
108
|
+
// A2A servers use port 9000 as per the Strands A2A SDK default and AgentCore A2A contract.
|
|
109
|
+
// HTTP agents use port 8081+ to avoid conflict with VS Code server on 8080.
|
|
110
|
+
const localDevPortStart = protocol === 'A2A' ? 9000 : 8081;
|
|
111
|
+
const localDevPort = (0, port_1.assignPort)(tree, project, localDevPortStart);
|
|
96
112
|
(0, devkit_1.updateProjectConfiguration)(tree, project.name, {
|
|
97
113
|
...project,
|
|
98
114
|
targets: {
|
|
@@ -122,7 +138,7 @@ const tsStrandsAgentGenerator = async (tree, options) => {
|
|
|
122
138
|
},
|
|
123
139
|
},
|
|
124
140
|
});
|
|
125
|
-
(0, nx_1.addComponentGeneratorMetadata)(tree, project.name, exports.TS_STRANDS_AGENT_GENERATOR_INFO, targetSourceDirRelativeToProjectRoot, agentTargetPrefix, { port: localDevPort, rc: agentNameClassName, auth });
|
|
141
|
+
(0, nx_1.addComponentGeneratorMetadata)(tree, project.name, exports.TS_STRANDS_AGENT_GENERATOR_INFO, targetSourceDirRelativeToProjectRoot, agentTargetPrefix, { port: localDevPort, rc: agentNameClassName, auth, protocol });
|
|
126
142
|
await (0, metrics_1.addGeneratorMetricsIfApplicable)(tree, [
|
|
127
143
|
exports.TS_STRANDS_AGENT_GENERATOR_INFO,
|
|
128
144
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/strands-agent/generator.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,uCASoB;AAEpB,uCAMwB;AACxB,iDAAsE;AACtE,+CAA0D;AAC1D,6CAA2D;AAC3D,mDAAiE;AACjE,qDAAoD;AACpD,sDAAsE;AACtE,yCAAqD;AACrD,qEAA0E;AAC1E,mGAAwF;AAExF,2CAA8C;AAEjC,QAAA,+BAA+B,GAC1C,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,uBAAuB,GAAG,KAAK,EAC1C,IAAU,EACV,OAAsC,EACV,EAAE;IAC9B,MAAM,OAAO,GAAG,IAAA,wCAAmC,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3E,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAA,0BAAiB,EAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CACb,uBAAuB,OAAO,CAAC,OAAO,wDAAwD,CAC/F,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC;IACxE,MAAM,IAAI,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC;IACpD,MAAM,kBAAkB,GAAG,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;IACxD,MAAM,oCAAoC,GAAG,IAAA,0BAAiB,EAC5D,KAAK,EACL,iBAAiB,CAClB,CAAC;IACF,MAAM,eAAe,GAAG,IAAA,0BAAiB,EACvC,OAAO,CAAC,IAAI,EACZ,oCAAoC,CACrC,CAAC;IACF,MAAM,iBAAiB,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,IAAA,0BAAiB,EAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,yBAAyB,CAAC;IACrE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/strands-agent/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,6 +29,10 @@ async function tsStrandsAgentReactConnectionGenerator(tree, options) {
|
|
|
29
29
|
const auth = targetComponent?.auth ?? metadata?.auth ?? 'IAM';
|
|
30
30
|
const agentProjectAlias = (0, npm_scope_1.toScopeAlias)(agentProjectConfig.name);
|
|
31
31
|
const agentPath = targetComponent?.path ?? 'src/agent';
|
|
32
|
+
if (targetComponent?.protocol === 'A2A') {
|
|
33
|
+
throw new Error(`Cannot connect a React website to an A2A agent. ` +
|
|
34
|
+
`Consider generating an agent with the HTTP protocol instead.`);
|
|
35
|
+
}
|
|
32
36
|
// Ensure the agent project has a wildcard path entry in tsconfig.base.json
|
|
33
37
|
// so that deep imports (e.g., for the router type) resolve correctly
|
|
34
38
|
ensureWildcardPathEntry(tree, agentProjectConfig.name, agentProjectConfig.root);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/strands-agent/react-connection/generator.ts"],"names":[],"mappings":";;;AAgCA,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/strands-agent/react-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { IacProviderOption } from '../../utils/iac';
|
|
7
7
|
|
|
8
8
|
export type TsStrandsAgentComputeType = 'BedrockAgentCoreRuntime' | 'None';
|
|
9
|
+
export type StrandsAgentProtocol = 'HTTP' | 'A2A';
|
|
9
10
|
|
|
10
11
|
export type TsStrandsAgentAuth = 'IAM' | 'Cognito';
|
|
11
12
|
|
|
@@ -14,5 +15,6 @@ export interface TsStrandsAgentGeneratorSchema {
|
|
|
14
15
|
name?: string;
|
|
15
16
|
computeType?: TsStrandsAgentComputeType;
|
|
16
17
|
auth?: TsStrandsAgentAuth;
|
|
18
|
+
protocol?: StrandsAgentProtocol;
|
|
17
19
|
iacProvider: IacProviderOption;
|
|
18
20
|
}
|
|
@@ -36,6 +36,14 @@
|
|
|
36
36
|
"x-prompt": "How would you like to authenticate with your Strands Agent?",
|
|
37
37
|
"x-priority": "important"
|
|
38
38
|
},
|
|
39
|
+
"protocol": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"description": "The server protocol for your Strands Agent. HTTP exposes a tRPC/WebSocket server. A2A exposes an Agent-to-Agent protocol server.",
|
|
42
|
+
"x-prompt": "Which protocol would you like to use for your Strands Agent?",
|
|
43
|
+
"enum": ["HTTP", "A2A"],
|
|
44
|
+
"default": "HTTP",
|
|
45
|
+
"x-priority": "important"
|
|
46
|
+
},
|
|
39
47
|
"iacProvider": {
|
|
40
48
|
"type": "string",
|
|
41
49
|
"description": "The preferred IaC provider. By default this is inherited from your initial selection.",
|
|
@@ -14,7 +14,7 @@ export interface AddAgentCoreInfraProps {
|
|
|
14
14
|
projectName: string;
|
|
15
15
|
dockerImageTag: string;
|
|
16
16
|
appDirectory: string;
|
|
17
|
-
serverProtocol: 'MCP' | 'HTTP';
|
|
17
|
+
serverProtocol: 'MCP' | 'HTTP' | 'A2A';
|
|
18
18
|
auth: AgentCoreAuth;
|
|
19
19
|
}
|
|
20
20
|
export interface AddMcpServerInfraProps {
|
|
@@ -34,9 +34,10 @@ export interface AddAgentInfraProps {
|
|
|
34
34
|
projectName: string;
|
|
35
35
|
dockerImageTag: string;
|
|
36
36
|
auth: AgentCoreAuth;
|
|
37
|
+
serverProtocol?: 'HTTP' | 'A2A';
|
|
37
38
|
}
|
|
38
39
|
/**
|
|
39
|
-
* Add an
|
|
40
|
+
* Add an agent CDK construct
|
|
40
41
|
*/
|
|
41
42
|
export declare const addAgentInfra: (tree: Tree, options: AddAgentInfraProps & IACProvider) => Promise<void>;
|
|
42
43
|
export {};
|
|
@@ -73,7 +73,7 @@ const addMcpServerInfra = async (tree, options) => {
|
|
|
73
73
|
};
|
|
74
74
|
exports.addMcpServerInfra = addMcpServerInfra;
|
|
75
75
|
/**
|
|
76
|
-
* Add an
|
|
76
|
+
* Add an agent CDK construct
|
|
77
77
|
*/
|
|
78
78
|
const addAgentInfra = async (tree, options) => {
|
|
79
79
|
await addAgentCoreInfra(tree, {
|
|
@@ -82,7 +82,7 @@ const addAgentInfra = async (tree, options) => {
|
|
|
82
82
|
projectName: options.projectName,
|
|
83
83
|
dockerImageTag: options.dockerImageTag,
|
|
84
84
|
appDirectory: 'agents',
|
|
85
|
-
serverProtocol: 'HTTP',
|
|
85
|
+
serverProtocol: options.serverProtocol ?? 'HTTP',
|
|
86
86
|
iacProvider: options.iacProvider,
|
|
87
87
|
auth: options.auth,
|
|
88
88
|
});
|
|
@@ -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":";;;AAAA;;;GAGG;AACH,uCAQoB;AACpB,gFAIwC;AACxC,gCAAuC;AAEvC,0CAA2C;AAgB3C,MAAM,iBAAiB,GAAG,KAAK,EAC7B,IAAU,EACV,OAA8D,EAC9D,EAAE;IACF,QAAQ,OAAO,CAAC,WAAW,EAAE,CAAC;QAC5B,KAAK,KAAK;YACR,MAAM,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC1C,MAAM;QACR,KAAK,WAAW;YACd,0BAA0B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC1C,MAAM;IACV,CAAC;IAED,qFAAqF;IACrF,IAAA,mBAAU,EACR,IAAI,EACJ,IAAA,0BAAiB,EACf,0CAAY,EACZ,OAAO,CAAC,WAAW,KAAK,KAAK;QAC3B,CAAC,CAAC,mDAAqB;QACvB,CAAC,CAAC,kDAAoB,EACxB,cAAc,CACf,EACD,CAAC,MAA4B,EAAE,EAAE;QAC/B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5B,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG;YAC/B,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,WAAW,QAAQ,CAC5C;YACD,GAAG,OAAO,CAAC,WAAW,QAAQ;SAC/B,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,
|
|
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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"}
|
|
@@ -121,7 +121,12 @@ export class <%- nameClassName %> extends Construct implements IGrantable {
|
|
|
121
121
|
|
|
122
122
|
Grant.addToPrincipal({
|
|
123
123
|
grantee,
|
|
124
|
-
actions: [
|
|
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}/*`,
|
package/src/utils/versions.d.ts
CHANGED
|
@@ -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.
|
|
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.
|
|
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
|
|
@@ -114,7 +115,8 @@ export declare const PY_VERSIONS: {
|
|
|
114
115
|
readonly 'fastapi[standard]': "==0.135.3";
|
|
115
116
|
readonly mcp: "==1.27.0";
|
|
116
117
|
readonly 'pip-check-updates': "==0.28.0";
|
|
117
|
-
readonly 'strands-agents': "==1.
|
|
118
|
+
readonly 'strands-agents': "==1.36.0";
|
|
119
|
+
readonly 'strands-agents[a2a]': "==1.36.0";
|
|
118
120
|
readonly 'strands-agents-tools': "==0.4.1";
|
|
119
121
|
readonly uvicorn: "==0.44.0";
|
|
120
122
|
};
|
package/src/utils/versions.js
CHANGED
|
@@ -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.
|
|
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',
|
|
@@ -115,7 +116,8 @@ exports.PY_VERSIONS = {
|
|
|
115
116
|
'fastapi[standard]': '==0.135.3',
|
|
116
117
|
mcp: '==1.27.0',
|
|
117
118
|
'pip-check-updates': '==0.28.0',
|
|
118
|
-
'strands-agents': '==1.
|
|
119
|
+
'strands-agents': '==1.36.0',
|
|
120
|
+
'strands-agents[a2a]': '==1.36.0',
|
|
119
121
|
'strands-agents-tools': '==0.4.1',
|
|
120
122
|
uvicorn: '==0.44.0',
|
|
121
123
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/versions.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;GAEG;AACU,QAAA,WAAW,GAAG;IACzB,wDAAwD,EAAE,QAAQ;IAClE,0BAA0B,EAAE,UAAU;IACtC,qBAAqB,EAAE,UAAU;IACjC,+BAA+B,EAAE,UAAU;IAC3C,+BAA+B,EAAE,gBAAgB;IACjD,yBAAyB,EAAE,gBAAgB;IAC3C,+BAA+B,EAAE,QAAQ;IACzC,gCAAgC,EAAE,QAAQ;IAC1C,mCAAmC,EAAE,QAAQ;IAC7C,+BAA+B,EAAE,QAAQ;IACzC,+BAA+B,EAAE,QAAQ;IACzC,+BAA+B,EAAE,UAAU;IAC3C,aAAa,EAAE,OAAO;IACtB,cAAc,EAAE,QAAQ;IACxB,sBAAsB,EAAE,QAAQ;IAChC,YAAY,EAAE,QAAQ;IACtB,WAAW,EAAE,QAAQ;IACrB,qBAAqB,EAAE,QAAQ;IAC/B,2BAA2B,EAAE,QAAQ;IACrC,iCAAiC,EAAE,QAAQ;IAC3C,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/nx-plugin/src/utils/versions.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|