@aws/agentcore 1.0.0-preview.22 → 1.0.0-preview.24
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/dist/assets/__tests__/__snapshots__/assets.snapshot.test.ts.snap +58 -37
- package/dist/assets/__tests__/googleadk-observability.test.ts +23 -0
- package/dist/assets/cdk/package.json +9 -9
- package/dist/assets/mcp/python/pyproject.toml +1 -1
- package/dist/assets/python/a2a/googleadk/base/main.py +8 -2
- package/dist/assets/python/a2a/googleadk/base/pyproject.toml +6 -4
- package/dist/assets/python/a2a/langchain_langgraph/base/main.py +11 -5
- package/dist/assets/python/a2a/langchain_langgraph/base/pyproject.toml +2 -2
- package/dist/assets/python/a2a/strands/base/pyproject.toml +1 -1
- package/dist/assets/python/agui/googleadk/base/pyproject.toml +3 -2
- package/dist/assets/python/http/autogen/base/README.md +2 -1
- package/dist/assets/python/http/googleadk/base/README.md +2 -1
- package/dist/assets/python/http/googleadk/base/pyproject.toml +3 -2
- package/dist/assets/python/http/langchain_langgraph/base/README.md +2 -1
- package/dist/assets/python/http/langchain_langgraph/base/pyproject.toml +2 -2
- package/dist/assets/python/http/openaiagents/base/README.md +2 -1
- package/dist/assets/python/http/strands/base/README.md +2 -1
- package/dist/assets/python/http/strands/base/pyproject.toml +1 -1
- package/dist/assets/python/mcp/standalone/base/pyproject.toml +1 -1
- package/dist/cli/index.mjs +550 -539
- package/dist/lib/dependency-management/index.d.ts +5 -0
- package/dist/lib/dependency-management/index.d.ts.map +1 -0
- package/dist/lib/dependency-management/index.js +8 -0
- package/dist/lib/dependency-management/index.js.map +1 -0
- package/dist/lib/dependency-management/messages.d.ts +30 -0
- package/dist/lib/dependency-management/messages.d.ts.map +1 -0
- package/dist/lib/dependency-management/messages.js +86 -0
- package/dist/lib/dependency-management/messages.js.map +1 -0
- package/dist/lib/dependency-management/plan.d.ts +25 -0
- package/dist/lib/dependency-management/plan.d.ts.map +1 -0
- package/dist/lib/dependency-management/plan.js +67 -0
- package/dist/lib/dependency-management/plan.js.map +1 -0
- package/dist/lib/dependency-management/semver.d.ts +21 -0
- package/dist/lib/dependency-management/semver.d.ts.map +1 -0
- package/dist/lib/dependency-management/semver.js +51 -0
- package/dist/lib/dependency-management/semver.js.map +1 -0
- package/dist/lib/dependency-management/sync.d.ts +26 -0
- package/dist/lib/dependency-management/sync.d.ts.map +1 -0
- package/dist/lib/dependency-management/sync.js +141 -0
- package/dist/lib/dependency-management/sync.js.map +1 -0
- package/dist/lib/dependency-management/types.d.ts +85 -0
- package/dist/lib/dependency-management/types.d.ts.map +1 -0
- package/dist/lib/dependency-management/types.js +3 -0
- package/dist/lib/dependency-management/types.js.map +1 -0
- package/dist/lib/errors/types.d.ts +15 -0
- package/dist/lib/errors/types.d.ts.map +1 -1
- package/dist/lib/errors/types.js +22 -1
- package/dist/lib/errors/types.js.map +1 -1
- package/dist/lib/result.d.ts +7 -0
- package/dist/lib/result.d.ts.map +1 -1
- package/dist/lib/result.js +14 -1
- package/dist/lib/result.js.map +1 -1
- package/dist/lib/schemas/io/global-config.d.ts +1 -0
- package/dist/lib/schemas/io/global-config.d.ts.map +1 -1
- package/dist/lib/schemas/io/global-config.js +1 -0
- package/dist/lib/schemas/io/global-config.js.map +1 -1
- package/npm-shrinkwrap.json +470 -567
- package/package.json +8 -2
- package/scripts/extract-cli-model.mjs +47 -6
- package/scripts/extract-cli-model.test.mjs +43 -0
- package/scripts/render_adoc.py +81 -5
- package/scripts/safe-junit-reporter.ts +7 -0
- package/scripts/sanitize-test-artifacts.ts +65 -0
- package/scripts/test_render_adoc.py +38 -0
|
@@ -636,18 +636,18 @@ exports[`Assets Directory Snapshots > CDK assets > cdk/cdk/package.json should m
|
|
|
636
636
|
"format:check": "prettier --check ."
|
|
637
637
|
},
|
|
638
638
|
"devDependencies": {
|
|
639
|
-
"@types/jest": "
|
|
640
|
-
"@types/node": "
|
|
641
|
-
"jest": "
|
|
642
|
-
"ts-jest": "
|
|
643
|
-
"aws-cdk": "2.1126.0",
|
|
644
|
-
"prettier": "
|
|
639
|
+
"@types/jest": "~29.5.14",
|
|
640
|
+
"@types/node": "~24.13.3",
|
|
641
|
+
"jest": "~29.7.0",
|
|
642
|
+
"ts-jest": "~29.4.11",
|
|
643
|
+
"aws-cdk": "~2.1126.0",
|
|
644
|
+
"prettier": "~3.9.5",
|
|
645
645
|
"typescript": "~5.9.3"
|
|
646
646
|
},
|
|
647
647
|
"dependencies": {
|
|
648
|
-
"@aws/agentcore-cdk": "
|
|
649
|
-
"aws-cdk-lib": "
|
|
650
|
-
"constructs": "
|
|
648
|
+
"@aws/agentcore-cdk": "0.1.0-alpha.45",
|
|
649
|
+
"aws-cdk-lib": "~2.261.0",
|
|
650
|
+
"constructs": "~10.7.0"
|
|
651
651
|
}
|
|
652
652
|
}
|
|
653
653
|
"
|
|
@@ -904,7 +904,7 @@ description = "MCP Server demonstrating HTTP tool patterns"
|
|
|
904
904
|
readme = "README.md"
|
|
905
905
|
requires-python = ">=3.10"
|
|
906
906
|
dependencies = [
|
|
907
|
-
"mcp[cli]
|
|
907
|
+
"mcp[cli] ~= 1.24.0",
|
|
908
908
|
"httpx >= 0.27.0",
|
|
909
909
|
"opentelemetry-distro",
|
|
910
910
|
"opentelemetry-exporter-otlp",
|
|
@@ -1311,7 +1311,7 @@ from google.adk.agents import Agent
|
|
|
1311
1311
|
from google.adk.a2a.executor.a2a_agent_executor import A2aAgentExecutor
|
|
1312
1312
|
from google.adk.runners import Runner
|
|
1313
1313
|
from google.adk.sessions import InMemorySessionService
|
|
1314
|
-
from a2a.types import AgentCapabilities, AgentCard, AgentSkill
|
|
1314
|
+
from a2a.types import AgentCapabilities, AgentCard, AgentInterface, AgentSkill
|
|
1315
1315
|
from bedrock_agentcore.runtime import serve_a2a
|
|
1316
1316
|
from model.load import load_model
|
|
1317
1317
|
|
|
@@ -1405,7 +1405,6 @@ runner = Runner(
|
|
|
1405
1405
|
card = AgentCard(
|
|
1406
1406
|
name=agent.name,
|
|
1407
1407
|
description=agent.description,
|
|
1408
|
-
url="http://localhost:9000/",
|
|
1409
1408
|
version="0.1.0",
|
|
1410
1409
|
capabilities=AgentCapabilities(streaming=True),
|
|
1411
1410
|
skills=[
|
|
@@ -1418,6 +1417,13 @@ card = AgentCard(
|
|
|
1418
1417
|
],
|
|
1419
1418
|
default_input_modes=["text"],
|
|
1420
1419
|
default_output_modes=["text"],
|
|
1420
|
+
supported_interfaces=[
|
|
1421
|
+
AgentInterface(
|
|
1422
|
+
protocol_binding="JSONRPC",
|
|
1423
|
+
protocol_version="1.0",
|
|
1424
|
+
url="http://localhost:9000/",
|
|
1425
|
+
)
|
|
1426
|
+
],
|
|
1421
1427
|
)
|
|
1422
1428
|
|
|
1423
1429
|
if __name__ == "__main__":
|
|
@@ -1487,11 +1493,13 @@ description = "AgentCore A2A Agent using Google ADK"
|
|
|
1487
1493
|
readme = "README.md"
|
|
1488
1494
|
requires-python = ">=3.10"
|
|
1489
1495
|
dependencies = [
|
|
1490
|
-
"a2a-sdk >= 0.
|
|
1496
|
+
"a2a-sdk[http-server] >= 1.0.1, < 2.0.0",
|
|
1491
1497
|
"aws-opentelemetry-distro",
|
|
1492
|
-
"bedrock-agentcore[a2a] >= 1.0
|
|
1493
|
-
"google-adk >=
|
|
1494
|
-
"google-genai >=
|
|
1498
|
+
"bedrock-agentcore[a2a-v1] >= 1.19.0",
|
|
1499
|
+
"google-adk[a2a] >= 2.5.0, < 3.0.0",
|
|
1500
|
+
"google-genai >= 2.9.0, < 3.0.0",
|
|
1501
|
+
# 1.13.0 was yanked for broken imports.
|
|
1502
|
+
"opentelemetry-resourcedetector-gcp >= 1.9.0a0, < 2.0.0, != 1.13.0",
|
|
1495
1503
|
]
|
|
1496
1504
|
|
|
1497
1505
|
[tool.hatch.build.targets.wheel]
|
|
@@ -1577,11 +1585,11 @@ import os
|
|
|
1577
1585
|
from langchain_core.tools import tool
|
|
1578
1586
|
from langgraph.prebuilt import create_react_agent
|
|
1579
1587
|
from opentelemetry.instrumentation.langchain import LangchainInstrumentor
|
|
1588
|
+
from a2a.helpers import new_task_from_user_message
|
|
1580
1589
|
from a2a.server.agent_execution import AgentExecutor, RequestContext
|
|
1581
1590
|
from a2a.server.events import EventQueue
|
|
1582
1591
|
from a2a.server.tasks import TaskUpdater
|
|
1583
|
-
from a2a.types import AgentCapabilities, AgentCard, AgentSkill, Part
|
|
1584
|
-
from a2a.utils import new_task
|
|
1592
|
+
from a2a.types import AgentCapabilities, AgentCard, AgentInterface, AgentSkill, Part
|
|
1585
1593
|
from bedrock_agentcore.runtime import serve_a2a
|
|
1586
1594
|
from model.load import load_model
|
|
1587
1595
|
|
|
@@ -1673,7 +1681,7 @@ class LangGraphA2AExecutor(AgentExecutor):
|
|
|
1673
1681
|
self.graph = graph
|
|
1674
1682
|
|
|
1675
1683
|
async def execute(self, context: RequestContext, event_queue: EventQueue) -> None:
|
|
1676
|
-
task = context.current_task or
|
|
1684
|
+
task = context.current_task or new_task_from_user_message(context.message)
|
|
1677
1685
|
if not context.current_task:
|
|
1678
1686
|
await event_queue.enqueue_event(task)
|
|
1679
1687
|
updater = TaskUpdater(event_queue, task.id, task.context_id)
|
|
@@ -1682,7 +1690,7 @@ class LangGraphA2AExecutor(AgentExecutor):
|
|
|
1682
1690
|
result = await self.graph.ainvoke({"messages": [("user", user_text)]})
|
|
1683
1691
|
response = result["messages"][-1].content
|
|
1684
1692
|
|
|
1685
|
-
await updater.add_artifact([Part(
|
|
1693
|
+
await updater.add_artifact([Part(text=response)])
|
|
1686
1694
|
await updater.complete()
|
|
1687
1695
|
|
|
1688
1696
|
async def cancel(self, context: RequestContext, event_queue: EventQueue) -> None:
|
|
@@ -1692,7 +1700,6 @@ class LangGraphA2AExecutor(AgentExecutor):
|
|
|
1692
1700
|
card = AgentCard(
|
|
1693
1701
|
name="{{ name }}",
|
|
1694
1702
|
description="A LangGraph agent on Bedrock AgentCore",
|
|
1695
|
-
url="http://localhost:9000/",
|
|
1696
1703
|
version="0.1.0",
|
|
1697
1704
|
capabilities=AgentCapabilities(streaming=True),
|
|
1698
1705
|
skills=[
|
|
@@ -1705,6 +1712,13 @@ card = AgentCard(
|
|
|
1705
1712
|
],
|
|
1706
1713
|
default_input_modes=["text"],
|
|
1707
1714
|
default_output_modes=["text"],
|
|
1715
|
+
supported_interfaces=[
|
|
1716
|
+
AgentInterface(
|
|
1717
|
+
protocol_binding="JSONRPC",
|
|
1718
|
+
protocol_version="1.0",
|
|
1719
|
+
url="http://localhost:9000/",
|
|
1720
|
+
)
|
|
1721
|
+
],
|
|
1708
1722
|
)
|
|
1709
1723
|
|
|
1710
1724
|
if __name__ == "__main__":
|
|
@@ -1856,7 +1870,7 @@ description = "AgentCore A2A Agent using LangChain + LangGraph"
|
|
|
1856
1870
|
readme = "README.md"
|
|
1857
1871
|
requires-python = ">=3.10"
|
|
1858
1872
|
dependencies = [
|
|
1859
|
-
"a2a-sdk >= 0.
|
|
1873
|
+
"a2a-sdk[http-server] >= 1.0.1, < 2.0.0",
|
|
1860
1874
|
{{#if (eq modelProvider "Anthropic")}}"langchain-anthropic >= 0.3.0",
|
|
1861
1875
|
{{/if}}{{#if (eq modelProvider "Bedrock")}}"langchain-aws >= 0.2.0",
|
|
1862
1876
|
{{/if}}{{#if (eq modelProvider "Gemini")}}"langchain-google-genai >= 2.0.0",
|
|
@@ -1864,7 +1878,7 @@ dependencies = [
|
|
|
1864
1878
|
{{/if}}{{#if (eq modelProvider "OpenAI")}}"langchain-openai >= 0.2.0",
|
|
1865
1879
|
{{/if}}"aws-opentelemetry-distro",
|
|
1866
1880
|
"opentelemetry-instrumentation-langchain >= 0.59.0",
|
|
1867
|
-
"bedrock-agentcore[a2a] >= 1.
|
|
1881
|
+
"bedrock-agentcore[a2a-v1] >= 1.19.0",
|
|
1868
1882
|
"botocore[crt] >= 1.35.0",
|
|
1869
1883
|
"langgraph >= 0.2.0",
|
|
1870
1884
|
]
|
|
@@ -2207,7 +2221,7 @@ readme = "README.md"
|
|
|
2207
2221
|
requires-python = ">=3.10"
|
|
2208
2222
|
dependencies = [
|
|
2209
2223
|
{{#if (eq modelProvider "Anthropic")}}"anthropic >= 0.30.0",
|
|
2210
|
-
{{/if}}"a2a-sdk[all] >= 0.
|
|
2224
|
+
{{/if}}"a2a-sdk[all] >= 0.3.0, < 0.4.0",
|
|
2211
2225
|
"aws-opentelemetry-distro",
|
|
2212
2226
|
"bedrock-agentcore[a2a] >= 1.9.1",
|
|
2213
2227
|
"botocore[crt] >= 1.35.0",
|
|
@@ -2518,8 +2532,9 @@ dependencies = [
|
|
|
2518
2532
|
"fastapi >= 0.115.12",
|
|
2519
2533
|
"google-adk >= 1.16.0, < 2.0.0",
|
|
2520
2534
|
"google-genai >= 1.0.0, < 2.0.0",
|
|
2521
|
-
|
|
2522
|
-
"opentelemetry-
|
|
2535
|
+
# 1.13.0 was yanked for broken imports.
|
|
2536
|
+
"opentelemetry-resourcedetector-gcp >= 1.9.0a0, < 2.0.0, != 1.13.0",
|
|
2537
|
+
"aws-opentelemetry-distro >= 0.17.0",
|
|
2523
2538
|
"uvicorn >= 0.34.3",
|
|
2524
2539
|
]
|
|
2525
2540
|
|
|
@@ -3325,7 +3340,8 @@ file defines a Starlette ASGI app with the AutoGen framework running within.
|
|
|
3325
3340
|
|
|
3326
3341
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
3327
3342
|
|
|
3328
|
-
|
|
3343
|
+
Activate the environment with \`source .venv/bin/activate\` on macOS/Linux, \`.venv\\Scripts\\activate.bat\` in Windows
|
|
3344
|
+
Command Prompt, or \`.\\.venv\\Scripts\\activate.ps1\` in Windows PowerShell.
|
|
3329
3345
|
|
|
3330
3346
|
\`agentcore dev\` will start a local server on 0.0.0.0:8080.
|
|
3331
3347
|
|
|
@@ -3780,7 +3796,8 @@ file defines a Starlette ASGI app with the Google ADK framework running within.
|
|
|
3780
3796
|
|
|
3781
3797
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
3782
3798
|
|
|
3783
|
-
|
|
3799
|
+
Activate the environment with \`source .venv/bin/activate\` on macOS/Linux, \`.venv\\Scripts\\activate.bat\` in Windows
|
|
3800
|
+
Command Prompt, or \`.\\.venv\\Scripts\\activate.ps1\` in Windows PowerShell.
|
|
3784
3801
|
|
|
3785
3802
|
\`agentcore dev\` will start a local server on 0.0.0.0:8080.
|
|
3786
3803
|
|
|
@@ -4196,10 +4213,11 @@ description = "AgentCore Runtime Application using Google ADK"
|
|
|
4196
4213
|
readme = "README.md"
|
|
4197
4214
|
requires-python = ">=3.10"
|
|
4198
4215
|
dependencies = [
|
|
4199
|
-
"opentelemetry-distro",
|
|
4200
|
-
"opentelemetry-exporter-otlp",
|
|
4216
|
+
"aws-opentelemetry-distro >= 0.17.0",
|
|
4201
4217
|
"google-adk >= 1.35.0, < 2.0.0",
|
|
4202
4218
|
"google-genai >= 1.0.0, < 2.0.0",
|
|
4219
|
+
# 1.13.0 was yanked for broken imports.
|
|
4220
|
+
"opentelemetry-resourcedetector-gcp >= 1.9.0a0, < 2.0.0, != 1.13.0",
|
|
4203
4221
|
"bedrock-agentcore >= 1.0.3",
|
|
4204
4222
|
"botocore[crt] >= 1.35.0",
|
|
4205
4223
|
{{#if hasGateway}}{{#if (includes gatewayAuthTypes "AWS_IAM")}}"mcp-proxy-for-aws >= 1.1.0",
|
|
@@ -4238,7 +4256,8 @@ file defines a Starlette ASGI app with the LangChain/LangGraph framework running
|
|
|
4238
4256
|
|
|
4239
4257
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
4240
4258
|
|
|
4241
|
-
|
|
4259
|
+
Activate the environment with \`source .venv/bin/activate\` on macOS/Linux, \`.venv\\Scripts\\activate.bat\` in Windows
|
|
4260
|
+
Command Prompt, or \`.\\.venv\\Scripts\\activate.ps1\` in Windows PowerShell.
|
|
4242
4261
|
|
|
4243
4262
|
\`agentcore dev\` will start a local server on 0.0.0.0:8080.
|
|
4244
4263
|
|
|
@@ -4761,8 +4780,8 @@ dependencies = [
|
|
|
4761
4780
|
"aws-opentelemetry-distro",
|
|
4762
4781
|
"opentelemetry-instrumentation-langchain >= 0.59.0",
|
|
4763
4782
|
"langgraph >= 1.0.2",
|
|
4764
|
-
"mcp
|
|
4765
|
-
"langchain-mcp-adapters >= 0.
|
|
4783
|
+
"mcp ~= 1.24.0",
|
|
4784
|
+
"langchain-mcp-adapters >= 0.3.1",
|
|
4766
4785
|
"langchain >= 1.0.3",
|
|
4767
4786
|
"bedrock-agentcore >= 1.8.0",
|
|
4768
4787
|
"botocore[crt] >= 1.35.0",
|
|
@@ -4815,7 +4834,8 @@ file defines a Starlette ASGI app with the OpenAI Agents SDK framework running w
|
|
|
4815
4834
|
|
|
4816
4835
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
4817
4836
|
|
|
4818
|
-
|
|
4837
|
+
Activate the environment with \`source .venv/bin/activate\` on macOS/Linux, \`.venv\\Scripts\\activate.bat\` in Windows
|
|
4838
|
+
Command Prompt, or \`.\\.venv\\Scripts\\activate.ps1\` in Windows PowerShell.
|
|
4819
4839
|
|
|
4820
4840
|
\`agentcore dev\` will start a local server on 0.0.0.0:8080.
|
|
4821
4841
|
|
|
@@ -5259,7 +5279,8 @@ file defines a Starlette ASGI app with the chosen Agent framework SDK running wi
|
|
|
5259
5279
|
|
|
5260
5280
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
5261
5281
|
|
|
5262
|
-
|
|
5282
|
+
Activate the environment with \`source .venv/bin/activate\` on macOS/Linux, \`.venv\\Scripts\\activate.bat\` in Windows
|
|
5283
|
+
Command Prompt, or \`.\\.venv\\Scripts\\activate.ps1\` in Windows PowerShell.
|
|
5263
5284
|
|
|
5264
5285
|
\`agentcore dev\` will start a local server on 0.0.0.0:8080.
|
|
5265
5286
|
|
|
@@ -6416,7 +6437,7 @@ dependencies = [
|
|
|
6416
6437
|
"bedrock-agentcore >= 1.9.1",
|
|
6417
6438
|
"botocore[crt] >= 1.35.0",
|
|
6418
6439
|
{{#if (eq modelProvider "Gemini")}}"google-genai >= 1.0.0",
|
|
6419
|
-
{{/if}}"mcp
|
|
6440
|
+
{{/if}}"mcp ~= 1.24.0",
|
|
6420
6441
|
{{#if (eq modelProvider "OpenAI")}}"openai >= 1.0.0",
|
|
6421
6442
|
{{/if}}{{#if (eq modelProvider "LiteLLM")}}"litellm >= 1.0.0",
|
|
6422
6443
|
{{/if}}{{#if bedrockMantle}}"openai >= 1.0.0",
|
|
@@ -7169,7 +7190,7 @@ description = "AgentCore MCP Server"
|
|
|
7169
7190
|
readme = "README.md"
|
|
7170
7191
|
requires-python = ">=3.10"
|
|
7171
7192
|
dependencies = [
|
|
7172
|
-
"mcp
|
|
7193
|
+
"mcp ~= 1.24.0",
|
|
7173
7194
|
]
|
|
7174
7195
|
|
|
7175
7196
|
[tool.hatch.build.targets.wheel]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import { describe, expect, it } from 'vitest';
|
|
4
|
+
|
|
5
|
+
const ASSETS_DIR = path.resolve(__dirname, '..', 'python');
|
|
6
|
+
const EXPECTED_DEPENDENCIES = [
|
|
7
|
+
['http', '"aws-opentelemetry-distro >= 0.17.0"'],
|
|
8
|
+
['agui', '"aws-opentelemetry-distro >= 0.17.0"'],
|
|
9
|
+
['a2a', '"aws-opentelemetry-distro"'],
|
|
10
|
+
] as const;
|
|
11
|
+
|
|
12
|
+
describe('Google ADK observability dependencies', () => {
|
|
13
|
+
it.each(EXPECTED_DEPENDENCIES)('%s uses the AWS OpenTelemetry distro', (protocol, expectedDependency) => {
|
|
14
|
+
const pyproject = fs.readFileSync(
|
|
15
|
+
path.join(ASSETS_DIR, protocol, 'googleadk', 'base', 'pyproject.toml'),
|
|
16
|
+
'utf-8'
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
expect(pyproject).toContain(expectedDependency);
|
|
20
|
+
expect(pyproject).not.toMatch(/^\s*"opentelemetry-distro",?$/m);
|
|
21
|
+
expect(pyproject).not.toMatch(/^\s*"opentelemetry-exporter-otlp",?$/m);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -14,17 +14,17 @@
|
|
|
14
14
|
"format:check": "prettier --check ."
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"@types/jest": "
|
|
18
|
-
"@types/node": "
|
|
19
|
-
"jest": "
|
|
20
|
-
"ts-jest": "
|
|
21
|
-
"aws-cdk": "2.1126.0",
|
|
22
|
-
"prettier": "
|
|
17
|
+
"@types/jest": "~29.5.14",
|
|
18
|
+
"@types/node": "~24.13.3",
|
|
19
|
+
"jest": "~29.7.0",
|
|
20
|
+
"ts-jest": "~29.4.11",
|
|
21
|
+
"aws-cdk": "~2.1126.0",
|
|
22
|
+
"prettier": "~3.9.5",
|
|
23
23
|
"typescript": "~5.9.3"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@aws/agentcore-cdk": "
|
|
27
|
-
"aws-cdk-lib": "
|
|
28
|
-
"constructs": "
|
|
26
|
+
"@aws/agentcore-cdk": "0.1.0-alpha.45",
|
|
27
|
+
"aws-cdk-lib": "~2.261.0",
|
|
28
|
+
"constructs": "~10.7.0"
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -9,7 +9,7 @@ description = "MCP Server demonstrating HTTP tool patterns"
|
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
11
|
dependencies = [
|
|
12
|
-
"mcp[cli]
|
|
12
|
+
"mcp[cli] ~= 1.24.0",
|
|
13
13
|
"httpx >= 0.27.0",
|
|
14
14
|
"opentelemetry-distro",
|
|
15
15
|
"opentelemetry-exporter-otlp",
|
|
@@ -5,7 +5,7 @@ from google.adk.agents import Agent
|
|
|
5
5
|
from google.adk.a2a.executor.a2a_agent_executor import A2aAgentExecutor
|
|
6
6
|
from google.adk.runners import Runner
|
|
7
7
|
from google.adk.sessions import InMemorySessionService
|
|
8
|
-
from a2a.types import AgentCapabilities, AgentCard, AgentSkill
|
|
8
|
+
from a2a.types import AgentCapabilities, AgentCard, AgentInterface, AgentSkill
|
|
9
9
|
from bedrock_agentcore.runtime import serve_a2a
|
|
10
10
|
from model.load import load_model
|
|
11
11
|
|
|
@@ -99,7 +99,6 @@ runner = Runner(
|
|
|
99
99
|
card = AgentCard(
|
|
100
100
|
name=agent.name,
|
|
101
101
|
description=agent.description,
|
|
102
|
-
url="http://localhost:9000/",
|
|
103
102
|
version="0.1.0",
|
|
104
103
|
capabilities=AgentCapabilities(streaming=True),
|
|
105
104
|
skills=[
|
|
@@ -112,6 +111,13 @@ card = AgentCard(
|
|
|
112
111
|
],
|
|
113
112
|
default_input_modes=["text"],
|
|
114
113
|
default_output_modes=["text"],
|
|
114
|
+
supported_interfaces=[
|
|
115
|
+
AgentInterface(
|
|
116
|
+
protocol_binding="JSONRPC",
|
|
117
|
+
protocol_version="1.0",
|
|
118
|
+
url="http://localhost:9000/",
|
|
119
|
+
)
|
|
120
|
+
],
|
|
115
121
|
)
|
|
116
122
|
|
|
117
123
|
if __name__ == "__main__":
|
|
@@ -9,11 +9,13 @@ description = "AgentCore A2A Agent using Google ADK"
|
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
11
|
dependencies = [
|
|
12
|
-
"a2a-sdk >= 0.
|
|
12
|
+
"a2a-sdk[http-server] >= 1.0.1, < 2.0.0",
|
|
13
13
|
"aws-opentelemetry-distro",
|
|
14
|
-
"bedrock-agentcore[a2a] >= 1.0
|
|
15
|
-
"google-adk >=
|
|
16
|
-
"google-genai >=
|
|
14
|
+
"bedrock-agentcore[a2a-v1] >= 1.19.0",
|
|
15
|
+
"google-adk[a2a] >= 2.5.0, < 3.0.0",
|
|
16
|
+
"google-genai >= 2.9.0, < 3.0.0",
|
|
17
|
+
# 1.13.0 was yanked for broken imports.
|
|
18
|
+
"opentelemetry-resourcedetector-gcp >= 1.9.0a0, < 2.0.0, != 1.13.0",
|
|
17
19
|
]
|
|
18
20
|
|
|
19
21
|
[tool.hatch.build.targets.wheel]
|
|
@@ -4,11 +4,11 @@ import os
|
|
|
4
4
|
from langchain_core.tools import tool
|
|
5
5
|
from langgraph.prebuilt import create_react_agent
|
|
6
6
|
from opentelemetry.instrumentation.langchain import LangchainInstrumentor
|
|
7
|
+
from a2a.helpers import new_task_from_user_message
|
|
7
8
|
from a2a.server.agent_execution import AgentExecutor, RequestContext
|
|
8
9
|
from a2a.server.events import EventQueue
|
|
9
10
|
from a2a.server.tasks import TaskUpdater
|
|
10
|
-
from a2a.types import AgentCapabilities, AgentCard, AgentSkill, Part
|
|
11
|
-
from a2a.utils import new_task
|
|
11
|
+
from a2a.types import AgentCapabilities, AgentCard, AgentInterface, AgentSkill, Part
|
|
12
12
|
from bedrock_agentcore.runtime import serve_a2a
|
|
13
13
|
from model.load import load_model
|
|
14
14
|
|
|
@@ -100,7 +100,7 @@ class LangGraphA2AExecutor(AgentExecutor):
|
|
|
100
100
|
self.graph = graph
|
|
101
101
|
|
|
102
102
|
async def execute(self, context: RequestContext, event_queue: EventQueue) -> None:
|
|
103
|
-
task = context.current_task or
|
|
103
|
+
task = context.current_task or new_task_from_user_message(context.message)
|
|
104
104
|
if not context.current_task:
|
|
105
105
|
await event_queue.enqueue_event(task)
|
|
106
106
|
updater = TaskUpdater(event_queue, task.id, task.context_id)
|
|
@@ -109,7 +109,7 @@ class LangGraphA2AExecutor(AgentExecutor):
|
|
|
109
109
|
result = await self.graph.ainvoke({"messages": [("user", user_text)]})
|
|
110
110
|
response = result["messages"][-1].content
|
|
111
111
|
|
|
112
|
-
await updater.add_artifact([Part(
|
|
112
|
+
await updater.add_artifact([Part(text=response)])
|
|
113
113
|
await updater.complete()
|
|
114
114
|
|
|
115
115
|
async def cancel(self, context: RequestContext, event_queue: EventQueue) -> None:
|
|
@@ -119,7 +119,6 @@ class LangGraphA2AExecutor(AgentExecutor):
|
|
|
119
119
|
card = AgentCard(
|
|
120
120
|
name="{{ name }}",
|
|
121
121
|
description="A LangGraph agent on Bedrock AgentCore",
|
|
122
|
-
url="http://localhost:9000/",
|
|
123
122
|
version="0.1.0",
|
|
124
123
|
capabilities=AgentCapabilities(streaming=True),
|
|
125
124
|
skills=[
|
|
@@ -132,6 +131,13 @@ card = AgentCard(
|
|
|
132
131
|
],
|
|
133
132
|
default_input_modes=["text"],
|
|
134
133
|
default_output_modes=["text"],
|
|
134
|
+
supported_interfaces=[
|
|
135
|
+
AgentInterface(
|
|
136
|
+
protocol_binding="JSONRPC",
|
|
137
|
+
protocol_version="1.0",
|
|
138
|
+
url="http://localhost:9000/",
|
|
139
|
+
)
|
|
140
|
+
],
|
|
135
141
|
)
|
|
136
142
|
|
|
137
143
|
if __name__ == "__main__":
|
|
@@ -9,7 +9,7 @@ description = "AgentCore A2A Agent using LangChain + LangGraph"
|
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
11
|
dependencies = [
|
|
12
|
-
"a2a-sdk >= 0.
|
|
12
|
+
"a2a-sdk[http-server] >= 1.0.1, < 2.0.0",
|
|
13
13
|
{{#if (eq modelProvider "Anthropic")}}"langchain-anthropic >= 0.3.0",
|
|
14
14
|
{{/if}}{{#if (eq modelProvider "Bedrock")}}"langchain-aws >= 0.2.0",
|
|
15
15
|
{{/if}}{{#if (eq modelProvider "Gemini")}}"langchain-google-genai >= 2.0.0",
|
|
@@ -17,7 +17,7 @@ dependencies = [
|
|
|
17
17
|
{{/if}}{{#if (eq modelProvider "OpenAI")}}"langchain-openai >= 0.2.0",
|
|
18
18
|
{{/if}}"aws-opentelemetry-distro",
|
|
19
19
|
"opentelemetry-instrumentation-langchain >= 0.59.0",
|
|
20
|
-
"bedrock-agentcore[a2a] >= 1.
|
|
20
|
+
"bedrock-agentcore[a2a-v1] >= 1.19.0",
|
|
21
21
|
"botocore[crt] >= 1.35.0",
|
|
22
22
|
"langgraph >= 0.2.0",
|
|
23
23
|
]
|
|
@@ -10,7 +10,7 @@ readme = "README.md"
|
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
11
|
dependencies = [
|
|
12
12
|
{{#if (eq modelProvider "Anthropic")}}"anthropic >= 0.30.0",
|
|
13
|
-
{{/if}}"a2a-sdk[all] >= 0.
|
|
13
|
+
{{/if}}"a2a-sdk[all] >= 0.3.0, < 0.4.0",
|
|
14
14
|
"aws-opentelemetry-distro",
|
|
15
15
|
"bedrock-agentcore[a2a] >= 1.9.1",
|
|
16
16
|
"botocore[crt] >= 1.35.0",
|
|
@@ -15,8 +15,9 @@ dependencies = [
|
|
|
15
15
|
"fastapi >= 0.115.12",
|
|
16
16
|
"google-adk >= 1.16.0, < 2.0.0",
|
|
17
17
|
"google-genai >= 1.0.0, < 2.0.0",
|
|
18
|
-
|
|
19
|
-
"opentelemetry-
|
|
18
|
+
# 1.13.0 was yanked for broken imports.
|
|
19
|
+
"opentelemetry-resourcedetector-gcp >= 1.9.0a0, < 2.0.0, != 1.13.0",
|
|
20
|
+
"aws-opentelemetry-distro >= 0.17.0",
|
|
20
21
|
"uvicorn >= 0.34.3",
|
|
21
22
|
]
|
|
22
23
|
|
|
@@ -24,7 +24,8 @@ file defines a Starlette ASGI app with the AutoGen framework running within.
|
|
|
24
24
|
|
|
25
25
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Activate the environment with `source .venv/bin/activate` on macOS/Linux, `.venv\Scripts\activate.bat` in Windows
|
|
28
|
+
Command Prompt, or `.\.venv\Scripts\activate.ps1` in Windows PowerShell.
|
|
28
29
|
|
|
29
30
|
`agentcore dev` will start a local server on 0.0.0.0:8080.
|
|
30
31
|
|
|
@@ -24,7 +24,8 @@ file defines a Starlette ASGI app with the Google ADK framework running within.
|
|
|
24
24
|
|
|
25
25
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Activate the environment with `source .venv/bin/activate` on macOS/Linux, `.venv\Scripts\activate.bat` in Windows
|
|
28
|
+
Command Prompt, or `.\.venv\Scripts\activate.ps1` in Windows PowerShell.
|
|
28
29
|
|
|
29
30
|
`agentcore dev` will start a local server on 0.0.0.0:8080.
|
|
30
31
|
|
|
@@ -9,10 +9,11 @@ description = "AgentCore Runtime Application using Google ADK"
|
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
11
|
dependencies = [
|
|
12
|
-
"opentelemetry-distro",
|
|
13
|
-
"opentelemetry-exporter-otlp",
|
|
12
|
+
"aws-opentelemetry-distro >= 0.17.0",
|
|
14
13
|
"google-adk >= 1.35.0, < 2.0.0",
|
|
15
14
|
"google-genai >= 1.0.0, < 2.0.0",
|
|
15
|
+
# 1.13.0 was yanked for broken imports.
|
|
16
|
+
"opentelemetry-resourcedetector-gcp >= 1.9.0a0, < 2.0.0, != 1.13.0",
|
|
16
17
|
"bedrock-agentcore >= 1.0.3",
|
|
17
18
|
"botocore[crt] >= 1.35.0",
|
|
18
19
|
{{#if hasGateway}}{{#if (includes gatewayAuthTypes "AWS_IAM")}}"mcp-proxy-for-aws >= 1.1.0",
|
|
@@ -24,7 +24,8 @@ file defines a Starlette ASGI app with the LangChain/LangGraph framework running
|
|
|
24
24
|
|
|
25
25
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Activate the environment with `source .venv/bin/activate` on macOS/Linux, `.venv\Scripts\activate.bat` in Windows
|
|
28
|
+
Command Prompt, or `.\.venv\Scripts\activate.ps1` in Windows PowerShell.
|
|
28
29
|
|
|
29
30
|
`agentcore dev` will start a local server on 0.0.0.0:8080.
|
|
30
31
|
|
|
@@ -12,8 +12,8 @@ dependencies = [
|
|
|
12
12
|
"aws-opentelemetry-distro",
|
|
13
13
|
"opentelemetry-instrumentation-langchain >= 0.59.0",
|
|
14
14
|
"langgraph >= 1.0.2",
|
|
15
|
-
"mcp
|
|
16
|
-
"langchain-mcp-adapters >= 0.
|
|
15
|
+
"mcp ~= 1.24.0",
|
|
16
|
+
"langchain-mcp-adapters >= 0.3.1",
|
|
17
17
|
"langchain >= 1.0.3",
|
|
18
18
|
"bedrock-agentcore >= 1.8.0",
|
|
19
19
|
"botocore[crt] >= 1.35.0",
|
|
@@ -24,7 +24,8 @@ file defines a Starlette ASGI app with the OpenAI Agents SDK framework running w
|
|
|
24
24
|
|
|
25
25
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Activate the environment with `source .venv/bin/activate` on macOS/Linux, `.venv\Scripts\activate.bat` in Windows
|
|
28
|
+
Command Prompt, or `.\.venv\Scripts\activate.ps1` in Windows PowerShell.
|
|
28
29
|
|
|
29
30
|
`agentcore dev` will start a local server on 0.0.0.0:8080.
|
|
30
31
|
|
|
@@ -24,7 +24,8 @@ file defines a Starlette ASGI app with the chosen Agent framework SDK running wi
|
|
|
24
24
|
|
|
25
25
|
If installation was successful, a virtual environment is already created with dependencies installed.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Activate the environment with `source .venv/bin/activate` on macOS/Linux, `.venv\Scripts\activate.bat` in Windows
|
|
28
|
+
Command Prompt, or `.\.venv\Scripts\activate.ps1` in Windows PowerShell.
|
|
28
29
|
|
|
29
30
|
`agentcore dev` will start a local server on 0.0.0.0:8080.
|
|
30
31
|
|
|
@@ -14,7 +14,7 @@ dependencies = [
|
|
|
14
14
|
"bedrock-agentcore >= 1.9.1",
|
|
15
15
|
"botocore[crt] >= 1.35.0",
|
|
16
16
|
{{#if (eq modelProvider "Gemini")}}"google-genai >= 1.0.0",
|
|
17
|
-
{{/if}}"mcp
|
|
17
|
+
{{/if}}"mcp ~= 1.24.0",
|
|
18
18
|
{{#if (eq modelProvider "OpenAI")}}"openai >= 1.0.0",
|
|
19
19
|
{{/if}}{{#if (eq modelProvider "LiteLLM")}}"litellm >= 1.0.0",
|
|
20
20
|
{{/if}}{{#if bedrockMantle}}"openai >= 1.0.0",
|