Files
langgraphjs/examples/streaming
dependabot[bot] cdffd18d19 chore(deps): bump the langchain group across 1 directory with 6 updates (#2616)
Bumps the langchain group with 6 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@langchain/core](https://github.com/langchain-ai/langchainjs) |
`1.2.1` | `1.2.3` |
| [langchain](https://github.com/langchain-ai/langchainjs) | `1.5.2` |
`1.5.3` |
| [@langchain/openai](https://github.com/langchain-ai/langchainjs) |
`1.5.3` | `1.5.5` |
| [@langchain/classic](https://github.com/langchain-ai/langchainjs) |
`1.0.38` | `1.0.40` |
| [@langchain/quickjs](https://github.com/langchain-ai/deepagentsjs) |
`0.5.1` | `0.6.0` |
| [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.8.0` |
`0.8.4` |


Updates `@langchain/core` from 1.2.1 to 1.2.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langchainjs/releases">@​langchain/core's
releases</a>.</em></p>
<blockquote>
<h2><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.2.3</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/11200">#11200</a>
<a
href="https://github.com/langchain-ai/langchainjs/commit/08e588865927c3bf0eb2ec418cfb3fba527e14bb"><code>08e5888</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
fix(aws): normalize and safely replay Bedrock reasoning blocks</p>
<p>Emit standard reasoning blocks with preserved signatures, omit
incomplete signature-only reasoning during replay, and retain
compatibility with legacy and redacted Bedrock reasoning.</p>
</li>
</ul>
<h2><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.2.2</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/11171">#11171</a>
<a
href="https://github.com/langchain-ai/langchainjs/commit/82bef01ad3dd5e0317e48da40707be6bccc52f94"><code>82bef01</code></a>
Thanks <a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>!
- fix(core): coerce string v1 AIMessage content to text blocks</p>
<p>Prevent <code>contentBlocks.push is not a function</code> when
constructing an
<code>AIMessage</code> with <code>response_metadata.output_version ===
&quot;v1&quot;</code> and string
<code>content</code> (common in serialized LangGraph stream
payloads).</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/82a6b8ebf1a876b0ac819f2ee0ae6c6582031cb5"><code>82a6b8e</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11202">#11202</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/08e588865927c3bf0eb2ec418cfb3fba527e14bb"><code>08e5888</code></a>
fix(aws): normalize Bedrock reasoning blocks (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11200">#11200</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/21aaeb0b2ea5f526702bf6b8f7e1f6da34a21d2e"><code>21aaeb0</code></a>
fix: patch 13 high/critical Dependabot alerts (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11199">#11199</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/782c7f2b2b5c67352736686c8d124e5f85e97fd0"><code>782c7f2</code></a>
chore(dev): bump <code>@​types/node</code> from 25.9.1 to 26.1.0 in the
types group across ...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/f51f338cf4dd3ba188b048b3bfa8134e9b9a64cf"><code>f51f338</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11176">#11176</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/09e7f6d3408323fee5e19fc9af277114b1e8c89d"><code>09e7f6d</code></a>
fix(openai): drop <code>tool_call</code> content blocks from chat
completions input (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11">#11</a>...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/a9f123a49c1c50fd32d54fe4cb15963d21252d5d"><code>a9f123a</code></a>
fix(openai): filter out content blocks the chat completions api rejects
as in...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/cc39f564a9df18655ee4ae92de3f32e251021db8"><code>cc39f56</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11172">#11172</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/82bef01ad3dd5e0317e48da40707be6bccc52f94"><code>82bef01</code></a>
fix(core): coerce string v1 AIMessage content to text blocks (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11171">#11171</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/8a7c5f83e570c615c6b34e1234f5972dc7a2169c"><code>8a7c5f8</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11170">#11170</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langchainjs/compare/@langchain/core@1.2.1...@langchain/core@1.2.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `langchain` from 1.5.2 to 1.5.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langchainjs/releases">langchain's
releases</a>.</em></p>
<blockquote>
<h2>langchain@1.5.3</h2>
<h3>Patch Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/11167">#11167</a>
<a
href="https://github.com/langchain-ai/langchainjs/commit/4c7a06ec3e4728bb036a28f678dd8ec2521e1c82"><code>4c7a06e</code></a>
Thanks <a
href="https://github.com/colifran"><code>@​colifran</code></a>! -
fix(langchain): malformed tool input schemas are unrecoverable</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/e233f4192475cfb97dbd8907b2fb69b812b6950a"><code>e233f41</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11168">#11168</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/4c7a06ec3e4728bb036a28f678dd8ec2521e1c82"><code>4c7a06e</code></a>
fix(langchain): malformed tool input schemas are unrecoverable (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11167">#11167</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/1a1fe3ca9cd779abda3baf23529434dca601f00b"><code>1a1fe3c</code></a>
chore(deps): bump the aws group across 1 directory with 7 updates (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11134">#11134</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/553155b5807becca67dcca790b8e42b4e7950b50"><code>553155b</code></a>
chore(deps): bump js-yaml from 5.0.0 to 5.1.0 (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11142">#11142</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/24bde73901daa41b626eac843453a7a951ff98c3"><code>24bde73</code></a>
chore(deps): bump prettier from 3.8.3 to 3.9.4 in the typescript-eslint
group...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/8db72635b93f2f9c8dd79472414741a624c375a9"><code>8db7263</code></a>
fix: remove duplicate pnpm lockfile entries (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11141">#11141</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/99449de42a492ac5302f61f294f11836779e7b16"><code>99449de</code></a>
chore(deps): bump the langchain group with 5 updates (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11131">#11131</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/39c17d7388e76cea7f4eb59c3833b2d62df297cb"><code>39c17d7</code></a>
chore(deps): bump google-auth-library from 10.6.2 to 10.9.0 in the
google gro...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/32613bee109a3e72423fbe4a3fa774ec12f20e63"><code>32613be</code></a>
chore(deps): bump the build-and-test group with 2 updates (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11133">#11133</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/2ecacad5912bb8f9289a01828c0583f2a17e7b79"><code>2ecacad</code></a>
chore(deps): bump the gh-actions-minor-and-patch group with 2 updates
(<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11129">#11129</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langchainjs/compare/langchain@1.5.2...langchain@1.5.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `@langchain/openai` from 1.5.3 to 1.5.5
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langchainjs/releases">@​langchain/openai's
releases</a>.</em></p>
<blockquote>
<h2><code>@​langchain/openai</code><a
href="https://github.com/1"><code>@​1</code></a>.5.5</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/11175">#11175</a>
<a
href="https://github.com/langchain-ai/langchainjs/commit/a9f123a49c1c50fd32d54fe4cb15963d21252d5d"><code>a9f123a</code></a>
Thanks <a
href="https://github.com/colifran"><code>@​colifran</code></a>! -
fix(openai): filter out content blocks the chat completions api rejects
as input</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/11177">#11177</a>
<a
href="https://github.com/langchain-ai/langchainjs/commit/09e7f6d3408323fee5e19fc9af277114b1e8c89d"><code>09e7f6d</code></a>
Thanks <a
href="https://github.com/colifran"><code>@​colifran</code></a>! -
fix(openai): drop tool_call content blocks from chat completions
input</p>
</li>
</ul>
<h2><code>@​langchain/openai</code><a
href="https://github.com/1"><code>@​1</code></a>.5.4</h2>
<h3>Patch Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/11169">#11169</a>
<a
href="https://github.com/langchain-ai/langchainjs/commit/988ca7dc9f1debd48278c6e888553e11c7845ca3"><code>988ca7d</code></a>
Thanks <a
href="https://github.com/colifran"><code>@​colifran</code></a>! -
fix(openai): emit output_text for assistant content in responses
input</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/f51f338cf4dd3ba188b048b3bfa8134e9b9a64cf"><code>f51f338</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11176">#11176</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/09e7f6d3408323fee5e19fc9af277114b1e8c89d"><code>09e7f6d</code></a>
fix(openai): drop <code>tool_call</code> content blocks from chat
completions input (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11">#11</a>...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/a9f123a49c1c50fd32d54fe4cb15963d21252d5d"><code>a9f123a</code></a>
fix(openai): filter out content blocks the chat completions api rejects
as in...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/cc39f564a9df18655ee4ae92de3f32e251021db8"><code>cc39f56</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11172">#11172</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/82bef01ad3dd5e0317e48da40707be6bccc52f94"><code>82bef01</code></a>
fix(core): coerce string v1 AIMessage content to text blocks (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11171">#11171</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/8a7c5f83e570c615c6b34e1234f5972dc7a2169c"><code>8a7c5f8</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11170">#11170</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/988ca7dc9f1debd48278c6e888553e11c7845ca3"><code>988ca7d</code></a>
fix(openai): emit <code>output_text</code> for assistant content in
responses input (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11">#11</a>...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/e233f4192475cfb97dbd8907b2fb69b812b6950a"><code>e233f41</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11168">#11168</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/4c7a06ec3e4728bb036a28f678dd8ec2521e1c82"><code>4c7a06e</code></a>
fix(langchain): malformed tool input schemas are unrecoverable (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11167">#11167</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/1a1fe3ca9cd779abda3baf23529434dca601f00b"><code>1a1fe3c</code></a>
chore(deps): bump the aws group across 1 directory with 7 updates (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11134">#11134</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langchainjs/compare/@langchain/openai@1.5.3...@langchain/openai@1.5.5">compare
view</a></li>
</ul>
</details>
<br />

Updates `@langchain/classic` from 1.0.38 to 1.0.40
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langchainjs/releases">@​langchain/classic's
releases</a>.</em></p>
<blockquote>
<h2><code>@​langchain/classic</code><a
href="https://github.com/1"><code>@​1</code></a>.0.40</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="https://github.com/langchain-ai/langchainjs/commit/a9f123a49c1c50fd32d54fe4cb15963d21252d5d"><code>a9f123a</code></a>,
<a
href="https://github.com/langchain-ai/langchainjs/commit/09e7f6d3408323fee5e19fc9af277114b1e8c89d"><code>09e7f6d</code></a>]:
<ul>
<li><code>@​langchain/openai</code><a
href="https://github.com/1"><code>@​1</code></a>.5.5</li>
</ul>
</li>
</ul>
<h2><code>@​langchain/classic</code><a
href="https://github.com/1"><code>@​1</code></a>.0.39</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="https://github.com/langchain-ai/langchainjs/commit/988ca7dc9f1debd48278c6e888553e11c7845ca3"><code>988ca7d</code></a>]:
<ul>
<li><code>@​langchain/openai</code><a
href="https://github.com/1"><code>@​1</code></a>.5.4</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/f51f338cf4dd3ba188b048b3bfa8134e9b9a64cf"><code>f51f338</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11176">#11176</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/09e7f6d3408323fee5e19fc9af277114b1e8c89d"><code>09e7f6d</code></a>
fix(openai): drop <code>tool_call</code> content blocks from chat
completions input (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11">#11</a>...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/a9f123a49c1c50fd32d54fe4cb15963d21252d5d"><code>a9f123a</code></a>
fix(openai): filter out content blocks the chat completions api rejects
as in...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/cc39f564a9df18655ee4ae92de3f32e251021db8"><code>cc39f56</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11172">#11172</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/82bef01ad3dd5e0317e48da40707be6bccc52f94"><code>82bef01</code></a>
fix(core): coerce string v1 AIMessage content to text blocks (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11171">#11171</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/8a7c5f83e570c615c6b34e1234f5972dc7a2169c"><code>8a7c5f8</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11170">#11170</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/988ca7dc9f1debd48278c6e888553e11c7845ca3"><code>988ca7d</code></a>
fix(openai): emit <code>output_text</code> for assistant content in
responses input (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11">#11</a>...</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/e233f4192475cfb97dbd8907b2fb69b812b6950a"><code>e233f41</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11168">#11168</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/4c7a06ec3e4728bb036a28f678dd8ec2521e1c82"><code>4c7a06e</code></a>
fix(langchain): malformed tool input schemas are unrecoverable (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11167">#11167</a>)</li>
<li><a
href="https://github.com/langchain-ai/langchainjs/commit/1a1fe3ca9cd779abda3baf23529434dca601f00b"><code>1a1fe3c</code></a>
chore(deps): bump the aws group across 1 directory with 7 updates (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/11134">#11134</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langchainjs/compare/@langchain/classic@1.0.38...@langchain/classic@1.0.40">compare
view</a></li>
</ul>
</details>
<br />

Updates `@langchain/quickjs` from 0.5.1 to 0.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/deepagentsjs/releases">@​langchain/quickjs's
releases</a>.</em></p>
<blockquote>
<h2><code>@​langchain/quickjs</code><a
href="https://github.com/0"><code>@​0</code></a>.6.0</h2>
<h3>Minor Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/langchain-ai/deepagentsjs/pull/606">#606</a>
<a
href="https://github.com/langchain-ai/deepagentsjs/commit/3c8f8b2ea6f0204353c63bf49c3fdc6655bf1069"><code>3c8f8b2</code></a>
Thanks <a
href="https://github.com/colifran"><code>@​colifran</code></a>! -
chore(quickjs): disallow task as a configurable ptc tool</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/ff8cc5c4b4d17dc0c784e162a1b69563305fcbdc"><code>ff8cc5c</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/607">#607</a>)</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/1a2b2df5528f0f61870b054fff8291355f6a2a0b"><code>1a2b2df</code></a>
fix(deepagents): default unknown file extensions to text/plain (<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/656">#656</a>)</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/5f93c114759399002a3981a93e3df13981514b1d"><code>5f93c11</code></a>
fix(modal): modal sandboxes fail to upload files (<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/657">#657</a>)</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/ff7d82a791456b268c0e9bf70a9e455295ffb4b9"><code>ff7d82a</code></a>
build(deps): bump the minor-deps-updates-main group with 8 updates (<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/640">#640</a>)</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/88986a241743ca6b8db513c1c9926a7b59d3ca27"><code>88986a2</code></a>
build(deps): bump the major-deps-updates-main group with 3 updates (<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/641">#641</a>)</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/9217edd307d7815fe201541951d70a44d70918bc"><code>9217edd</code></a>
build(deps): bump the patch-deps-updates-main group with 15 updates (<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/639">#639</a>)</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/4f1b6cfd71e6a309f8754e700cca3ef9367638b7"><code>4f1b6cf</code></a>
build(deps): bump actions/checkout from 6.0.1 to 7.0.0 in the
major-deps-upda...</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/1cca3d32bb8f992e29322ed041308555fda39cfe"><code>1cca3d3</code></a>
build(deps): bump actions/setup-python from 6.2.0 to 6.3.0 in the
minor-deps-...</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/331b80f8d00a568ba58ab7af4d02f4dfa097d4ce"><code>331b80f</code></a>
build(deps): bump the patch-deps-updates group with 2 updates (<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/636">#636</a>)</li>
<li><a
href="https://github.com/langchain-ai/deepagentsjs/commit/5b462f2ab2400fba52906e8f1485a500ec5b6e17"><code>5b462f2</code></a>
fix: migrate Daytona SDK dependency [closes <a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/609">#609</a>]
(<a
href="https://redirect.github.com/langchain-ai/deepagentsjs/issues/614">#614</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/deepagentsjs/compare/@langchain/quickjs@0.5.1...@langchain/quickjs@0.6.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `langsmith` from 0.8.0 to 0.8.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's
releases</a>.</em></p>
<blockquote>
<h2>v0.8.4</h2>
<h2>What's Changed</h2>
<ul>
<li>release(js): 0.6.3 by <a
href="https://github.com/vishnu-ssuresh"><code>@​vishnu-ssuresh</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2864">langchain-ai/langsmith-sdk#2864</a></li>
<li>chore(deps): bump python-multipart from 0.0.26 to 0.0.27 in /python
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2859">langchain-ai/langsmith-sdk#2859</a></li>
<li>chore(deps-dev): bump <code>@​anthropic-ai/sdk</code> from 0.91.1 to
0.92.0 in /js by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2858">langchain-ai/langsmith-sdk#2858</a></li>
<li>chore(deps): bump postcss from 8.5.8 to 8.5.14 in /js by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2857">langchain-ai/langsmith-sdk#2857</a></li>
<li>chore(deps): bump hono from 4.12.15 to 4.12.18 in /js by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2860">langchain-ai/langsmith-sdk#2860</a></li>
<li>chore(deps-dev): bump langchain-core from 1.3.2 to 1.3.3 in /python
by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2867">langchain-ai/langsmith-sdk#2867</a></li>
<li>chore(deps-dev): bump <code>@​anthropic-ai/sdk</code> from 0.92.0 to
0.93.0 in /js by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2869">langchain-ai/langsmith-sdk#2869</a></li>
<li>chore(deps): bump urllib3 from 2.6.3 to 2.7.0 in /python by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2873">langchain-ai/langsmith-sdk#2873</a></li>
<li>chore(deps): bump the py-minor-and-patch group across 1 directory
with 12 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2876">langchain-ai/langsmith-sdk#2876</a></li>
<li>chore(deps-dev): bump the js-minor-and-patch group across 1
directory with 16 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2877">langchain-ai/langsmith-sdk#2877</a></li>
<li>chore(deps): bump the py-minor-and-patch group across 1 directory
with 11 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2879">langchain-ai/langsmith-sdk#2879</a></li>
<li>chore(deps): bump the npm_and_yarn group across 2 directories with 2
updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2868">langchain-ai/langsmith-sdk#2868</a></li>
<li>chore(deps-dev): bump <code>@​anthropic-ai/sdk</code> from 0.93.0 to
0.94.0 in /js by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2878">langchain-ai/langsmith-sdk#2878</a></li>
<li>sdk(js): rename experimental/sandbox -&gt; sandbox (breaking) by <a
href="https://github.com/DanielKneipp"><code>@​DanielKneipp</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2885">langchain-ai/langsmith-sdk#2885</a></li>
<li>sdk(py): drop sandbox alpha/experimental warnings by <a
href="https://github.com/DanielKneipp"><code>@​DanielKneipp</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2884">langchain-ai/langsmith-sdk#2884</a></li>
<li>feat(sandbox): make snapshot optional and add TS options overload by
<a
href="https://github.com/ramon-langchain"><code>@​ramon-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2887">langchain-ai/langsmith-sdk#2887</a></li>
<li>release(py): 0.8.4 by <a
href="https://github.com/ramon-langchain"><code>@​ramon-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2889">langchain-ai/langsmith-sdk#2889</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.8.3...v0.8.4">https://github.com/langchain-ai/langsmith-sdk/compare/v0.8.3...v0.8.4</a></p>
<h2>v0.8.3</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(js): prevent sending [object Object] as span attribute when
dealing with nested objects, send full langsmith.usage_metadata if
present by <a href="https://github.com/dqbd"><code>@​dqbd</code></a> in
<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2845">langchain-ai/langsmith-sdk#2845</a></li>
<li>release(js): bump to 0.6.2 by <a
href="https://github.com/dqbd"><code>@​dqbd</code></a> in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2856">langchain-ai/langsmith-sdk#2856</a></li>
<li>sdk(py): replace ttl_seconds with idle_ttl_seconds +
delete_after_stop_seconds by <a
href="https://github.com/DanielKneipp"><code>@​DanielKneipp</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2853">langchain-ai/langsmith-sdk#2853</a></li>
<li>sdk(js): replace ttlSeconds with idleTtlSeconds +
deleteAfterStopSeconds by <a
href="https://github.com/DanielKneipp"><code>@​DanielKneipp</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2854">langchain-ai/langsmith-sdk#2854</a></li>
<li>Fix push_agent URL owner for name-only identifiers by <a
href="https://github.com/vishnu-ssuresh"><code>@​vishnu-ssuresh</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2862">langchain-ai/langsmith-sdk#2862</a></li>
<li>docs(langsmith): clarify trust boundaries when working with hub by
<a href="https://github.com/eyurtsev"><code>@​eyurtsev</code></a> in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2861">langchain-ai/langsmith-sdk#2861</a></li>
<li>release(py): 0.8.3 by <a
href="https://github.com/vishnu-ssuresh"><code>@​vishnu-ssuresh</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2863">langchain-ai/langsmith-sdk#2863</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.8.2...v0.8.3">https://github.com/langchain-ai/langsmith-sdk/compare/v0.8.2...v0.8.3</a></p>
<h2>v0.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump JS SDK version to 0.6.1 by <a
href="https://github.com/langchain-infra"><code>@​langchain-infra</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2847">langchain-ai/langsmith-sdk#2847</a></li>
<li>fix: parse urllib3 version with packaging.Version by <a
href="https://github.com/justinwolfington"><code>@​justinwolfington</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2851">langchain-ai/langsmith-sdk#2851</a></li>
<li>Bump Python SDK version to 0.8.2 by <a
href="https://github.com/langchain-infra"><code>@​langchain-infra</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2855">langchain-ai/langsmith-sdk#2855</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/justinwolfington"><code>@​justinwolfington</code></a>
made their first contribution in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2851">langchain-ai/langsmith-sdk#2851</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.8.1...v0.8.2">https://github.com/langchain-ai/langsmith-sdk/compare/v0.8.1...v0.8.2</a></p>
<h2>v0.8.1</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(js): remove experimental opencode integration by <a
href="https://github.com/dqbd"><code>@​dqbd</code></a> in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2836">langchain-ai/langsmith-sdk#2836</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/273f8f9b0deccb7b21f899fbe6ee0474702a9860"><code>273f8f9</code></a>
release(py): 0.8.4 (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2889">#2889</a>)</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/afbf4fb970f1b1d5bc4b8fb3e233a8bef1a5eac9"><code>afbf4fb</code></a>
feat(sandbox): make snapshot optional and add TS options overload (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2887">#2887</a>)</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/54da5410a2ab7ee67b2eed9137f8dcbbc1426355"><code>54da541</code></a>
sdk(py): drop sandbox alpha/experimental warnings (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2884">#2884</a>)</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/1536e2bb61b35acd9bf7ef4b14fa3305f349fd24"><code>1536e2b</code></a>
sdk(js): rename experimental/sandbox -&gt; sandbox (breaking) (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2885">#2885</a>)</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/8f635fbb0e787b0db7450e12e4fed234053a2b1b"><code>8f635fb</code></a>
chore(deps-dev): bump <code>@​anthropic-ai/sdk</code> from 0.93.0 to
0.94.0 in /js (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2878">#2878</a>)</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/ce0f40f3852ff938df2b9c1922b352c2559e5acc"><code>ce0f40f</code></a>
chore(deps): bump the npm_and_yarn group across 2 directories with 2
updates ...</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/061c197e3aefee98024ca3ad280c8530e5140a67"><code>061c197</code></a>
chore(deps): bump the py-minor-and-patch group across 1 directory with
11 upd...</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/ab5d5f3f2253415f8697aa4b7561c47ea0b0de33"><code>ab5d5f3</code></a>
chore(deps-dev): bump the js-minor-and-patch group across 1 directory
with 16...</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/3dc69de1025cb08f1fda8a63447ebba2c13a4b16"><code>3dc69de</code></a>
chore(deps): bump the py-minor-and-patch group across 1 directory with
12 upd...</li>
<li><a
href="https://github.com/langchain-ai/langsmith-sdk/commit/6754bd3bec2b88db8471b4d4726cf95021bc4476"><code>6754bd3</code></a>
chore(deps): bump urllib3 from 2.6.3 to 2.7.0 in /python (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2873">#2873</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.8.0...v0.8.4">compare
view</a></li>
</ul>
</details>
<br />

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-23 12:04:59 -07:00
..

In-Process Streaming Examples

Runnable examples demonstrating graph.streamEvents(..., { version: "v3" }) — the ergonomic in-process streaming API for LangGraph.

Setup

# From the monorepo root
pnpm install

# Set your API key
export ANTHROPIC_API_KEY=sk-...

Examples

Each example is a self-contained script that can be run with npx tsx.

basic.ts — Protocol event iteration

The simplest starting point. Iterates all ProtocolEvent objects from a tool-calling graph and awaits the final output.

npx tsx src/basic.ts

Shows: for await (const event of run), await run.output

messages.ts — Streaming text tokens

Demonstrates the .messages projection. Each yielded ChatModelStream exposes .text as both an AsyncIterable<string> (for token-by-token streaming) and a PromiseLike<string> (for the full text). Also shows .usage for token counts.

npx tsx src/messages.ts

Shows: run.messages, message.text, message.usage

subgraphs.ts — Recursive subgraph observation

A research pipeline with two sequential subgraphs (researcher → analyst). Shows three ways to observe the subgraph tree:

  1. Flat event stream — all events, dispatched by event.method
  2. Subgraph discovery — run.subgraphs yields SubgraphRunStream per child
  3. Concurrent consumption — messages and subgraphs consumed in parallel
npx tsx src/subgraphs.ts

Shows: run.subgraphs, sub.messages, sub.name, sub.index, recursive walking

custom-reducer.ts — Domain-specific projections

Extends streamEvents(..., { version: "v3" }) with a custom StreamTransformer that counts tool calls and tracks token usage. The transformer is passed via the transformers option; its projections appear on run.extensions.

npx tsx src/custom-reducer.ts

Shows: StreamTransformer, graph.streamEvents(input, { version: "v3", transformers: [...] }), run.extensions

parallel.ts — Concurrent projection consumption

All projections on GraphRunStream share local stream channels, so multiple for await loops can run concurrently without interference. This example streams messages, counts state snapshots, and counts raw protocol events in parallel via Promise.all.

npx tsx src/parallel.ts

Shows: Promise.all([run.messages, run.values, run]), independent cursors

human-in-the-loop.ts — Interrupt, inspect, resume

Demonstrates the streamEvents(..., { version: "v3" }) interrupt/resume lifecycle using a planner → approval → executor graph. Turn 1 runs until interrupt() is called; the example inspects run.interrupted and run.interrupts, then resumes with Command({ resume }) in turn 2.

npx tsx src/human-in-the-loop.ts

Shows: interrupt(), run.interrupted, run.interrupts, Command({ resume }), multi-turn streamEvents(..., { version: "v3" })

a2a.ts — A2A protocol over a deployed server

End-to-end deployment example for custom stream transformers. The research pipeline is compiled with an A2A transformer (createA2ATransformer) that emits A2A-formatted status updates and artifacts. The graph is deployed via the LangGraph dev server, and the SDK client subscribes to the custom channel to receive only A2A events.

npx tsx src/a2a.ts

Shows: .compile({ transformers: [createA2ATransformer] }), streamStateV2(), SDK client.runs.stream(), streamMode: ["custom"]

Agents

The example agents live in src/agents/ and src/a2a/:

Agent File Description
Simple tool graph agents/simple-tool-graph.ts Single ReAct loop with search + calculator
Research pipeline agents/research-pipeline.ts Two sequential subgraphs with separate tools
Approval graph agents/approval-graph.ts Planner → human approval → executor with interrupt/resume
A2A research a2a/agent.ts Research pipeline with A2A stream transformer at compile time

API Surface

All examples use the GraphRunStream returned by graph.streamEvents(..., { version: "v3" }):

const run = await graph.streamEvents(input, { ...options, version: "v3" });

// Iterate all protocol events
for await (const event of run) { ... }

// Stream AI messages with text/reasoning/usage projections
for await (const msg of run.messages) {
  for await (const token of msg.text) { process.stdout.write(token); }
  const fullText = await msg.text;
  const usage = await msg.usage;
}

// Observe subgraphs recursively
for await (const sub of run.subgraphs) {
  console.log(sub.name, sub.path);
  for await (const msg of sub.messages) { ... }
}

// Final output
const state = await run.output;

// State snapshots per step
for await (const snapshot of run.values) { ... }

// Messages from a specific node
for await (const msg of run.messagesFrom("agent")) { ... }

// Custom transformers
const run = await graph.streamEvents(input, {
  version: "v3",
  transformers: [myTransformer],
});
const custom = await run.extensions.myProjection;

// Human-in-the-loop
const run1 = await graph.streamEvents(input, { ...config, version: "v3" });
for await (const msg of run1.messages) { ... }
await run1.output;
if (run1.interrupted) {
  console.log(run1.interrupts);
  const run2 = await graph.streamEvents(
    new Command({ resume: userDecision }),
    { ...config, version: "v3" }
  );
}

Coming Soon

Additional examples will be added for:

  • createAgentAgentRunStream with typed run.toolCalls
  • createDeepAgentDeepAgentRunStream with run.subagents
  • Cancellation — run.abort(), AbortSignal passthrough