mirror of
https://github.com/langchain-ai/langgraph.git
synced 2026-08-17 21:25:46 +02:00
6d36f6ab68
Bumps the minor-and-patch group in /libs/cli/js-examples with 8 updates: | Package | From | To | | --- | --- | --- | | [@langchain/core](https://github.com/langchain-ai/langchainjs) | `1.1.42` | `1.1.48` | | [@langchain/langgraph](https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core) | `1.2.9` | `1.3.3` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.59.1` | `8.60.1` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.59.1` | `8.60.1` | | [eslint](https://github.com/eslint/eslint) | `10.2.1` | `10.4.1` | | [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | `5.5.5` | `5.5.6` | | [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.3.0` | `30.4.2` | | [ts-jest](https://github.com/kulshekhar/ts-jest) | `29.4.9` | `29.4.11` | Updates `@langchain/core` from 1.1.42 to 1.1.48 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langchainjs/releases">@langchain/core's releases</a>.</em></p> <blockquote> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.48</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10832">#10832</a> <a href="https://github.com/langchain-ai/langchainjs/commit/1b24369a970ad6f56f1f428027f48601f87e62eb"><code>1b24369</code></a> Thanks <a href="https://github.com/info-arnav"><code>@info-arnav</code></a>! - fix(core, openrouter): make CJS default re-exports callable</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10666">#10666</a> <a href="https://github.com/langchain-ai/langchainjs/commit/2bb55b053f49f89e81e3252a7af08e86d71ddd95"><code>2bb55b0</code></a> Thanks <a href="https://github.com/hnustwjj"><code>@hnustwjj</code></a>! - feat(openrouter): surface reasoning content as v1 standard content blocks</p> <p><code>convertOpenRouterResponseToBaseMessage</code> and <code>convertOpenRouterDeltaToBaseMessageChunk</code> now copy OpenRouter's <code>reasoning</code> (flat string) and <code>reasoning_details</code> (structured array) fields onto <code>additional_kwargs.reasoning_content</code> / <code>additional_kwargs.reasoning_details</code>. A new <code>ChatOpenRouterTranslator</code> is registered in <code>@langchain/core</code> under the <code>"openrouter"</code> provider key so <code>AIMessage.contentBlocks</code> emits standard <code>{type: "reasoning"}</code> blocks alongside text and tool calls.</p> <p>Previously, reasoning text returned by reasoning-capable models routed through OpenRouter (DeepSeek R1, Minimax M2, Claude extended thinking, o-series, etc.) was silently dropped: only the <code>reasoning_tokens</code> count was preserved via <code>usage_metadata</code>. Consumers using standard content blocks (including the frontend agent UI patterns shown in the docs) could not display the model's chain of thought.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10918">#10918</a> <a href="https://github.com/langchain-ai/langchainjs/commit/3999fab55870c6eea22d6d90c08aa472f9b2fac3"><code>3999fab</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(openai): stream custom tool calls through Responses API chunks</p> </li> </ul> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.47</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10906">#10906</a> <a href="https://github.com/langchain-ai/langchainjs/commit/f61b3450f275831e47e69c08899b4a2b67b4bdb3"><code>f61b345</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - feat(core): add uuid v6 utility support</p> <p>Add <code>v6</code> UUID generation support to <code>@langchain/core/utils/uuid</code> by vendoring the upstream uuidjs <code>v6</code> implementation and its <code>v1ToV6</code> helper, exporting <code>v6</code> from the UUID utils index, and adding tests for deterministic generation, buffer/offset behavior, validation/versioning, and ordering.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10872">#10872</a> <a href="https://github.com/langchain-ai/langchainjs/commit/a64007997a4940f51bba3c1c83dae89d1ccfb692"><code>a640079</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - chore(deps): remove redundant <code>@types/uuid</code> declarations</p> <p>Remove <code>@types/uuid</code> from package manifests that rely on <code>@langchain/core/utils/uuid</code> or do not require uuid type stubs directly, and refresh the lockfile entries accordingly.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10792">#10792</a> <a href="https://github.com/langchain-ai/langchainjs/commit/3682268cd1844b2573b01f07bee367e21cb7bdc7"><code>3682268</code></a> Thanks <a href="https://github.com/Genmin"><code>@Genmin</code></a>! - fix(core): apply v1 message casting after implicit streaming aggregation</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10901">#10901</a> <a href="https://github.com/langchain-ai/langchainjs/commit/f26fc4a6f461d6d0f86d59bd00197ad510432c4a"><code>f26fc4a</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(testing): share fakeModel invocation state across bindTools instances</p> </li> </ul> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.46</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10847">#10847</a> <a href="https://github.com/langchain-ai/langchainjs/commit/1659e7d36e31e315c890fa98f43db887f7a2d52b"><code>1659e7d</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - chore(core): reduce transitive dependency exposure and tighten release hygiene</p> <p>Remove direct runtime dependencies on <code>ansi-styles</code>, <code>camelcase</code>, and <code>decamelize</code> by inlining equivalent logic in core internals, and enable npm provenance in the release workflow.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10790">#10790</a> <a href="https://github.com/langchain-ai/langchainjs/commit/ef78bc6a21f9a8808ba95c98db2023f0a6b51bcc"><code>ef78bc6</code></a> Thanks <a href="https://github.com/Genmin"><code>@Genmin</code></a>! - fix(core): keep different content block types separate when merging chunks</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/langchain-ai/langchainjs/commits/@langchain/core@1.1.48">compare view</a></li> </ul> </details> <br /> Updates `@langchain/langgraph` from 1.2.9 to 1.3.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraphjs/releases">@langchain/langgraph's releases</a>.</em></p> <blockquote> <h2><code>@langchain/langgraph</code><a href="https://github.com/1"><code>@1</code></a>.3.3</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2037">#2037</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/9eb478ffeeda2ad9c3bff2cd0f0ac602b0a79f4f"><code>9eb478f</code></a> Thanks <a href="https://github.com/pawel-twardziak"><code>@pawel-twardziak</code></a>! - Decouple <code>ContextType</code> generic from <code>configurable</code> in <code>PregelOptions</code> so that providing a custom context type no longer incorrectly narrows the configurable parameter.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2457">#2457</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/91a54947155b3fad3234001e63e20099a63ed999"><code>91a5494</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(langgraph): pass context with stateful RemoteGraph runs</p> <p>Pop <code>thread_id</code> from run <code>config.configurable</code> and forward <code>context</code> to the SDK so checkpointed remote runs accept user context without a 400 from ambiguous parameters. Closes <a href="https://redirect.github.com/langchain-ai/langgraphjs/issues/1922">#1922</a>.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1988">#1988</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/6d4bf927e5cf3744034205528bcd09964949d6d7"><code>6d4bf92</code></a> Thanks <a href="https://github.com/Axadali"><code>@Axadali</code></a>! - Fix race condition in IterableReadableWritableStream.push() that caused ERR_INVALID_STATE errors when streaming with multiple parallel nodes and aborting the stream.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2409">#2409</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/101b70aa8d7ec26ec1654ef814689b832f1e17f3"><code>101b70a</code></a> Thanks <a href="https://github.com/pragnyanramtha"><code>@pragnyanramtha</code></a>! - Preserve non-plain objects passed through <code>Send</code> and <code>Command</code> argument deserialization.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2344">#2344</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/0125920a2c4a87dc1d66aaf541ea16146f8cf842"><code>0125920</code></a> Thanks <a href="https://github.com/apps/dependabot"><code>@dependabot</code></a>! - chore(deps): bump uuid to 14.0.0 and keep checkpoint ID ordering stable</p> <p>Bump <code>uuid</code> from 10.x/13.x to 14.0.0 across packages. Starting with uuid 11, <code>v6({ clockseq })</code> no longer advances the sub-millisecond time counter when an explicit <code>clockseq</code> is passed, so checkpoint IDs created within the same millisecond were ordered only by <code>clockseq</code>. Since checkpoint IDs are sorted lexicographically, this broke ordering — most visibly for the negative <code>clockseq</code> used by the first ("input") checkpoint, which sorted as the newest.</p> <p><code>uuid6()</code> now maintains its own monotonic <code>(msecs, nsecs)</code> clock (mirroring uuid 10's internal v1 behavior) so the time component is always strictly increasing and checkpoint ordering no longer depends on the <code>clockseq</code> value. <code>emptyCheckpoint()</code> also uses a non-negative <code>clockseq</code>.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/863b555346de02c2c0be290e877b7d260a3f8856"><code>863b555</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/0125920a2c4a87dc1d66aaf541ea16146f8cf842"><code>0125920</code></a>]:</p> <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.9.11</li> <li><code>@langchain/langgraph-checkpoint</code><a href="https://github.com/1"><code>@1</code></a>.0.4</li> </ul> </li> </ul> <h2><code>@langchain/langgraph</code><a href="https://github.com/1"><code>@1</code></a>.3.2</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2415">#2415</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/9d3c9dd3182059f9eca9fd9b14d8f7466b4338c4"><code>9d3c9dd</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - Move <code>@langchain/core</code> from a runtime dependency back to a required peer dependency so installing the SDK alone no longer pulls in <code>@langchain/core</code> (and <code>js-tiktoken</code>, etc.). Consumers that use streaming or message coercion must install <code>@langchain/core</code> explicitly or via <code>@langchain/langgraph</code>.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/9d3c9dd3182059f9eca9fd9b14d8f7466b4338c4"><code>9d3c9dd</code></a>]:</p> <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.9.4</li> </ul> </li> </ul> <h2><code>@langchain/langgraph-checkpoint-mongodb</code><a href="https://github.com/1"><code>@1</code></a>.3.2</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2186">#2186</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/26c2e325f435a2c061d6b78a7bd6af089cb1e0e6"><code>26c2e32</code></a> Thanks <a href="https://github.com/jackjin1997"><code>@jackjin1997</code></a>! - fix: metadata filter in list() now works by querying a plain JSON shadow copy instead of the serialized binary blob</li> </ul> <h2><code>@langchain/langgraph</code><a href="https://github.com/1"><code>@1</code></a>.3.1</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2339">#2339</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/2b88da497b2c6f8fbf8f4d901578a198824eb32f"><code>2b88da4</code></a> Thanks <a href="https://github.com/vigneshpatel14"><code>@vigneshpatel14</code></a>! - fix(langgraph): surface structuredResponse parse failures in createReactAgent</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2406">#2406</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/e54ae901e119ccf81653b90d5a0db2485027a5a9"><code>e54ae90</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(langgraph-core): keep tool results out of v3 message streams</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2376">#2376</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/4fd1e9f5720361a86a386a286ad8fcc824643280"><code>4fd1e9f</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix(langgraph): prefer configurable assistant and graph IDs for runtime server info</p> <p>Update runtime <code>serverInfo</code> construction to read <code>assistant_id</code> and <code>graph_id</code> from <code>config.configurable</code> first, with fallback to <code>config.metadata</code> for compatibility. Also expands <code>execution_info</code> tests to cover configurable sourcing, precedence, and metadata fallback behavior.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraphjs/blob/main/libs/langgraph-core/CHANGELOG.md">@langchain/langgraph's changelog</a>.</em></p> <blockquote> <h2>1.3.3</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2037">#2037</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/9eb478ffeeda2ad9c3bff2cd0f0ac602b0a79f4f"><code>9eb478f</code></a> Thanks <a href="https://github.com/pawel-twardziak"><code>@pawel-twardziak</code></a>! - Decouple <code>ContextType</code> generic from <code>configurable</code> in <code>PregelOptions</code> so that providing a custom context type no longer incorrectly narrows the configurable parameter.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2457">#2457</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/91a54947155b3fad3234001e63e20099a63ed999"><code>91a5494</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(langgraph): pass context with stateful RemoteGraph runs</p> <p>Pop <code>thread_id</code> from run <code>config.configurable</code> and forward <code>context</code> to the SDK so checkpointed remote runs accept user context without a 400 from ambiguous parameters. Closes <a href="https://redirect.github.com/langchain-ai/langgraphjs/issues/1922">#1922</a>.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1988">#1988</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/6d4bf927e5cf3744034205528bcd09964949d6d7"><code>6d4bf92</code></a> Thanks <a href="https://github.com/Axadali"><code>@Axadali</code></a>! - Fix race condition in IterableReadableWritableStream.push() that caused ERR_INVALID_STATE errors when streaming with multiple parallel nodes and aborting the stream.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2409">#2409</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/101b70aa8d7ec26ec1654ef814689b832f1e17f3"><code>101b70a</code></a> Thanks <a href="https://github.com/pragnyanramtha"><code>@pragnyanramtha</code></a>! - Preserve non-plain objects passed through <code>Send</code> and <code>Command</code> argument deserialization.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2344">#2344</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/0125920a2c4a87dc1d66aaf541ea16146f8cf842"><code>0125920</code></a> Thanks <a href="https://github.com/apps/dependabot"><code>@dependabot</code></a>! - chore(deps): bump uuid to 14.0.0 and keep checkpoint ID ordering stable</p> <p>Bump <code>uuid</code> from 10.x/13.x to 14.0.0 across packages. Starting with uuid 11, <code>v6({ clockseq })</code> no longer advances the sub-millisecond time counter when an explicit <code>clockseq</code> is passed, so checkpoint IDs created within the same millisecond were ordered only by <code>clockseq</code>. Since checkpoint IDs are sorted lexicographically, this broke ordering — most visibly for the negative <code>clockseq</code> used by the first ("input") checkpoint, which sorted as the newest.</p> <p><code>uuid6()</code> now maintains its own monotonic <code>(msecs, nsecs)</code> clock (mirroring uuid 10's internal v1 behavior) so the time component is always strictly increasing and checkpoint ordering no longer depends on the <code>clockseq</code> value. <code>emptyCheckpoint()</code> also uses a non-negative <code>clockseq</code>.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/863b555346de02c2c0be290e877b7d260a3f8856"><code>863b555</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/0125920a2c4a87dc1d66aaf541ea16146f8cf842"><code>0125920</code></a>]:</p> <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.9.11</li> <li><code>@langchain/langgraph-checkpoint</code><a href="https://github.com/1"><code>@1</code></a>.0.4</li> </ul> </li> </ul> <h2>1.3.2</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2415">#2415</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/9d3c9dd3182059f9eca9fd9b14d8f7466b4338c4"><code>9d3c9dd</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - Move <code>@langchain/core</code> from a runtime dependency back to a required peer dependency so installing the SDK alone no longer pulls in <code>@langchain/core</code> (and <code>js-tiktoken</code>, etc.). Consumers that use streaming or message coercion must install <code>@langchain/core</code> explicitly or via <code>@langchain/langgraph</code>.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/9d3c9dd3182059f9eca9fd9b14d8f7466b4338c4"><code>9d3c9dd</code></a>]:</p> <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.9.4</li> </ul> </li> </ul> <h2>1.3.1</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2339">#2339</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/2b88da497b2c6f8fbf8f4d901578a198824eb32f"><code>2b88da4</code></a> Thanks <a href="https://github.com/vigneshpatel14"><code>@vigneshpatel14</code></a>! - fix(langgraph): surface structuredResponse parse failures in createReactAgent</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2406">#2406</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/e54ae901e119ccf81653b90d5a0db2485027a5a9"><code>e54ae90</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(langgraph-core): keep tool results out of v3 message streams</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/2376">#2376</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/4fd1e9f5720361a86a386a286ad8fcc824643280"><code>4fd1e9f</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix(langgraph): prefer configurable assistant and graph IDs for runtime server info</p> <p>Update runtime <code>serverInfo</code> construction to read <code>assistant_id</code> and <code>graph_id</code> from <code>config.configurable</code> first, with fallback to <code>config.metadata</code> for compatibility. Also expands <code>execution_info</code> tests to cover configurable sourcing, precedence, and metadata fallback behavior.</p> </li> <li> <p>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/44746b1a3b5b49737542b120b9e45d6f94181113"><code>44746b1</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/4cc6491844f21ed0fc737eaef8498133daa877f7"><code>4cc6491</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/ae8af2d75aef9a7bbd930d221d1ce03e7fbb90ad"><code>ae8af2d</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/01dd0462ed300dee5a9a51f229e6c401315f070c"><code>01dd046</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/2ad1aa48c6a3f45340b4833e6de555fdc7348d15"><code>2ad1aa4</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/75e651b9cff1a1e39ad6513b8a5e9b565b9ad7fe"><code>75e651b</code></a>, <a href="https://github.com/langchain-ai/langgraphjs/commit/f1d651ae14ca178f4a915ac853ba9b439cd55ba3"><code>f1d651a</code></a>]:</p> <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.9.3</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/d2ca90f8e2cfbba547a9645d81e7c5340d1e7ebf"><code>d2ca90f</code></a> chore: version packages (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/2453">#2453</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/101b70aa8d7ec26ec1654ef814689b832f1e17f3"><code>101b70a</code></a> fix: preserve non-plain Send args (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/2409">#2409</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/0125920a2c4a87dc1d66aaf541ea16146f8cf842"><code>0125920</code></a> chore(deps): bump uuid from 10.0.0 to 14.0.0 (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/2344">#2344</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/91a54947155b3fad3234001e63e20099a63ed999"><code>91a5494</code></a> fix(langgraph): pass context with stateful RemoteGraph runs (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/2457">#2457</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/6d4bf927e5cf3744034205528bcd09964949d6d7"><code>6d4bf92</code></a> fix(langgraph): StreamMessagesHandler throws "Controller is already closed" e...</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/c5dcbd176dba4d7b76b8e2c27b4bc0ed0a9109ac"><code>c5dcbd1</code></a> fix(langgraph): handle null thread checkpoint in RemoteGraph.getState (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/2331">#2331</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/9eb478ffeeda2ad9c3bff2cd0f0ac602b0a79f4f"><code>9eb478f</code></a> fix(langgraph): decouple ContextType from configurable in PregelOptions (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/2037">#2037</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/4d12fe0233aa1283c1d7aa1790a7015df9856f66"><code>4d12fe0</code></a> docs: more readme cleanups</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/517500356dc4430ac6b90e17fdc5a1d9e8a90834"><code>5175003</code></a> docs: update readme further</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/4c5fea793da83a85bc73f93d11d98b25f4012dbf"><code>4c5fea7</code></a> fix(docs): update links in readme</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langgraphjs/commits/@langchain/langgraph@1.3.3/libs/langgraph-core">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/eslint-plugin` from 8.59.1 to 8.60.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases">@typescript-eslint/eslint-plugin's releases</a>.</em></p> <blockquote> <h2>v8.60.1</h2> <h2>8.60.1 (2026-06-01)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> respect ECMAScript line terminators in ts-comment rules (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352">#12352</a>)</li> <li><strong>eslint-plugin:</strong> [no-shadow] correct rule to match ESLint v10 handling (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182">#12182</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>lumir</li> <li>Nevette Bailey <a href="https://github.com/nevette-bailey"><code>@nevette-bailey</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1">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> <h2>v8.60.0</h2> <h2>8.60.0 (2026-05-25)</h2> <h3>🚀 Features</h3> <ul> <li><strong>rule-tester:</strong> added updates of RuleTester from upstream (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291">#12291</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li>playground TS version selector is not working (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326">#12326</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325">#12325</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>Vinccool96</li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0">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> <h2>v8.59.4</h2> <h2>8.59.4 (2026-05-18)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-floating-promises] stack overflow when using recursive types (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294">#12294</a>)</li> <li><strong>project-service:</strong> throw error cause in <code>getParsedConfigFileFromTSServer</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321">#12321</a>)</li> <li><strong>typescript-eslint:</strong> export Compatible* types from typescript-eslint to resolve pnpm TS error (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340">#12340</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </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">@typescript-eslint/eslint-plugin's changelog</a>.</em></p> <blockquote> <h2>8.60.1 (2026-06-01)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-shadow] correct rule to match ESLint v10 handling (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182">#12182</a>)</li> <li><strong>eslint-plugin:</strong> respect ECMAScript line terminators in ts-comment rules (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352">#12352</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>lumir</li> <li>Nevette Bailey <a href="https://github.com/nevette-bailey"><code>@nevette-bailey</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1">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> <h2>8.60.0 (2026-05-25)</h2> <p>This was a version bump only for eslint-plugin 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.60.0">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> <h2>8.59.4 (2026-05-18)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-floating-promises] stack overflow when using recursive types (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294">#12294</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4">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> <h2>8.59.3 (2026-05-11)</h2> <p>This was a version bump only for eslint-plugin 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.59.3">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> <h2>8.59.2 (2026-05-04)</h2> <h3>🩹 Fixes</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68"><code>4f84a69</code></a> chore(release): publish 8.60.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391"><code>598af56</code></a> docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964"><code>1849b53</code></a> chore: typecheck using tsgo (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139">#12139</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216"><code>5341d59</code></a> chore: fix lint issues (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369">#12369</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576"><code>f525814</code></a> fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1">#1</a>...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450"><code>2df540c</code></a> chore(eslint-plugin): defer type checks to improve rules performance (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296">#12296</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243"><code>1ab4284</code></a> fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1"><code>2f49df5</code></a> docs: update references to <code>@stylistic/eslint-plugin</code> rules in documentation ...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58"><code>f891c29</code></a> chore(release): publish 8.60.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2"><code>ca6ca14</code></a> chore(release): publish 8.59.4</li> <li>Additional commits viewable in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/parser` from 8.59.1 to 8.60.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases">@typescript-eslint/parser's releases</a>.</em></p> <blockquote> <h2>v8.60.1</h2> <h2>8.60.1 (2026-06-01)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> respect ECMAScript line terminators in ts-comment rules (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352">#12352</a>)</li> <li><strong>eslint-plugin:</strong> [no-shadow] correct rule to match ESLint v10 handling (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182">#12182</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>lumir</li> <li>Nevette Bailey <a href="https://github.com/nevette-bailey"><code>@nevette-bailey</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1">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> <h2>v8.60.0</h2> <h2>8.60.0 (2026-05-25)</h2> <h3>🚀 Features</h3> <ul> <li><strong>rule-tester:</strong> added updates of RuleTester from upstream (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291">#12291</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li>playground TS version selector is not working (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326">#12326</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325">#12325</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>Vinccool96</li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0">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> <h2>v8.59.4</h2> <h2>8.59.4 (2026-05-18)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-floating-promises] stack overflow when using recursive types (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294">#12294</a>)</li> <li><strong>project-service:</strong> throw error cause in <code>getParsedConfigFileFromTSServer</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321">#12321</a>)</li> <li><strong>typescript-eslint:</strong> export Compatible* types from typescript-eslint to resolve pnpm TS error (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340">#12340</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md">@typescript-eslint/parser's changelog</a>.</em></p> <blockquote> <h2>8.60.1 (2026-06-01)</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.60.1">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> <h2>8.60.0 (2026-05-25)</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.60.0">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> <h2>8.59.4 (2026-05-18)</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.59.4">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> <h2>8.59.3 (2026-05-11)</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.59.3">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> <h2>8.59.2 (2026-05-04)</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.59.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/4f84a697aedc436559c3ae09b5b357d98b448d68"><code>4f84a69</code></a> chore(release): publish 8.60.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964"><code>1849b53</code></a> chore: typecheck using tsgo (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139">#12139</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58"><code>f891c29</code></a> chore(release): publish 8.60.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2"><code>ca6ca14</code></a> chore(release): publish 8.59.4</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383"><code>48e13c0</code></a> chore(release): publish 8.59.3</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648"><code>44f9625</code></a> chore(deps): update vitest monorepo to v4.1.5 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307">#12307</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333"><code>2ec35f1</code></a> chore(release): publish 8.59.2</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser">compare view</a></li> </ul> </details> <br /> Updates `eslint` from 10.2.1 to 10.4.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/eslint/eslint/releases">eslint's releases</a>.</em></p> <blockquote> <h2>v10.4.1</h2> <h2>Bug Fixes</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec"><code>e557467</code></a> fix: update <code>@eslint/plugin-kit</code> version to 0.7.2 (<a href="https://redirect.github.com/eslint/eslint/issues/20930">#20930</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd"><code>d4ce898</code></a> fix: propagate failures from delegated commands (<a href="https://redirect.github.com/eslint/eslint/issues/20917">#20917</a>) (Minh Vu)</li> <li><a href="https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf"><code>f4f3507</code></a> fix: prefer-arrow-callback invalid autofix with newline after <code>async</code> (<a href="https://redirect.github.com/eslint/eslint/issues/20916">#20916</a>) (kuldeep kumar)</li> <li><a href="https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85"><code>c5bc78b</code></a> fix: false positive for reference in <code>finally</code> block (<a href="https://redirect.github.com/eslint/eslint/issues/20655">#20655</a>) (Tanuj Kanti)</li> <li><a href="https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59"><code>27538c0</code></a> fix: add missing CodePath and CodePathSegment types (<a href="https://redirect.github.com/eslint/eslint/issues/20853">#20853</a>) (Pixel998)</li> </ul> <h2>Documentation</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30"><code>61b0add</code></a> docs: remove deprecated rule from related rules of <code>max-params</code> (<a href="https://redirect.github.com/eslint/eslint/issues/20921">#20921</a>) (Tanuj Kanti)</li> <li><a href="https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43"><code>305d5b9</code></a> docs: remove deprecated rules from related rules section (<a href="https://redirect.github.com/eslint/eslint/issues/20911">#20911</a>) (Tanuj Kanti)</li> <li><a href="https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c"><code>49b0202</code></a> docs: fix <code>display: none</code> of ad (<a href="https://redirect.github.com/eslint/eslint/issues/20901">#20901</a>) (Tanuj Kanti)</li> <li><a href="https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44"><code>9067f94</code></a> docs: switch build to Node.js 24 (<a href="https://redirect.github.com/eslint/eslint/issues/20893">#20893</a>) (Milos Djermanovic)</li> <li><a href="https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86"><code>c91b041</code></a> docs: Update README (GitHub Actions Bot)</li> <li><a href="https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870"><code>e349265</code></a> docs: clarify semver strings in rule deprecation objects (<a href="https://redirect.github.com/eslint/eslint/issues/20885">#20885</a>) (Milos Djermanovic)</li> </ul> <h2>Chores</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584"><code>b0e466b</code></a> test: add <code>data</code> property to invalid tests cases for rules (<a href="https://redirect.github.com/eslint/eslint/issues/20924">#20924</a>) (Tanuj Kanti)</li> <li><a href="https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46"><code>f78838b</code></a> test: add CodePath type coverage (<a href="https://redirect.github.com/eslint/eslint/issues/20904">#20904</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9"><code>1daa4bd</code></a> chore: update <code>eslint-plugin-eslint-comments</code> test data to latest commit (<a href="https://redirect.github.com/eslint/eslint/issues/20922">#20922</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c"><code>002942c</code></a> ci: declare contents:read on update-readme workflow (<a href="https://redirect.github.com/eslint/eslint/issues/20919">#20919</a>) (Arpit Jain)</li> <li><a href="https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b"><code>64bca24</code></a> chore: update ecosystem plugins (<a href="https://redirect.github.com/eslint/eslint/issues/20912">#20912</a>) (ESLint Bot)</li> <li><a href="https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56"><code>6d7c832</code></a> chore: ignore fflate updates in renovate (<a href="https://redirect.github.com/eslint/eslint/issues/20908">#20908</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30"><code>b2c8638</code></a> ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (<a href="https://redirect.github.com/eslint/eslint/issues/20889">#20889</a>) (dependabot[bot])</li> <li><a href="https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5"><code>a9b8d7f</code></a> chore: increase maxBuffer for ecosystem tests (<a href="https://redirect.github.com/eslint/eslint/issues/20881">#20881</a>) (sethamus)</li> <li><a href="https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396"><code>b702ead</code></a> chore: update ecosystem update PR settings (<a href="https://redirect.github.com/eslint/eslint/issues/20884">#20884</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81"><code>507f60e</code></a> chore: update ecosystem plugins (<a href="https://redirect.github.com/eslint/eslint/issues/20882">#20882</a>) (ESLint Bot)</li> <li><a href="https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d"><code>92f5c5b</code></a> test: add unit test for message-count (<a href="https://redirect.github.com/eslint/eslint/issues/20878">#20878</a>) (kuldeep kumar)</li> <li><a href="https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e"><code>df32108</code></a> chore: add <code>@eslint/markdown</code> and typescript-eslint ecosystem tests (<a href="https://redirect.github.com/eslint/eslint/issues/20837">#20837</a>) (sethamus)</li> <li><a href="https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f"><code>327f91d</code></a> chore: use includeIgnoreFile internally (<a href="https://redirect.github.com/eslint/eslint/issues/20876">#20876</a>) (Kirk Waiblinger)</li> <li><a href="https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3"><code>f0dc4bd</code></a> chore: pin fflate@0.8.2 (<a href="https://redirect.github.com/eslint/eslint/issues/20877">#20877</a>) (Milos Djermanovic)</li> <li><a href="https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca"><code>0f4bd25</code></a> ci: run Discord alert for ecosystem test failures (<a href="https://redirect.github.com/eslint/eslint/issues/20873">#20873</a>) (Copilot)</li> </ul> <h2>v10.4.0</h2> <h2>Features</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf"><code>1a45ec5</code></a> feat: check sequence expressions in <code>for-direction</code> (<a href="https://redirect.github.com/eslint/eslint/issues/20701">#20701</a>) (kuldeep kumar)</li> <li><a href="https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b"><code>450040b</code></a> feat: add <code>includeIgnoreFile()</code> to <code>eslint/config</code> (<a href="https://redirect.github.com/eslint/eslint/issues/20735">#20735</a>) (Kirk Waiblinger)</li> </ul> <h2>Bug Fixes</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be"><code>544c0c3</code></a> fix: escape code path DOT labels in debug output (<a href="https://redirect.github.com/eslint/eslint/issues/20866">#20866</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c"><code>6799431</code></a> fix: update dependency <code>@eslint/config-helpers</code> to ^0.6.0 (<a href="https://redirect.github.com/eslint/eslint/issues/20850">#20850</a>) (renovate[bot])</li> <li><a href="https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd"><code>f078fef</code></a> fix: handle non-array deprecated rule replacements (<a href="https://redirect.github.com/eslint/eslint/issues/20825">#20825</a>) (xbinaryx)</li> </ul> <h2>Documentation</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f"><code>7e52a71</code></a> docs: add mention of <code>@eslint-react/eslint-plugin</code> (<a href="https://redirect.github.com/eslint/eslint/issues/20869">#20869</a>) (Pavel)</li> <li><a href="https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08"><code>db3468b</code></a> docs: tweak wording around ambiguous CJS-vs-ESM config (<a href="https://redirect.github.com/eslint/eslint/issues/20865">#20865</a>) (Kirk Waiblinger)</li> <li><a href="https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a"><code>9084664</code></a> docs: Update README (GitHub Actions Bot)</li> <li><a href="https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f"><code>9cc7387</code></a> docs: Update README (GitHub Actions Bot)</li> <li><a href="https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5"><code>3d7b548</code></a> docs: Update README (GitHub Actions Bot)</li> <li><a href="https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb"><code>191ec3c</code></a> docs: Update README (GitHub Actions Bot)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2"><code>4a3d15a</code></a> 10.4.1</li> <li><a href="https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8"><code>43e7e2b</code></a> Build: changelog update for 10.4.1</li> <li><a href="https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec"><code>e557467</code></a> fix: update <code>@eslint/plugin-kit</code> version to 0.7.2 (<a href="https://redirect.github.com/eslint/eslint/issues/20930">#20930</a>)</li> <li><a href="https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584"><code>b0e466b</code></a> test: add <code>data</code> property to invalid tests cases for rules (<a href="https://redirect.github.com/eslint/eslint/issues/20924">#20924</a>)</li> <li><a href="https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd"><code>d4ce898</code></a> fix: propagate failures from delegated commands (<a href="https://redirect.github.com/eslint/eslint/issues/20917">#20917</a>)</li> <li><a href="https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf"><code>f4f3507</code></a> fix: prefer-arrow-callback invalid autofix with newline after <code>async</code> (<a href="https://redirect.github.com/eslint/eslint/issues/20916">#20916</a>)</li> <li><a href="https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46"><code>f78838b</code></a> test: add CodePath type coverage (<a href="https://redirect.github.com/eslint/eslint/issues/20904">#20904</a>)</li> <li><a href="https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30"><code>61b0add</code></a> docs: remove deprecated rule from related rules of <code>max-params</code> (<a href="https://redirect.github.com/eslint/eslint/issues/20921">#20921</a>)</li> <li><a href="https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9"><code>1daa4bd</code></a> chore: update <code>eslint-plugin-eslint-comments</code> test data to latest commit (<a href="https://redirect.github.com/eslint/eslint/issues/20">#20</a>...</li> <li><a href="https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c"><code>002942c</code></a> ci: declare contents:read on update-readme workflow (<a href="https://redirect.github.com/eslint/eslint/issues/20919">#20919</a>)</li> <li>Additional commits viewable in <a href="https://github.com/eslint/eslint/compare/v10.2.1...v10.4.1">compare view</a></li> </ul> </details> <br /> Updates `eslint-plugin-prettier` from 5.5.5 to 5.5.6 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/prettier/eslint-plugin-prettier/releases">eslint-plugin-prettier's releases</a>.</em></p> <blockquote> <h2>v5.5.6</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/791">#791</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b"><code>b5c96a3</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - chore: bump all (dev)Dependencies</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md">eslint-plugin-prettier's changelog</a>.</em></p> <blockquote> <h2>5.5.6</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/prettier/eslint-plugin-prettier/pull/791">#791</a> <a href="https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b"><code>b5c96a3</code></a> Thanks <a href="https://github.com/JounQin"><code>@JounQin</code></a>! - chore: bump all (dev)Dependencies</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/4f33ea5a503c6cdbda93424ebd13188a46a1a890"><code>4f33ea5</code></a> chore: release eslint-plugin-prettier (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/792">#792</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/4745b54882a9011704764070a28aaaf0504efc92"><code>4745b54</code></a> ci: declare workflow-level contents: read on 2 workflows (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/790">#790</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b"><code>b5c96a3</code></a> chore: bump all (dev)Dependencies (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/791">#791</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/e867680b2c1cf3748322c8c802690e7cfb78e233"><code>e867680</code></a> chore(deps): update all dependencies (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/766">#766</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/e8e2f7f1dcad747f1d43168ee09956b512956593"><code>e8e2f7f</code></a> chore: testing eslint v10 (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/779">#779</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/ca076d95aaf69aaf9c95abcc1692f8269197f248"><code>ca076d9</code></a> chore: update dev dependencies (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/780">#780</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/42e636951f8d53d169b1f8c2b7e7dfd792711113"><code>42e6369</code></a> build(deps): Bump the actions group with 2 updates (<a href="https://redirect.github.com/prettier/eslint-plugin-prettier/issues/778">#778</a>)</li> <li><a href="https://github.com/prettier/eslint-plugin-prettier/commit/53ff2143c03609e75b60e0e33d56c8089f0b364f"><code>53ff214</code></a> Remove empty NPM_TOKEN from release.yml</li> <li>See full diff in <a href="https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.5...v5.5.6">compare view</a></li> </ul> </details> <br /> Updates `jest` from 30.3.0 to 30.4.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/jestjs/jest/releases">jest's releases</a>.</em></p> <blockquote> <h2>v30.4.2</h2> <h1>Fixes</h1> <ul> <li><code>[jest-runtime]</code> Fix named imports from CJS modules whose <code>module.exports</code> is a function with own-property exports (<a href="https://redirect.github.com/jestjs/jest/pull/16150">#16150</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/jestjs/jest/compare/v30.4.1...v30.4.2">https://github.com/jestjs/jest/compare/v30.4.1...v30.4.2</a></p> <h2>v30.4.1</h2> <h2>Features</h2> <ul> <li><code>[jest-config, jest-core, jest-runner, jest-schemas, jest-types]</code> Allow custom runner configuration options via tuple format <code>['runner-path', {options}]</code> (<a href="https://redirect.github.com/jestjs/jest/pull/16141">#16141</a>)</li> </ul> <h2>Fixes</h2> <ul> <li><code>[jest-runtime]</code> Align CJS-from-ESM default export with Node: <code>module.exports</code> is always the ESM default, <code>__esModule</code> unwrapping is no longer applied (<a href="https://redirect.github.com/jestjs/jest/pull/16143">#16143</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1">https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1</a></p> <h2>v30.4.0</h2> <p>Big release! 😀</p> <p>Main feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work <code>require(esm)</code> module is now supported on Node 24.9+ (still requires <code>--experimental-vm-modules</code> like before).</p> <p>In addition we now support fake timers for the recently released <code>Temporal</code> API in Node v26.</p> <p>React 19 is also supported properly in <code>pretty-format</code>, meaning snapshots of React components now work like they should.</p> <p>Due to all the changes, there might be regressions that snuck in. Please report them!</p> <p>Full list of changes below</p> <h2>Features</h2> <ul> <li><code>[babel-jest]</code> Support collecting coverage from <code>.mts</code>, <code>.cts</code> (and other) files (<a href="https://redirect.github.com/jestjs/jest/pull/15994">#15994</a>)</li> <li><code>[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]</code> Add <code>--collect-tests</code> flag to discover and list tests without executing them (<a href="https://redirect.github.com/jestjs/jest/pull/16006">#16006</a>)</li> <li><code>[jest-config, jest-runner, jest-worker]</code> Add <code>workerGracefulExitTimeout</code> config option to control how long workers are given to exit before being force-killed (<a href="https://redirect.github.com/jestjs/jest/pull/15984">#15984</a>)</li> <li><code>[jest-config]</code> Add support for <code>jest.config.mts</code> as a valid configuration file (<a href="https://redirect.github.com/jestjs/jest/pull/16005">#16005</a>)</li> <li><code>[jest-config, jest-core, jest-reporters, jest-runner]</code> <code>verbose</code> and <code>silent</code> can now be set per-project; the project-level value overrides the global value for that project's tests (<a href="https://redirect.github.com/jestjs/jest/pull/16133">#16133</a>)</li> <li><code>[@jest/fake-timers]</code> Accept <code>Temporal.Duration</code> in <code>jest.advanceTimersByTime()</code> and <code>jest.advanceTimersByTimeAsync()</code> (<a href="https://redirect.github.com/jestjs/jest/pull/16128">#16128</a>)</li> <li><code>[@jest/fake-timers]</code> Accept <code>Temporal.Instant</code> and <code>Temporal.ZonedDateTime</code> in <code>jest.setSystemTime()</code> and <code>useFakeTimers({now})</code> (<a href="https://redirect.github.com/jestjs/jest/pull/16128">#16128</a>)</li> <li><code>[@jest/fake-timers]</code> Support faking <code>Temporal.Now.*</code> (<a href="https://redirect.github.com/jestjs/jest/pull/16131">#16131</a>)</li> <li><code>[jest-mock]</code> Add <code>clearMocksOnScope(scope)</code> on <code>ModuleMocker</code> for clearing every mock function exposed on a scope object (<a href="https://redirect.github.com/jestjs/jest/pull/16088">#16088</a>)</li> <li><code>[jest-resolve]</code> Add <code>canResolveSync()</code> on <code>Resolver</code> so callers can detect when a user-configured resolver only exports an <code>async</code> hook (<a href="https://redirect.github.com/jestjs/jest/pull/16064">#16064</a>)</li> <li><code>[jest-runtime]</code> Use synchronous <code>evaluate()</code> for ES modules without top-level <code>await</code> on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (<a href="https://redirect.github.com/jestjs/jest/pull/16062">#16062</a>)</li> <li><code>[jest-runtime]</code> Support <code>require()</code> of ES modules on Node v24.9+ (<a href="https://redirect.github.com/jestjs/jest/pull/16074">#16074</a>)</li> <li><code>[jest-runtime]</code> Validate TC39 import attributes (<code>with { type: 'json' }</code>) on ESM imports (<a href="https://redirect.github.com/jestjs/jest/pull/16127">#16127</a>)</li> <li><code>[@jest/transform]</code> Add <code>canTransformSync(filename)</code> on <code>ScriptTransformer</code> so callers can pick the sync vs async transform path (<a href="https://redirect.github.com/jestjs/jest/pull/16062">#16062</a>)</li> <li><code>[jest-util]</code> Add <code>isError</code> helper (<a href="https://redirect.github.com/jestjs/jest/pull/16076">#16076</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/jestjs/jest/blob/main/CHANGELOG.md">jest's changelog</a>.</em></p> <blockquote> <h2>30.4.2</h2> <h3>Fixes</h3> <ul> <li><code>[jest-runtime]</code> Fix named imports from CJS modules whose <code>module.exports</code> is a function with own-property exports (<a href="https://redirect.github.com/jestjs/jest/pull/16150">#16150</a>)</li> </ul> <h2>30.4.1</h2> <h3>Features</h3> <ul> <li><code>[jest-config, jest-core, jest-runner, jest-schemas, jest-types]</code> Allow custom runner configuration options via tuple format <code>['runner-path', {options}]</code> (<a href="https://redirect.github.com/jestjs/jest/pull/16141">#16141</a>)</li> </ul> <h3>Fixes</h3> <ul> <li><code>[jest-runtime]</code> Align CJS-from-ESM default export with Node: <code>module.exports</code> is always the ESM default, <code>__esModule</code> unwrapping is no longer applied (<a href="https://redirect.github.com/jestjs/jest/pull/16143">#16143</a>)</li> </ul> <h2>30.4.0</h2> <h3>Features</h3> <ul> <li><code>[babel-jest]</code> Support collecting coverage from <code>.mts</code>, <code>.cts</code> (and other) files (<a href="https://redirect.github.com/jestjs/jest/pull/15994">#15994</a>)</li> <li><code>[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]</code> Add <code>--collect-tests</code> flag to discover and list tests without executing them (<a href="https://redirect.github.com/jestjs/jest/pull/16006">#16006</a>)</li> <li><code>[jest-config, jest-runner, jest-worker]</code> Add <code>workerGracefulExitTimeout</code> config option to control how long workers are given to exit before being force-killed (<a href="https://redirect.github.com/jestjs/jest/pull/15984">#15984</a>)</li> <li><code>[jest-config]</code> Add support for <code>jest.config.mts</code> as a valid configuration file (<a href="https://redirect.github.com/jestjs/jest/pull/16005">#16005</a>)</li> <li><code>[jest-config, jest-core, jest-r... _Description has been truncated_ Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@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.