mirror of
https://github.com/langchain-ai/langgraph.git
synced 2026-08-31 12:19:58 +02:00
Bumps the minor-and-patch group in /libs/cli/js-examples with 3 updates: [@langchain/core](https://github.com/langchain-ai/langchainjs), [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@langchain/core` from 1.1.35 to 1.1.36 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases"><code>@langchain/core</code>'s releases</a>.</em></p> <blockquote> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.36</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10512">#10512</a> <a href="https://github.com/langchain-ai/langchainjs/commit/bbbfea185c0777ae06df2b24a1a84f941d499c2a"><code>bbbfea1</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix(core): fix streaming chunk merge for providers without <code>index</code> on tool call deltas</p> <p><code>_mergeLists</code> now falls back to <code>id</code>-based matching when items don't have an <code>index</code> field. Previously, providers routing through the OpenAI-compatible API without <code>index</code> on streaming tool call deltas (e.g. Anthropic models via <code>ChatOpenAI</code>) would accumulate hundreds of individual raw deltas in <code>tool_call_chunks</code> and <code>additional_kwargs.tool_calls</code> instead of merging them into a single entry per tool call. In a real trace with 3 concurrent subagents, this caused a single AI message to balloon from ~4KB to 146KB -- with 826 uncollapsed streaming fragments carrying a few bytes each.</p> <p>Also fixes <code>SystemMessage.concat()</code> which used <code>...this</code> to spread all instance properties (including <code>lc_kwargs</code>) into the new constructor, causing each chained <code>concat()</code> call to nest one level deeper. After 7 middleware <code>concat()</code> calls (typical in deepagents), a 7KB system prompt would serialize to 81KB due to content being duplicated at every nesting level.</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d2a0c2d5b5a23a60791d01c98874c53f555ed5d8"><code>d2a0c2d</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10508">#10508</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/bbbfea185c0777ae06df2b24a1a84f941d499c2a"><code>bbbfea1</code></a> fix(core): fix _mergeLists id-only fallback and SystemMessage.concat lc_kwarg...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/478652c01cdae0703415febd250b6c2656b36410"><code>478652c</code></a> fix(openai): detect DeepSeek context overflow errors as ContextOverfl… (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10481">#10481</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/3d35eb112b46b36aea80cebe0147e315d03a1d8e"><code>3d35eb1</code></a> fix(langchain): add "aws" alias to MODEL_PROVIDER_CONFIG for Bedrock hub prom...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/52e501b44ee54ace1889ec9149a3617c4409db51"><code>52e501b</code></a> fix(openai): guard JSON.parse in streaming json_schema when text is empty (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/1">#1</a>...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/ae4122f9523904423504e5a92c134c625977261d"><code>ae4122f</code></a> Align Zod Importation For 'libs/langchain/src/agents/nodes/utils.ts' (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10258">#10258</a>)</li> <li>See full diff in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/core@1.1.35...@langchain/core@1.1.36">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/eslint-plugin` from 8.57.1 to 8.57.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/eslint-plugin</code>'s releases</a>.</em></p> <blockquote> <h2>v8.57.2</h2> <h2>8.57.2 (2026-03-23)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [prefer-optional-chain] remove dangling closing parenthesis (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11865">#11865</a>)</li> <li><strong>eslint-plugin:</strong> [array-type] ignore Array and ReadonlyArray without type arguments (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11971">#11971</a>)</li> <li><strong>eslint-plugin:</strong> [no-restricted-types] flag banned generics in extends or implements (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12120">#12120</a>)</li> <li><strong>eslint-plugin:</strong> [no-unsafe-return] false positive on unwrapping generic (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12125">#12125</a>)</li> <li><strong>eslint-plugin:</strong> [no-unsafe-return] false positive on unwrapping generic (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12125">#12125</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] skip reporting false positives for unresolved type parameters (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12127">#12127</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-readonly-parameter-types] preserve type alias infomation (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11954">#11954</a>)</li> <li><strong>typescript-estree:</strong> skip createIsolatedProgram fallback for projectService (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12066">#12066</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12065">#12065</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>Konv Suu</li> <li>mdm317</li> <li>Newton Yuan <a href="https://github.com/NewtonYuan"><code>@NewtonYuan</code></a></li> <li>RyoheiYamamoto</li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Tamashoo <a href="https://github.com/Tamashoo"><code>@Tamashoo</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@typescript-eslint/eslint-plugin</code>'s changelog</a>.</em></p> <blockquote> <h2>8.57.2 (2026-03-23)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [prefer-readonly-parameter-types] preserve type alias infomation (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11954">#11954</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] skip reporting false positives for unresolved type parameters (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12127">#12127</a>)</li> <li><strong>eslint-plugin:</strong> [no-unsafe-return] false positive on unwrapping generic (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12125">#12125</a>)</li> <li><strong>eslint-plugin:</strong> [no-restricted-types] flag banned generics in extends or implements (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12120">#12120</a>)</li> <li><strong>eslint-plugin:</strong> [array-type] ignore Array and ReadonlyArray without type arguments (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11971">#11971</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-optional-chain] remove dangling closing parenthesis (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11865">#11865</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>Konv Suu</li> <li>mdm317</li> <li>Newton Yuan <a href="https://github.com/NewtonYuan"><code>@NewtonYuan</code></a></li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Tamashoo <a href="https://github.com/Tamashoo"><code>@Tamashoo</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f"><code>be4d54d</code></a> chore(release): publish 8.57.2</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f68c8e4baca096281b458ccb6ff16ca6c5a1d199"><code>f68c8e4</code></a> fix(eslint-plugin): [prefer-readonly-parameter-types] preserve type alias inf...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/73acd2e6833c4757d2743a8dbb979154d31a1e98"><code>73acd2e</code></a> fix(eslint-plugin): [no-useless-default-assignment] skip reporting false posi...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/3d21482030e4fd220f466cea7036e07695277364"><code>3d21482</code></a> fix(eslint-plugin): [no-unsafe-return] false positive on unwrapping generic (...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/e128548b50573ebe3904662222e05be63970fc32"><code>e128548</code></a> fix(eslint-plugin): [no-restricted-types] flag banned generics in extends or ...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2b7f63f9cdf91dc216678f9a0d1ffe1aaf2ff0af"><code>2b7f63f</code></a> chore(eslint-plugin): correct tsutils.isTypeFlag usage post-merge</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/65175cdfb564218a785e0b63056eee3b113d287f"><code>65175cd</code></a> fix(eslint-plugin): [array-type] ignore Array and ReadonlyArray without type ...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/9c9ab5e8a37a2db49bde7255337f64d1140ee640"><code>9c9ab5e</code></a> feat(eslint-plugin): [no-unnecessary-type-arguments] report inferred required...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/42a1c89c89e7fe1c13962b2e41cb78611ad16d41"><code>42a1c89</code></a> fix(eslint-plugin): [prefer-optional-chain] remove dangling closing parenthes...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/71855ff116a074e1ee5e2d804cf5cf493ee49e98"><code>71855ff</code></a> docs(eslint-plugin): [no-unnecessary-condition] add link to TS handbook (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12131">#12131</a>)</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.2/packages/eslint-plugin">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/parser` from 8.57.1 to 8.57.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/parser</code>'s releases</a>.</em></p> <blockquote> <h2>v8.57.2</h2> <h2>8.57.2 (2026-03-23)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [prefer-optional-chain] remove dangling closing parenthesis (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11865">#11865</a>)</li> <li><strong>eslint-plugin:</strong> [array-type] ignore Array and ReadonlyArray without type arguments (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11971">#11971</a>)</li> <li><strong>eslint-plugin:</strong> [no-restricted-types] flag banned generics in extends or implements (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12120">#12120</a>)</li> <li><strong>eslint-plugin:</strong> [no-unsafe-return] false positive on unwrapping generic (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12125">#12125</a>)</li> <li><strong>eslint-plugin:</strong> [no-unsafe-return] false positive on unwrapping generic (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12125">#12125</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] skip reporting false positives for unresolved type parameters (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12127">#12127</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-readonly-parameter-types] preserve type alias infomation (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11954">#11954</a>)</li> <li><strong>typescript-estree:</strong> skip createIsolatedProgram fallback for projectService (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12066">#12066</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12065">#12065</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>Konv Suu</li> <li>mdm317</li> <li>Newton Yuan <a href="https://github.com/NewtonYuan"><code>@NewtonYuan</code></a></li> <li>RyoheiYamamoto</li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Tamashoo <a href="https://github.com/Tamashoo"><code>@Tamashoo</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@typescript-eslint/parser</code>'s changelog</a>.</em></p> <blockquote> <h2>8.57.2 (2026-03-23)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f"><code>be4d54d</code></a> chore(release): publish 8.57.2</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.2/packages/parser">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kennedy <65985482+jkennedyvz@users.noreply.github.com>
LangGraph CLI
The official command-line interface for LangGraph, providing tools to create, develop, and deploy LangGraph applications.
Installation
Install via pip:
pip install langgraph-cli
For development mode with hot reloading:
pip install "langgraph-cli[inmem]"
Commands
langgraph new 🌱
Create a new LangGraph project from a template
langgraph new [PATH] --template TEMPLATE_NAME
langgraph dev 🏃♀️
Run LangGraph API server in development mode with hot reloading
langgraph dev [OPTIONS]
--host TEXT Host to bind to (default: 127.0.0.1)
--port INTEGER Port to bind to (default: 2024)
--no-reload Disable auto-reload
--debug-port INTEGER Enable remote debugging
--no-browser Skip opening browser window
-c, --config FILE Config file path (default: langgraph.json)
langgraph up 🚀
Launch LangGraph API server in Docker
langgraph up [OPTIONS]
-p, --port INTEGER Port to expose (default: 8123)
--wait Wait for services to start
--watch Restart on file changes
--verbose Show detailed logs
-c, --config FILE Config file path
-d, --docker-compose Additional services file
langgraph build
Build a Docker image for your LangGraph application
langgraph build -t IMAGE_TAG [OPTIONS]
--platform TEXT Target platforms (e.g., linux/amd64,linux/arm64)
--pull / --no-pull Use latest/local base image
-c, --config FILE Config file path
langgraph dockerfile
Generate a Dockerfile for custom deployments
langgraph dockerfile SAVE_PATH [OPTIONS]
-c, --config FILE Config file path
Configuration
The CLI uses a langgraph.json configuration file with these key settings:
{
"dependencies": ["langchain_openai", "./your_package"], // Required: Package dependencies
"graphs": {
"my_graph": "./your_package/file.py:graph" // Required: Graph definitions
},
"env": "./.env", // Optional: Environment variables
"python_version": "3.11", // Optional: Python version (3.11/3.12)
"pip_config_file": "./pip.conf", // Optional: pip configuration
"dockerfile_lines": [] // Optional: Additional Dockerfile commands
}
See the full documentation for detailed configuration options.
Development
To develop the CLI itself:
- Clone the repository
- Navigate to the CLI directory:
cd libs/cli - Install development dependencies:
uv pip install - Make your changes to the CLI code
- Test your changes:
# Run CLI commands directly uv run langgraph --help # Or use the examples cd examples uv pip install uv run langgraph dev # or other commands
License
This project is licensed under the terms specified in the repository's LICENSE file.