Build agentic LLM apps with a modular Python framework
LangChain is an open-source framework for building agents and LLM-powered applications. It helps developers connect models, tools, and external systems into multi-step workflows.
Agenticness = how independently a tool can take action, scored across 9 dimensions. Scored independently by David Kooi, Skylark Creations — see full rubric → Last re-evaluated 8 November 2026.
Is this your tool? Claim this listing to manage your content and analytics.
What gets decided in an agent built with LangChain's create_agent
Mapped from the code in langchain-ai/langchain.
In the ordinary tool loop of an agent built with LangChain's create_agent, the model decides when it is finished: a reply that asks for no tool ends the run, and nothing checks that reply. By default nothing trims the conversation; call limits and summarization are middleware the developer adds.
Read the full map: the judgments it shows and who holds each oneIs the agent finished with the task?
Decided by: The AI modelThe model decides: in the ordinary tool loop, a reply that asks for no tool ends the run and is the answer, unchecked. Structured output adds its own exits.
Does a tool's result end the run without the model reading it?
Decided by: Plain codeWhen every client-side tool in that batch is marked return_direct by the developer, the run ends on the tool output and the model does not see it; the tool's status is not looked at.
When the provider's native structured answer fails to parse, is the model asked again?
Decided by: Plain codeNo: a native structured answer that is not valid JSON or does not match the schema raises straight away, and the run fails unless a middleware around the model call catches it.
How many steps may one agent run take before it is stopped?
Decided by: Plain codecreate_agent sets a limit of 9,999 agent steps; the run is then stopped with a GraphRecursionError and no answer, even if it finished exactly on the last step. The caller can change the number per run with config={"recursion_limit": n}.
Three problems the map found
In an agent with tools, a reply with only invalid_tool_calls ends the run
Already trackedIn an agent with a tools step, if a reply's calls are all recorded as invalid_tool_calls (on ChatOpenAI's chat-completions path, arguments that are not valid JSON) and its tool_calls list is empty, the run ends there, without retrying them and without an exception. On that route, the model is told about such a call only on a later invocation that carries that history, and only if the call has an ID.
An invalid structured answer beside another tool call can end the run without a structured response
Already trackedWith a tool-based response format and the default error handling, one reply can hold a structured answer that fails to parse and also an ordinary tool call. The ordinary tool can then run and the run can end with no structured response and no exception, before the model reads the retry message.
A long tool loop can turn summarized history into a fixed placeholder
Already trackedBy default, summarization middleware tries to trim the older messages to a 4,000-token window that starts at a human message. If nothing is left, as can happen in a long run of tool calls after one request, the summary model is not called and the older messages are replaced by the text "Previous conversation was too long to summarize."
Not checked: This card was taken from the published map of LangChain, which read langchain-ai/langchain and langchain-ai/langgraph at one commit each; its code pointers cover the langchain repository only, it covers only decisions shown there, it did not look at code outside the map's scope (an agent built with create_agent, its opt-in middleware and the LangGraph runtime) or at the 3 decisions left out of that edition, and no LangChain code was run to make it.
Mapped by agent-ops-patterns (open source) from langchain-ai/langchain at commit efebcf5. Mapped Nov 2, 2026. Last updated Nov 8, 2026.
What's happened with LangChain lately
- Can LangChain4j and Ollama build a web research agent that stays current without leaving local models behind?News
The tutorial shows how to build a web research AI agent with Lanchain4j and Ollama. It starts from the appeal of running local models, including faster experiments, offline development, and no API bill. For those tracking AI agent tooling, this signals continued demand for workflows that mix local inference with live web search. The key tension is how the agent gets fresh information when the model itself only knows what it learned at training time.
via Java Code Geeks
- Score changeRubric upgrade v3_0 → v3.1: score 8/32 → 9/368 → 9/36(+1)
Rubric upgrade: agenticness v3.0 (8 dims, /32) → v3.1 (9 dims, /36). Adds Dim 9 (Operator Sovereignty), splits Dim 6 into 6a/6b lenses, tightens Dim 4 autonomous-retry distinction. Not a product change — score shift reflects new dimension + recalibrated rubric, not a change in the tool. Fanout suppressed.
See the news that prompted this
News mentions sourced from our news feed; score changes from periodic re-evaluations.
Ask about LangChain
Get answers based on LangChain's actual documentation
Try asking:
About
LangChain is an open-source Python framework for building agents and LLM-powered applications. It is aimed primarily at developers and teams that want to assemble model calls, tools, retrieval, and integrations into custom workflows rather than use a finished end-user app.
LangChain is strongest when you need flexibility and a large integration surface. It is useful for prototyping and production development, but it is not a turnkey autonomous agent product; you still need to design the workflow, choose models, and...
Proposes and executes multi-step plans with your approval.
Dimension Breakdown
Categories
Ask about LangChain
Try asking:
- Free / open source — full functionality available at no cost.
When LangChain changes its pricing, we catch it the next morning
We recrawl every tool in this directory daily. AI Insider is the 3-minute brief on what actually changed — pricing, features, score moves on our 36-point rubric — often before any press coverage. Sent daily. Skipped when nothing happened.