Bumps the all-dependencies group in /libs/cli/js-examples with 17 updates: | Package | From | To | | --- | --- | --- | | [@langchain/core](https://github.com/langchain-ai/langchainjs) | `0.3.2` | `1.1.24` | | [@langchain/langgraph](https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core) | `0.2.67` | `1.1.4` | | [@eslint/eslintrc](https://github.com/eslint/eslintrc) | `3.1.0` | `3.3.3` | | [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.9.1` | `10.0.1` | | [@tsconfig/recommended](https://github.com/tsconfig/bases/tree/HEAD/bases) | `1.0.7` | `1.0.13` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `5.62.0` | `8.55.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `5.62.0` | `8.55.0` | | [dotenv](https://github.com/motdotla/dotenv) | `16.4.5` | `17.3.1` | | [eslint](https://github.com/eslint/eslint) | `8.57.0` | `10.0.0` | | [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) | `8.10.0` | `10.1.8` | | [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) | `2.29.1` | `2.32.0` | | [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | `4.2.1` | `5.5.5` | | [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `29.7.0` | `30.2.0` | | [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) | `29.5.12` | `30.0.0` | | [prettier](https://github.com/prettier/prettier) | `3.3.3` | `3.8.1` | | [ts-jest](https://github.com/kulshekhar/ts-jest) | `29.2.4` | `29.4.6` | | [typescript](https://github.com/microsoft/TypeScript) | `5.5.4` | `5.9.3` | Updates `@langchain/core` from 0.3.2 to 1.1.24 <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.24</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9978">#9978</a> <a href="https://github.com/langchain-ai/langchainjs/commit/70a440085b4bc2d036726ed12d9dc7841e914061"><code>70a4400</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(core): fix web_search_call and file_search_call contentBlocks for OpenAI Responses API</li> </ul> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.22</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9995">#9995</a> <a href="https://github.com/langchain-ai/langchainjs/commit/8f166b159343ae6fd0d6d44c0835ab56c0b153f4"><code>8f166b1</code></a> Thanks <a href="https://github.com/kaigritun"><code>@kaigritun</code></a>! - fix(core): skip empty text blocks in ChatOpenAI contentBlocks</li> </ul> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.21</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9990">#9990</a> <a href="https://github.com/langchain-ai/langchainjs/commit/d5e3db0d01ab321ec70a875805b2f74aefdadf9d"><code>d5e3db0</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - feat(core): Add SSRF protection module (<code>@langchain/core/utils/ssrf</code>) with utilities for validating URLs against private IPs, cloud metadata endpoints, and localhost.</p> <p>fix(community): Harden <code>RecursiveUrlLoader</code> against SSRF attacks by integrating <code>validateSafeUrl</code> and replacing string-based URL comparison with origin-based <code>isSameOrigin</code> from the shared SSRF module.</p> </li> </ul> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.19</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9905">#9905</a> <a href="https://github.com/langchain-ai/langchainjs/commit/41bfea51cf119573a3b956ee782d2731fe71c681"><code>41bfea5</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - fix(classic/community/core): avoid long lived abort signals</li> </ul> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.18</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9900">#9900</a> <a href="https://github.com/langchain-ai/langchainjs/commit/a9b50597186002221aaa4585246e569fa44c27c8"><code>a9b5059</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix(core): update method signatures to use <code>Partial<CallOptions></code> for options parameters</p> <p>Updated <code>invoke</code>, <code>stream</code>, <code>generate</code>, and <code>generatePrompt</code> method signatures across <code>Runnable</code>, <code>BaseChatModel</code>, and <code>BaseLLM</code> to correctly accept <code>Partial<CallOptions></code> instead of full <code>CallOptions</code>. This aligns the implementation with the <code>RunnableInterface</code> specification and allows users to pass partial options (e.g., <code>{ signal: abortedSignal }</code>) without TypeScript errors.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9900">#9900</a> <a href="https://github.com/langchain-ai/langchainjs/commit/a9b50597186002221aaa4585246e569fa44c27c8"><code>a9b5059</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - Improved abort signal handling for chat models:</p> <ul> <li>Added <code>ModelAbortError</code> class in <code>@langchain/core/errors</code> that contains partial output when a model invocation is aborted mid-stream</li> <li><code>invoke()</code> now throws <code>ModelAbortError</code> with accumulated <code>partialOutput</code> when aborted during streaming (when using streaming callback handlers)</li> <li><code>stream()</code> throws a regular <code>AbortError</code> when aborted (since chunks are already yielded to the caller)</li> <li>All provider implementations now properly check and propagate abort signals in both <code>_generate()</code> and <code>_streamResponseChunks()</code> methods</li> <li>Added standard tests for abort signal behavior</li> </ul> </li> </ul> <h2><code>@langchain/core</code><a href="https://github.com/1"><code>@1</code></a>.1.16</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9830">#9830</a> <a href="https://github.com/langchain-ai/langchainjs/commit/70387a144464539d65a546c8130cf51dfad025a1"><code>70387a1</code></a> Thanks <a href="https://github.com/bracesproul"><code>@bracesproul</code></a>! - fix: More undefined null errors and tests</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9679">#9679</a> <a href="https://github.com/langchain-ai/langchainjs/commit/a7c6ec51ab9baa186ab5ebf815599c08f5c7e8ab"><code>a7c6ec5</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - feat(openai): elevate OpenAI image generation outputs to proper image content blocks</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9817">#9817</a> <a href="https://github.com/langchain-ai/langchainjs/commit/5e045435a783fdae44bc9a43e01a8e5eb7100db2"><code>5e04543</code></a> Thanks <a href="https://github.com/Ashx098"><code>@Ashx098</code></a>! - read error.status when response.status is absent to avoid retrying OpenAI SDK 4xx</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9819">#9819</a> <a href="https://github.com/langchain-ai/langchainjs/commit/40b446762445575844610ee528abc77c247b2c43"><code>40b4467</code></a> Thanks <a href="https://github.com/MrDockal"><code>@MrDockal</code></a>! - Tool call content returns compacted json</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/9815">#9815</a> <a href="https://github.com/langchain-ai/langchainjs/commit/17e30bd7f4c7bdf87c9c30304b3b9e121cc1fbbc"><code>17e30bd</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix(core): respect tracingEnabled=false from RunTree when env tracing is enabled</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/0eed408d8b005564197809e1e8366ee336364371"><code>0eed408</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10012">#10012</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/70a440085b4bc2d036726ed12d9dc7841e914061"><code>70a4400</code></a> fix(core): fix web_search_call and file_search_call contentBlocks for OpenAI ...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/bf6eac40179f87da18fd122b4efc2ee48cd44b6c"><code>bf6eac4</code></a> fix(langchain): fix structured output on opus (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10010">#10010</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/2d05e3af944e4c325d912b0eb404cb9db6d696a6"><code>2d05e3a</code></a> fix(google): use tsdown (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10011">#10011</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d686aec0fa044df65fd4a4ee8cf24c2d931f67fc"><code>d686aec</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/9999">#9999</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/295687448772af89b35d9f2a446344f9e1de0e18"><code>2956874</code></a> feat(google): add model profiles (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10009">#10009</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/5283513740ff93063f9c1eaa583365f590ec5994"><code>5283513</code></a> fix(langchain): re-export missing interface (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10008">#10008</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d1365a125fc9d0d17120d923957841a33ba160cf"><code>d1365a1</code></a> fix: map mcp resource link content blocks to langchain url content block (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10">#10</a>...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/35d54fb1a7cee8f22c1bac7f03cf63e4b19b4333"><code>35d54fb</code></a> chore(google): use core caret resolution (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10007">#10007</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/885771766f256eb66638c74d3c8925cc34c58e77"><code>8857717</code></a> chore(deps): bump langsmith from 0.5.0 to 0.5.1 (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10006">#10006</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/0.3.2...@langchain/core@1.1.24">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@langchain/core</code> since your current version.</p> </details> <br /> Updates `@langchain/langgraph` from 0.2.67 to 1.1.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langgraphjs/releases"><code>@langchain/langgraph</code>'s releases</a>.</em></p> <blockquote> <h2><code>@langchain/langgraph-checkpoint-mongodb</code><a href="https://github.com/1"><code>@1</code></a>.1.4</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1853">#1853</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/a84c1ff18289653ff4715bd0db4ac3d06600556e"><code>a84c1ff</code></a> Thanks <a href="https://github.com/christian-bromann"><code>@christian-bromann</code></a>! - retry release: Updates the checkpoint-mongodb to append client metadata</li> </ul> <h2><code>@langchain/langgraph</code><a href="https://github.com/1"><code>@1</code></a>.1.4</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/8d5c2d688d330012638d8f34ce20a454600ebc1b"><code>8d5c2d6</code></a>]: <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.6.0</li> </ul> </li> </ul> <h2><code>@langchain/langgraph</code><a href="https://github.com/1"><code>@1</code></a>.1.3</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1932">#1932</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/0cda1f3b78a86e7809b7db15a7ff0ea00ee1ecd8"><code>0cda1f3</code></a> Thanks <a href="https://github.com/samecrowder"><code>@samecrowder</code></a>! - fix: preserve <code>langgraph_type</code> metadata for LangSmith Studio tab detection</p> <ul> <li><strong>Zod v4 <code>.register()</code> fix</strong>: The metadata registry now properly stores and retrieves <code>langgraph_type</code> metadata when using Zod v4's <code>.register()</code> method with <code>MessagesZodMeta</code></li> <li><strong>StateSchema fix</strong>: <code>StateSchema.getJsonSchema()</code> now correctly includes <code>jsonSchemaExtra</code> (like <code>langgraph_type: "messages"</code>) even when the underlying schema (e.g., <code>z.custom()</code>) doesn't produce a JSON schema</li> </ul> </li> </ul> <h2><code>@langchain/langgraph</code><a href="https://github.com/1"><code>@1</code></a>.1.2</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1914">#1914</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/e60ec1be6efc3b7fd1bde907de3d1d08fa2a0262"><code>e60ec1b</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix ConditionalEdgeRouter type rejection</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1916">#1916</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/9f34c8ce420f44c604f12468806be807f7b372c1"><code>9f34c8c</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - Add unified schema support for <code>StateGraph</code> constructor</p> <ul> <li>Support mixing <code>AnnotationRoot</code>, Zod schemas, and <code>StateSchema</code> for state, input, and output definitions</li> <li>Add <code>{ input, output }</code> only pattern where state is inferred from input schema</li> <li>Add per-node input schema support via <code>addNode</code> options</li> <li>Deprecate <code>stateSchema</code> property in favor of <code>state</code></li> <li>Simplify constructor overloads with unified <code>StateGraphInit</code> type</li> </ul> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1918">#1918</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/cc12263ad26804ef53760cabf1bd2fda0be575d6"><code>cc12263</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - Add type bag pattern for <code>GraphNode</code> and <code>ConditionalEdgeRouter</code> type utilities.</p> <p><strong>New types:</strong></p> <ul> <li><code>GraphNodeTypes<InputSchema, OutputSchema, ContextSchema, Nodes></code> - Type bag interface for GraphNode</li> <li><code>GraphNodeReturnValue<Update, Nodes></code> - Return type helper for node functions</li> <li><code>ConditionalEdgeRouterTypes<InputSchema, ContextSchema, Nodes></code> - Type bag interface for ConditionalEdgeRouter</li> </ul> <p><strong>Usage:</strong></p> <p>Both <code>GraphNode</code> and <code>ConditionalEdgeRouter</code> now support two patterns:</p> <ol> <li> <p><strong>Single schema</strong> (backward compatible):</p> <pre lang="typescript"><code>const node: GraphNode<typeof AgentState, MyContext, "agent" | "tool"> = ... </code></pre> </li> </ol> </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"><code>@langchain/langgraph</code>'s changelog</a>.</em></p> <blockquote> <h2>1.1.4</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/8d5c2d688d330012638d8f34ce20a454600ebc1b"><code>8d5c2d6</code></a>]: <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.6.0</li> </ul> </li> </ul> <h2>1.1.3</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1932">#1932</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/0cda1f3b78a86e7809b7db15a7ff0ea00ee1ecd8"><code>0cda1f3</code></a> Thanks <a href="https://github.com/samecrowder"><code>@samecrowder</code></a>! - fix: preserve <code>langgraph_type</code> metadata for LangSmith Studio tab detection</p> <ul> <li><strong>Zod v4 <code>.register()</code> fix</strong>: The metadata registry now properly stores and retrieves <code>langgraph_type</code> metadata when using Zod v4's <code>.register()</code> method with <code>MessagesZodMeta</code></li> <li><strong>StateSchema fix</strong>: <code>StateSchema.getJsonSchema()</code> now correctly includes <code>jsonSchemaExtra</code> (like <code>langgraph_type: "messages"</code>) even when the underlying schema (e.g., <code>z.custom()</code>) doesn't produce a JSON schema</li> </ul> </li> </ul> <h2>1.1.2</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1914">#1914</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/e60ec1be6efc3b7fd1bde907de3d1d08fa2a0262"><code>e60ec1b</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix ConditionalEdgeRouter type rejection</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1916">#1916</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/9f34c8ce420f44c604f12468806be807f7b372c1"><code>9f34c8c</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - Add unified schema support for <code>StateGraph</code> constructor</p> <ul> <li>Support mixing <code>AnnotationRoot</code>, Zod schemas, and <code>StateSchema</code> for state, input, and output definitions</li> <li>Add <code>{ input, output }</code> only pattern where state is inferred from input schema</li> <li>Add per-node input schema support via <code>addNode</code> options</li> <li>Deprecate <code>stateSchema</code> property in favor of <code>state</code></li> <li>Simplify constructor overloads with unified <code>StateGraphInit</code> type</li> </ul> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langgraphjs/pull/1918">#1918</a> <a href="https://github.com/langchain-ai/langgraphjs/commit/cc12263ad26804ef53760cabf1bd2fda0be575d6"><code>cc12263</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - Add type bag pattern for <code>GraphNode</code> and <code>ConditionalEdgeRouter</code> type utilities.</p> <p><strong>New types:</strong></p> <ul> <li><code>GraphNodeTypes<InputSchema, OutputSchema, ContextSchema, Nodes></code> - Type bag interface for GraphNode</li> <li><code>GraphNodeReturnValue<Update, Nodes></code> - Return type helper for node functions</li> <li><code>ConditionalEdgeRouterTypes<InputSchema, ContextSchema, Nodes></code> - Type bag interface for ConditionalEdgeRouter</li> </ul> <p><strong>Usage:</strong></p> <p>Both <code>GraphNode</code> and <code>ConditionalEdgeRouter</code> now support two patterns:</p> <ol> <li> <p><strong>Single schema</strong> (backward compatible):</p> <pre lang="typescript"><code>const node: GraphNode<typeof AgentState, MyContext, "agent" | "tool"> = ... </code></pre> </li> <li> <p><strong>Type bag pattern</strong> (new):</p> <pre lang="typescript"><code></code></pre> </li> </ol> </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/f38f82ffd0c4df2349b16a94713fa63a1014eec0"><code>f38f82f</code></a> chore: version packages (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1945">#1945</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/8d5c2d688d330012638d8f34ce20a454600ebc1b"><code>8d5c2d6</code></a> feat(sdk): add multi-subagent tracking to useStream (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1903">#1903</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/a0964fbd16979cbb4401640504e464b368bce168"><code>a0964fb</code></a> chore: version packages (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1936">#1936</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/0cda1f3b78a86e7809b7db15a7ff0ea00ee1ecd8"><code>0cda1f3</code></a> fix: studio zod issue (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1932">#1932</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/990040da221198e9e5c982949f28e24a61a4605d"><code>990040d</code></a> chore: version packages (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1921">#1921</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/160f2e0dc5cafe252f44c5bb256105b685f42c83"><code>160f2e0</code></a> chore: version packages (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1915">#1915</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/cc12263ad26804ef53760cabf1bd2fda0be575d6"><code>cc12263</code></a> feat(langgraph): add type bag pattern for GraphNode and ConditionalEdgeRouter...</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/9f34c8ce420f44c604f12468806be807f7b372c1"><code>9f34c8c</code></a> feat(langgraph): add mixed schema support for StateGraph input/output (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1916">#1916</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/e60ec1be6efc3b7fd1bde907de3d1d08fa2a0262"><code>e60ec1b</code></a> fix(langgraph): fix ConditionalEdgeRouter type rejection (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1914">#1914</a>)</li> <li><a href="https://github.com/langchain-ai/langgraphjs/commit/0812242b86c08360cf76564fe53e573d9991f75e"><code>0812242</code></a> chore: version packages (<a href="https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core/issues/1905">#1905</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langgraphjs/commits/@langchain/langgraph@1.1.4/libs/langgraph-core">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@langchain/langgraph</code> since your current version.</p> </details> <details> <summary>Install script changes</summary> <p>This version adds <code>prepublish</code> script that runs during installation. Review the package contents before updating.</p> </details> <br /> Updates `@eslint/eslintrc` from 3.1.0 to 3.3.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/eslint/eslintrc/releases"><code>@eslint/eslintrc</code>'s releases</a>.</em></p> <blockquote> <h2>eslintrc: v3.3.3</h2> <h2><a href="https://github.com/eslint/eslintrc/compare/eslintrc-v3.3.2...eslintrc-v3.3.3">3.3.3</a> (2025-11-28)</h2> <h3>Bug Fixes</h3> <ul> <li>release v3.3.3 because publishing v3.3.2 failed (<a href="https://redirect.github.com/eslint/eslintrc/issues/211">#211</a>) (<a href="https://github.com/eslint/eslintrc/commit/8aa555a3f5fcfb7d99249fb57e819a7b6f635496">8aa555a</a>)</li> </ul> <h2>eslintrc: v3.3.2</h2> <h2><a href="https://github.com/eslint/eslintrc/compare/eslintrc-v3.3.1...eslintrc-v3.3.2">3.3.2</a> (2025-11-25)</h2> <h3>Bug Fixes</h3> <ul> <li>Remove name property from all and recommended configs (<a href="https://redirect.github.com/eslint/eslintrc/issues/200">#200</a>) (<a href="https://github.com/eslint/eslintrc/commit/344da491898a2a3595943d4528ba78fe2f238217">344da49</a>)</li> </ul> <h2>v3.3.1</h2> <h2><a href="https://github.com/eslint/eslintrc/compare/v3.3.0...v3.3.1">3.3.1</a> (2025-03-11)</h2> <h3>Bug Fixes</h3> <ul> <li>correct <code>types</code> field in package.json (<a href="https://redirect.github.com/eslint/eslintrc/issues/184">#184</a>) (<a href="https://github.com/eslint/eslintrc/commit/2f4cf3fe36ee0df93c1c53f32c030c58db1816a2">2f4cf3f</a>)</li> </ul> <h2>v3.3.0</h2> <h2><a href="https://github.com/eslint/eslintrc/compare/v3.2.0...v3.3.0">3.3.0</a> (2025-02-21)</h2> <h3>Features</h3> <ul> <li>Add types to package (<a href="https://redirect.github.com/eslint/eslintrc/issues/179">#179</a>) (<a href="https://github.com/eslint/eslintrc/commit/cb546be8ba53abcb4c64ed2fdd3a729dd1337f61">cb546be</a>)</li> </ul> <h2>v3.2.0</h2> <h2><a href="https://github.com/eslint/eslintrc/compare/v3.1.0...v3.2.0">3.2.0</a> (2024-11-14)</h2> <h3>Features</h3> <ul> <li>merge rule.meta.defaultOptions before validation (<a href="https://redirect.github.com/eslint/eslintrc/issues/166">#166</a>) (<a href="https://github.com/eslint/eslintrc/commit/d02f91452b81caff971f7895237cc4fb002e31da">d02f914</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/eslint/eslintrc/blob/main/CHANGELOG.md"><code>@eslint/eslintrc</code>'s changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/eslint/eslintrc/compare/eslintrc-v3.3.2...eslintrc-v3.3.3">3.3.3</a> (2025-11-28)</h2> <h3>Bug Fixes</h3> <ul> <li>release v3.3.3 because publishing v3.3.2 failed (<a href="https://redirect.github.com/eslint/eslintrc/issues/211">#211</a>) (<a href="https://github.com/eslint/eslintrc/commit/8aa555a3f5fcfb7d99249fb57e819a7b6f635496">8aa555a</a>)</li> </ul> <h2><a href="https://github.com/eslint/eslintrc/compare/eslintrc-v3.3.1...eslintrc-v3.3.2">3.3.2</a> (2025-11-25)</h2> <h3>Bug Fixes</h3> <ul> <li>Remove name property from all and recommended configs (<a href="https://redirect.github.com/eslint/eslintrc/issues/200">#200</a>) (<a href="https://github.com/eslint/eslintrc/commit/344da491898a2a3595943d4528ba78fe2f238217">344da49</a>)</li> </ul> <h2><a href="https://github.com/eslint/eslintrc/compare/v3.3.0...v3.3.1">3.3.1</a> (2025-03-11)</h2> <h3>Bug Fixes</h3> <ul> <li>correct <code>types</code> field in package.json (<a href="https://redirect.github.com/eslint/eslintrc/issues/184">#184</a>) (<a href="https://github.com/eslint/eslintrc/commit/2f4cf3fe36ee0df93c1c53f32c030c58db1816a2">2f4cf3f</a>)</li> </ul> <h2><a href="https://github.com/eslint/eslintrc/compare/v3.2.0...v3.3.0">3.3.0</a> (2025-02-21)</h2> <h3>Features</h3> <ul> <li>Add types to package (<a href="https://redirect.github.com/eslint/eslintrc/issues/179">#179</a>) (<a href="https://github.com/eslint/eslintrc/commit/cb546be8ba53abcb4c64ed2fdd3a729dd1337f61">cb546be</a>)</li> </ul> <h2><a href="https://github.com/eslint/eslintrc/compare/v3.1.0...v3.2.0">3.2.0</a> (2024-11-14)</h2> <h3>Features</h3> <ul> <li>merge rule.meta.defaultOptions before validation (<a href="https://redirect.github.com/eslint/eslintrc/issues/166">#166</a>) (<a href="https://github.com/eslint/eslintrc/commit/d02f91452b81caff971f7895237cc4fb002e31da">d02f914</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/eslint/eslintrc/commit/fdb529826fd769f2bdcd1281d711412253561231"><code>fdb5298</code></a> chore: release 3.3.3 🚀 (<a href="https://redirect.github.com/eslint/eslintrc/issues/212">#212</a>)</li> <li><a href="https://github.com/eslint/eslintrc/commit/8aa555a3f5fcfb7d99249fb57e819a7b6f635496"><code>8aa555a</code></a> fix: release v3.3.3 because publishing v3.3.2 failed (<a href="https://redirect.github.com/eslint/eslintrc/issues/211">#211</a>)</li> <li><a href="https://github.com/eslint/eslintrc/commit/a8b773d0cfecbd987e4301ad40be271a2c800c40"><code>a8b773d</code></a> chore: release 3.3.2 🚀 (<a href="https://redirect.github.com/eslint/eslintrc/issues/204">#204</a>)</li> <li><a href="https://github.com/eslint/eslintrc/commit/85244bb33023f25eb8ac443d08b769be7bafec2e"><code>85244bb</code></a> chore: switch to <code>googleapis/release-please-action</code> (<a href="https://redirect.github.com/eslint/eslintrc/issues/208">#208</a>)</li> <li><a href="https://github.com/eslint/eslintrc/commit/d356360dfee5173b3ace73cc1f3ecb922eb4310d"><code>d356360</code></a> docs: Update README sponsors</li> <li><a href="https://github.com/eslint/eslintrc/commit/116bf0332e3ce6dd848704b3782c8c77067c635b"><code>116bf03</code></a> chore: update js-yaml to version 4.1.1 (<a href="https://redirect.github.com/eslint/eslintrc/issues/207">#207</a>)</li> <li><a href="https://github.com/eslint/eslintrc/commit/16e8d207557fcac8512bd5d9ffd475ec777db0df"><code>16e8d20</code></a> docs: Update README sponsors</li> <li><a href="https://github.com/eslint/eslintrc/commit/3b089acfeba445f3fef84662c43143a5d0eb8a15"><code>3b089ac</code></a> chore: update <code>.gitignore</code> to exclude shared workflows (<a href="https://redirect.github.com/eslint/eslintrc/issues/206">#206</a>)</li> <li><a href="https://github.com/eslint/eslintrc/commit/1f6e2d19b2f9617c10597fbe97ac99076a716a0c"><code>1f6e2d1</code></a> docs: Update README sponsors</li> <li><a href="https://github.com/eslint/eslintrc/commit/785c00b8cce58c2b4962996699e0f3dbdc6d2d13"><code>785c00b</code></a> docs: Update README sponsors</li> <li>Additional commits viewable in <a href="https://github.com/eslint/eslintrc/compare/v3.1.0...eslintrc-v3.3.3">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@eslint/eslintrc</code> since your current version.</p> </details> <br /> Updates `@eslint/js` from 9.9.1 to 10.0.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/eslint/eslint/releases"><code>@eslint/js</code>'s releases</a>.</em></p> <blockquote> <h2>v10.0.0</h2> <h2>Breaking Changes</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b"><code>f9e54f4</code></a> feat!: estimate rule-tester failure location (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420">#20420</a>) (ST-DDT)</li> <li><a href="https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f"><code>a176319</code></a> feat!: replace <code>chalk</code> with <code>styleText</code> and add <code>color</code> to <code>ResultsMeta</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227">#20227</a>) (루밀LuMir)</li> <li><a href="https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84"><code>c7046e6</code></a> feat!: enable JSX reference tracking (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152">#20152</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa"><code>fa31a60</code></a> feat!: add <code>name</code> to configs (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015">#20015</a>) (Kirk Waiblinger)</li> <li><a href="https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0"><code>3383e7e</code></a> fix!: remove deprecated <code>SourceCode</code> methods (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137">#20137</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce"><code>501abd0</code></a> feat!: update dependency minimatch to v10 (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246">#20246</a>) (renovate[bot])</li> <li><a href="https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e"><code>ca4d3b4</code></a> fix!: stricter rule tester assertions for valid test cases (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125">#20125</a>) (唯然)</li> <li><a href="https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b"><code>96512a6</code></a> fix!: Remove deprecated rule context methods (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086">#20086</a>) (Nicholas C. Zakas)</li> <li><a href="https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90"><code>c69fdac</code></a> feat!: remove eslintrc support (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037">#20037</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04"><code>208b5cc</code></a> feat!: Use <code>ScopeManager#addGlobals()</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132">#20132</a>) (Milos Djermanovic)</li> <li><a href="https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14"><code>a2ee188</code></a> fix!: add <code>uniqueItems: true</code> in <code>no-invalid-regexp</code> option (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155">#20155</a>) (Tanuj Kanti)</li> <li><a href="https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab"><code>a89059d</code></a> feat!: Program range span entire source text (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133">#20133</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53"><code>39a6424</code></a> fix!: assert 'text' is a string across all RuleFixer methods (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082">#20082</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44"><code>f28fbf8</code></a> fix!: Deprecate <code>"always"</code> and <code>"as-needed"</code> options of the <code>radix</code> rule (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223">#20223</a>) (Milos Djermanovic)</li> <li><a href="https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98"><code>aa3fb2b</code></a> fix!: tighten <code>func-names</code> schema (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119">#20119</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756"><code>f6c0ed0</code></a> feat!: report <code>eslint-env</code> comments as errors (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128">#20128</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db"><code>4bf739f</code></a> fix!: remove deprecated <code>LintMessage#nodeType</code> and <code>TestCaseError#type</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096">#20096</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247"><code>523c076</code></a> feat!: drop support for jiti < 2.2.0 (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016">#20016</a>) (michael faith)</li> <li><a href="https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64"><code>454a292</code></a> feat!: update <code>eslint:recommended</code> configuration (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210">#20210</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1"><code>4f880ee</code></a> feat!: remove <code>v10_*</code> and inactive <code>unstable_*</code> flags (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225">#20225</a>) (sethamus)</li> <li><a href="https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f"><code>f18115c</code></a> feat!: <code>no-shadow-restricted-names</code> report <code>globalThis</code> by default (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027">#20027</a>) (sethamus)</li> <li><a href="https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e"><code>c6358c3</code></a> feat!: Require Node.js <code>^20.19.0 || ^22.13.0 || >=24</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160">#20160</a>) (Milos Djermanovic)</li> </ul> <h2>Features</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822"><code>bff9091</code></a> feat: handle <code>Array.fromAsync</code> in <code>array-callback-return</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457">#20457</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222"><code>290c594</code></a> feat: add <code>self</code> to <code>no-implied-eval</code> rule (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468">#20468</a>) (sethamus)</li> <li><a href="https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2"><code>43677de</code></a> feat: fix handling of function and class expression names in <code>no-shadow</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432">#20432</a>) (Milos Djermanovic)</li> <li><a href="https://github.com/eslint/eslint/commit/f0cafe5f37e7765e9d8c2751b5f5d33107687009"><code>f0cafe5</code></a> feat: rule tester add assertion option <code>requireData</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20409">#20409</a>) (fnx)</li> <li><a href="https://github.com/eslint/eslint/commit/f7ab6937e63bc618d326710858f5861a68f80616"><code>f7ab693</code></a> feat: output RuleTester test case failure index (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19976">#19976</a>) (ST-DDT)</li> <li><a href="https://github.com/eslint/eslint/commit/7cbcbf9c3c2008deee7d143ae35e668e8ffbccb3"><code>7cbcbf9</code></a> feat: add <code>countThis</code> option to <code>max-params</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20236">#20236</a>) (Gerkin)</li> <li><a href="https://github.com/eslint/eslint/commit/f148a5eaa1e89dd80ade62f0a690186b00b9f6e1"><code>f148a5e</code></a> feat: add error assertion options (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20247">#20247</a>) (ST-DDT)</li> <li><a href="https://github.com/eslint/eslint/commit/09e66549ecada6dcb8c567a60faf044fce049188"><code>09e6654</code></a> feat: update error loc of <code>require-yield</code> and <code>no-useless-constructor</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20267">#20267</a>) (Tanuj Kanti)</li> </ul> <h2>Bug Fixes</h2> <ul> <li><a href="https://github.com/eslint/eslint/commit/436b82f3c0a8cfa2fdc17d173e95ea11d5d3ee03"><code>436b82f</code></a> fix: update eslint (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20473">#20473</a>) (renovate[bot])</li> <li><a href="https://github.com/eslint/eslint/commit/1d29d22fe302443cec2a11da0816397f94af97ec"><code>1d29d22</code></a> fix: detect default <code>this</code> binding in <code>Array.fromAsync</code> callbacks (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20456">#20456</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/727451eff55b35d853e0e443d0de58f4550762bf"><code>727451e</code></a> fix: fix regression of global mode report range in <code>strict</code> rule (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20462">#20462</a>) (ntnyq)</li> <li><a href="https://github.com/eslint/eslint/commit/e80485fcd27196fa0b6f6b5c7ac8cf49ad4b079d"><code>e80485f</code></a> fix: remove fake <code>FlatESLint</code> and <code>LegacyESLint</code> exports (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20460">#20460</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/9eeff3bc13813a786b8a4c3815def97c0fb646ef"><code>9eeff3b</code></a> fix: update esquery (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20423">#20423</a>) (cryptnix)</li> <li><a href="https://github.com/eslint/eslint/commit/b34b93852d014ebbcf3538d892b55e0216cdf681"><code>b34b938</code></a> fix: use <code>Error.prepareStackTrace</code> to estimate failing test location (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20436">#20436</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/51aab5393b058f7cbed69041a9069b2bd106aabd"><code>51aab53</code></a> fix: update eslint (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20443">#20443</a>) (renovate[bot])</li> <li><a href="https://github.com/eslint/eslint/commit/23490b266276792896a0b7b43c49a1ce87bf8568"><code>23490b2</code></a> fix: handle space before colon in <code>RuleTester</code> location estimation (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20433">#20433</a>) (Francesco Trotta)</li> <li><a href="https://github.com/eslint/eslint/commit/f244dbf2191267a4cafd08645243624baf3e8c83"><code>f244dbf</code></a> fix: use <code>MessagePlaceholderData</code> type from <code>@eslint/core</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20348">#20348</a>) (루밀LuMir)</li> <li><a href="https://github.com/eslint/eslint/commit/d186f8c0747f14890e86a5a39708b052b391ddaf"><code>d186f8c</code></a> fix: update eslint (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20427">#20427</a>) (renovate[bot])</li> <li><a href="https://github.com/eslint/eslint/commit/2332262deb4ef3188b210595896bb0ff552a7e66"><code>2332262</code></a> fix: error location should not modify error message in RuleTester (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20421">#20421</a>) (Milos Djermanovic)</li> <li><a href="https://github.com/eslint/eslint/commit/ab99b21a6715dee1035d8f4e6d6841853eb5563f"><code>ab99b21</code></a> fix: ensure <code>filename</code> is passed as third argument to <code>verifyAndFix()</code> (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20405">#20405</a>) (루밀LuMir)</li> <li><a href="https://github.com/eslint/eslint/commit/8a60f3bc80ad96c65feeb29886342623c630199c"><code>8a60f3b</code></a> fix: remove <code>ecmaVersion</code> and <code>sourceType</code> from <code>ParserOptions</code> type (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20415">#20415</a>) (Pixel998)</li> <li><a href="https://github.com/eslint/eslint/commit/eafd727a060131f7fc79b2eb5698d8d27683c3a2"><code>eafd727</code></a> fix: remove <code>TDZ</code> scope type (<a href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20231">#20231</a>) (jaymarvelz)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/eslint/eslint/commits/HEAD/packages/js">compare view</a></li> </ul> </details> <br /> Updates `@tsconfig/recommended` from 1.0.7 to 1.0.13 <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/tsconfig/bases/commits/HEAD/bases">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/eslint-plugin` from 5.62.0 to 8.55.0 <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.55.0</h2> <h2>8.55.0 (2026-02-09)</h2> <h3>🚀 Features</h3> <ul> <li><strong>utils:</strong> deprecate defaultOptions in favor of meta.defaultOptions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11992">#11992</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unused-vars] remove trailing newline when removing entire import (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11990">#11990</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] require strictNullChecks (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11966">#11966</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12000">#12000</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] report unnecessary defaults in ternary expressions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11984">#11984</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] reduce param index to ts this handling (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11949">#11949</a>)</li> <li><strong>typescript-estree:</strong> forbid invalid modifier in object expression (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11931">#11931</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Christian Rose <a href="https://github.com/chrros95"><code>@chrros95</code></a></li> <li>fisker Cheung <a href="https://github.com/fisker"><code>@fisker</code></a></li> <li>Josh Goldberg</li> <li>Maria Solano <a href="https://github.com/MariaSolOs"><code>@MariaSolOs</code></a></li> <li>Minyeong Kim <a href="https://github.com/minyeong981"><code>@minyeong981</code></a></li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Yukihiro Hasegawa <a href="https://github.com/y-hsgw"><code>@y-hsgw</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.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.54.0</h2> <h2>8.54.0 (2026-01-26)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin-internal:</strong> add prefer-tsutils-methods rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974">#11974</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625">#11625</a>)</li> <li><strong>scope-manager:</strong> support ScopeManager#addGlobals (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914">#11914</a>)</li> <li><strong>typescript-estree:</strong> add shortcut methods to ParserServicesWithTypeInformation (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965">#11965</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955">#11955</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unused-private-class-members] private destructured class member is defined but used (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785">#11785</a>)</li> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967">#11967</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559">#11559</a>)</li> <li><strong>scope-manager:</strong> fix catch clause scopes <code>def.name</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982">#11982</a>)</li> <li><strong>scope-manager:</strong> prevent misidentification of <code>"use strict"</code> directives (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995">#11995</a>)</li> <li><strong>utils:</strong> handle missing <code>FlatESLint</code> and <code>LegacyESLint</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958">#11958</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>fnx <a href="https://github.com/DMartens"><code>@DMartens</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"><code>@typescript-eslint/eslint-plugin</code>'s changelog</a>.</em></p> <blockquote> <h2>8.55.0 (2026-02-09)</h2> <h3>🚀 Features</h3> <ul> <li><strong>utils:</strong> deprecate defaultOptions in favor of meta.defaultOptions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11992">#11992</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] reduce param index to ts this handling (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11949">#11949</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] report unnecessary defaults in ternary expressions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11984">#11984</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] require strictNullChecks (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11966">#11966</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12000">#12000</a>)</li> <li><strong>eslint-plugin:</strong> [no-unused-vars] remove trailing newline when removing entire import (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11990">#11990</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Christian Rose <a href="https://github.com/chrros95"><code>@chrros95</code></a></li> <li>Josh Goldberg</li> <li>Maria Solano <a href="https://github.com/MariaSolOs"><code>@MariaSolOs</code></a></li> <li>Minyeong Kim <a href="https://github.com/minyeong981"><code>@minyeong981</code></a></li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Yukihiro Hasegawa <a href="https://github.com/y-hsgw"><code>@y-hsgw</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.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.54.0 (2026-01-26)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin-internal:</strong> add prefer-tsutils-methods rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974">#11974</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625">#11625</a>)</li> <li><strong>typescript-estree:</strong> add shortcut methods to ParserServicesWithTypeInformation (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965">#11965</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955">#11955</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967">#11967</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559">#11559</a>)</li> <li><strong>deps:</strong> update dependency prettier to v3.8.0 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11991">#11991</a>)</li> <li><strong>scope-manager:</strong> fix catch clause scopes <code>def.name</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982">#11982</a>)</li> <li><strong>eslint-plugin:</strong> [no-unused-private-class-members] private destructured class member is defined but used (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785">#11785</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>Josh Goldberg</li> <li>MinJae <a href="https://github.com/Ju-MINJAE"><code>@Ju-MINJAE</code></a></li> <li>Minyeong Kim <a href="https://github.com/minyeong981"><code>@minyeong981</code></a></li> <li>overlookmotel</li> <li>Yuya Yoshioka <a href="https://github.com/YuyaYoshioka"><code>@YuyaYoshioka</code></a></li> <li>김현수 <a href="https://github.com/Kimsoo0119"><code>@Kimsoo0119</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/fedfe8665afbabd5c7d3ee09d14f450d5ba0b10a"><code>fedfe86</code></a> chore(release): publish 8.55.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/8a95834bb5fd818cc049390e4cb57196717a011f"><code>8a95834</code></a> fix(eslint-plugin): [no-useless-default-assignment] reduce param index to ts ...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/4ba1e72cd76f357044dca209978d87137c31e6c0"><code>4ba1e72</code></a> fix(eslint-plugin): [no-useless-default-assignment] report unnecessary defaul...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/a1f86179074a143fdb06445a28b1144427d33ec9"><code>a1f8617</code></a> feat(utils): deprecate defaultOptions in favor of meta.defaultOptions (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11992">#11992</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/3f0ce54da520cdc58f1dd2e2c45073c92617e2c2"><code>3f0ce54</code></a> fix(eslint-plugin): [no-useless-default-assignment] require strictNullChecks ...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/3df0002e8663f170749cc4a9a054af377cf0c554"><code>3df0002</code></a> fix(eslint-plugin): [no-unused-vars] remove trailing newline when removing en...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/b931f8c706beafc289462824814dca158694cb48"><code>b931f8c</code></a> chore: use workspace refs for workspace deps (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12018">#12018</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1f17a7918cd507b11fd04ce75fe44a9c62bf9542"><code>1f17a79</code></a> chore: migrate to pnpm (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11248">#11248</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/d423e57622e1c8e789a1b84109d1ab2c15497507"><code>d423e57</code></a> chore(release): publish 8.54.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/80e33ff2fd81f88100cda942db5232851adab90e"><code>80e33ff</code></a> feat(eslint-plugin-internal): add prefer-tsutils-methods rule (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11974">#11974</a>)</li> <li>Additional commits viewable in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.55.0/packages/eslint-plugin">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by [GitHub Actions](<a href="https://www.npmjs.com/~GitHub">https://www.npmjs.com/~GitHub</a> Actions), a new releaser for <code>@typescript-eslint/eslint-plugin</code> since your current version.</p> </details> <br /> Updates `@typescript-eslint/parser` from 5.62.0 to 8.55.0 <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.55.0</h2> <h2>8.55.0 (2026-02-09)</h2> <h3>🚀 Features</h3> <ul> <li><strong>utils:</strong> deprecate defaultOptions in favor of meta.defaultOptions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11992">#11992</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unused-vars] remove trailing newline when removing entire import (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11990">#11990</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] require strictNullChecks (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11966">#11966</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12000">#12000</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] report unnecessary defaults in ternary expressions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11984">#11984</a>)</li> <li><strong>eslint-plugin:</strong> [no-useless-default-assignment] reduce param index to ts this handling (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11949">#11949</a>)</li> <li><strong>typescript-estree:</strong> forbid invalid modifier in object expression (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11931">#11931</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Christian Rose <a href="https://github.com/chrros95"><code>@chrros95</code></a></li> <li>fisker Cheung <a href="https://github.com/fisker"><code>@fisker</code></a></li> <li>Josh Goldberg</li> <li>Maria Solano <a href="https://github.com/MariaSolOs"><code>@MariaSolOs</code></a></li> <li>Minyeong Kim <a href="https://github.com/minyeong981"><code>@minyeong981</code></a></li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Yukihiro Hasegawa <a href="https://github.com/y-hsgw"><code>@y-hsgw</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.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.54.0</h2> <h2>8.54.0 (2026-01-26)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin-internal:</strong> add prefer-tsutils-methods rule (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11974">#11974</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11625">#11625</a>)</li> <li><strong>scope-manager:</strong> support ScopeManager#addGlobals (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11914">#11914</a>)</li> <li><strong>typescript-estree:</strong> add shortcut methods to ParserServicesWithTypeInformation (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11965">#11965</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11955">#11955</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unused-private-class-members] private destructured class member is defined but used (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11785">#11785</a>)</li> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion] check both base constraint and actual type for non-null assertions (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11967">#11967</a>, <a href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/11559">#11559</a>)</li> <li><strong>scope-manager:</strong> fix catch clause scopes <code>def.name</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11982">#11982</a>)</li> <li><strong>scope-manager:</strong> prevent misidentification of <code>"use strict"</code> directives (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11995">#11995</a>)</li> <li><strong>utils:</strong> handle missing <code>FlatESLint</code> and <code>LegacyESLint</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11958">#11958</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>fnx <a href="https://github.com/DMartens"><code>@DMartens</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"><code>@typescript-eslint/parser</code>'s changelog</a>.</em></p> <blockquote> <h2>8.55.0 (2026-02-09)</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.55.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.54.0 (2026-01-26)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</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.53.1 (2026-01-19)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</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.53.0 (2026-01-12)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</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.52.0 (2026-01-05)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</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.51.0 (2025-12-29)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</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.50.1 (2025-12-22)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</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.50.0 (2025-12-15)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</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> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/fedfe8665afbabd5c7d3ee09d14f450d5ba0b10a"><code>fedfe86</code></a> chore(release): publish 8.55.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/b931f8c706beafc289462824814dca158694cb48... _Description has been truncated_ 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>
Trusted by companies shaping the future of agents – including Klarna, Replit, Elastic, and more – LangGraph is a low-level orchestration framework for building, managing, and deploying long-running, stateful agents.
Get started
Install LangGraph:
pip install -U langgraph
Create a simple workflow:
from langgraph.graph import START, StateGraph
from typing_extensions import TypedDict
class State(TypedDict):
text: str
def node_a(state: State) -> dict:
return {"text": state["text"] + "a"}
def node_b(state: State) -> dict:
return {"text": state["text"] + "b"}
graph = StateGraph(State)
graph.add_node("node_a", node_a)
graph.add_node("node_b", node_b)
graph.add_edge(START, "node_a")
graph.add_edge("node_a", "node_b")
print(graph.compile().invoke({"text": ""}))
# {'text': 'ab'}
Get started with the LangGraph Quickstart.
To quickly build agents with LangChain's create_agent (built on LangGraph), see the LangChain Agents documentation.
Core benefits
LangGraph provides low-level supporting infrastructure for any long-running, stateful workflow or agent. LangGraph does not abstract prompts or architecture, and provides the following central benefits:
- Durable execution: Build agents that persist through failures and can run for extended periods, automatically resuming from exactly where they left off.
- Human-in-the-loop: Seamlessly incorporate human oversight by inspecting and modifying agent state at any point during execution.
- Comprehensive memory: Create truly stateful agents with both short-term working memory for ongoing reasoning and long-term persistent memory across sessions.
- Debugging with LangSmith: Gain deep visibility into complex agent behavior with visualization tools that trace execution paths, capture state transitions, and provide detailed runtime metrics.
- Production-ready deployment: Deploy sophisticated agent systems confidently with scalable infrastructure designed to handle the unique challenges of stateful, long-running workflows.
LangGraph’s ecosystem
While LangGraph can be used standalone, it also integrates seamlessly with any LangChain product, giving developers a full suite of tools for building agents. To improve your LLM application development, pair LangGraph with:
- LangSmith — Helpful for agent evals and observability. Debug poor-performing LLM app runs, evaluate agent trajectories, gain visibility in production, and improve performance over time.
- LangSmith Deployment — Deploy and scale agents effortlessly with a purpose-built deployment platform for long running, stateful workflows. Discover, reuse, configure, and share agents across teams — and iterate quickly with visual prototyping in LangGraph Studio.
- LangChain – Provides integrations and composable components to streamline LLM application development.
Note
Looking for the JS version of LangGraph? See the JS repo and the JS docs.
Additional resources
- Guides: Quick, actionable code snippets for topics such as streaming, adding memory & persistence, and design patterns (e.g. branching, subgraphs, etc.).
- Reference: Detailed reference on core classes, methods, how to use the graph and checkpointing APIs, and higher-level prebuilt components.
- Examples: Guided examples on getting started with LangGraph.
- LangChain Forum: Connect with the community and share all of your technical questions, ideas, and feedback.
- LangChain Academy: Learn the basics of LangGraph in our free, structured course.
- Case studies: Hear how industry leaders use LangGraph to ship AI applications at scale.
Acknowledgements
LangGraph is inspired by Pregel and Apache Beam. The public interface draws inspiration from NetworkX. LangGraph is built by LangChain Inc, the creators of LangChain, but can be used without LangChain.