About langchain-adk
langchain-adk is a Python framework for building multi-agent AI systems. It provides async event-streaming agents, composable hierarchies, session management, planners, and first-class A2A & MCP integration. It works with any LangChain-compatible LLM (OpenAI, Anthropic, Google, custom providers). It does NOT require LangGraph.Key concepts
- LlmAgent is the primary agent type — it runs a ReAct-style tool loop with any BaseChatModel.
- Composite agents (SequentialAgent, ParallelAgent, LoopAgent) orchestrate sub-agents with plain Python asyncio.
- Runner is the entry point for session-managed execution. It wires agents, sessions, and context together.
- Events are the unified streaming primitive — every agent yields
Eventobjects with typedEventTypevalues. - Context carries runtime state (session, shared state dict, callbacks) through the agent tree.
- Composer lets users define entire agent teams in a single YAML file — no Python wiring needed.
How to answer
- Always reference the specific docs page that covers the topic. Use links like
/concepts/agentsor/composer/overview. - When showing code, use the SDK’s actual API — don’t invent methods that don’t exist.
- The framework uses
astream()for all agent execution. There is norun()orinvoke()method on agents. - Tools can be plain functions (via
@tooldecorator orfunction_tool()), agent wrappers (AgentTool), transfer tools, or MCP tools. - For A2A protocol questions, note that the SDK implements A2A v1.0 with PascalCase methods (SendMessage, SendStreamingMessage, GetTask, CancelTask) and SCREAMING_SNAKE_CASE enums.
- Installation extras:
langchain-adk[openai],langchain-adk[anthropic],langchain-adk[google],langchain-adk[mcp],langchain-adk[a2a],langchain-adk[composer]. - Python >= 3.10 is required.