Bumps the all-dependencies group in /libs/cli/js-examples with 5 updates: | Package | From | To | | --- | --- | --- | | [@langchain/core](https://github.com/langchain-ai/langchainjs) | `1.1.31` | `1.1.32` | | [@langchain/langgraph](https://github.com/langchain-ai/langgraphjs/tree/HEAD/libs/langgraph-core) | `1.2.1` | `1.2.2` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.1` | `8.57.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.1` | `8.57.0` | | [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.2.0` | `30.3.0` | Updates `@langchain/core` from 1.1.31 to 1.1.32 <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.32</h2> <h3>Patch Changes</h3> <ul> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10330">#10330</a> <a href="https://github.com/langchain-ai/langchainjs/commit/26488b596f01b7b7fe2f1d97d07164e52365ade5"><code>26488b5</code></a> Thanks <a href="https://github.com/hntrl"><code>@hntrl</code></a>! - fix(core): treat empty string tool call chunk IDs as missing during merge</p> <p>Fixed <code>_mergeLists</code> in message base to treat empty string <code>""</code> IDs the same as <code>null</code>/<code>undefined</code> when merging tool call chunks. This fixes old completions-style streaming where follow-up chunks carry <code>id: ""</code> instead of <code>undefined</code>, which previously prevented chunks from being merged by index.</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10167">#10167</a> <a href="https://github.com/langchain-ai/langchainjs/commit/ca826f6fecae6087bf0dee7781ee80b587396ec1"><code>ca826f6</code></a> Thanks <a href="https://github.com/colifran"><code>@colifran</code></a>! - feat: implement type inference for tool streams</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10334">#10334</a> <a href="https://github.com/langchain-ai/langchainjs/commit/a602c42db75d7e7e01cab38b12e0b65b9c0cce95"><code>a602c42</code></a> Thanks <a href="https://github.com/maahir30"><code>@maahir30</code></a>! - fix(core): add JSDoc docstrings to fakeModel builder API and export FakeBuiltModel</p> </li> <li> <p><a href="https://redirect.github.com/langchain-ai/langchainjs/pull/10254">#10254</a> <a href="https://github.com/langchain-ai/langchainjs/commit/db7d017f7ce13cb937147aabcbfa3847d80bde9d"><code>db7d017</code></a> Thanks <a href="https://github.com/pawel-twardziak"><code>@pawel-twardziak</code></a>! - fix(core): preserve thoughtSignature in array content during streaming with thinking models</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/langchain-ai/langchainjs/commit/b5b1eec6de2cccae8f01a2887c4c32b90db0f918"><code>b5b1eec</code></a> chore: version packages (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10273">#10273</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/59aed4c14f57efcce8fa4f7cdef0de46d2168c47"><code>59aed4c</code></a> chore: fix dependabot config (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10346">#10346</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/08ee4c682f992274c061f002bf6ed3fadce0754d"><code>08ee4c6</code></a> chore: reorganize community packages into libs/community/ (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10324">#10324</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/b7f63ea71709af8d7cc4549c75f0622c4bd9e453"><code>b7f63ea</code></a> chore: replace claude 3 haiku with claude haiku 4.5 in tests (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10322">#10322</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/d6535ca953b3d9b2a3b727c31120f6115d6ea4cb"><code>d6535ca</code></a> chore(deps): patch CVE-2025-68665 — override langchain to workspace version (...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/8740fe4cf75239b0a3c5dae0e0ce23d4ddda4d0b"><code>8740fe4</code></a> chore: update changeset (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10344">#10344</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/baedc05290d4376f261c0dd1165724cc2039b0a8"><code>baedc05</code></a> fix: bump underscore to resolve CVE-2026-27601 (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10336">#10336</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/2418c6f18771460d5a4da4e6c1e44e4adb5e1705"><code>2418c6f</code></a> fix: bump tar override to >=7.5.11 to resolve CVE-2026-29786, CVE-2026-31802 ...</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/c8c58406d71c994d29b25469a9f4db8cc0dfc3ee"><code>c8c5840</code></a> Fix optional chaining for candidateContent in reduce (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10319">#10319</a>)</li> <li><a href="https://github.com/langchain-ai/langchainjs/commit/bb00b82d51d8fba513c30a3a3ede463227cc73f0"><code>bb00b82</code></a> chore: bump simple-git to fix CVE-2026-28292 (<a href="https://redirect.github.com/langchain-ai/langchainjs/issues/10331">#10331</a>)</li> <li>Additional commits viewable in <a href="https://github.com/langchain-ai/langchainjs/compare/@langchain/core@1.1.31...@langchain/core@1.1.32">compare view</a></li> </ul> </details> <br /> Updates `@langchain/langgraph` from 1.2.1 to 1.2.2 <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.2.2</h2> <h3>Patch Changes</h3> <ul> <li>Updated dependencies [<a href="https://github.com/langchain-ai/langgraphjs/commit/e051ef6aa8301f39badc9f496cbacef73bb4e2c4"><code>e051ef6</code></a>]: <ul> <li><code>@langchain/langgraph-sdk</code><a href="https://github.com/1"><code>@1</code></a>.7.0</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/langchain-ai/langgraphjs/commits/HEAD/libs/langgraph-core">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/eslint-plugin` from 8.56.1 to 8.57.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.57.0</h2> <h2>8.57.0 (2026-03-09)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unnecessary-condition] allow literal loop conditions in for/do loops (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12080">#12080</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [strict-void-return] false positives with overloads (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12055">#12055</a>)</li> <li><strong>eslint-plugin:</strong> handle statically analyzable computed keys in prefer-readonly (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12079">#12079</a>)</li> <li><strong>eslint-plugin:</strong> guard against negative paramIndex in no-useless-default-assignment (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12077">#12077</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-promise-reject-errors] add allow <code>TypeOrValueSpecifier</code> to prefer-promise-reject-errors (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12094">#12094</a>)</li> <li><strong>eslint-plugin:</strong> [no-base-to-string] fix false positive for toString with overloads (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12089">#12089</a>)</li> <li><strong>typescript-estree:</strong> switch back to use <code>ts.getModifiers()</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12034">#12034</a>)</li> <li><strong>typescript-estree:</strong> if the template literal is tagged and the text has an invalid escape, <code>cooked</code> will be <code>null</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11355">#11355</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>Brian Schlenker <a href="https://github.com/bschlenk"><code>@bschlenk</code></a></li> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>fisker Cheung <a href="https://github.com/fisker"><code>@fisker</code></a></li> <li>James Henry <a href="https://github.com/JamesHenry"><code>@JamesHenry</code></a></li> <li>Josh Goldberg</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>Moses Odutusin <a href="https://github.com/thebolarin"><code>@thebolarin</code></a></li> <li>Newton Yuan <a href="https://github.com/NewtonYuan"><code>@NewtonYuan</code></a></li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Younsang Na <a href="https://github.com/nayounsang"><code>@nayounsang</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.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> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@typescript-eslint/eslint-plugin</code>'s changelog</a>.</em></p> <blockquote> <h2>8.57.0 (2026-03-09)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unnecessary-condition] allow literal loop conditions in for/do loops (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12080">#12080</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-base-to-string] fix false positive for toString with overloads (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12089">#12089</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-promise-reject-errors] add allow <code>TypeOrValueSpecifier</code> to prefer-promise-reject-errors (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12094">#12094</a>)</li> <li><strong>typescript-estree:</strong> if the template literal is tagged and the text has an invalid escape, <code>cooked</code> will be <code>null</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11355">#11355</a>)</li> <li><strong>eslint-plugin:</strong> guard against negative paramIndex in no-useless-default-assignment (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12077">#12077</a>)</li> <li><strong>eslint-plugin:</strong> handle statically analyzable computed keys in prefer-readonly (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12079">#12079</a>)</li> <li><strong>eslint-plugin:</strong> [strict-void-return] false positives with overloads (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12055">#12055</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>Brian Schlenker <a href="https://github.com/bschlenk"><code>@bschlenk</code></a></li> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>James Henry <a href="https://github.com/JamesHenry"><code>@JamesHenry</code></a></li> <li>Josh Goldberg</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>Moses Odutusin <a href="https://github.com/thebolarin"><code>@thebolarin</code></a></li> <li>Newton Yuan <a href="https://github.com/NewtonYuan"><code>@NewtonYuan</code></a></li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Younsang Na <a href="https://github.com/nayounsang"><code>@nayounsang</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.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> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2c6aeeec238dfea860b9f3c146a55f8f49f15cf5"><code>2c6aeee</code></a> chore(release): publish 8.57.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/46bf066d3df4af9aa8804a383e0d6d407a8e79f0"><code>46bf066</code></a> docs(eslint-plugin): document no-unnecessary-condition limitation with object...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f696dadfc37078efe4119ad2ab0609cde3e42766"><code>f696dad</code></a> chore: use pnpm catalog (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12047">#12047</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2029c78dcbe11b7e750af588d3c47f1211f02798"><code>2029c78</code></a> fix(eslint-plugin): [no-base-to-string] fix false positive for toString with ...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/0f4f101a125487bc07db323288afb86d5247bc31"><code>0f4f101</code></a> fix(eslint-plugin): [prefer-promise-reject-errors] add allow `TypeOrValueSpec...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/53f473b7a8c46094623712ba69a627182d049a5b"><code>53f473b</code></a> fix(typescript-estree): if the template literal is tagged and the text has an...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2291b81f99670319618192645519a056fdb94cf4"><code>2291b81</code></a> docs: minor grammar adjustment (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12112">#12112</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/fc5cd09de85600134ca0885ad5cdcedcddcd20ba"><code>fc5cd09</code></a> fix(eslint-plugin): guard against negative paramIndex in no-useless-default-a...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/adc2aad848fe1ac8044ba4a8d84daf8bb1939ced"><code>adc2aad</code></a> fix(eslint-plugin): handle statically analyzable computed keys in prefer-read...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/85badfffbf38730772afbffaa6d024592752664a"><code>85badff</code></a> fix(eslint-plugin): [strict-void-return] false positives with overloads (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12055">#12055</a>)</li> <li>Additional commits viewable in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/eslint-plugin">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/parser` from 8.56.1 to 8.57.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.57.0</h2> <h2>8.57.0 (2026-03-09)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> [no-unnecessary-condition] allow literal loop conditions in for/do loops (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12080">#12080</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [strict-void-return] false positives with overloads (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12055">#12055</a>)</li> <li><strong>eslint-plugin:</strong> handle statically analyzable computed keys in prefer-readonly (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12079">#12079</a>)</li> <li><strong>eslint-plugin:</strong> guard against negative paramIndex in no-useless-default-assignment (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12077">#12077</a>)</li> <li><strong>eslint-plugin:</strong> [prefer-promise-reject-errors] add allow <code>TypeOrValueSpecifier</code> to prefer-promise-reject-errors (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12094">#12094</a>)</li> <li><strong>eslint-plugin:</strong> [no-base-to-string] fix false positive for toString with overloads (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12089">#12089</a>)</li> <li><strong>typescript-estree:</strong> switch back to use <code>ts.getModifiers()</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12034">#12034</a>)</li> <li><strong>typescript-estree:</strong> if the template literal is tagged and the text has an invalid escape, <code>cooked</code> will be <code>null</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11355">#11355</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>Brian Schlenker <a href="https://github.com/bschlenk"><code>@bschlenk</code></a></li> <li>Evyatar Daud <a href="https://github.com/StyleShit"><code>@StyleShit</code></a></li> <li>fisker Cheung <a href="https://github.com/fisker"><code>@fisker</code></a></li> <li>James Henry <a href="https://github.com/JamesHenry"><code>@JamesHenry</code></a></li> <li>Josh Goldberg</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>Moses Odutusin <a href="https://github.com/thebolarin"><code>@thebolarin</code></a></li> <li>Newton Yuan <a href="https://github.com/NewtonYuan"><code>@NewtonYuan</code></a></li> <li>SungHyun627 <a href="https://github.com/SungHyun627"><code>@SungHyun627</code></a></li> <li>Younsang Na <a href="https://github.com/nayounsang"><code>@nayounsang</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.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> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@typescript-eslint/parser</code>'s changelog</a>.</em></p> <blockquote> <h2>8.57.0 (2026-03-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.57.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> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2c6aeeec238dfea860b9f3c146a55f8f49f15cf5"><code>2c6aeee</code></a> chore(release): publish 8.57.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f696dadfc37078efe4119ad2ab0609cde3e42766"><code>f696dad</code></a> chore: use pnpm catalog (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12047">#12047</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/a09921e2de2e8790e6a803016b825815ca9409d8"><code>a09921e</code></a> chore: update vitest to 4.x (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12071">#12071</a>)</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/parser">compare view</a></li> </ul> </details> <br /> Updates `jest` from 30.2.0 to 30.3.0 <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.3.0</h2> <h3>Features</h3> <ul> <li><code>[jest-config]</code> Add <code>defineConfig</code> and <code>mergeConfig</code> helpers for type-safe Jest config (<a href="https://redirect.github.com/jestjs/jest/pull/15844">#15844</a>)</li> <li><code>[jest-fake-timers]</code> Add <code>setTimerTickMode</code> to configure how timers advance</li> <li><code>[*]</code> Reduce token usage when run through LLMs (<a href="https://github.com/jestjs/jest/commit/3f17932061c0203999451e5852664093de876709"><code>3f17932</code></a>)</li> </ul> <h3>Fixes</h3> <ul> <li><code>[jest-config]</code> Keep CLI coverage output when using <code>--json</code> with <code>--outputFile</code> (<a href="https://redirect.github.com/jestjs/jest/pull/15918">#15918</a>)</li> <li><code>[jest-mock]</code> Use <code>Symbol</code> from test environment (<a href="https://redirect.github.com/jestjs/jest/pull/15858">#15858</a>)</li> <li><code>[jest-reporters]</code> Fix issue where console output not displayed for GHA reporter even with <code>silent: false</code> option (<a href="https://redirect.github.com/jestjs/jest/pull/15864">#15864</a>)</li> <li><code>[jest-runtime]</code> Fix issue where user cannot utilize dynamic import despite specifying <code>--experimental-vm-modules</code> Node option (<a href="https://redirect.github.com/jestjs/jest/pull/15842">#15842</a>)</li> <li><code>[jest-test-sequencer]</code> Fix issue where failed tests due to compilation errors not getting re-executed even with <code>--onlyFailures</code> CLI option (<a href="https://redirect.github.com/jestjs/jest/pull/15851">#15851</a>)</li> <li><code>[jest-util]</code> Make sure <code>process.features.require_module</code> is <code>false</code> (<a href="https://redirect.github.com/jestjs/jest/pull/15867">#15867</a>)</li> </ul> <h3>Chore & Maintenance</h3> <ul> <li><code>[*]</code> Replace remaining micromatch uses with picomatch</li> <li><code>[deps]</code> Update to sinon/fake-timers v15</li> <li><code>[docs]</code> Update V30 migration guide to notify users on <code>jest.mock()</code> work with case-sensitive path (<a href="https://redirect.github.com/jestjs/jest/pull/15849">#15849</a>)</li> <li>Updated Twitter icon to match the latest brand guidelines (<a href="https://redirect.github.com/jestjs/jest/pull/15869">#15869</a>)</li> </ul> </blockquote> </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.3.0</h2> <h3>Features</h3> <ul> <li><code>[jest-config]</code> Add <code>defineConfig</code> and <code>mergeConfig</code> helpers for type-safe Jest config (<a href="https://redirect.github.com/jestjs/jest/pull/15844">#15844</a>)</li> <li><code>[jest-fake-timers]</code> Add <code>setTimerTickMode</code> to configure how timers advance</li> <li><code>[*]</code> Reduce token usage when run through LLMs (<a href="https://github.com/jestjs/jest/commit/3f17932061c0203999451e5852664093de876709"><code>3f17932</code></a>)</li> </ul> <h3>Fixes</h3> <ul> <li><code>[jest-config]</code> Keep CLI coverage output when using <code>--json</code> with <code>--outputFile</code> (<a href="https://redirect.github.com/jestjs/jest/pull/15918">#15918</a>)</li> <li><code>[jest-mock]</code> Use <code>Symbol</code> from test environment (<a href="https://redirect.github.com/jestjs/jest/pull/15858">#15858</a>)</li> <li><code>[jest-reporters]</code> Fix issue where console output not displayed for GHA reporter even with <code>silent: false</code> option (<a href="https://redirect.github.com/jestjs/jest/pull/15864">#15864</a>)</li> <li><code>[jest-runtime]</code> Fix issue where user cannot utilize dynamic import despite specifying <code>--experimental-vm-modules</code> Node option (<a href="https://redirect.github.com/jestjs/jest/pull/15842">#15842</a>)</li> <li><code>[jest-test-sequencer]</code> Fix issue where failed tests due to compilation errors not getting re-executed even with <code>--onlyFailures</code> CLI option (<a href="https://redirect.github.com/jestjs/jest/pull/15851">#15851</a>)</li> <li><code>[jest-util]</code> Make sure <code>process.features.require_module</code> is <code>false</code> (<a href="https://redirect.github.com/jestjs/jest/pull/15867">#15867</a>)</li> </ul> <h3>Chore & Maintenance</h3> <ul> <li><code>[*]</code> Replace remaining micromatch uses with picomatch</li> <li><code>[deps]</code> Update to sinon/fake-timers v15</li> <li><code>[docs]</code> Update V30 migration guide to notify users on <code>jest.mock()</code> work with case-sensitive path (<a href="https://redirect.github.com/jestjs/jest/pull/15849">#15849</a>)</li> <li>Updated Twitter icon to match the latest brand guidelines (<a href="https://redirect.github.com/jestjs/jest/pull/15869">#15869</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/jestjs/jest/commit/efb59c2e81083f8dc941f20d6d20a3af2dc8d068"><code>efb59c2</code></a> v30.3.0</li> <li><a href="https://github.com/jestjs/jest/commit/96c53d30660e51bf76ed2cd1ecc2334c399ac31c"><code>96c53d3</code></a> feat(jest-config): add <code>defineConfig</code> and <code>mergeConfig</code> functions (<a href="https://github.com/jestjs/jest/tree/HEAD/packages/jest/issues/15844">#15844</a>)</li> <li>See full diff in <a href="https://github.com/jestjs/jest/commits/v30.3.0/packages/jest">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
New LangGraph.js Project
This template demonstrates a simple chatbot implemented using LangGraph.js, designed for LangGraph Studio. The chatbot maintains persistent chat memory, allowing for coherent conversations across multiple interactions.
The core logic, defined in src/agent/graph.ts, showcases a straightforward chatbot that responds to user queries while maintaining context from previous messages.
What it does
The simple chatbot:
- Takes a user message as input
- Maintains a history of the conversation
- Returns a placeholder response, updating the conversation history
This template provides a foundation that can be easily customized and extended to create more complex conversational agents.
Getting Started
Assuming you have already installed LangGraph Studio, to set up:
- Create a
.envfile. This template does not require any environment variables by default, but you will likely want to add some when customizing.
cp .env.example .env
- Open the folder in LangGraph Studio!
- Customize the code as needed.
How to customize
- Add an LLM call: You can select and install a chat model wrapper from the LangChain.js ecosystem, or use LangGraph.js without LangChain.js.
- Extend the graph: The core logic of the chatbot is defined in graph.ts. You can modify this file to add new nodes, edges, or change the flow of the conversation.
You can also extend this template by:
- Adding custom tools or functions to enhance the chatbot's capabilities.
- Implementing additional logic for handling specific types of user queries or tasks.
- Add retrieval-augmented generation (RAG) capabilities by integrating external APIs or databases to provide more customized responses.
Development
While iterating on your graph, you can edit past state and rerun your app from previous states to debug specific nodes. Local changes will be automatically applied via hot reload. Try experimenting with:
- Modifying the system prompt to give your chatbot a unique personality.
- Adding new nodes to the graph for more complex conversation flows.
- Implementing conditional logic to handle different types of user inputs.
Follow-up requests will be appended to the same thread. You can create an entirely new thread, clearing previous history, using the + button in the top right.
For more advanced features and examples, refer to the LangGraph.js documentation. These resources can help you adapt this template for your specific use case and build more sophisticated conversational agents.
LangGraph Studio also integrates with LangSmith for more in-depth tracing and collaboration with teammates, allowing you to analyze and optimize your chatbot's performance.
