Skip to content

feat(ts#strands-agent,py#strands-agent): add A2A protocol support#539

Open
nx-plugin-for-aws wants to merge 1 commit intomainfrom
feat/a2a-support
Open

feat(ts#strands-agent,py#strands-agent): add A2A protocol support#539
nx-plugin-for-aws wants to merge 1 commit intomainfrom
feat/a2a-support

Conversation

@nx-plugin-for-aws
Copy link
Copy Markdown
Collaborator

Reason for this change

Addresses the feature request in #323 to add support for the Agent-to-Agent (A2A) protocol in the Strands Agent generators. A2A enables standardized inter-agent communication via Bedrock AgentCore Runtime.

Description of changes

  • Schema: Added protocol enum option (HTTP | A2A, default: HTTP) to both ts#strands-agent and py#strands-agent generator schemas
  • Infrastructure: The chosen protocol is passed through to CDK (ProtocolType.A2A) and Terraform (server_protocol = "A2A") infrastructure templates
  • Component metadata: Protocol is stored in project.json metadata for downstream consumption by connection generators
  • TypeScript A2A: When protocol=A2A, generates an index.ts entry point using A2AExpressServer from @strands-agents/sdk/a2a/express instead of tRPC/WebSocket
  • Python A2A: When protocol=A2A, generates a main.py using A2AServer from strands.multiagent.a2a instead of FastAPI
  • SDK versions: Updated @strands-agents/sdk to 1.0.0-rc.1 (adds A2A support for TypeScript) and strands-agents-tools to 0.3.0
  • Documentation: Updated both TypeScript and Python agent guide pages with protocol option documentation, A2A server examples, and file tree outputs for each protocol

Description of how you validated changes

  • All 1612 unit tests pass (including 8 new tests for A2A protocol support)
  • Build passes cleanly with no errors
  • Lint passes with no errors
  • End-to-end tested by linking compiled plugin to a test workspace and generating agents with both HTTP and A2A protocols for both TypeScript and Python
  • Verified template content, metadata, and serve commands are correct for both protocols

Issue # (if applicable)

Closes #323.

Checklist


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Mar 31, 2026

Codecov Report

❌ Patch coverage is 85.00000% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 89.31%. Comparing base (c152caa) to head (9fc22d0).

Files with missing lines Patch % Lines
...src/ts/strands-agent/react-connection/generator.ts 0.00% 1 Missing and 1 partial ⚠️
...ils/agent-core-constructs/agent-core-constructs.ts 50.00% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #539      +/-   ##
==========================================
- Coverage   89.35%   89.31%   -0.04%     
==========================================
  Files          94       94              
  Lines        3166     3183      +17     
  Branches      701      712      +11     
==========================================
+ Hits         2829     2843      +14     
- Misses        156      157       +1     
- Partials      181      183       +2     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions
Copy link
Copy Markdown
Contributor

📚 Documentation translations have been updated and committed (230d5f9) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx
docs/src/i18n/schema-translations.json

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 2, 2026

📚 Documentation translations have been updated and committed (26a5f7a) to this PR.

docs/src/content/docs/es/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/es/get_started/building-with-ai.mdx
docs/src/content/docs/es/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/es/guides/nx-generator.mdx
docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/es/guides/typescript-project.mdx
docs/src/content/docs/es/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/es/snippets/mcp/configuration-py.mdx
docs/src/content/docs/es/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/es/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/es/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/es/snippets/prerequisites.mdx
docs/src/content/docs/fr/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/fr/get_started/building-with-ai.mdx
docs/src/content/docs/fr/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/fr/guides/nx-generator.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/typescript-project.mdx
docs/src/content/docs/fr/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/fr/snippets/mcp/configuration-py.mdx
docs/src/content/docs/fr/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/fr/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/fr/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/fr/snippets/prerequisites.mdx
docs/src/content/docs/it/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/it/get_started/building-with-ai.mdx
docs/src/content/docs/it/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/it/guides/nx-generator.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/typescript-project.mdx
docs/src/content/docs/it/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/it/snippets/mcp/configuration-py.mdx
docs/src/content/docs/it/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/it/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/it/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/it/snippets/prerequisites.mdx
docs/src/content/docs/jp/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/jp/get_started/building-with-ai.mdx
docs/src/content/docs/jp/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/jp/guides/nx-generator.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/typescript-project.mdx
docs/src/content/docs/jp/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/jp/snippets/mcp/configuration-py.mdx
docs/src/content/docs/jp/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/jp/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/jp/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/jp/snippets/prerequisites.mdx
docs/src/content/docs/ko/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/ko/get_started/building-with-ai.mdx
docs/src/content/docs/ko/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/ko/guides/nx-generator.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/typescript-project.mdx
docs/src/content/docs/ko/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/ko/snippets/mcp/configuration-py.mdx
docs/src/content/docs/ko/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/ko/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/ko/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/ko/snippets/prerequisites.mdx
docs/src/content/docs/pt/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/pt/get_started/building-with-ai.mdx
docs/src/content/docs/pt/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/pt/guides/nx-generator.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/typescript-project.mdx
docs/src/content/docs/pt/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/pt/snippets/mcp/configuration-py.mdx
docs/src/content/docs/pt/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/pt/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/pt/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/pt/snippets/prerequisites.mdx
docs/src/content/docs/vi/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/vi/get_started/building-with-ai.mdx
docs/src/content/docs/vi/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/vi/guides/nx-generator.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/typescript-project.mdx
docs/src/content/docs/vi/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/vi/snippets/mcp/configuration-py.mdx
docs/src/content/docs/vi/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/vi/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/vi/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/vi/snippets/prerequisites.mdx
docs/src/content/docs/zh/blog/introducing-aws-nx-mcp.mdx
docs/src/content/docs/zh/get_started/building-with-ai.mdx
docs/src/content/docs/zh/get_started/tutorials/dungeon-game/overview.mdx
docs/src/content/docs/zh/guides/connection/react-ts-strands-agent.mdx
docs/src/content/docs/zh/guides/nx-generator.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/typescript-project.mdx
docs/src/content/docs/zh/snippets/mcp/assistant-docs.mdx
docs/src/content/docs/zh/snippets/mcp/configuration-py.mdx
docs/src/content/docs/zh/snippets/mcp/configuration-ts.mdx
docs/src/content/docs/zh/snippets/pdk-migration/example/02-migrate-website.mdx
docs/src/content/docs/zh/snippets/pdk-migration/faq/infrastructure-python-java.mdx
docs/src/content/docs/zh/snippets/prerequisites.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 2, 2026

📚 Documentation translations have been updated and committed (2da12c6) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 2, 2026

📚 Documentation translations have been updated and committed (5e7246c) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 5, 2026

📚 Documentation translations have been updated and committed (0889ec7) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 5, 2026

📚 Documentation translations have been updated and committed (b398991) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 5, 2026

📚 Documentation translations have been updated and committed (cd53fdb) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 5, 2026

📚 Documentation translations have been updated and committed (b49eddf) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 6, 2026

📚 Documentation translations have been updated and committed (c171383) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 6, 2026

📚 Documentation translations have been updated and committed (f2738e2) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 6, 2026

📚 Documentation translations have been updated and committed (867d85c) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 7, 2026

📚 Documentation translations have been updated and committed (af74810) to this PR.

docs/src/content/docs/es/guides/py-strands-agent.mdx
docs/src/content/docs/es/guides/ts-strands-agent.mdx
docs/src/content/docs/fr/guides/py-strands-agent.mdx
docs/src/content/docs/fr/guides/ts-strands-agent.mdx
docs/src/content/docs/it/guides/py-strands-agent.mdx
docs/src/content/docs/it/guides/ts-strands-agent.mdx
docs/src/content/docs/jp/guides/py-strands-agent.mdx
docs/src/content/docs/jp/guides/ts-strands-agent.mdx
docs/src/content/docs/ko/guides/py-strands-agent.mdx
docs/src/content/docs/ko/guides/ts-strands-agent.mdx
docs/src/content/docs/pt/guides/py-strands-agent.mdx
docs/src/content/docs/pt/guides/ts-strands-agent.mdx
docs/src/content/docs/vi/guides/py-strands-agent.mdx
docs/src/content/docs/vi/guides/ts-strands-agent.mdx
docs/src/content/docs/zh/guides/py-strands-agent.mdx
docs/src/content/docs/zh/guides/ts-strands-agent.mdx

Add a `protocol` option to the ts#strands-agent and py#strands-agent
generators, allowing users to choose between HTTP (default) and A2A
(Agent-to-Agent) protocol for their Strands Agents.

- Add `protocol` enum (HTTP/A2A) to both generator schemas
- Reorganize templates into common/http/a2a directories
- A2A servers use port 9000, HTTP agents use 8081+
- Python A2A uses A2AServer.to_fastapi_app() for hot-reload
- TS A2A uses A2AExpressServer.serve() in async main()
- Dockerfiles use EJS trim tags, EXPOSE 9000/8080 per protocol
- PORT env var in serve targets and main.py/index.ts
- Pass protocol to CDK/Terraform infrastructure (ProtocolType)
- Protocol stored in component metadata
- Add strands-agents[a2a], @a2a-js/sdk dependencies
- Update @strands-agents/sdk to 1.0.0-rc.1
- React connection throws for A2A target agents
- A2A agent in smoke tests
- A2A invocation docs for both Python and TypeScript

Closes #323
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AgentCore - A2A support

2 participants