Skip to content

feat: add A2A tool for invoking remote agents at runtime#761

Open
PopescuTudor wants to merge 1 commit intomainfrom
feature/a2a-tool
Open

feat: add A2A tool for invoking remote agents at runtime#761
PopescuTudor wants to merge 1 commit intomainfrom
feature/a2a-tool

Conversation

@PopescuTudor
Copy link
Copy Markdown
Collaborator

@PopescuTudor PopescuTudor commented Apr 9, 2026

Adds an A2A LangChain tool that enables low-code agents to invoke Remote A2A agents at runtime. When an agent definition includes an A2A resource ($resourceType: "a2a"), the tool factory now creates an A2aTool that sends messages through the AgentHub A2A proxy.

Two conversation persistence modes are supported:

  • Graph state (advancedPersistance: true): task_id/context_id stored in LangGraph's tools_storage
  • LLM passthrough (default): IDs included in tool schema so the LLM tracks conversation continuity

Uses the a2a-sdk Python client for A2A protocol communication, with lazy auth via UiPath Bearer token.

Development Package

  • Use uipath pack --nolock to get the latest dev build from this PR (requires version range).
  • Add this package as a dependency in your pyproject.toml:
[project]
dependencies = [
  # Exact version:
  "uipath-langchain==0.9.25.dev1007613980",

  # Any version from PR
  "uipath-langchain>=0.9.25.dev1007610000,<0.9.25.dev1007620000"
]

[[tool.uv.index]]
name = "testpypi"
url = "https://test.pypi.org/simple/"
publish-url = "https://test.pypi.org/legacy/"
explicit = true

[tool.uv.sources]
uipath-langchain = { index = "testpypi" }

[tool.uv]
override-dependencies = [
    "uipath-langchain>=0.9.25.dev1007610000,<0.9.25.dev1007620000",
]

@PopescuTudor PopescuTudor requested a review from radugheo April 9, 2026 08:34
@PopescuTudor PopescuTudor self-assigned this Apr 9, 2026
@PopescuTudor PopescuTudor force-pushed the feature/a2a-tool branch 2 times, most recently from 537fa6f to 133bad3 Compare April 9, 2026 09:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants