LangChain 1.0.0a7 debuts dynamic system prompt middleware, improved HITL patterns, and PEP 604 union support in tool node error handlers.
$ git clone --branch langchain==1.0.0a7 https://github.com/langchain-ai/langchain.git # already have the repo? check out this version: $ git checkout langchain==1.0.0a7
create_agent to inject a dynamic system prompt at runtime based on request context.from langchain.agents import create_agent
agent = create_agent(
model=llm,
tools=[search_tool],
middleware=[dynamic_system_prompt_middleware],
) Union[] for cleaner, modern Python.from langchain.agents import create_agent
from langchain_core.messages import ToolMessage
def handle_errors(e: ValueError | KeyError) -> ToolMessage:
return ToolMessage(content=str(e), tool_call_id="")
agent = create_agent(model=llm, tools=[my_tool], tool_node_error_handler=handle_errors) - ›Adds
create_agent(formerlycreate_react_agent) with middleware support via themiddlewareparameter, enabling pre/post processing around agent execution. - ›Adds dynamic system prompt middleware, allowing system prompts to be resolved at runtime within the
create_agentgraph. - ›Supports PEP 604 (
|union) syntax in tool node error handlers, so handlers can be typed asExcTypeA | ExcTypeBinstead ofUnion[ExcTypeA, ExcTypeB]. - ›Introduces improved Human-in-the-Loop (HITL) interrupt patterns for agentic workflows.
- ›Adds
stuffandmap-reducedocument chains back to the v1 package.
+1 moreshow less
- ›Drops Python 3.9 support; minimum supported version is now Python 3.10.
- !
create_react_agenthas been renamed tocreate_agent; any code importing or callingcreate_react_agentfromlangchainwill break. - !Python 3.9 is no longer supported; upgrading requires Python 3.10 or higher.