Ben Brandt
4f273a20d8
fix: Better handle out of turn events ( #780 )
...
Claude has a lot of background tasks. If we wait for "idle", some people
experience turns that never end.
If we stop iterating the query after result, people end up with events
that never show up.
Given we already often have session_updates outside of the prompt (and
clients need to handle it for v2 if they aren't already) this moves the
setup to better handle how the SDK gives us this information.
I've been test-driving this build all day and it seems to be working
great.
Closes #773
Closes #679
Closes #435
Closes #497
Closes #688
Closes #630
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-16 21:33:54 +02:00
Ben Brandt
58549ffe6a
feat: Update to claude-agent-sdk 0.3.178 ( #777 )
2026-06-16 14:25:08 +02:00
Luca Dibattista
cc2885f6a9
fix: preserve ANTHROPIC_CUSTOM_MODEL_OPTION when availableModels is set ( #768 )
...
## Summary
When `availableModels` is set to a slim list (e.g.
`["sonnet","opus","haiku"]`), the model from
`ANTHROPIC_CUSTOM_MODEL_OPTION` was dropped from `session/new`'s model
picker. Claude Code's CLI keeps it; ACP hid it.
Per the [model-config
docs](https://code.claude.com/docs/en/model-config#add-a-custom-model-option ),
`ANTHROPIC_CUSTOM_MODEL_OPTION` adds a custom entry "without replacing
the built-in aliases" and "appears at the bottom of the `/model` picker"
— i.e. it's additive, not subject to the alias allowlist.
Observed under:
* `availableModels: ["sonnet","opus","haiku"]`
* `ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-4-6[1m]`
* `ANTHROPIC_CUSTOM_MODEL_OPTION=claude-opus-4-8[1m]`
| | Default | Sonnet | Opus | Haiku | Opus 4.8 |
|---|---|---|---|---|---|
| CLI picker | ✅ | ✅ | ✅ | ✅ | ✅ (bottom) |
| ACP (before) | ✅ | ✅ | ✅ | ✅ | ❌ |
| ACP (after) | ✅ | ✅ | ✅ | ✅ | ✅ (bottom) |
### Root cause
The SDK returns the custom option as an ordinary entry in
`initializationResult.models` with no flag distinguishing it
(`ModelInfo` has no `custom`/`isCustom` field).
`applyAvailableModelsAllowlist` treats `availableModels` as a strict
allowlist: keep `default`, then keep only SDK models matching an
allowlist entry. The custom value (`claude-opus-4-8[1m]`) matches no
alias, so it's filtered out — diverging from the CLI's additive
treatment.
### Fix
After the allowlist loop, append the model named by
`ANTHROPIC_CUSTOM_MODEL_OPTION` if the SDK surfaced it and it isn't
already present. It's placed last, matching the documented "bottom of
the picker" position, and exempted from the allowlist the same way we
already exempt `default` (the docs note the Default option is likewise
"not affected by `availableModels`").
The entry is preserved in the `ModelInfo[]` (`allowedModels` / session
`modelInfos`), not just the trimmed picker list, so its capability flags
(`supportedEffortLevels`, `supportsAutoMode`) flow to mode gating and
the effort dropdown when the custom model is selected.
Only the allowlist path needs this — when `availableModels` is absent,
ACP uses the full SDK list, which already contains the custom option.
## Test Plan
`src/tests/acp-agent-settings.test.ts` (TDD):
- Custom option preserved at the end of the list when absent from a slim
allowlist, with its name/description intact.
- No duplication when the custom option's exact ID is *also* in
`availableModels`.
No behavior change when `ANTHROPIC_CUSTOM_MODEL_OPTION` is unset or when
`availableModels` is absent.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-15 15:26:30 +00:00
Anna Zhdan
d8af943a1e
feat(deps): update to @anthropic-ai/claude-agent-sdk 0.3.170 ( #761 )
...
## Summary
- Bump `@anthropic-ai/claude-agent-sdk` from 0.3.169 to **0.3.170**
- Bump `@anthropic-ai/sdk` from 0.102.0 to **0.103.0**
- Handle two new SDK types: `model_refusal_fallback` (system message)
and `fallback` (content block)
## Test plan
- [x] Build passes
- [x] All 355 tests pass (15 skipped)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-09 19:41:17 +02:00
Ben Brandt
7ff6b7fd6b
fix: Forward unstreamed assistant text blocks ( #757 )
2026-06-09 08:48:48 +00:00
Ben Brandt
12bd2762d9
feat: Add experimental elicitation support ( #756 )
...
This is still unstable on ACP, but experimenting with the latest api for
testing. Also allows for a representation of the AskUserQuestion tool
2026-06-09 09:59:06 +02:00
Ben Brandt
0dbccf588f
feat: Update ACP SDK to 0.25.0 ( #753 )
2026-06-05 13:21:20 +00:00
Ben Brandt
9854b0c679
fix: Validate cwd before creating sessions ( #751 )
...
Closes #749
2026-06-05 11:04:47 +00:00
Ben Brandt
18516a3088
feat: Send message ids for assistant and user messages ( #750 )
2026-06-05 10:53:21 +00:00
Ben Brandt
ec14211056
fix: Prune tool cache per session after results ( #748 )
2026-06-05 09:11:34 +00:00
Ben Brandt
398f763f71
fix: Update to better utilize existing SDK data ( #747 )
...
- **feat: Better surface permission, progress, and rate updates**
- **Use SDK context usage and thinking config**
- **Keep learned context size after compaction**
2026-06-05 08:59:06 +00:00
Luca Dibattista
f4704c168f
fix: Prevent cross-family model matching in resolveModelPreference ( #731 )
...
## Summary
Partially addresses #639 . Builds on #702 which added version-aware
matching.
When the SDK's `opus` alias resolves to a newer version than what's in
`availableModels` (e.g. the SDK was bumped to Opus 4.8 but
`availableModels` still contains `claude-opus-4-6[1m]`), the version
check from #702 correctly rejects the `opus` entry (4.8 ≠ 4.6). However,
the tokenized matcher then falls through to `sonnet[1m]` because the
`1m` context hint token alone scores 3 points — enough to win. This
causes `claude-opus-4-6[1m]` to display as "Sonnet (1M context)".
Fix: `scoreModelMatch` now returns 0 when the only matching token is the
context hint. This prevents cross-family matches without hardcoding
model family names.
Note: Claude initially recommended hardcoding model families to be 100%
sure we avoid cross-family matching. While it would be a stronger
signal, I didn't find references to model families in the codebase
(except for opusplan --> opus) so I'm assuming the family list is
transparent to claude-agent-acp.
## Test plan
- [x] Added test: `does not inherit display info across mismatched model
families` — verifies `claude-opus-4-6[1m]` does not resolve to `Sonnet
(1M context)`
- [x] Existing tests pass (20/20 in `acp-agent-settings.test.ts`)
- [x] New test confirmed to fail on unmodified `main` and pass with the
fix
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-06-05 07:46:22 +00:00
Ben Brandt
cffea4be28
fix: Force cancellation when SDK query hangs ( #742 )
...
Closes #680
2026-06-04 11:47:13 +00:00
dependabot[bot]
add7e31704
feat(deps): upgrade to @anthropic-ai/claude-agent-sdk@0.3.162 ( #740 )
...
Bumps the minor group with 9 updates:
| Package | From | To |
| --- | --- | --- |
|
[@anthropic-ai/claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-typescript )
| `0.3.160` | `0.3.162` |
| @anthropic-ai/claude-agent-sdk-darwin-arm64 | `0.3.160` | `0.3.162` |
| @anthropic-ai/claude-agent-sdk-darwin-x64 | `0.3.160` | `0.3.162` |
| @anthropic-ai/claude-agent-sdk-linux-arm64 | `0.3.160` | `0.3.162` |
| @anthropic-ai/claude-agent-sdk-linux-arm64-musl | `0.3.160` |
`0.3.162` |
| @anthropic-ai/claude-agent-sdk-linux-x64 | `0.3.160` | `0.3.162` |
| @anthropic-ai/claude-agent-sdk-linux-x64-musl | `0.3.160` | `0.3.162`
|
| @anthropic-ai/claude-agent-sdk-win32-arm64 | `0.3.160` | `0.3.162` |
| @anthropic-ai/claude-agent-sdk-win32-x64 | `0.3.160` | `0.3.162` |
Updates `@anthropic-ai/claude-agent-sdk` from 0.3.160 to 0.3.162
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/releases ">@anthropic-ai/claude-agent-sdk's
releases</a>.</em></p>
<blockquote>
<h2>v0.3.162</h2>
<h2>What's changed</h2>
<ul>
<li>Refusal error messages now carry <code>stop_reason:
"refusal"</code> and <code>stop_details</code> on the
assistant message and in session transcripts, so SDK consumers can
detect refusals without text-matching the error content</li>
<li>Agent SDK sessions on native builds now default to fast embedded
<code>find</code>/<code>grep</code> search in Bash, matching the
interactive CLI, instead of always registering the dedicated Grep/Glob
tools. To keep the dedicated tools (e.g. to intercept searches via
<code>canUseTool</code> or hooks), name them in the <code>tools</code>
option or reference them in <code>allowedTools</code></li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.162
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.162
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.162
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.162
</code></pre>
<h2>v0.3.161</h2>
<h2>What's changed</h2>
<ul>
<li>The <code>initialize</code> control request is now idempotent: a
second <code>initialize</code> returns the same success payload instead
of an <code>Already initialized</code> error.
<code>ControlResponse</code> gains an optional
<code>pending_permission_requests</code> field, mirroring
<code>ControlErrorResponse</code></li>
<li><code>applyFlagSettings</code> now live-applies <code>agent</code>
changes: switching the active agent (or passing <code>null</code> to
reset) takes effect on the next turn in a running session</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.161
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.161
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.161
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.161
</code></pre>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/blob/main/CHANGELOG.md ">@anthropic-ai/claude-agent-sdk's
changelog</a>.</em></p>
<blockquote>
<h2>0.3.162</h2>
<ul>
<li>Refusal error messages now carry <code>stop_reason:
"refusal"</code> and <code>stop_details</code> on the
assistant message and in session transcripts, so SDK consumers can
detect refusals without text-matching the error content</li>
<li>Agent SDK sessions on native builds now default to fast embedded
<code>find</code>/<code>grep</code> search in Bash, matching the
interactive CLI, instead of always registering the dedicated Grep/Glob
tools. To keep the dedicated tools (e.g. to intercept searches via
<code>canUseTool</code> or hooks), name them in the <code>tools</code>
option or reference them in <code>allowedTools</code></li>
</ul>
<h2>0.3.161</h2>
<ul>
<li>The <code>initialize</code> control request is now idempotent: a
second <code>initialize</code> returns the same success payload instead
of an <code>Already initialized</code> error.
<code>ControlResponse</code> gains an optional
<code>pending_permission_requests</code> field, mirroring
<code>ControlErrorResponse</code></li>
<li><code>applyFlagSettings</code> now live-applies <code>agent</code>
changes: switching the active agent (or passing <code>null</code> to
reset) takes effect on the next turn in a running session</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e9f26a0e02 "><code>e9f26a0</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="2f67c51150 "><code>2f67c51</code></a>
chore: Update CHANGELOG.md</li>
<li>See full diff in <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/compare/v0.3.160...v0.3.162 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@anthropic-ai/claude-agent-sdk-darwin-arm64` from 0.3.160 to
0.3.162
Updates `@anthropic-ai/claude-agent-sdk-darwin-x64` from 0.3.160 to
0.3.162
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64` from 0.3.160 to
0.3.162
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64-musl` from 0.3.160
to 0.3.162
Updates `@anthropic-ai/claude-agent-sdk-linux-x64` from 0.3.160 to
0.3.162
Updates `@anthropic-ai/claude-agent-sdk-linux-x64-musl` from 0.3.160 to
0.3.162
Updates `@anthropic-ai/claude-agent-sdk-win32-arm64` from 0.3.160 to
0.3.162
Updates `@anthropic-ai/claude-agent-sdk-win32-x64` from 0.3.160 to
0.3.162
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-06-04 12:45:17 +02:00
Ben Brandt
895422c72d
fix: Optimize local command marker stripping ( #738 )
...
Closes #727
2026-06-02 23:07:04 +02:00
dependabot[bot]
32175b83a0
feat(deps): bump the minor group with 50 updates ( #737 )
...
Bumps the minor group with 50 updates:
| Package | From | To |
| --- | --- | --- |
|
[@agentclientprotocol/sdk](https://github.com/agentclientprotocol/typescript-sdk )
| `0.22.1` | `0.24.0` |
|
[@anthropic-ai/claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-typescript )
| `0.3.156` | `0.3.160` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser )
| `8.60.0` | `8.60.1` |
| [eslint](https://github.com/eslint/eslint ) | `10.4.0` | `10.4.1` |
|
[vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest )
| `4.1.7` | `4.1.8` |
| @anthropic-ai/claude-agent-sdk-darwin-arm64 | `0.3.156` | `0.3.160` |
| @anthropic-ai/claude-agent-sdk-darwin-x64 | `0.3.156` | `0.3.160` |
| @anthropic-ai/claude-agent-sdk-linux-arm64 | `0.3.156` | `0.3.160` |
| @anthropic-ai/claude-agent-sdk-linux-arm64-musl | `0.3.156` |
`0.3.160` |
| @anthropic-ai/claude-agent-sdk-linux-x64 | `0.3.156` | `0.3.160` |
| @anthropic-ai/claude-agent-sdk-linux-x64-musl | `0.3.156` | `0.3.160`
|
| @anthropic-ai/claude-agent-sdk-win32-arm64 | `0.3.156` | `0.3.160` |
| @anthropic-ai/claude-agent-sdk-win32-x64 | `0.3.156` | `0.3.160` |
|
[@eslint/plugin-kit](https://github.com/eslint/rewrite/tree/HEAD/packages/plugin-kit )
| `0.7.1` | `0.7.2` |
|
[@oxc-project/types](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types )
| `0.132.0` | `0.133.0` |
|
[@rolldown/binding-android-arm64](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-darwin-arm64](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-darwin-x64](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-freebsd-x64](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-linux-arm-gnueabihf](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-linux-arm64-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-linux-arm64-musl](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-linux-ppc64-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-linux-s390x-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-linux-x64-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-linux-x64-musl](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-openharmony-arm64](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-wasm32-wasi](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-win32-arm64-msvc](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@rolldown/binding-win32-x64-msvc](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
|
[@typescript-eslint/project-service](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/project-service )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/scope-manager](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/scope-manager )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/tsconfig-utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/tsconfig-utils )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/type-utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/type-utils )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/types](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/types )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/utils )
| `8.60.0` | `8.60.1` |
|
[@typescript-eslint/visitor-keys](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/visitor-keys )
| `8.60.0` | `8.60.1` |
|
[@vitest/expect](https://github.com/vitest-dev/vitest/tree/HEAD/packages/expect )
| `4.1.7` | `4.1.8` |
|
[@vitest/mocker](https://github.com/vitest-dev/vitest/tree/HEAD/packages/mocker )
| `4.1.7` | `4.1.8` |
|
[@vitest/pretty-format](https://github.com/vitest-dev/vitest/tree/HEAD/packages/pretty-format )
| `4.1.7` | `4.1.8` |
|
[@vitest/runner](https://github.com/vitest-dev/vitest/tree/HEAD/packages/runner )
| `4.1.7` | `4.1.8` |
|
[@vitest/snapshot](https://github.com/vitest-dev/vitest/tree/HEAD/packages/snapshot )
| `4.1.7` | `4.1.8` |
|
[@vitest/spy](https://github.com/vitest-dev/vitest/tree/HEAD/packages/spy )
| `4.1.7` | `4.1.8` |
|
[@vitest/utils](https://github.com/vitest-dev/vitest/tree/HEAD/packages/utils )
| `4.1.7` | `4.1.8` |
|
[rolldown](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown )
| `1.0.2` | `1.0.3` |
| [tinyexec](https://github.com/tinylibs/tinyexec ) | `1.2.3` | `1.2.4` |
| [tinyglobby](https://github.com/SuperchupuDev/tinyglobby ) | `0.2.16` |
`0.2.17` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) |
`8.0.14` | `8.0.16` |
Updates `@agentclientprotocol/sdk` from 0.22.1 to 0.24.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/agentclientprotocol/typescript-sdk/releases ">@agentclientprotocol/sdk's
releases</a>.</em></p>
<blockquote>
<h2>v0.24.0</h2>
<h2><a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.23.0...v0.24.0 ">0.24.0</a>
(2026-06-02)</h2>
<h3>Features</h3>
<ul>
<li>Add resilient schema deserialization (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/167 ">#167</a>)
(<a
href="5864e7306e ">5864e73</a>)</li>
<li><strong>schema:</strong> Stabilize addl dirs and remove unstable
model selectors (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/165 ">#165</a>)
(<a
href="fa6e302808 ">fa6e302</a>)</li>
</ul>
<h2>v0.23.0</h2>
<h2><a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.22.1...v0.23.0 ">0.23.0</a>
(2026-06-01)</h2>
<h3>Features</h3>
<ul>
<li><strong>schema:</strong> Stabilize logout and update schema to
v0.13.4 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/163 ">#163</a>)
(<a
href="cfd900a981 ">cfd900a</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/agentclientprotocol/typescript-sdk/blob/main/CHANGELOG.md ">@agentclientprotocol/sdk's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.23.0...v0.24.0 ">0.24.0</a>
(2026-06-02)</h2>
<h3>Features</h3>
<ul>
<li>Add resilient schema deserialization (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/167 ">#167</a>)
(<a
href="5864e7306e ">5864e73</a>)</li>
<li><strong>schema:</strong> Stabilize addl dirs and remove unstable
model selectors (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/165 ">#165</a>)
(<a
href="fa6e302808 ">fa6e302</a>)</li>
</ul>
<h2><a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.22.1...v0.23.0 ">0.23.0</a>
(2026-06-01)</h2>
<h3>Features</h3>
<ul>
<li><strong>schema:</strong> Stabilize logout and update schema to
v0.13.4 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/163 ">#163</a>)
(<a
href="cfd900a981 ">cfd900a</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8966c11c6e "><code>8966c11</code></a>
chore(main): release 0.24.0 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/166 ">#166</a>)</li>
<li><a
href="5864e7306e "><code>5864e73</code></a>
feat: Add resilient schema deserialization (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/167 ">#167</a>)</li>
<li><a
href="fa6e302808 "><code>fa6e302</code></a>
feat(schema): Stabilize addl dirs and remove unstable model selectors
(<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/165 ">#165</a>)</li>
<li><a
href="0c2e622a11 "><code>0c2e622</code></a>
chore(main): release 0.23.0 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/164 ">#164</a>)</li>
<li><a
href="cfd900a981 "><code>cfd900a</code></a>
feat(schema): Stabilize logout and update schema to v0.13.4 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/163 ">#163</a>)</li>
<li><a
href="171a253ae6 "><code>171a253</code></a>
chore(deps-dev): bump concurrently from 9.2.1 to 10.0.0 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/162 ">#162</a>)</li>
<li><a
href="0ecf00184f "><code>0ecf001</code></a>
chore(deps): bump the minor group with 19 updates (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/161 ">#161</a>)</li>
<li><a
href="ca74103730 "><code>ca74103</code></a>
chore(deps): bump crate-ci/typos from 1.46.2 to 1.47.0 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/160 ">#160</a>)</li>
<li><a
href="c6a9c9487d "><code>c6a9c94</code></a>
chore(deps): bump crate-ci/typos from 1.46.1 to 1.46.2 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/158 ">#158</a>)</li>
<li><a
href="c7256e7c5d "><code>c7256e7</code></a>
chore(deps): bump the minor group with 43 updates (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/159 ">#159</a>)</li>
<li>See full diff in <a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.22.1...v0.24.0 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@anthropic-ai/claude-agent-sdk` from 0.3.156 to 0.3.160
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/releases ">@anthropic-ai/claude-agent-sdk's
releases</a>.</em></p>
<blockquote>
<h2>v0.3.160</h2>
<h2>What's changed</h2>
<ul>
<li>Fixed SDK hook callbacks swallowing abort signals: aborting during a
PostToolUse hook now ends the turn with a final <code>result</code>
message instead of hanging the calling process</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.160
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.160
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.160
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.160
</code></pre>
<h2>v0.3.159</h2>
<h2>What's changed</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.159</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.159
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.159
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.159
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.159
</code></pre>
<h2>v0.3.158</h2>
<h2>What's changed</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.158</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.158
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.158
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.158
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.158
</code></pre>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/blob/main/CHANGELOG.md ">@anthropic-ai/claude-agent-sdk's
changelog</a>.</em></p>
<blockquote>
<h2>0.3.160</h2>
<ul>
<li>Fixed SDK hook callbacks swallowing abort signals: aborting during a
PostToolUse hook now ends the turn with a final <code>result</code>
message instead of hanging the calling process</li>
</ul>
<h2>0.3.159</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.159</li>
</ul>
<h2>0.3.158</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.158</li>
</ul>
<h2>0.3.157</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.157</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b33e8d5626 "><code>b33e8d5</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="84f8395802 "><code>84f8395</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="e3a20564b5 "><code>e3a2056</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="7337b9fdd2 "><code>7337b9f</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="80b644339f "><code>80b6443</code></a>
chore: Update CHANGELOG.md</li>
<li>See full diff in <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/compare/v0.3.156...v0.3.160 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/eslint-plugin` from 8.60.0 to 8.60.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/eslint-plugin's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.1</h2>
<h2>8.60.1 (2026-06-01)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> respect ECMAScript line terminators
in ts-comment rules (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352 ">#12352</a>)</li>
<li><strong>eslint-plugin:</strong> [no-shadow] correct rule to match
ESLint v10 handling (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182 ">#12182</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>lumir</li>
<li>Nevette Bailey <a
href="https://github.com/nevette-bailey "><code>@nevette-bailey</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</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 ">@typescript-eslint/eslint-plugin's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.1 (2026-06-01)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-shadow] correct rule to match
ESLint v10 handling (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182 ">#12182</a>)</li>
<li><strong>eslint-plugin:</strong> respect ECMAScript line terminators
in ts-comment rules (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352 ">#12352</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>lumir</li>
<li>Nevette Bailey <a
href="https://github.com/nevette-bailey "><code>@nevette-bailey</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4f84a697ae "><code>4f84a69</code></a>
chore(release): publish 8.60.1</li>
<li><a
href="598af564db "><code>598af56</code></a>
docs(eslint-plugin): clarify no-redeclare type-value collision not
covered by...</li>
<li><a
href="1849b530c2 "><code>1849b53</code></a>
chore: typecheck using tsgo (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139 ">#12139</a>)</li>
<li><a
href="5341d59dd3 "><code>5341d59</code></a>
chore: fix lint issues (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369 ">#12369</a>)</li>
<li><a
href="f525814f01 "><code>f525814</code></a>
fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10
handling (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1 ">#1</a>...</li>
<li><a
href="2df540cd8b "><code>2df540c</code></a>
chore(eslint-plugin): defer type checks to improve rules performance (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296 ">#12296</a>)</li>
<li><a
href="1ab4284789 "><code>1ab4284</code></a>
fix(eslint-plugin): respect ECMAScript line terminators in ts-comment
rules (...</li>
<li><a
href="2f49df599b "><code>2f49df5</code></a>
docs: update references to <code>@stylistic/eslint-plugin</code> rules
in documentation ...</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/parser` from 8.60.0 to 8.60.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/parser's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.1</h2>
<h2>8.60.1 (2026-06-01)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> respect ECMAScript line terminators
in ts-comment rules (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352 ">#12352</a>)</li>
<li><strong>eslint-plugin:</strong> [no-shadow] correct rule to match
ESLint v10 handling (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182 ">#12182</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>lumir</li>
<li>Nevette Bailey <a
href="https://github.com/nevette-bailey "><code>@nevette-bailey</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</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 ">@typescript-eslint/parser's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.1 (2026-06-01)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4f84a697ae "><code>4f84a69</code></a>
chore(release): publish 8.60.1</li>
<li><a
href="1849b530c2 "><code>1849b53</code></a>
chore: typecheck using tsgo (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139 ">#12139</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser ">compare
view</a></li>
</ul>
</details>
<br />
Updates `eslint` from 10.4.0 to 10.4.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/releases ">eslint's
releases</a>.</em></p>
<blockquote>
<h2>v10.4.1</h2>
<h2>Bug Fixes</h2>
<ul>
<li><a
href="e557467db7 "><code>e557467</code></a>
fix: update <code>@eslint/plugin-kit</code> version to 0.7.2 (<a
href="https://redirect.github.com/eslint/eslint/issues/20930 ">#20930</a>)
(Francesco Trotta)</li>
<li><a
href="d4ce898796 "><code>d4ce898</code></a>
fix: propagate failures from delegated commands (<a
href="https://redirect.github.com/eslint/eslint/issues/20917 ">#20917</a>)
(Minh Vu)</li>
<li><a
href="f4f3507460 "><code>f4f3507</code></a>
fix: prefer-arrow-callback invalid autofix with newline after
<code>async</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20916 ">#20916</a>)
(kuldeep kumar)</li>
<li><a
href="c5bc78b37e "><code>c5bc78b</code></a>
fix: false positive for reference in <code>finally</code> block (<a
href="https://redirect.github.com/eslint/eslint/issues/20655 ">#20655</a>)
(Tanuj Kanti)</li>
<li><a
href="27538c01f5 "><code>27538c0</code></a>
fix: add missing CodePath and CodePathSegment types (<a
href="https://redirect.github.com/eslint/eslint/issues/20853 ">#20853</a>)
(Pixel998)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a
href="61b0add61f "><code>61b0add</code></a>
docs: remove deprecated rule from related rules of
<code>max-params</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20921 ">#20921</a>)
(Tanuj Kanti)</li>
<li><a
href="305d5b91ae "><code>305d5b9</code></a>
docs: remove deprecated rules from related rules section (<a
href="https://redirect.github.com/eslint/eslint/issues/20911 ">#20911</a>)
(Tanuj Kanti)</li>
<li><a
href="49b0202d01 "><code>49b0202</code></a>
docs: fix <code>display: none</code> of ad (<a
href="https://redirect.github.com/eslint/eslint/issues/20901 ">#20901</a>)
(Tanuj Kanti)</li>
<li><a
href="9067f9492e "><code>9067f94</code></a>
docs: switch build to Node.js 24 (<a
href="https://redirect.github.com/eslint/eslint/issues/20893 ">#20893</a>)
(Milos Djermanovic)</li>
<li><a
href="c91b0417e3 "><code>c91b041</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="e349265cb3 "><code>e349265</code></a>
docs: clarify semver strings in rule deprecation objects (<a
href="https://redirect.github.com/eslint/eslint/issues/20885 ">#20885</a>)
(Milos Djermanovic)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a
href="b0e466b6ab "><code>b0e466b</code></a>
test: add <code>data</code> property to invalid tests cases for rules
(<a
href="https://redirect.github.com/eslint/eslint/issues/20924 ">#20924</a>)
(Tanuj Kanti)</li>
<li><a
href="f78838bc4c "><code>f78838b</code></a>
test: add CodePath type coverage (<a
href="https://redirect.github.com/eslint/eslint/issues/20904 ">#20904</a>)
(Pixel998)</li>
<li><a
href="1daa4bd734 "><code>1daa4bd</code></a>
chore: update <code>eslint-plugin-eslint-comments</code> test data to
latest commit (<a
href="https://redirect.github.com/eslint/eslint/issues/20922 ">#20922</a>)
(Francesco Trotta)</li>
<li><a
href="002942ce98 "><code>002942c</code></a>
ci: declare contents:read on update-readme workflow (<a
href="https://redirect.github.com/eslint/eslint/issues/20919 ">#20919</a>)
(Arpit Jain)</li>
<li><a
href="64bca24e7b "><code>64bca24</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/20912 ">#20912</a>)
(ESLint Bot)</li>
<li><a
href="6d7c832950 "><code>6d7c832</code></a>
chore: ignore fflate updates in renovate (<a
href="https://redirect.github.com/eslint/eslint/issues/20908 ">#20908</a>)
(Pixel998)</li>
<li><a
href="b2c8638216 "><code>b2c8638</code></a>
ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (<a
href="https://redirect.github.com/eslint/eslint/issues/20889 ">#20889</a>)
(dependabot[bot])</li>
<li><a
href="a9b8d7f74c "><code>a9b8d7f</code></a>
chore: increase maxBuffer for ecosystem tests (<a
href="https://redirect.github.com/eslint/eslint/issues/20881 ">#20881</a>)
(sethamus)</li>
<li><a
href="b702ead5e1 "><code>b702ead</code></a>
chore: update ecosystem update PR settings (<a
href="https://redirect.github.com/eslint/eslint/issues/20884 ">#20884</a>)
(Pixel998)</li>
<li><a
href="507f60e9a7 "><code>507f60e</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/20882 ">#20882</a>)
(ESLint Bot)</li>
<li><a
href="92f5c5bb6b "><code>92f5c5b</code></a>
test: add unit test for message-count (<a
href="https://redirect.github.com/eslint/eslint/issues/20878 ">#20878</a>)
(kuldeep kumar)</li>
<li><a
href="df321080af "><code>df32108</code></a>
chore: add <code>@eslint/markdown</code> and typescript-eslint
ecosystem tests (<a
href="https://redirect.github.com/eslint/eslint/issues/20837 ">#20837</a>)
(sethamus)</li>
<li><a
href="327f91d36a "><code>327f91d</code></a>
chore: use includeIgnoreFile internally (<a
href="https://redirect.github.com/eslint/eslint/issues/20876 ">#20876</a>)
(Kirk Waiblinger)</li>
<li><a
href="f0dc4bd893 "><code>f0dc4bd</code></a>
chore: pin fflate@0.8.2 (<a
href="https://redirect.github.com/eslint/eslint/issues/20877 ">#20877</a>)
(Milos Djermanovic)</li>
<li><a
href="0f4bd257a6 "><code>0f4bd25</code></a>
ci: run Discord alert for ecosystem test failures (<a
href="https://redirect.github.com/eslint/eslint/issues/20873 ">#20873</a>)
(Copilot)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4a3d15a99c "><code>4a3d15a</code></a>
10.4.1</li>
<li><a
href="43e7e2bdc5 "><code>43e7e2b</code></a>
Build: changelog update for 10.4.1</li>
<li><a
href="e557467db7 "><code>e557467</code></a>
fix: update <code>@eslint/plugin-kit</code> version to 0.7.2 (<a
href="https://redirect.github.com/eslint/eslint/issues/20930 ">#20930</a>)</li>
<li><a
href="b0e466b6ab "><code>b0e466b</code></a>
test: add <code>data</code> property to invalid tests cases for rules
(<a
href="https://redirect.github.com/eslint/eslint/issues/20924 ">#20924</a>)</li>
<li><a
href="d4ce898796 "><code>d4ce898</code></a>
fix: propagate failures from delegated commands (<a
href="https://redirect.github.com/eslint/eslint/issues/20917 ">#20917</a>)</li>
<li><a
href="f4f3507460 "><code>f4f3507</code></a>
fix: prefer-arrow-callback invalid autofix with newline after
<code>async</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20916 ">#20916</a>)</li>
<li><a
href="f78838bc4c "><code>f78838b</code></a>
test: add CodePath type coverage (<a
href="https://redirect.github.com/eslint/eslint/issues/20904 ">#20904</a>)</li>
<li><a
href="61b0add61f "><code>61b0add</code></a>
docs: remove deprecated rule from related rules of
<code>max-params</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20921 ">#20921</a>)</li>
<li><a
href="1daa4bd734 "><code>1daa4bd</code></a>
chore: update <code>eslint-plugin-eslint-comments</code> test data to
latest commit (<a
href="https://redirect.github.com/eslint/eslint/issues/20 ">#20</a>...</li>
<li><a
href="002942ce98 "><code>002942c</code></a>
ci: declare contents:read on update-readme workflow (<a
href="https://redirect.github.com/eslint/eslint/issues/20919 ">#20919</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/eslint/eslint/compare/v10.4.0...v10.4.1 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `vitest` from 4.1.7 to 4.1.8
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitest-dev/vitest/releases ">vitest's
releases</a>.</em></p>
<blockquote>
<h2>v4.1.8</h2>
<h3> 🐞 Bug Fixes</h3>
<ul>
<li><strong>browser</strong>:
<ul>
<li>Disable client <code>cdp</code> API when <code>allowWrite/allowExec:
false</code> [backport to v4] - by <a
href="https://github.com/hi-ogawa "><code>@hi-ogawa</code></a> and
<strong>Codex</strong> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/10450 ">vitest-dev/vitest#10450</a>
<a href="https://github.com/vitest-dev/vitest/commit/e4067b3b1 "><!-- raw
HTML omitted -->(e4067)<!-- raw HTML omitted --></a></li>
<li>Remove orphaned Playwright route when same module is mocked via
multiple ids [backport to v4] - by <a
href="https://github.com/toxik "><code>@toxik</code></a> and <a
href="https://github.com/Zelys-DFKH "><code>@Zelys-DFKH</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/10474 ">vitest-dev/vitest#10474</a>
<a href="https://github.com/vitest-dev/vitest/commit/675b4343f "><!-- raw
HTML omitted -->(675b4)<!-- raw HTML omitted --></a></li>
</ul>
</li>
</ul>
<h5> <a
href="https://github.com/vitest-dev/vitest/compare/v4.1.7...v4.1.8 ">View
changes on GitHub</a></h5>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e61f2dd2a0 "><code>e61f2dd</code></a>
chore: release v4.1.8</li>
<li><a
href="e4067b3b15 "><code>e4067b3</code></a>
fix(browser): disable client <code>cdp</code> API when
<code>allowWrite/allowExec: false</code> [ba...</li>
<li>See full diff in <a
href="https://github.com/vitest-dev/vitest/commits/v4.1.8/packages/vitest ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@anthropic-ai/claude-agent-sdk-darwin-arm64` from 0.3.156 to
0.3.160
Updates `@anthropic-ai/claude-agent-sdk-darwin-x64` from 0.3.156 to
0.3.160
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64` from 0.3.156 to
0.3.160
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64-musl` from 0.3.156
to 0.3.160
Updates `@anthropic-ai/claude-agent-sdk-linux-x64` from 0.3.156 to
0.3.160
Updates `@anthropic-ai/claude-agent-sdk-linux-x64-musl` from 0.3.156 to
0.3.160
Updates `@anthropic-ai/claude-agent-sdk-win32-arm64` from 0.3.156 to
0.3.160
Updates `@anthropic-ai/claude-agent-sdk-win32-x64` from 0.3.156 to
0.3.160
Updates `@eslint/plugin-kit` from 0.7.1 to 0.7.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/rewrite/releases ">@eslint/plugin-kit's
releases</a>.</em></p>
<blockquote>
<h2>plugin-kit: v0.7.2</h2>
<h2><a
href="https://github.com/eslint/rewrite/compare/plugin-kit-v0.7.1...plugin-kit-v0.7.2 ">0.7.2</a>
(2026-05-23)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>add missing .d.cts files while building plugin-kit (<a
href="https://redirect.github.com/eslint/rewrite/issues/445 ">#445</a>)
(<a
href="49e101ba92 ">49e101b</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/rewrite/blob/main/packages/plugin-kit/CHANGELOG.md ">@eslint/plugin-kit's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/eslint/rewrite/compare/plugin-kit-v0.7.1...plugin-kit-v0.7.2 ">0.7.2</a>
(2026-05-23)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>add missing .d.cts files while building plugin-kit (<a
href="https://redirect.github.com/eslint/rewrite/issues/445 ">#445</a>)
(<a
href="49e101ba92 ">49e101b</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ab64b15b8f "><code>ab64b15</code></a>
chore: release main (<a
href="https://github.com/eslint/rewrite/tree/HEAD/packages/plugin-kit/issues/454 ">#454</a>)</li>
<li><a
href="49e101ba92 "><code>49e101b</code></a>
fix: add missing .d.cts files while building plugin-kit (<a
href="https://github.com/eslint/rewrite/tree/HEAD/packages/plugin-kit/issues/445 ">#445</a>)</li>
<li><a
href="d46c928474 "><code>d46c928</code></a>
docs: Update README sponsors</li>
<li><a
href="f8d08d64ce "><code>f8d08d6</code></a>
docs: Update README sponsors</li>
<li><a
href="334038d4f0 "><code>334038d</code></a>
docs: Update README sponsors</li>
<li><a
href="70b69970a2 "><code>70b6997</code></a>
docs: Update README sponsors</li>
<li><a
href="be8981f13f "><code>be8981f</code></a>
ci: add type tests for TypeScript 5.x to CI workflow (<a
href="https://github.com/eslint/rewrite/tree/HEAD/packages/plugin-kit/issues/440 ">#440</a>)</li>
<li><a
href="35b6b944eb "><code>35b6b94</code></a>
chore: update TypeScript to v6 (<a
href="https://github.com/eslint/rewrite/tree/HEAD/packages/plugin-kit/issues/417 ">#417</a>)</li>
<li><a
href="7807d7107c "><code>7807d71</code></a>
docs: Update README sponsors</li>
<li><a
href="57001eafe0 "><code>57001ea</code></a>
docs: Update README sponsors</li>
<li>Additional commits viewable in <a
href="https://github.com/eslint/rewrite/commits/plugin-kit-v0.7.2/packages/plugin-kit ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@oxc-project/types` from 0.132.0 to 0.133.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/oxc-project/oxc/releases ">@oxc-project/types's
releases</a>.</em></p>
<blockquote>
<h2>oxc crates_v0.133.0</h2>
<h3>🚀 Features</h3>
<ul>
<li>e857b0c napi/minify: Expose legalComments option and result (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/20370 ">#20370</a>)
(Boshen)</li>
<li>661132d parser: More friendly error messages for rest assignment
target and rest binding element (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22719 ">#22719</a>)
(sapphi-red)</li>
<li>ee659b6 transformer/legacy-decorator: Add
<code>strictNullChecks</code> option for nullable-union design:type (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22266 ">#22266</a>)
(Kyle Cannon)</li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>e1d064e transformer/class-properties: Reparent lifted private method
helpers (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22716 ">#22716</a>)
(Cameron)</li>
<li>4ac0fca minifier: Preserve <code>0 && (module.exports = {
... })</code> cjs-module-lexer hint (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22729 ">#22729</a>)
(Dunqing)</li>
<li>40ff611 minifier: Mark peephole loop changed when dropping
dead-after-throw statement (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22722 ">#22722</a>)
(Dunqing)</li>
<li>2f7b210 codegen: Emit pife-arrow/function leading comments inside
the wrap (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22720 ">#22720</a>)
(Dunqing)</li>
<li>e184f74 parser: Improve invalid <code>import</code> property access
diagnostic (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22693 ">#22693</a>)
(camc314)</li>
<li>7baed9c transformer/private-method: Clear inherited strict flags (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22508 ">#22508</a>)
(camc314)</li>
<li>a9ad27e parser: Keep annotation comments leading without preceding
newline (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22711 ">#22711</a>)
(Dunqing)</li>
<li>9ea4d64 minifier: Re-evaluate pure/no-side-effects flags after
peephole inlining (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22595 ">#22595</a>)
(Dunqing)</li>
<li>07afbb6 minifier: Drop empty-body IIFE wrapper when called with
arguments (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22589 ">#22589</a>)
(Dunqing)</li>
<li>fa7c463 semantic: Correct TS enum member symbol spans (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22689 ">#22689</a>)
(camc314)</li>
<li>26b9396 semantic: Resolve parameter decorators outside parameter
scope (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22623 ">#22623</a>)
(camc314)</li>
<li>b284045 parser: Switch to module goal eagerly on <code>export</code>
(<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22684 ">#22684</a>)
(Boshen)</li>
<li>dfa931d semantic: Propagate unresolved auto-increment enum value
instead of defaulting to 0 (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22646 ">#22646</a>)
(Dunqing)</li>
<li>69a6ba6 transformer/legacy-decorator: Emit Array for
ReadonlyArray<!-- raw HTML omitted --> in decorator metadata (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22265 ">#22265</a>)
(Kyle Cannon)</li>
<li>e421ef0 transformer/legacy-decorator: Return runtime binding for
design:type (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22640 ">#22640</a>)
(Dunqing)</li>
<li>d61e1d7 codegen: Preserve verbatim text of pure/no-side-effects
comments (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22525 ">#22525</a>)
(Dunqing)</li>
<li>702b14e minifier: Preserve IIFE structure in DCE-only mode (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22547 ">#22547</a>)
(Dunqing)</li>
<li>917da24 parser: Apply PURE comment through member-access chains (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22566 ">#22566</a>)
(Dunqing)</li>
<li>a069b1c codegen: Preserve quotes for cjs-module-lexer equality
strings (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22551 ">#22551</a>)
(Dunqing)</li>
</ul>
<h3>⚡ Performance</h3>
<ul>
<li>2f623b0 semantic: Skip unresolved checks for re-exports (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22660 ">#22660</a>)
(camc314)</li>
<li>0d9553d semantic: Early-exit <code>check_object_expression</code>
for objects with <2 properties (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22668 ">#22668</a>)
(Dunqing)</li>
<li>d721ad9 semantic: Use direct grandparent lookup for TS type
parameters (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22658 ">#22658</a>)
(camc314)</li>
<li>0aff288 semantic: Reorder numeric literal strict mode checks (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22657 ">#22657</a>)
(camc314)</li>
<li>4d5ddb1 semantic: Reorder binding identifier checks (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22656 ">#22656</a>)
(camc314)</li>
<li>e32acd8 semantic: Reorder identifier ambient binding check (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22653 ">#22653</a>)
(camc314)</li>
<li>09fe178 semantic: Reorder ident reference strict mode check (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22652 ">#22652</a>)
(camc314)</li>
<li>4b6add2 semantic: Avoid duplicate ident clone for bindings (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22663 ">#22663</a>)
(camc314)</li>
<li>82f9662 parser: Check identifier kind before context flag (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22662 ">#22662</a>)
(camc314)</li>
<li>d7cd951 parser: Fast path identifier parsing and inline operator
helpers (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22650 ">#22650</a>)
(Boshen)</li>
<li>7b84314 semantic: Use direct byte access for numeric leading-zero
check (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22642 ">#22642</a>)
(camc314)</li>
<li>0345a31 semantic: Pre-size class elements hash map (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22618 ">#22618</a>)
(camc314)</li>
<li>04d3065 minifier: Drop per-call buffers in try_fold_concat (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22596 ">#22596</a>)
(Dunqing)</li>
<li>4f289f1 semantic: Resolve_references_for_current_scope without a
temp Vec (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22599 ">#22599</a>)
(Dunqing)</li>
<li>e862c15 semantic: Avoid heap alloc for var hoist scope ids (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22603 ">#22603</a>)
(Dunqing)</li>
<li>8ff8674 semantic: Early return if <code>excess</code> is
<code>0</code> in <code>Stats::increase_by</code> (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22616 ">#22616</a>)
(camc314)</li>
<li>7a4120e semantic: Pre-reserve unresolved_references using
Stats::references (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22580 ">#22580</a>)
(Dunqing)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="83328b65ce "><code>83328b6</code></a>
release(crates): oxc v0.133.0 (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22734 ">#22734</a>)</li>
<li>See full diff in <a
href="https://github.com/oxc-project/oxc/commits/crates_v0.133.0/npm/oxc-types ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@rolldown/binding-android-arm64` from 1.0.2 to 1.0.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rolldown/rolldown/releases ">@rolldown/binding-android-arm64's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.3</h2>
<h2>[1.0.3] - 2026-05-27</h2>
<h3>🚀 Features</h3>
<ul>
<li>transform: respect decorator strictNullChecks option (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580 ">#9580</a>)
by <a
href="https://github.com/kylecannon "><code>@kylecannon</code></a></li>
<li>drop <code>defer</code> keyword (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503 ">#9503</a>)
by <a
href="https://github.com/TheAlexLichter "><code>@TheAlexLichter</code></a></li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>ci: create target dir before cargo release-oxc update (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9584 ">#9584</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>ci: reorder prepare-release steps to avoid dirty git check failure
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9583 ">#9583</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>testing: canonicalize temp dir early and use platform-specific
separator in test262 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9582 ">#9582</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>testing: resolve symlinked temp dir in test262 snapshot
normalization (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9581 ">#9581</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>testing: canonicalize temp dir path in test262 snapshot
normalization (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9579 ">#9579</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>dev: <code>onOutput</code> called twice when initial build fails (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552 ">#9552</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>dev: make <code>ensureCurrentBuildFinish</code> not returning error
when engine closes (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9564 ">#9564</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>oxc-runtime: route require() to CJS helper variant (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263 ">#9263</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526 ">#9526</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>generator: use exporter chunk's export mode for CJS default
re-exports (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9299 ">#9299</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9529 ">#9529</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>rolldown: always run reduced-atom static cycle check (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441 ">#9441</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9514 ">#9514</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>apply transform.dropLabels before scanning (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9521 ">#9521</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9522 ">#9522</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>rolldown_watcher: take <code>rolldown</code> dep through the
workspace (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9510 ">#9510</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
<li>cache: keep the scan-stage cache consistent when a build fails (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9495 ">#9495</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>skip JSON default-import namespace optimization for write targets
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9484 ">#9484</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9489 ">#9489</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>deps: skip pnpm frozen-lockfile on Netlify to dodge catalog mismatch
bug (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9471 ">#9471</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
</ul>
<h3>🚜 Refactor</h3>
<ul>
<li>oxc-runtime: use Cow for helper path construction (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9538 ">#9538</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>fold import defer phase drop into PreProcessor (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9524 ">#9524</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>distinguish <code>map: null</code> vs <code>map: undefined</code> in
transform hook output (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9497 ">#9497</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>explain the policy for Rust crates (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9547 ">#9547</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>cache: add design doc for cache (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9544 ">#9544</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>guide/troubleshooting: add TDZ error section (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9537 ">#9537</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>dev-engine: add design doc for dev-engine (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9479 ">#9479</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>lazy-barrel: tweak some words (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9483 ">#9483</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>lazy-barrel: expand reasoning behind LARGE_BARREL_MODULES advice (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477 ">#9477</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
</ul>
<h3>⚡ Performance</h3>
<ul>
<li>generate: thread ast_table by value into codegen consumer (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9555 ">#9555</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
<li>finalizers: replace <code>_reExport</code> construction with a
direct call to avoid calling <code>clone_in</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9501 ">#9501</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>reorder hot-path boolean checks to short-circuit on cheap predicates
first (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9523 ">#9523</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
</ul>
<h3>🧪 Testing</h3>
<ul>
<li>rolldown: regression fixture for <a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9401 ">#9401</a>
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9418 ">#9418</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</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/rolldown/rolldown/blob/main/CHANGELOG.md ">@rolldown/binding-android-arm64's
changelog</a>.</em></p>
<blockquote>
<h2>[1.0.3] - 2026-05-27</h2>
<h3>🚀 Features</h3>
<ul>
<li>transform: respect decorator strictNullChecks option (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580 ">#9580</a>)
by <a
href="https://github.com/kylecannon "><code>@kylecannon</code></a></li>
<li>drop <code>defer</code> keyword (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503 ">#9503</a>)
by <a
href="https://github.com/TheAlexLichter "><code>@TheAlexLichter</code></a></li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>ci: create target dir before cargo release-oxc update (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9584 ">#9584</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>ci: reorder prepare-release steps to avoid dirty git check failure
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9583 ">#9583</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>testing: canonicalize temp dir early and use platform-specific
separator in test262 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9582 ">#9582</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>testing: resolve symlinked temp dir in test262 snapshot
normalization (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9581 ">#9581</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>testing: canonicalize temp dir path in test262 snapshot
normalization (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9579 ">#9579</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>dev: <code>onOutput</code> called twice when initial build fails (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552 ">#9552</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>dev: make <code>ensureCurrentBuildFinish</code> not returning error
when engine closes (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9564 ">#9564</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>oxc-runtime: route require() to CJS helper variant (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263 ">#9263</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526 ">#9526</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>generator: use exporter chunk's export mode for CJS default
re-exports (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9299 ">#9299</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9529 ">#9529</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>rolldown: always run reduced-atom static cycle check (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441 ">#9441</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9514 ">#9514</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>apply transform.dropLabels before scanning (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9521 ">#9521</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9522 ">#9522</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>rolldown_watcher: take <code>rolldown</code> dep through the
workspace (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9510 ">#9510</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
<li>cache: keep the scan-stage cache consistent when a build fails (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9495 ">#9495</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>skip JSON default-import namespace optimization for write targets
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9484 ">#9484</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9489 ">#9489</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>deps: skip pnpm frozen-lockfile on Netlify to dodge catalog mismatch
bug (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9471 ">#9471</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
</ul>
<h3>🚜 Refactor</h3>
<ul>
<li>oxc-runtime: use Cow for helper path construction (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9538 ">#9538</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>fold import defer phase drop into PreProcessor (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9524 ">#9524</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>distinguish <code>map: null</code> vs <code>map: undefined</code> in
transform hook output (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9497 ">#9497</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>explain the policy for Rust crates (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9547 ">#9547</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>cache: add design doc for cache (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9544 ">#9544</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>guide/troubleshooting: add TDZ error section (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9537 ">#9537</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>dev-engine: add design doc for dev-engine (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9479 ">#9479</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>lazy-barrel: tweak some words (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9483 ">#9483</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>lazy-barrel: expand reasoning behind LARGE_BARREL_MODULES advice (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477 ">#9477</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
</ul>
<h3>⚡ Performance</h3>
<ul>
<li>generate: thread ast_table by value into codegen consumer (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9555 ">#9555</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
<li>finalizers: replace <code>_reExport</code> construction with a
direct call to avoid calling <code>clone_in</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9501 ">#9501</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>reorder hot-path boolean checks to short-circuit on cheap predicates
first (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9523 ">#9523</a>)
by <a href="https://github.com/Boshen "><code>@Boshen</code></a></li>
</ul>
<h3>🧪 Testing</h3>
<ul>
<li>rolldown: regression fixture for <a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9401 ">#9401</a>
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9418 ">#9418</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>failing test for <a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441 ">#9441</a>
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9504 ">#9504</a>)
by <a
href="https://github.com/TheAlexLichter "><code>@TheAlexLichter</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a287faaa3d "><code>a287faa</code></a>
release: v1.0.3 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9586 ">#9586</a>)</li>
<li><a
href="e3b77564d4 "><code>e3b7756</code></a>
feat(transform): respect decorator strictNullChecks option (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580 ">#9580</a>)</li>
<li><a
href="8326121d51 "><code>8326121</code></a>
chore(deps): upgrade oxc to 0.133.0 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9563 ">#9563</a>)</li>
<li><a
href="c7bbe2d4c1 "><code>c7bbe2d</code></a>
fix(dev): <code>onOutput</code> called twice when initial build fails
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552 ">#9552</a>)</li>
<li><a
href="95ed7caa16 "><code>95ed7ca</code></a>
fix(dev): make <code>ensureCurrentBuildFinish</code> not returning error
when engine clo...</li>
<li><a
href="f06c2a06f5 "><code>f06c2a0</code></a>
fix(oxc-runtime): route require() to CJS helper variant (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263 ">#9263</a>)
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526 ">#9526</a>)</li>
<li><a
href="1de499a7a7 "><code>1de499a</code></a>
feat: drop <code>defer</code> keyword (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503 ">#9503</a>)</li>
<li><a href=...
_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: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-06-02 22:52:25 +02:00
Ben Brandt
41e3771881
Revert "fix: Remove hide Claude auth flag handling" ( #723 )
...
Reverts agentclientprotocol/claude-agent-acp#707
2026-05-29 12:06:08 +02:00
dependabot[bot]
a172885c80
feat(deps): bump to @anthropic-ai/claude-agent-sdk 0.3.154 (Opus 4.8) ( #716 )
...
Bumps the minor group with 10 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
|
[@anthropic-ai/claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-typescript )
| `0.3.146` | `0.3.153` |
|
[@anthropic-ai/sdk](https://github.com/anthropics/anthropic-sdk-typescript )
| `0.97.1` | `0.99.0` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin )
| `8.59.4` | `8.60.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser )
| `8.59.4` | `8.60.0` |
|
[@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime )
| `7.29.2` | `7.29.7` |
| [es-object-atoms](https://github.com/ljharb/es-object-atoms ) | `1.1.1`
| `1.1.2` |
| [eventsource-parser](https://github.com/rexxars/eventsource-parser ) |
`3.0.8` | `3.1.0` |
| [hono](https://github.com/honojs/hono ) | `4.12.21` | `4.12.23` |
| [semver](https://github.com/npm/node-semver ) | `7.8.0` | `7.8.1` |
| [tinyexec](https://github.com/tinylibs/tinyexec ) | `1.1.2` | `1.2.2` |
Updates `@anthropic-ai/claude-agent-sdk` from 0.3.146 to 0.3.153
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/releases ">@anthropic-ai/claude-agent-sdk's
releases</a>.</em></p>
<blockquote>
<h2>v0.3.153</h2>
<h2>What's changed</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.153</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.153
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.153
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.153
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.153
</code></pre>
<h2>v0.3.152</h2>
<h2>What's changed</h2>
<ul>
<li><code>SessionStart</code> hooks can now return <code>reloadSkills:
true</code> to trigger a skill re-scan, and set the session title via
<code>hookSpecificOutput.sessionTitle</code></li>
<li>Added a <code>MessageDisplay</code> hook event that lets hooks
transform or hide assistant message text as it is displayed</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.152
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.152
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.152
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.152
</code></pre>
<h2>v0.3.150</h2>
<h2>What's changed</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.150</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.150
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.150
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.150
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.150
</tr></table>
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/blob/main/CHANGELOG.md ">@anthropic-ai/claude-agent-sdk's
changelog</a>.</em></p>
<blockquote>
<h2>0.3.153</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.153</li>
</ul>
<h2>0.3.152</h2>
<ul>
<li><code>SessionStart</code> hooks can now return <code>reloadSkills:
true</code> to trigger a skill re-scan, and set the session title via
<code>hookSpecificOutput.sessionTitle</code></li>
<li>Added a <code>MessageDisplay</code> hook event that lets hooks
transform or hide assistant message text as it is displayed</li>
</ul>
<h2>0.3.151</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.151</li>
</ul>
<h2>0.3.150</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.150</li>
</ul>
<h2>0.3.149</h2>
<ul>
<li>Fixed <code>options.env</code> dropping
<code>CLAUDE_AGENT_SDK_VERSION</code> (used for <code>User-Agent</code>
and telemetry) when a custom environment is supplied, and corrected the
<code>Options.env</code> docs to state that the value replaces the
subprocess environment rather than merging with
<code>process.env</code></li>
</ul>
<h2>0.3.148</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.148</li>
</ul>
<h2>0.3.147</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.147</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8039cb0892 "><code>8039cb0</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="33218719ae "><code>3321871</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="4fed972a4e "><code>4fed972</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="c15f6e270b "><code>c15f6e2</code></a>
Use workload identity federation for Claude auth in issue triage (<a
href="https://redirect.github.com/anthropics/claude-agent-sdk-typescript/issues/335 ">#335</a>)</li>
<li><a
href="fb2636c6ec "><code>fb2636c</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="321a105505 "><code>321a105</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="bf61f4ab9a "><code>bf61f4a</code></a>
chore: Update CHANGELOG.md</li>
<li>See full diff in <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/compare/v0.3.146...v0.3.153 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@anthropic-ai/sdk` from 0.97.1 to 0.99.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-typescript/releases ">@anthropic-ai/sdk's
releases</a>.</em></p>
<blockquote>
<h2>sdk: v0.99.0</h2>
<h2>0.99.0 (2026-05-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.1...sdk-v0.99.0 ">sdk-v0.98.1...sdk-v0.99.0</a></p>
<h3>Features</h3>
<ul>
<li>support custom file size caps (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1029 ">#1029</a>)
(<a
href="814cd4c6b5 ">814cd4c</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>streaming:</strong> carry stop_details through message_delta
accumulation (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1027 ">#1027</a>)
(<a
href="198bc277fd ">198bc27</a>)</li>
</ul>
<h2>sdk: v0.98.1</h2>
<h2>0.98.1 (2026-05-26)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.0...sdk-v0.98.1 ">sdk-v0.98.0...sdk-v0.98.1</a></p>
<h3>Bug Fixes</h3>
<ul>
<li><strong>client:</strong> preserve directory prefix in
skills.versions.create uploads (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1024 ">#1024</a>)
(<a
href="abbcd6a47d ">abbcd6a</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>client:</strong> swap to using Trusted Publishing (<a
href="821a50ef1f ">821a50e</a>)</li>
<li><strong>examples:</strong> rename managed-agents
private-sandbox-worker example to self-hosted-sandbox-worker (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1023 ">#1023</a>)
(<a
href="49fe221fe4 ">49fe221</a>)</li>
</ul>
<h2>sdk: v0.98.0</h2>
<h2>0.98.0 (2026-05-21)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.97.1...sdk-v0.98.0 ">sdk-v0.97.1...sdk-v0.98.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Add support for thinking-token-count beta for
estimated tokens in thinking block deltas when streaming (<a
href="0528d47b0a ">0528d47</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-typescript/blob/main/CHANGELOG.md ">@anthropic-ai/sdk's
changelog</a>.</em></p>
<blockquote>
<h2>0.99.0 (2026-05-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.1...sdk-v0.99.0 ">sdk-v0.98.1...sdk-v0.99.0</a></p>
<h3>Features</h3>
<ul>
<li>support custom file size caps (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1029 ">#1029</a>)
(<a
href="814cd4c6b5 ">814cd4c</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>streaming:</strong> carry stop_details through message_delta
accumulation (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1027 ">#1027</a>)
(<a
href="198bc277fd ">198bc27</a>)</li>
</ul>
<h2>0.98.1 (2026-05-26)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.0...sdk-v0.98.1 ">sdk-v0.98.0...sdk-v0.98.1</a></p>
<h3>Bug Fixes</h3>
<ul>
<li><strong>client:</strong> preserve directory prefix in
skills.versions.create uploads (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1024 ">#1024</a>)
(<a
href="abbcd6a47d ">abbcd6a</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>client:</strong> swap to using Trusted Publishing (<a
href="821a50ef1f ">821a50e</a>)</li>
<li><strong>examples:</strong> rename managed-agents
private-sandbox-worker example to self-hosted-sandbox-worker (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1023 ">#1023</a>)
(<a
href="49fe221fe4 ">49fe221</a>)</li>
</ul>
<h2>0.98.0 (2026-05-21)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.97.1...sdk-v0.98.0 ">sdk-v0.97.1...sdk-v0.98.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Add support for thinking-token-count beta for
estimated tokens in thinking block deltas when streaming (<a
href="0528d47b0a ">0528d47</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1b2500dcae "><code>1b2500d</code></a>
chore: release main</li>
<li><a
href="05304ab0ac "><code>05304ab</code></a>
ci: pin detect-breaking-changes actions to commit SHAs (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1022 ">#1022</a>)</li>
<li><a
href="1ec38204c8 "><code>1ec3820</code></a>
fix(streaming): carry stop_details through message_delta accumulation
(<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1027 ">#1027</a>)</li>
<li><a
href="8bb6782c95 "><code>8bb6782</code></a>
feat: support custom file size caps (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1029 ">#1029</a>)</li>
<li><a
href="1fe87f3747 "><code>1fe87f3</code></a>
chore: release main</li>
<li><a
href="a654489537 "><code>a654489</code></a>
chore(client): swap to using Trusted Publishing</li>
<li><a
href="9c5c09856e "><code>9c5c098</code></a>
fix(client): preserve directory prefix in skills.versions.create uploads
(<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1024 ">#1024</a>)</li>
<li><a
href="4dd54a9be4 "><code>4dd54a9</code></a>
chore(examples): rename managed-agents private-sandbox-worker example to
self...</li>
<li><a
href="32ce8c0d08 "><code>32ce8c0</code></a>
chore: release main</li>
<li><a
href="1873a96304 "><code>1873a96</code></a>
feat(api): Add support for thinking-token-count beta for estimated
tokens in ...</li>
<li>See full diff in <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.97.1...sdk-v0.99.0 ">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~GitHub%20Actions ">GitHub Actions</a>, a new
releaser for <code>@anthropic-ai/sdk</code> since your current
version.</p>
</details>
<br />
Updates `@typescript-eslint/eslint-plugin` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/eslint-plugin's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</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 ">@typescript-eslint/eslint-plugin's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for eslint-plugin to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/eslint-plugin ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/parser` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/parser's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</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 ">@typescript-eslint/parser's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/parser ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@anthropic-ai/claude-agent-sdk-darwin-arm64` from 0.3.146 to
0.3.153
Updates `@anthropic-ai/claude-agent-sdk-darwin-x64` from 0.3.146 to
0.3.153
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64` from 0.3.146 to
0.3.153
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64-musl` from 0.3.146
to 0.3.153
Updates `@anthropic-ai/claude-agent-sdk-linux-x64` from 0.3.146 to
0.3.153
Updates `@anthropic-ai/claude-agent-sdk-linux-x64-musl` from 0.3.146 to
0.3.153
Updates `@anthropic-ai/claude-agent-sdk-win32-arm64` from 0.3.146 to
0.3.153
Updates `@anthropic-ai/claude-agent-sdk-win32-x64` from 0.3.146 to
0.3.153
Updates `@babel/runtime` from 7.29.2 to 7.29.7
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/babel/babel/releases ">@babel/runtime's
releases</a>.</em></p>
<blockquote>
<h2>v7.29.7 (2026-05-25)</h2>
<p>Re-release all packages with npm provenance attestations</p>
<h2>v7.29.6 (2026-05-25)</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li><code>babel-generator</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/18014 ">#18014</a>
Catchup source map position in preserveFormat (<a
href="https://github.com/nicolo-ribaudo "><code>@nicolo-ribaudo</code></a>)</li>
</ul>
</li>
<li><code>babel-core</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/18001 ">#18001</a>
[7.x packport]Improve input source map handling (<a
href="https://github.com/JLHwung "><code>@JLHwung</code></a>)</li>
</ul>
</li>
<li><code>babel-core</code>, <code>babel-generator</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/17998 ">#17998</a>
Preserve original identifier names from input sourcemaps (<a
href="https://github.com/babel/babel/tree/HEAD/packages/babel-runtime/issues/17992 ">#17992</a>)
(<a href="https://github.com/Andarist "><code>@Andarist</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 3</h4>
<ul>
<li>Huáng Jùnliàng (<a
href="https://github.com/JLHwung "><code>@JLHwung</code></a>)</li>
<li>Mateusz Burzyński (<a
href="https://github.com/Andarist "><code>@Andarist</code></a>)</li>
<li>Nicolò Ribaudo (<a
href="https://github.com/nicolo-ribaudo "><code>@nicolo-ribaudo</code></a>)</li>
</ul>
<h2>v7.29.5 (2026-05-05)</h2>
<h4>🏠 Internal</h4>
<ul>
<li><code>babel-preset-env</code>
<ul>
<li>Update <code>@babel/*</code> dependencies</li>
</ul>
</li>
</ul>
<h2>v7.29.4 (2026-05-05)</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li><code>babel-plugin-transform-modules-systemjs</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/17974 ">#17974</a>
[7.x backport]fix(systemjs): improve module string name support (<a
href="https://github.com/JLHwung "><code>@JLHwung</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Huáng Jùnliàng (<a
href="https://github.com/JLHwung "><code>@JLHwung</code></a>)</li>
</ul>
<h2>v7.29.3 (2026-04-30)</h2>
<h4>👓 Spec Compliance</h4>
<ul>
<li><code>babel-parser</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/17923 ">#17923</a>
Support flow extends bound (<a
href="https://github.com/JLHwung "><code>@JLHwung</code></a>)</li>
</ul>
</li>
</ul>
<h4>🐛 Bug Fix</h4>
<ul>
<li><code>babel-helper-create-class-features-plugin</code>,
<code>babel-plugin-proposal-decorators</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/17931 ">#17931</a>
fix(decorators): replace super within all removed static elements (<a
href="https://github.com/JLHwung "><code>@JLHwung</code></a>)</li>
</ul>
</li>
<li><code>babel-register</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/17915 ">#17915</a> Fix
thread synchronization issues in <code>@babel/register</code> (<a
href="https://github.com/liuxingbaoyu "><code>@liuxingbaoyu</code></a>)</li>
</ul>
</li>
<li><code>babel-compat-data</code>,
<code>babel-plugin-bugfix-safari-rest-destructuring-rhs-array</code>,
<code>babel-preset-env</code>
<ul>
<li><a
href="https://redirect.github.com/babel/babel/pull/17788 ">#17788</a> Add
bugfix plugin for Safari array rest destructuring bug (<a
href="https://github.com/JLHwung "><code>@JLHwung</code></a>)</li>
</ul>
</li>
</ul>
<h4>💅 Polish</h4>
<ul>
<li><code>babel-parser</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4fba754118 "><code>4fba754</code></a>
v7.29.7</li>
<li>See full diff in <a
href="https://github.com/babel/babel/commits/v7.29.7/packages/babel-runtime ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/project-service` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/project-service's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/project-service/CHANGELOG.md ">@typescript-eslint/project-service's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for project-service to align it with
other projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/project-service ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/scope-manager` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/scope-manager's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/scope-manager/CHANGELOG.md ">@typescript-eslint/scope-manager's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for scope-manager to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/scope-manager ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/tsconfig-utils` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/tsconfig-utils's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/tsconfig-utils/CHANGELOG.md ">@typescript-eslint/tsconfig-utils's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for tsconfig-utils to align it with
other projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/tsconfig-utils ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/type-utils` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/type-utils's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/type-utils/CHANGELOG.md ">@typescript-eslint/type-utils's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for type-utils to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/type-utils ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/types` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/types's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/types/CHANGELOG.md ">@typescript-eslint/types's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for types to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/types ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/typescript-estree` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/typescript-estree's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-estree/CHANGELOG.md ">@typescript-eslint/typescript-estree's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li><a
href="b02883f702 "><code>b02883f</code></a>
fix: playground TS version selector is not working (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree/issues/12326 ">#12326</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/typescript-estree ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/utils` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/utils's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/utils/CHANGELOG.md ">@typescript-eslint/utils's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for utils to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/utils ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/visitor-keys` from 8.59.4 to 8.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/visitor-keys's
releases</a>.</em></p>
<blockquote>
<h2>v8.60.0</h2>
<h2>8.60.0 (2026-05-25)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>rule-tester:</strong> added updates of RuleTester from
upstream (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291 ">#12291</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>playground TS version selector is not working (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326 ">#12326</a>,
<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325 ">#12325</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Evyatar Daud <a
href="https://github.com/StyleShit "><code>@StyleShit</code></a></li>
<li>Vinccool96</li>
</ul>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/visitor-keys/CHANGELOG.md ">@typescript-eslint/visitor-keys's
changelog</a>.</em></p>
<blockquote>
<h2>8.60.0 (2026-05-25)</h2>
<p>This was a version bump only for visitor-keys to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f891c29de5 "><code>f891c29</code></a>
chore(release): publish 8.60.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/visitor-keys ">compare
view</a></li>
</ul>
</details>
<br />
Updates `es-object-atoms` from 1.1.1 to 1.1.2
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/es-shims/es-object-atoms/blob/main/CHANGELOG.md ">es-object-atoms's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/es-shims/es-object-atoms/compare/v1.1.1...v1.1.2 ">v1.1.2</a>
- 2026-05-22</h2>
<h3>Commits</h3>
<ul>
<li>[Dev Deps] update <code>@ljharb/eslint-config</code>,
<code>@ljharb/tsconfig</code>, <code>auto-changelog</code>,
<code>eslint</code>, <code>npmignore</code> <a
href="41e3d94f6b "><code>41e3d94</code></a></li>
<li>[types] improve <code>isObject</code> type <a
href="758edc2280 "><code>758edc2</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9e62644a85 "><code>9e62644</code></a>
v1.1.2</li>
<li><a
href="41e3d94f6b "><code>41e3d94</code></a>
[Dev Deps] update <code>@ljharb/eslint-config</code>,
<code>@ljharb/tsconfig</code>, `auto-changelo...</li>
<li><a
href="758edc2280 "><code>758edc2</code></a>
[types] improve <code>isObject</code> type</li>
<li>See full diff in <a
href="https://github.com/ljharb/es-object-atoms/compare/v1.1.1...v1.1.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `eventsource-parser` from 3.0.8 to 3.1.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rexxars/eventsource-parser/releases ">eventsource-parser's
releases</a>.</em></p>
<blockquote>
<h2>v3.1.0</h2>
<h2><a
href="https://github.com/rexxars/eventsource-parser/compare/v3.0.8...v3.1.0 ">3.1.0</a>
(2026-05-27)</h2>
<h3>Features</h3>
<ul>
<li>add <code>maxBufferSize</code> option (<a
href="https://redirect.github.com/rexxars/eventsource-parser/issues/32 ">#32</a>)
(<a
href="9bbcd0746d ">9bbcd07</a>)</li>
</ul>
<hr />
<p>This release is also available on:</p>
<ul>
<li><a
href="https://www.npmjs.com/package/eventsource-parser/v/3.1.0 "><code>npm
package (@latest dist-tag)</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rexxars/eventsource-parser/blob/main/CHANGELOG.md ">eventsource-parser's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/rexxars/eventsource-parser/compare/v3.0.8...v3.1.0 ">3.1.0</a>
(2026-05-27)</h2>
<h3>Features</h3>
<ul>
<li>add <code>maxBufferSize</code> option (<a
href="https://redirect.github.com/rexxars/eventsource-parser/issues/32 ">#32</a>)
(<a
href="9bbcd0746d ">9bbcd07</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="83db3dec52 "><code>83db3de</code></a>
chore(release): 3.1.0 [skip ci]</li>
<li><a
href="9bbcd0746d "><code>9bbcd07</code></a>
feat: add <code>maxBufferSize</code> option (<a
href="https://redirect.github.com/rexxars/eventsource-parser/issues/32 ">#32</a>)</li>
<li><a
href="f5cafc0644 "><code>f5cafc0</code></a>
chore: update lockfiles</li>
<li><a
href="9099f5ed4d "><code>9099f5e</code></a>
chore: upgrade dev dependencies</li>
<li>See full diff in <a
href="https://github.com/rexxars/eventsource-parser/compare/v3.0.8...v3.1.0 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `hono` from 4.12.21 to 4.12.23
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/honojs/hono/releases ">hono's
releases</a>.</em></p>
<blockquote>
<h2>v4.12.23</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(serve-static): normalize all backslashes in file paths, not just
the first in <a
href="https://redirect.github.com/honojs/hono/pull/4962 ">honojs/hono#4962</a></li>
<li>feat(context): export the Context class publicly by <a
href="https://github.com/BlankParticle "><code>@BlankParticle</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4543 ">honojs/hono#4543</a></li>
<li>docs(contribution): add AI Usage Policy by <a
href="https://github.com/yusukebe "><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/4970 ">honojs/hono#4970</a></li>
<li>feat(compress): add contentTypeFilter option and
<code>COMPRESSIBLE_CONTENT_TYPE_REGEX</code> re-export by <a
href="https://github.com/na-trium-144 "><code>@na-trium-144</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4961 ">honojs/hono#4961</a></li>
<li>fix(utils/ipaddr): do not compress a single 0 group to
<code>::</code> by <a
href="https://github.com/yusukebe "><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/4971 ">honojs/hono#4971</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/honojs/hono/compare/v4.12.22...v4.12.23 ">https://github.com/honojs/hono/compare/v4.12.22...v4.12.23 </a></p>
<h2>v4.12.22</h2>
<h2>What's Changed</h2>
<ul>
<li>chore: update vitest to v4 and cleanups by <a
href="https://github.com/BlankParticle "><code>@BlankParticle</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4952 ">honojs/hono#4952</a></li>
<li>fix(mime): specify charset parameter per MIME type instead of
mechanical detection by <a
href="https://github.com/renatograsso10 "><code>@renatograsso10</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4912 ">honojs/hono#4912</a></li>
<li>fix(compress): respect Accept-Encoding when encoding option is set
by <a href="https://github.com/LeSingh1 "><code>@LeSingh1</code></a> in
<a
href="https://redirect.github.com/honojs/hono/pull/4951 ">honojs/hono#4951</a></li>
<li>fix(deno): echo negotiated WebSocket subprotocol in upgrade response
by <a href="https://github.com/ATOM00blue "><code>@ATOM00blue</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4955 ">honojs/hono#4955</a></li>
<li>feat: add msgpack as a compressible content type by <a
href="https://github.com/na-trium-144 "><code>@na-trium-144</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4957 ">honojs/hono#4957</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/renatograsso10 "><code>@renatograsso10</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4912 ">honojs/hono#4912</a></li>
<li><a href="https://github.com/LeSingh1 "><code>@LeSingh1</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4951 ">honojs/hono#4951</a></li>
<li><a
href="https://github.com/ATOM00blue "><code>@ATOM00blue</code></a> made
their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4955 ">honojs/hono#4955</a></li>
<li><a
href="https://github.com/na-trium-144 "><code>@na-trium-144</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4957 ">honojs/hono#4957</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/honojs/hono/compare/v4.12.21...v4.12.22 ">https://github.com/honojs/hono/compare/v4.12.21...v4.12.22 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="83bfb3bb4a "><code>83bfb3b</code></a>
4.12.23</li>
<li><a
href="bcd290a64c "><code>bcd290a</code></a>
fix(utils/ipaddr): do not compress a single 0 group to <code>::</code>
(<a
href="https://redirect.github.com/honojs/hono/issues/4971 ">#4971</a>)</li>
<li><a
href="c968177d9c "><code>c968177</code></a>
feat(compress): add contentTypeFilter option and
`COMPRESSIBLE_CONTENT_TYPE_R...</li>
<li><a
href="0265a5453a "><code>0265a54</code></a>
docs(contribution): add AI Usage Policy (<a
href="https://redirect.github.com/honojs/hono/issues/4970 ">#4970</a>)</li>
<li><a
href="c84c5d2d46 "><code>c84c5d2</code></a>
feat(context): export the Context class publicly (<a
href="https://redirect.github.com/honojs/hono/issues/4543 ">#4543</a>)</li>
<li><a
href="82dad6297c "><code>82dad62</code></a>
fix(serve-static): normalize all backslashes in file paths, not just the
firs...</li>
<li><a
href="2f01b774b1 "><code>2f01b77</code></a>
4.12.22</li>
<li><a
href="6bc0dff277 "><code>6bc0dff</code></a>
feat: add msgpack as a compressible content type (<a
href="https://redirect.github.com/honojs/hono/issues/4957 ">#4957</a>)</li>
<li><a
href="7e0555d14c "><code>7e0555d</code></a>
fix(deno): echo negotiated WebSocket subprotocol in upgrade response (<a
href="https://redirect.github.com/honojs/hono/issues/4955 ">#4955</a>)</li>
<li><a
href="f0ed246591 "><code>f0ed246</code></a>
fix(compress): respect Accept-Encoding when encoding option is set (<a
href="https://redirect.github.com/honojs/hono/issues/4951 ">#4951</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/honojs/hono/compare/v4.12.21...v4.12.23 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `semver` from 7.8.0 to 7.8.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/npm/node-semver/releases ">semver's
releases</a>.</em></p>
<blockquote>
<h2>v7.8.1</h2>
<h2><a
href="https://github.com/npm/node-semver/compare/v7.8.0...v7.8.1 ">7.8.1</a>
(2026-05-21)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><a
href="17aa702d91 "><code>17aa702</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/869 ">#869</a>
strip build metadata before comparator trimming (<a
href="https://redirect.github.com/npm/node-semver/issues/869 ">#869</a>)
(<a
href="https://github.com/owlstronaut "><code>@owlstronaut</code></a>)</li>
<li><a
href="5f3ca133e0 "><code>5f3ca13</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/867 ">#867</a>
handle prerelease bounds in subset (<a
href="https://redirect.github.com/npm/node-semver/issues/867 ">#867</a>)
(<a
href="https://github.com/puneetdixit200 "><code>@puneetdixit200</code></a>,
Puneet Dixit)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/npm/node-semver/blob/main/CHANGELOG.md ">semver's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/npm/node-semver/compare/v7.8.0...v7.8.1 ">7.8.1</a>
(2026-05-21)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><a
href="17aa702d91 "><code>17aa702</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/869 ">#869</a>
strip build metadata before comparator trimming (<a
href="https://redirect.github.com/npm/node-semver/issues/869 ">#869</a>)
(<a
href="https://github.com/owlstronaut "><code>@owlstronaut</code></a>)</li>
<li><a
href="5f3ca133e0 "><code>5f3ca13</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/867 ">#867</a>
handle prerelease bounds in subset (<a
href="https://redirect.github.com/npm/node-semver/issues/867 ">#867</a>)
(<a
href="https://github.com/puneetdixit200 "><code>@puneetdixit200</code></a>,
Puneet Dixit)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76416081a8 "><code>7641608</code></a>
chore: release 7.8.1 (<a
href="https://redirect.github.com/npm/node-semver/issues/868 ">#868</a>)</li>
<li><a
href="17aa702d91 "><code>17aa702</code></a>
fix: strip build metadata before comparator trimming (<a
href="https://redirect.github.com/npm/node-semver/issues/869 ">#869</a>)</li>
<li><a
href="5f3ca133e0 "><code>5f3ca13</code></a>
fix: handle prerelease bounds in subset (<a
href="https://redirect.github.com/npm/node-semver/issues/867 ">#867</a>)</li>
<li>See full diff in <a
href="https://github.com/npm/node-semver/compare/v7.8.0...v7.8.1 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `tinyexec` from 1.1.2 to 1.2.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tinylibs/tinyexec/releases ">tinyexec's
releases</a>.</em></p>
<blockquote>
<h2>1.2.2</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: correct shebang regex by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/134 ">tinylibs/tinyexec#134</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/tinylibs/tinyexec/compare/1.2.1...1.2.2 ">https://github.com/tinylibs/tinyexec/compare/1.2.1...1.2.2 </a></p>
<h2>1.2.1</h2>
<h2>What's Changed</h2>
<ul>
<li>test: add async throw tests by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/133 ">tinylibs/tinyexec#133</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/tinylibs/tinyexec/compare/1.2.0...1.2.1 ">https://github.com/tinylibs/tinyexec/compare/1.2.0...1.2.1 </a></p>
<h2>1.2.0</h2>
<h2>What's Changed</h2>
<ul>
<li>refactor: inline parse by <a
href="https://github.com/hyperz111 "><code>@hyperz111</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/100 ">tinylibs/tinyexec#100</a></li>
<li>chore: check types on lint by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/119 ">tinylibs/tinyexec#119</a></li>
<li>test: add more normalize tests by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/120 ">tinylibs/tinyexec#120</a></li>
<li>build: update tsdown config and dependencies by <a
href="https://github.com/hyperz111 "><code>@hyperz111</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/121 ">tinylibs/tinyexec#121</a></li>
<li>chore(deps-dev): bump the development-dependencies group with 2
updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/122 ">tinylibs/tinyexec#122</a></li>
<li>chore(deps-dev): bump the development-dependencies group with 6
updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/123 ">tinylibs/tinyexec#123</a></li>
<li>chore: set workflow permissions by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/124 ">tinylibs/tinyexec#124</a></li>
<li>feat: add <code>nodePath</code> flag by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/125 ">tinylibs/tinyexec#125</a></li>
<li>test: tidy up env tests by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/126 ">tinylibs/tinyexec#126</a></li>
<li>chore(deps-dev): bump the development-dependencies group with 4
updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/128 ">tinylibs/tinyexec#128</a></li>
<li>chore(deps): bump the github-actions group with 2 updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/127 ">tinylibs/tinyexec#127</a></li>
<li>chore: setup funding / publish env by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/129 ">tinylibs/tinyexec#129</a></li>
<li>chore: enable staged publishes by <a
href="https://github.com/43081j "><code>@43081j</code></a> in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/130 ">tinylibs/tinyexec#130</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/hyperz111 "><code>@hyperz111</code></a>
made their first contribution in <a
href="https://redirect.github.com/tinylibs/tinyexec/pull/100 ">tinylibs/tinyexec#100</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/tinylibs/tinyexec/compare/1.1.2...1.2.0 ">https://github.com/tinylibs/tinyexec/compare/1.1.2...1.2.0 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="65ef525031 "><code>65ef525</code></a>
fix: correct shebang regex (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/134 ">#134</a>)</li>
<li><a
href="6d499f26e3 "><code>6d499f2</code></a>
test: add async throw tests (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/133 ">#133</a>)</li>
<li><a
href="3bafedb9fc "><code>3bafedb</code></a>
chore: enable staged publishes (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/130 ">#130</a>)</li>
<li><a
href="a6b7a92dcc "><code>a6b7a92</code></a>
chore: setup funding / publish env (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/129 ">#129</a>)</li>
<li><a
href="264dc21fde "><code>264dc21</code></a>
chore(deps): bump the github-actions group with 2 updates (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/127 ">#127</a>)</li>
<li><a
href="482f3abb99 "><code>482f3ab</code></a>
chore(deps-dev): bump the development-dependencies group with 4 updates
(<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/128 ">#128</a>)</li>
<li><a
href="bd5599eb3e "><code>bd5599e</code></a>
test: tidy up env tests (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/126 ">#126</a>)</li>
<li><a
href="ac2d3b3a7a "><code>ac2d3b3</code></a>
feat: add <code>nodePath</code> flag (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/125 ">#125</a>)</li>
<li><a
href="5ae7f87e30 "><code>5ae7f87</code></a>
chore: set workflow permissions (<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/124 ">#124</a>)</li>
<li><a
href="4ebc0aa69e "><code>4ebc0aa</code></a>
chore(deps-dev): bump the development-dependencies group with 6 updates
(<a
href="https://redirect.github.com/tinylibs/tinyexec/issues/123 ">#123</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/tinylibs/tinyexec/compare/1.1.2...1.2.2 ">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 condit...
_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: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-05-28 21:54:17 +02:00
Ben Brandt
7ed1daf7b4
fix: Remove hide Claude auth flag handling ( #707 )
...
Now that the terms are clear, we can let people use their credits if
they like in all scenarios.
2026-05-27 22:49:45 +02:00
Tim Visher
694221a412
no-op ping keep-alive events ( #698 )
...
AI disclaimer: I noticed `ping` events spamming the agent-shell Notices
buffer and used Claude to confirm the mechanism, locate the missing
case, and draft the fix and test. I reviewed the diff, ran the full lint
/ type-check / test gauntlet locally, and vouch for the change.
## Summary
`streamEventToAcpNotifications` exhaustively switches on `event.type`
against the SDK's `BetaRawMessageStreamEvent` union and falls through to
`unreachable` for anything else. The Anthropic Messages streaming API
also emits `ping` keep-alive events
([docs](https://docs.anthropic.com/en/api/messages-streaming#ping-events ))
which aren't listed in that union but do reach this function at runtime.
Since #173 made `unreachable` log rather than throw, every ping now
writes `Unexpected case: {"type":"ping"}` to stderr.
## Symptom
In ACP clients that surface agent stderr, each `ping` lands as a
"Notice" entry next to the agent's normal output. With long-running
turns this produces multiple stderr lines per minute of generation.
Example from an agent-shell debug capture:
```
▶ Notices
Unexpected case: {"type":"ping"}
Unexpected case: {"type":"ping"}
```
## Fix
Add `case "ping" as never:` to the existing no-content branch in
`streamEventToAcpNotifications`. The `as never` cast is required because
`BetaRawMessageStreamEvent` is closed at the type level even though the
wire format emits `ping`. Comment placed above the no-content group so
ESLint's `no-fallthrough` rule doesn't see it as breaking case
adjacency.
## Test plan
- [x] `npx tsc --noEmit` — clean
- [x] `npm run lint` — clean
- [x] `npm run format:check` — clean
- [x] `npm run test:run` — 290 passed / 13 skipped (integration-gated)
- [x] New unit test in `src/tests/acp-agent.test.ts` covers
`streamEventToAcpNotifications` directly: feeds a synthetic `ping`
stream_event and asserts both `[]` return and that the logger's `error`
channel is never touched.
Co-authored-by: Tim Visher <194828183+timvisher-dd@users.noreply.github.com >
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-24 06:11:51 +00:00
AceGain
9e259d128a
feat: add 'Default' option to effort level config ( #701 )
...
Add a "Default" selection to the effort level config option, allowing
users to let the SDK decide the effort level instead of forcing a
specific level. When "default" is selected, applyFlagSettings is called
with effortLevel: undefined, clearing any previous override.
Replaces the previous fallback logic (xhigh -> high ->
supportedLevels[0]) with a simpler "default" fallback that lets the SDK
use its own default.
Please,agree it. The third-party model may not support the 'Effort', or
not support 'high' and 'xhigh'. We need it.
---------
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-05-21 22:11:14 +00:00
Ben Brandt
2711f506d5
fix: Recover prompt stream after a failed turn ( #706 )
...
When a prompt errors mid-turn (e.g. a 400/529 from the API), the SDK
leaves a trailing session_state_changed: idle in the query iterator.
The next prompt's first query.next() consumed that stale idle and
short-circuited to end_turn with zero usage, shifting every subsequent
response one slot late until the session was restarted.
In the catch block, call query.interrupt() and drain the iterator
until the trailing idle is consumed (bounded so a misbehaving SDK
can't hang the next prompt). In the finally block, on the error path,
resolve all queued pending prompts as cancelled — the previous code
only resolved one (with handoff semantics), leaking the rest forever.
Closes #654
Supersedes #659 , #660 , #691
2026-05-21 22:03:39 +00:00
Genhao Liu
2414a6f98b
fix: emit "cancelled" instead of "end_turn" when the session was interrupted. ( #694 )
...
### Summary
Fix session_state_changed: idle handler to check session.cancelled,
ensuring the prompt response returns stopReason:
"cancelled" instead of "end_turn" when the session was interrupted.
### Problem
When a client sends session/cancel, the cancel() method sets
session.cancelled = true and calls query.interrupt(). The
SDK then transitions to idle state and emits a session_state_changed
event with state: "idle". However, the handler
for this event returns the prompt response immediately without checking
session.cancelled:
```
case "session_state_changed": {
if (message.state === "idle") {
return { stopReason, usage: sessionUsage(session) }; // stopReason defaults to "end_turn"
}
break;
}
```
Since stopReason is initialized as "end_turn" and may not have been
updated to "cancelled" by a preceding result
message (the result handler at line 601 does check session.cancelled),
the prompt response can incorrectly report
stopReason: "end_turn" when the turn was actually cancelled.
This causes clients (e.g. JetBrains AI Assistant) to treat the turn as
completed normally rather than cancelled,
leaving the frontend UI stuck in a "running" state.
### Fix
Check session.cancelled in the session_state_changed: idle handler,
mirroring the checks already present in the done
handler (line 464) and the result handler (line 601):
```
case "session_state_changed": {
if (message.state === "idle") {
if (session.cancelled) {
stopReason = "cancelled";
}
return { stopReason, usage: sessionUsage(session) };
}
break;
}
```
Per the ACP spec, upon receiving session/cancel the agent must respond
to the original session/prompt request with
StopReason::Cancelled. This fix ensures that obligation is met
regardless of which message type triggers the prompt
response.
### Test plan
- Start a session, send a prompt, then immediately cancel — verify the
prompt response returns stopReason: "cancelled"
and the client UI transitions out of "running" state
- Start a session, send a prompt, let it complete normally — verify
stopReason remains "end_turn" (no false
cancellation)
- Existing test suite passes (npm run test:run)
2026-05-21 22:00:44 +00:00
Ben Brandt
cfce130707
fix: Don't expose /clear in commands ( #705 )
...
Closes #657
This probably isn't the desired fix, but as /clear creates a new
session, it breaks a lot of guarantees on ACP's usage of session ids we
want to uphold. Given you can do session/new to get the same effect, it
seems safer.
2026-05-21 21:31:53 +00:00
Ben Brandt
b275f6ff7f
fix: Avoid redundant initial model sync ( #704 )
...
Addresses #646
2026-05-21 21:07:46 +00:00
Ben Brandt
a0bfb98ba7
feat: Emit tool calls for memory recall events ( #703 )
...
Closes #650
2026-05-21 21:05:45 +00:00
Ben Brandt
e1e1c69029
fix: Avoid cross-version model alias matches ( #702 )
...
Partially addresses #639
Deduping may reintroduce issues from #620 so going to hold off on that
for now.
2026-05-21 20:49:29 +00:00
Aleksandr Suhinin
db852dcf7c
fix: flaky authentication bypass for gateway ( #686 )
...
Sometimes leads to auth required error.
2026-05-18 15:31:51 +02:00
Ben Brandt
f37e9a0d47
feat: Support experimental additionalDirectories field ( #684 )
2026-05-18 10:51:45 +00:00
Ben Brandt
2162d5af62
feat: Add experimental session delete support ( #682 )
...
- **Update Agent Client Protocol SDK to 0.22.0**
- **feat: Add session delete support**
2026-05-18 10:43:07 +00:00
Ben Brandt
798844726f
chore: tighten local-command-stdout handler comment and pass full options ( #678 )
...
## Summary
Follow-up cleanup to #649 . Two small changes:
- **Tighten the comment block** above the marker-strip branch in
`acp-agent.ts:1119`. The original 15-line block restated history that
already lives in the PR description; replaced with a 5-line "what this
does, and why the no-op case is preserved" comment that points at the
replay path for parallel context.
- **Forward `clientCapabilities`, `parentToolUseId`, `cwd`, and
`taskState`** to `toAcpNotifications` so the new strip-and-render call
matches the sibling call below it at `acp-agent.ts:1192`. Without these
the rendered output loses threading under a wrapping tool use and skips
terminal-output detection.
- **Only log the raw payload when nothing renders** — previously every
marker-containing message was logged AND rendered. Now we render the
stripped prose if anything remains, and fall back to logging only the
pure-marker case (e.g. `/compact`).
## Test plan
- [x] `npm run check` (lint + format) — passes
- [x] `npm run build` (tsc) — passes
- [x] `stripLocalCommandMetadata` unit tests — 8 passed
🤖 Generated with [Claude Code](https://claude.com/claude-code )
---------
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-18 00:45:33 +02:00
Wandering Consciousness
3b9b7d5a56
fix: render local-command-stdout messages instead of dropping them ( #649 )
...
AI disclaimer: I identified this bug after noticing that custom skills
produced no output within the Zed Thread/Claude Agent UI. I used Claude
to investigate the issue and develop the fix. I have manually verified
the equivalent fix against an installed
`@zed-industries/claude-code-acp@0.16 .1` (the deprecated package Zed
currently ships): custom slash commands that previously produced empty
threads now render the model's response correctly after Zed restart.
## Summary
The live `case "user" / "assistant"` handler in `src/acp-agent.ts` drops
every SDK message whose string content contains
`<local-command-stdout>`. The branch was added to tolerate `/compact`'s
malformed output, but its side-effect is silencing every successful
slash command invocation — custom user-defined skills (whose expanded
bodies arrive wrapped in `<command-*>` + `<local-command-stdout>`
markers) and built-in commands that emit textual output through these
tags.
## Symptom in ACP clients
User types `/some-command` (custom skill, or one of the affected
built-ins). Thread renders the user's `/some-command` bubble at the top,
then nothing — no expanded skill body, no model response. Under the hood
the model has actually received the expansion and produced a turn, but
the user message carrying the expansion never reaches the UI, and the
cascade of subsequent assistant content gets visually decoupled.
In CLI Claude Code the same expansion is printed to the terminal, so the
asymmetry is purely client-side.
## Fix
This repo already ships `stripLocalCommandMetadata` (and its underlying
`stripMarkerTags` helper) — they return `null` for marker-only payloads
and the stripped prose otherwise. They are already wired into session
replay/load (`acp-agent.ts:1385`) but not into the live handler.
The change wires the same helper into the live handler: strip the
markers and route what remains through the existing `toAcpNotifications`
path, preserving the message's role. Pure-marker payloads (e.g.
`/compact`'s) still no-op via the `null` branch, so the existing
`/compact works` integration test in `src/tests/acp-agent.test.ts`
continues to pass.
## Why the previous behaviour was conservative-but-wrong
The inline comment notes the filter exists for `/compact`'s SDK-side
malformed output. That tradeoff swallows a much larger class of
legitimate output (anything that uses `<local-command-stdout>` to wrap
real prose) to avoid one specific command's noise. With
`stripLocalCommandMetadata` available, the conservative behaviour can
target exactly the empty-after-strip case (still `null` → no-op) without
affecting messages that have real prose alongside markers — which is
exactly the regression case the helper's tests were written to cover
(see `src/tests/acp-agent.test.ts:1145-1163`, *"in the original bug
report the entire /model preamble and the user's real 'hi' prompt were
concatenated into a single message. We want to strip the marker tags and
preserve the real prose, not drop the whole message."*).
The fix applies that same principle to the live handler, where the
helper is most needed.
## Refs
- `zed-industries/claude-code-acp#624` — "'Skill' Session Updates
missing when invoked via slash command". The reporter correctly
diagnoses the mechanism: *"Claude just attaches the skill directly to
context when the /command is used, which means the skill loader isn't
used."* The skill body arrives wrapped in markers and gets dropped by
this filter.
- `zed-industries/claude-code-acp#642` — built-in slash commands
(`/usage`, `/status`, `/model`, `/memory`, `/permissions`, `/agents`,
`/mcp`) emit no output when invoked. Same root cause: their output
arrives in messages tagged with `<local-command-stdout>` and is filtered
out.
Both upstream issues remain open against the old repo
`zed-industries/claude-code-acp` and have no comments / linked PRs yet.
Cross-linking here so this PR can be the closing reference for both.
## Test plan
- [x] `npm run check` (lint + format) — passes
- [x] `npm run build` (tsc) — passes
- [x] `npx vitest run src/tests/acp-agent.test.ts -t
"stripLocalCommandMetadata"` — 8 passed
- [ ] Existing `/compact works` integration test — needs a CLI
environment to run; relies on the `null` branch preserving the no-op
behaviour for marker-only payloads, which the helper tests already cover
🤖 Generated with [Claude Code](https://claude.com/claude-code )
2026-05-16 21:31:05 +00:00
Ben Brandt
5ff7d50f0e
fix: Add task hooks for plan state updates ( #676 )
2026-05-16 21:05:27 +00:00
dependabot[bot]
27ca2e5d40
feat(deps): update to claude-agent-sdk 0.3.143 ( #664 )
...
Bumps the minor group with 11 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
|
[@agentclientprotocol/sdk](https://github.com/agentclientprotocol/typescript-sdk )
| `0.21.0` | `0.21.1` |
|
[@anthropic-ai/claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-typescript )
| `0.2.132` | `0.3.143` |
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node )
| `25.6.0` | `25.8.0` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin )
| `8.59.2` | `8.59.3` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser )
| `8.59.2` | `8.59.3` |
| [eslint](https://github.com/eslint/eslint ) | `10.3.0` | `10.4.0` |
|
[vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest )
| `4.1.5` | `4.1.6` |
| [brace-expansion](https://github.com/juliangruber/brace-expansion ) |
`5.0.5` | `5.0.6` |
|
[express-rate-limit](https://github.com/express-rate-limit/express-rate-limit )
| `8.5.1` | `8.5.2` |
| [semver](https://github.com/npm/node-semver ) | `7.7.4` | `7.8.0` |
| [type-is](https://github.com/jshttp/type-is ) | `2.0.1` | `2.1.0` |
Updates `@agentclientprotocol/sdk` from 0.21.0 to 0.21.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/agentclientprotocol/typescript-sdk/releases ">@agentclientprotocol/sdk's
releases</a>.</em></p>
<blockquote>
<h2>v0.21.1</h2>
<h2><a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.21.0...v0.21.1 ">0.21.1</a>
(2026-05-14)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>emit .js extensions in generated schema barrel for nodenext
consumers (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/146 ">#146</a>)
(<a
href="63b96db49d ">63b96db</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/agentclientprotocol/typescript-sdk/blob/main/CHANGELOG.md ">@agentclientprotocol/sdk's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.21.0...v0.21.1 ">0.21.1</a>
(2026-05-14)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>emit .js extensions in generated schema barrel for nodenext
consumers (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/146 ">#146</a>)
(<a
href="63b96db49d ">63b96db</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e0099180fe "><code>e009918</code></a>
chore(main): release 0.21.1 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/147 ">#147</a>)</li>
<li><a
href="63b96db49d "><code>63b96db</code></a>
fix: emit .js extensions in generated schema barrel for nodenext
consumers (#...</li>
<li><a
href="dfb5692fb0 "><code>dfb5692</code></a>
chore(deps): bump crate-ci/typos from 1.46.0 to 1.46.1 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/144 ">#144</a>)</li>
<li><a
href="8ca90556b0 "><code>8ca9055</code></a>
chore(deps): bump the minor group with 22 updates (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/145 ">#145</a>)</li>
<li><a
href="7355cdd139 "><code>7355cdd</code></a>
chore(deps): bump crate-ci/typos from 1.45.1 to 1.46.0 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/140 ">#140</a>)</li>
<li><a
href="0b33b85eba "><code>0b33b85</code></a>
chore(deps): bump the minor group with 20 updates (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/141 ">#141</a>)</li>
<li><a
href="f017cfaf52 "><code>f017cfa</code></a>
chore(deps-dev): bump nanoid from 3.3.11 to 3.3.12 (<a
href="https://redirect.github.com/agentclientprotocol/typescript-sdk/issues/142 ">#142</a>)</li>
<li>See full diff in <a
href="https://github.com/agentclientprotocol/typescript-sdk/compare/v0.21.0...v0.21.1 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@anthropic-ai/claude-agent-sdk` from 0.2.132 to 0.3.143
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/releases ">@anthropic-ai/claude-agent-sdk's
releases</a>.</em></p>
<blockquote>
<h2>v0.3.143</h2>
<h2>What's changed</h2>
<ul>
<li><code>@anthropic-ai/sdk</code> and
<code>@modelcontextprotocol/sdk</code> are now
<code>peerDependencies</code> instead of <code>dependencies</code>.
Runtime is unaffected (both are bundled); npm/bun/pnpm auto-install
them. yarn classic users should add them explicitly for full TypeScript
type resolution</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.143
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.143
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.143
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.143
</code></pre>
<h2>v0.3.142</h2>
<h2>What's changed</h2>
<ul>
<li><strong>Breaking:</strong> Removed the v2 session API
(<code>unstable_v2_createSession</code>,
<code>unstable_v2_resumeSession</code>, <code>unstable_v2_prompt</code>,
<code>SDKSession</code>, <code>SDKSessionOptions</code>), deprecated
since 0.2.133. Use <code>query()</code> — pass an
<code>AsyncIterable<SDKUserMessage></code> for multi-turn, or
<code>options.resume</code> to continue a session.</li>
<li><strong>Breaking:</strong> MCP servers now connect in the background
by default; sessions start immediately and slow servers report
<code>status: "pending"</code> in <code>init</code> until
ready. Set <code>MCP_CONNECTION_NONBLOCKING=0</code> to restore the old
behavior of waiting up to 5s before the first query, or mark a server
<code>alwaysLoad: true</code> to require it in turn 1.</li>
<li><strong>Breaking:</strong> Headless and SDK sessions now use Task
tools (<code>TaskCreate</code> / <code>TaskUpdate</code> /
<code>TaskGet</code> / <code>TaskList</code>) instead of
<code>TodoWrite</code>, deprecated since 0.2.136. Tool consumers should
accumulate by task ID instead of replacing a snapshot list.</li>
<li>Surfaced <code>request_id</code>, <code>subagent_type</code>, and
<code>task_description</code> on SDK message types and task system
events</li>
<li>Headless <code>--sdk-url</code> sessions now exit non-zero with a
stderr diagnostic when the remote transport closes permanently
(401/403/404 or WS permanent close), instead of silently exiting 0</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.142
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.142
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.142
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.142
</code></pre>
<h2>v0.2.141</h2>
<h2>What's changed</h2>
<ul>
<li><code>TaskCreateInput</code>, <code>TaskCreateOutput</code>,
<code>TaskGetInput</code>, <code>TaskGetOutput</code>,
<code>TaskUpdateInput</code>, <code>TaskUpdateOutput</code>,
<code>TaskListInput</code>, and <code>TaskListOutput</code> types are
now exported from <code>@anthropic-ai/claude-agent-sdk/sdk-tools</code>
and included in the
<code>ToolInputSchemas</code>/<code>ToolOutputSchemas</code> unions</li>
<li>Aligned <code>@anthropic-ai/sdk</code> dependency to ^0.93.0</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.2.141
# or
yarn add @anthropic-ai/claude-agent-sdk@0.2.141
</tr></table>
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/blob/main/CHANGELOG.md ">@anthropic-ai/claude-agent-sdk's
changelog</a>.</em></p>
<blockquote>
<h2>0.3.143</h2>
<ul>
<li><code>@anthropic-ai/sdk</code> and
<code>@modelcontextprotocol/sdk</code> are now
<code>peerDependencies</code> instead of <code>dependencies</code>.
Runtime is unaffected (both are bundled); npm/bun/pnpm auto-install
them. yarn classic users should add them explicitly for full TypeScript
type resolution</li>
</ul>
<h2>0.3.142</h2>
<ul>
<li><strong>Breaking:</strong> Removed the v2 session API
(<code>unstable_v2_createSession</code>,
<code>unstable_v2_resumeSession</code>, <code>unstable_v2_prompt</code>,
<code>SDKSession</code>, <code>SDKSessionOptions</code>), deprecated
since 0.2.133. Use <code>query()</code> — pass an
<code>AsyncIterable<SDKUserMessage></code> for multi-turn, or
<code>options.resume</code> to continue a session.</li>
<li><strong>Breaking:</strong> MCP servers now connect in the background
by default; sessions start immediately and slow servers report
<code>status: "pending"</code> in <code>init</code> until
ready. Set <code>MCP_CONNECTION_NONBLOCKING=0</code> to restore the old
behavior of waiting up to 5s before the first query, or mark a server
<code>alwaysLoad: true</code> to require it in turn 1.</li>
<li><strong>Breaking:</strong> Headless and SDK sessions now use Task
tools (<code>TaskCreate</code> / <code>TaskUpdate</code> /
<code>TaskGet</code> / <code>TaskList</code>) instead of
<code>TodoWrite</code>, deprecated since 0.2.136. Tool consumers should
accumulate by task ID instead of replacing a snapshot list.</li>
<li>Surfaced <code>request_id</code>, <code>subagent_type</code>, and
<code>task_description</code> on SDK message types and task system
events</li>
<li>Headless <code>--sdk-url</code> sessions now exit non-zero with a
stderr diagnostic when the remote transport closes permanently
(401/403/404 or WS permanent close), instead of silently exiting 0</li>
</ul>
<h2>0.2.141</h2>
<ul>
<li><code>TaskCreateInput</code>, <code>TaskCreateOutput</code>,
<code>TaskGetInput</code>, <code>TaskGetOutput</code>,
<code>TaskUpdateInput</code>, <code>TaskUpdateOutput</code>,
<code>TaskListInput</code>, and <code>TaskListOutput</code> types are
now exported from <code>@anthropic-ai/claude-agent-sdk/sdk-tools</code>
and included in the
<code>ToolInputSchemas</code>/<code>ToolOutputSchemas</code> unions</li>
<li>Aligned <code>@anthropic-ai/sdk</code> dependency to ^0.93.0</li>
</ul>
<h2>0.2.140</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.140</li>
</ul>
<h2>0.2.139</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.139</li>
</ul>
<h2>0.2.138</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.138</li>
</ul>
<h2>0.2.137</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.137</li>
</ul>
<h2>0.2.136</h2>
<ul>
<li>Added <code>resolveSettings()</code> (alpha) to inspect effective
merged settings without spawning the Claude CLI; reads MDM
(plist/HKLM/HKCU) for parity with CLI startup</li>
<li>Deprecated <code>TodoWrite</code> tool — future versions will switch
to Task tools (<code>TaskCreate</code>, <code>TaskGet</code>,
<code>TaskUpdate</code>, <code>TaskList</code>)</li>
</ul>
<h2>0.2.135</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.135</li>
</ul>
<h2>0.2.134</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.134</li>
</ul>
<h2>0.2.133</h2>
<ul>
<li>Deprecated the unstable V2 session API
(<code>unstable_v2_createSession</code> /
<code>unstable_v2_resumeSession</code> /
<code>unstable_v2_prompt</code>) — use <code>query()</code> instead</li>
<li>Deprecated passing <code>'Skill'</code> in <code>allowedTools</code>
— use the <code>skills</code> option instead</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fa5d004c65 "><code>fa5d004</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="dcac1633cc "><code>dcac163</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="b6d0490791 "><code>b6d0490</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="b14b7c97ff "><code>b14b7c9</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="ee3fe61081 "><code>ee3fe61</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="1d9038531e "><code>1d90385</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="8d0a9588e6 "><code>8d0a958</code></a>
Pin GitHub Actions to commit SHAs (<a
href="https://redirect.github.com/anthropics/claude-agent-sdk-typescript/issues/320 ">#320</a>)</li>
<li><a
href="3ccbe544fd "><code>3ccbe54</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="de7d6c1a35 "><code>de7d6c1</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="1b3ab7bd01 "><code>1b3ab7b</code></a>
chore: Update CHANGELOG.md</li>
<li>See full diff in <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/compare/v0.2.132...v0.3.143 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@types/node` from 25.6.0 to 25.8.0
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/eslint-plugin` from 8.59.2 to 8.59.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/eslint-plugin's
releases</a>.</em></p>
<blockquote>
<h2>v8.59.3</h2>
<h2>8.59.3 (2026-05-11)</h2>
<p>This was a version bump only, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</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 ">@typescript-eslint/eslint-plugin's
changelog</a>.</em></p>
<blockquote>
<h2>8.59.3 (2026-05-11)</h2>
<p>This was a version bump only for eslint-plugin to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="48e13c0261 "><code>48e13c0</code></a>
chore(release): publish 8.59.3</li>
<li><a
href="e26dc8003a "><code>e26dc80</code></a>
docs: update stale links to latest (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313 ">#12313</a>)</li>
<li><a
href="44f9625336 "><code>44f9625</code></a>
chore(deps): update vitest monorepo to v4.1.5 (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307 ">#12307</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@typescript-eslint/parser` from 8.59.2 to 8.59.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases ">@typescript-eslint/parser's
releases</a>.</em></p>
<blockquote>
<h2>v8.59.3</h2>
<h2>8.59.3 (2026-05-11)</h2>
<p>This was a version bump only, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</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 ">@typescript-eslint/parser's
changelog</a>.</em></p>
<blockquote>
<h2>8.59.3 (2026-05-11)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>See <a
href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3 ">GitHub
Releases</a> for more information.</p>
<p>You can read about our <a
href="https://typescript-eslint.io/users/versioning ">versioning
strategy</a> and <a
href="https://typescript-eslint.io/users/releases ">releases</a> on our
website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="48e13c0261 "><code>48e13c0</code></a>
chore(release): publish 8.59.3</li>
<li><a
href="44f9625336 "><code>44f9625</code></a>
chore(deps): update vitest monorepo to v4.1.5 (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307 ">#12307</a>)</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser ">compare
view</a></li>
</ul>
</details>
<br />
Updates `eslint` from 10.3.0 to 10.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/releases ">eslint's
releases</a>.</em></p>
<blockquote>
<h2>v10.4.0</h2>
<h2>Features</h2>
<ul>
<li><a
href="1a45ec596a "><code>1a45ec5</code></a>
feat: check sequence expressions in <code>for-direction</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20701 ">#20701</a>)
(kuldeep kumar)</li>
<li><a
href="450040bd89 "><code>450040b</code></a>
feat: add <code>includeIgnoreFile()</code> to <code>eslint/config</code>
(<a
href="https://redirect.github.com/eslint/eslint/issues/20735 ">#20735</a>)
(Kirk Waiblinger)</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a
href="544c0c3da5 "><code>544c0c3</code></a>
fix: escape code path DOT labels in debug output (<a
href="https://redirect.github.com/eslint/eslint/issues/20866 ">#20866</a>)
(Pixel998)</li>
<li><a
href="6799431203 "><code>6799431</code></a>
fix: update dependency <code>@eslint/config-helpers</code> to ^0.6.0
(<a
href="https://redirect.github.com/eslint/eslint/issues/20850 ">#20850</a>)
(renovate[bot])</li>
<li><a
href="f078fef500 "><code>f078fef</code></a>
fix: handle non-array deprecated rule replacements (<a
href="https://redirect.github.com/eslint/eslint/issues/20825 ">#20825</a>)
(xbinaryx)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a
href="7e52a7151f "><code>7e52a71</code></a>
docs: add mention of <code>@eslint-react/eslint-plugin</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20869 ">#20869</a>)
(Pavel)</li>
<li><a
href="db3468ba74 "><code>db3468b</code></a>
docs: tweak wording around ambiguous CJS-vs-ESM config (<a
href="https://redirect.github.com/eslint/eslint/issues/20865 ">#20865</a>)
(Kirk Waiblinger)</li>
<li><a
href="90846643ec "><code>9084664</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="9cc7387504 "><code>9cc7387</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="3d7b548440 "><code>3d7b548</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="191ec3c0a3 "><code>191ec3c</code></a>
docs: Update README (GitHub Actions Bot)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a
href="6616856f28 "><code>6616856</code></a>
chore: upgrade knip to v6 (<a
href="https://redirect.github.com/eslint/eslint/issues/20875 ">#20875</a>)
(Pixel998)</li>
<li><a
href="d13b084a3a "><code>d13b084</code></a>
ci: ensure auto-created PRs run CI (<a
href="https://redirect.github.com/eslint/eslint/issues/20860 ">#20860</a>)
(lumir)</li>
<li><a
href="e71c7af86d "><code>e71c7af</code></a>
ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (<a
href="https://redirect.github.com/eslint/eslint/issues/20862 ">#20862</a>)
(dependabot[bot])</li>
<li><a
href="d84393dea1 "><code>d84393d</code></a>
test: add unit tests for SuppressionsService.applySuppressions() (<a
href="https://redirect.github.com/eslint/eslint/issues/20863 ">#20863</a>)
(kuldeep kumar)</li>
<li><a
href="24db8cb8e6 "><code>24db8cb</code></a>
test: add tests for SuppressionsService.save() (<a
href="https://redirect.github.com/eslint/eslint/issues/20802 ">#20802</a>)
(kuldeep kumar)</li>
<li><a
href="2ef0549cac "><code>2ef0549</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/20857 ">#20857</a>)
(github-actions[bot])</li>
<li><a
href="a4297918d2 "><code>a429791</code></a>
ci: remove <code>eslint-webpack-plugin</code> types integration test (<a
href="https://redirect.github.com/eslint/eslint/issues/20668 ">#20668</a>)
(Milos Djermanovic)</li>
<li><a
href="9e37386aa7 "><code>9e37386</code></a>
chore: replace <code>recast</code> with range approach in
code-sample-minimizer (<a
href="https://redirect.github.com/eslint/eslint/issues/20682 ">#20682</a>)
(Copilot)</li>
<li><a
href="0dd1f9ffc9 "><code>0dd1f9f</code></a>
test: disable warning for
<code>vm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20845 ">#20845</a>)
(Francesco Trotta)</li>
<li><a
href="9da3c7bc92 "><code>9da3c7b</code></a>
refactor: remove deprecated <code>meta.language</code> and migrate
<code>meta.dialects</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20716 ">#20716</a>)
(Pixel998)</li>
<li><a
href="2099ed12a0 "><code>2099ed1</code></a>
refactor: add <code>meta.defaultOptions</code> to more rules, enable
linting (<a
href="https://redirect.github.com/eslint/eslint/issues/20800 ">#20800</a>)
(xbinaryx)</li>
<li><a
href="f1dfbc9ca5 "><code>f1dfbc9</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/20836 ">#20836</a>)
(github-actions[bot])</li>
<li><a
href="c75941390c "><code>c759413</code></a>
ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (<a
href="https://redirect.github.com/eslint/eslint/issues/20843 ">#20843</a>)
(dependabot[bot])</li>
<li><a
href="5b817d6fdc "><code>5b817d6</code></a>
test: add unit tests for lib/shared/ast-utils (<a
href="https://redirect.github.com/eslint/eslint/issues/20838 ">#20838</a>)
(kuldeep kumar)</li>
<li><a
href="1c13ae3934 "><code>1c13ae3</code></a>
test: add unit tests for lib/shared/severity (<a
href="https://redirect.github.com/eslint/eslint/issues/20835 ">#20835</a>)
(kuldeep kumar)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="452c4010c0 "><code>452c401</code></a>
10.4.0</li>
<li><a
href="b6417e8b55 "><code>b6417e8</code></a>
Build: changelog update for 10.4.0</li>
<li><a
href="6616856f28 "><code>6616856</code></a>
chore: upgrade knip to v6 (<a
href="https://redirect.github.com/eslint/eslint/issues/20875 ">#20875</a>)</li>
<li><a
href="d13b084a3a "><code>d13b084</code></a>
ci: ensure auto-created PRs run CI (<a
href="https://redirect.github.com/eslint/eslint/issues/20860 ">#20860</a>)</li>
<li><a
href="7e52a7151f "><code>7e52a71</code></a>
docs: add mention of <code>@eslint-react/eslint-plugin</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/20869 ">#20869</a>)</li>
<li><a
href="e71c7af86d "><code>e71c7af</code></a>
ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (<a
href="https://redirect.github.com/eslint/eslint/issues/20862 ">#20862</a>)</li>
<li><a
href="544c0c3da5 "><code>544c0c3</code></a>
fix: escape code path DOT labels in debug output (<a
href="https://redirect.github.com/eslint/eslint/issues/20866 ">#20866</a>)</li>
<li><a
href="db3468ba74 "><code>db3468b</code></a>
docs: tweak wording around ambiguous CJS-vs-ESM config (<a
href="https://redirect.github.com/eslint/eslint/issues/20865 ">#20865</a>)</li>
<li><a
href="d84393dea1 "><code>d84393d</code></a>
test: add unit tests for SuppressionsService.applySuppressions() (<a
href="https://redirect.github.com/eslint/eslint/issues/20863 ">#20863</a>)</li>
<li><a
href="90846643ec "><code>9084664</code></a>
docs: Update README</li>
<li>Additional commits viewable in <a
href="https://github.com/eslint/eslint/compare/v10.3.0...v10.4.0 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `vitest` from 4.1.5 to 4.1.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitest-dev/vitest/releases ">vitest's
releases</a>.</em></p>
<blockquote>
<h2>v4.1.6</h2>
<h3> 🐞 Bug Fixes</h3>
<ul>
<li><strong>browser</strong>: Provide project reference in
<code>ToMatchScreenshotResolvePath</code> - by <a
href="https://github.com/macarie "><code>@macarie</code></a> and <a
href="https://github.com/sheremet-va "><code>@sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/10138 ">vitest-dev/vitest#10138</a>
<a href="https://github.com/vitest-dev/vitest/commit/31882607c "><!-- raw
HTML omitted -->(31882)<!-- raw HTML omitted --></a></li>
<li>Global <code>sequence.concurrent: true</code> with top-level
<code>test(..., { concurrent: false })</code> + depreacte
<code>sequential</code> test API and options - by <a
href="https://github.com/hi-ogawa "><code>@hi-ogawa</code></a>,
<strong>Codex</strong> and <a
href="https://github.com/sheremet-va "><code>@sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/10196 ">vitest-dev/vitest#10196</a>
<a href="https://github.com/vitest-dev/vitest/commit/2847dfa2a "><!-- raw
HTML omitted -->(2847d)<!-- raw HTML omitted --></a></li>
<li><strong>browser</strong>: Simplify orchestrator otel carrier - by
<a href="https://github.com/hi-ogawa "><code>@hi-ogawa</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/10285 ">vitest-dev/vitest#10285</a>
<a href="https://github.com/vitest-dev/vitest/commit/18af98cee "><!-- raw
HTML omitted -->(18af9)<!-- raw HTML omitted --></a></li>
</ul>
<h3> 🏎 Performance</h3>
<ul>
<li>Stringify diff objects only once - by <a
href="https://github.com/sheremet-va "><code>@sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/10276 ">vitest-dev/vitest#10276</a>
<a href="https://github.com/vitest-dev/vitest/commit/9f7b1528c "><!-- raw
HTML omitted -->(9f7b1)<!-- raw HTML omitted --></a></li>
</ul>
<h5> <a
href="https://github.com/vitest-dev/vitest/compare/v4.1.5...v4.1.6 ">View
changes on GitHub</a></h5>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="a8fd24c1ca "><code>a8fd24c</code></a>
chore: release v4.1.6</li>
<li><a
href="18af98cee1 "><code>18af98c</code></a>
fix(browser): simplify orchestrator otel carrier (<a
href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10285 ">#10285</a>)</li>
<li><a
href="31882607cc "><code>3188260</code></a>
feat(browser): provide project reference in
<code>ToMatchScreenshotResolvePath</code> (#...</li>
<li>See full diff in <a
href="https://github.com/vitest-dev/vitest/commits/v4.1.6/packages/vitest ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@anthropic-ai/claude-agent-sdk-darwin-arm64` from 0.2.132 to
0.3.143
Updates `@anthropic-ai/claude-agent-sdk-darwin-x64` from 0.2.132 to
0.3.143
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64` from 0.2.132 to
0.3.143
Updates `@anthropic-ai/claude-agent-sdk-linux-arm64-musl` from 0.2.132
to 0.3.143
Updates `@anthropic-ai/claude-agent-sdk-linux-x64` from 0.2.132 to
0.3.143
Updates `@anthropic-ai/claude-agent-sdk-linux-x64-musl` from 0.2.132 to
0.3.143
Updates `@anthropic-ai/claude-agent-sdk-win32-arm64` from 0.2.132 to
0.3.143
Updates `@anthropic-ai/claude-agent-sdk-win32-x64` from 0.2.132 to
0.3.143
Updates `@eslint/config-helpers` from 0.5.5 to 0.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/rewrite/releases ">@eslint/config-helpers's
releases</a>.</em></p>
<blockquote>
<h2>plugin-kit: v0.6.0</h2>
<h2><a
href="https://github.com/eslint/rewrite/compare/plugin-kit-v0.5.1...plugin-kit-v0.6.0 ">0.6.0</a>
(2026-01-29)</h2>
<h3>Features</h3>
<ul>
<li>add <code>CustomRuleVisitorWithExit</code> type to
<code>@eslint/plugin-kit</code> (<a
href="https://redirect.github.com/eslint/rewrite/issues/351 ">#351</a>)
(<a
href="e7d1be4066 ">e7d1be4</a>)</li>
<li>Add custom rule type helpers to <code>@eslint/plugin-kit</code> (<a
href="https://redirect.github.com/eslint/rewrite/issues/355 ">#355</a>)
(<a
href="8ac853046a ">8ac8530</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@eslint/core</code> bumped from ^1.0.1 to ^1.1.0</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2>config-helpers: v0.6.0</h2>
<h2><a
href="https://github.com/eslint/rewrite/compare/config-helpers-v0.5.5...config-helpers-v0.6.0 ">0.6.0</a>
(2026-05-08)</h2>
<h3>Features</h3>
<ul>
<li>Add new <code>includeIgnoreFile()</code> to config-helpers (<a
href="https://redirect.github.com/eslint/rewrite/issues/430 ">#430</a>)
(<a
href="9b51352902 ">9b51352</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/rewrite/blob/main/packages/config-helpers/CHANGELOG.md ">@eslint/config-helpers's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/eslint/rewrite/compare/config-helpers-v0.5.5...config-helpers-v0.6.0 ">0.6.0</a>
(2026-05-08)</h2>
<h3>Features</h3>
<ul>
<li>Add new <code>includeIgnoreFile()</code> to config-helpers (<a
href="https://redirect.github.com/eslint/rewrite/issues/430 ">#430</a>)
(<a
href="9b51352902 ">9b51352</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/eslint/rewrite/commits/core-v0.6.0/packages/config-helpers ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@oxc-project/types` from 0.128.0 to 0.130.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/oxc-project/oxc/releases ">@oxc-project/types's
releases</a>.</em></p>
<blockquote>
<h2>oxc crates_v0.130.0</h2>
<h3>🚀 Features</h3>
<ul>
<li>66c9b01 transformer/typescript: Debug_assert that
<code>enum_eval</code> ran in semantic (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22252 ">#22252</a>)
(Dunqing)</li>
<li>ffe6475 minifier: Fold <code>Array</code> constructor with safe
spreads (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22215 ">#22215</a>)
(camc314)</li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>d3d0b18 traverse: Handle
<code>ChainElement::TSNonNullExpression</code> in
<code>GatherNodeParts</code> (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22247 ">#22247</a>)
(leaysgur)</li>
<li>4e880de transformer/object-rest-spread: Declare temp vars for
computed keys (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22284 ">#22284</a>)
(camc314)</li>
<li>a7c3e22 semantic: Clear member write target for computed keys (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22302 ">#22302</a>)
(camc314)</li>
<li>6a8852d codegen: Emit newline after legal-comment orphan flush (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22304 ">#22304</a>)
(Dunqing)</li>
<li>5da9fda transformer/explicit-resource-management: Preserve class
names (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22306 ">#22306</a>)
(Dunqing)</li>
<li>b5d970f transformer/explicit-resource-management: Preserve class
names (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22290 ">#22290</a>)
(camc314)</li>
<li>bc54fd4 minifier: Keep function / class names if direct eval is
present in the scope (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22241 ">#22241</a>)
(sapphi-red)</li>
<li>7a810c0 minifier: Refresh direct eval flags after DCE (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21787 ">#21787</a>)
(Dunqing)</li>
<li>dd88726 transformer/legacy-decorator: Preserve accessor type
annotation for emitDecoratorMetadata (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21966 ">#21966</a>)
(Dunqing)</li>
<li>29a3cd7 codegen: Swap mapping/indent order for top-level decls (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22206 ">#22206</a>)
(Dunqing)</li>
<li>73b4f40 minifier: Preserve catch binding with direct eval (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22221 ">#22221</a>)
(camc314)</li>
<li>0e13d17 minifier: Preserve optional chain base side effects (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22219 ">#22219</a>)
(camc314)</li>
<li>0c7c01c transformer/typescript: Inline optional-chain enum member
access (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21834 ">#21834</a>)
(Dunqing)</li>
<li>a6aff7e codegen: Emit block/array/object end mapping at close char
(<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22200 ">#22200</a>)
(Dunqing)</li>
<li>a099b03 codegen: Emit call end mapping at <code>)</code> position,
not past it (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22199 ">#22199</a>)
(Dunqing)</li>
<li>5753774 minifier: Cap if-return ternary collapse for firefox (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21841 ">#21841</a>)
(Gurupungav Narayanan)</li>
<li>2493bdd codegen: Correct sourcemap end mappings for closing
delimiters (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22001 ">#22001</a>)
(Mark Dalgleish)</li>
<li>3b385e2 minifier: Bail optimizing <code>Array</code> with unknown
arg count (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22188 ">#22188</a>)
(camc314)</li>
<li>9fa2122 parser: Parse array computed class keys (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22159 ">#22159</a>)
(camc314)</li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>a4a6892 napi/parser: Correct code comment (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22278 ">#22278</a>)
(overlookmotel)</li>
<li>9305373 oxc: Update README (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22178 ">#22178</a>)
(camc314)</li>
</ul>
<h2>oxc crates_v0.129.0</h2>
<h3>💥 BREAKING CHANGES</h3>
<ul>
<li>0ffbe0d allocator: [<strong>BREAKING</strong>] Remove
<code>Allocator::end_ptr</code> method (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21871 ">#21871</a>)
(overlookmotel)</li>
</ul>
<h3>🚀 Features</h3>
<ul>
<li>9593ec8 transformer/jsx: Add jsxDEV source metadata for fragments
(<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21932 ">#21932</a>)
(Ido Rosenthal)</li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>81e834c parser: Prevent multiple <code>Parser</code> instances in
binary (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22120 ">#22120</a>)
(overlookmotel)</li>
<li>429deac napi/parser: Export <code>visitorKeys</code> from
<code>wasm</code> entrypoint (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21996 ">#21996</a>)
(NullVoxPopuli)</li>
<li>e852911 codegen: Preserve legal comments orphaned by upstream passes
(<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21575 ">#21575</a>)
(Dunqing)</li>
<li>e3399ec transformer/class-properties: Preserve RHS in
logical-assignment to static private field (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21950 ">#21950</a>)
(Dunqing)</li>
<li>c59c199 transformer/typescript: Emit class fields for parameter
properties (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21831 ">#21831</a>)
(Dunqing)</li>
<li>aaabde4 parser: Attach legal comments to following token (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/21670 ">#21670</a>)
(Dunqing)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="650417ffd0 "><code>650417f</code></a>
release(crates): oxc v0.130.0 (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22316 ">#22316</a>)</li>
<li><a
href="ec00055e64 "><code>ec00055</code></a>
release(crates): oxc v0.129.0 (<a
href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxc-types/issues/22108 ">#22108</a>)</li>
<li>See full diff in <a
href="https://github.com/oxc-project/oxc/commits/crates_v0.130.0/npm/oxc-types ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@rolldown/binding-android-arm64` from 1.0.0-rc.18 to 1.0.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rolldown/rolldown/releases ">@rolldown/binding-android-arm64's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.1</h2>
<h2>[1.0.1] - 2026-05-13</h2>
<h3>🚀 Features</h3>
<ul>
<li>experimental/lazy-barrel: advice on oversized barrel modules (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9236 ">#9236</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>rolldown: inline optional-chain enum access (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9379 ">#9379</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>chunk-optimization: dedupe already-loaded dynamic deps (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9305 ">#9305</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>binding: call moduleParsed hook in ParallelJsPlugin (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9318 ">#9318</a>)
by <a href="https://github.com/jaehafe "><code>@jaehafe</code></a></li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>transform: enable <code>enum_eval</code> for
<code>transformSync</code> and vite TS transform (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9325 ">#9325</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>error: remove severity prefix from diagnostic messages (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9262 ">#9262</a>)
by <a
href="https://github.com/Kyujenius "><code>@Kyujenius</code></a></li>
<li>deps: pin pnpm to 10.23.0 to work around catalog mismatch on Netlify
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9364 ">#9364</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>ci: pin mimalloc-safe to 0.1.58 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9361 ">#9361</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>dev/lazy: fix exports of lazy requests in lazy chunks (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9249 ">#9249</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>rolldown_plugin_vite_resolve: handle errors in
<code>resolveSubpathImports</code> callback (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9355 ">#9355</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>rolldown_plugin_lazy_compilation: use loadExports for fetched proxy
to preserve original export names (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9132 ">#9132</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>common: include offending index in HybridIndexVec panic message (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9296 ">#9296</a>)
by <a href="https://github.com/SAY-5 "><code>@SAY-5</code></a></li>
</ul>
<h3>🚜 Refactor</h3>
<ul>
<li>ecmascript: extract semantic_builder_for_transform helper (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9326 ">#9326</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>test: extract reusable static-import-cycle helper (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9332 ">#9332</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>clarify scope of <code>topLevelVar</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9380 ">#9380</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>meta/design: add ast-mutation design doc (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9338 ">#9338</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>feat: add ai policy in contribution guide (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9315 ">#9315</a>)
by <a
href="https://github.com/mdong1909 "><code>@mdong1909</code></a></li>
</ul>
<h3>⚡ Performance</h3>
<ul>
<li>binding: enable mimalloc v3 to reduce idle memory (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9349 ">#9349</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
</ul>
<h3>🧪 Testing</h3>
<ul>
<li>mcs: cover require() in <code>$initial</code> group (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9376 ">#9376</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>add regression for CJS facade chunk merge into entry (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9351 ">#9351</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
</ul>
<h3>⚙️ Miscellaneous Tasks</h3>
<ul>
<li>switch prepare-release to manual dispatch with version input (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9383 ">#9383</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>migrate <code>@rolldown/pluginutils</code> to
<code>rolldown/plugins</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9317 ">#9317</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>deps: pin libmimalloc-sys2 to 0.1.54 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9372 ">#9372</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>replace <code>igorskyflyer/action-readfile</code> with
<code>cat</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9369 ">#9369</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>deps: update test262 submodule for tests (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9371 ">#9371</a>)
by <a
href="https://github.com/rolldown-guard "><code>@rolldown-guard</code></a>[bot]</li>
<li>use app token for test dep update PRs (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9368 ">#9368</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>replace some actions with gh commands (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9367 ">#9367</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</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/rolldown/rolldown/blob/main/CHANGELOG.md ">@rolldown/binding-android-arm64's
changelog</a>.</em></p>
<blockquote>
<h2>[1.0.1] - 2026-05-13</h2>
<h3>🚀 Features</h3>
<ul>
<li>experimental/lazy-barrel: advice on oversized barrel modules (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9236 ">#9236</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>rolldown: inline optional-chain enum access (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9379 ">#9379</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>chunk-optimization: dedupe already-loaded dynamic deps (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9305 ">#9305</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>binding: call moduleParsed hook in ParallelJsPlugin (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9318 ">#9318</a>)
by <a href="https://github.com/jaehafe "><code>@jaehafe</code></a></li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>transform: enable <code>enum_eval</code> for
<code>transformSync</code> and vite TS transform (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9325 ">#9325</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>error: remove severity prefix from diagnostic messages (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9262 ">#9262</a>)
by <a
href="https://github.com/Kyujenius "><code>@Kyujenius</code></a></li>
<li>deps: pin pnpm to 10.23.0 to work around catalog mismatch on Netlify
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9364 ">#9364</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>ci: pin mimalloc-safe to 0.1.58 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9361 ">#9361</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>dev/lazy: fix exports of lazy requests in lazy chunks (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9249 ">#9249</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>rolldown_plugin_vite_resolve: handle errors in
<code>resolveSubpathImports</code> callback (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9355 ">#9355</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>rolldown_plugin_lazy_compilation: use loadExports for fetched proxy
to preserve original export names (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9132 ">#9132</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>common: include offending index in HybridIndexVec panic message (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9296 ">#9296</a>)
by <a href="https://github.com/SAY-5 "><code>@SAY-5</code></a></li>
</ul>
<h3>🚜 Refactor</h3>
<ul>
<li>ecmascript: extract semantic_builder_for_transform helper (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9326 ">#9326</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>test: extract reusable static-import-cycle helper (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9332 ">#9332</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>clarify scope of <code>topLevelVar</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9380 ">#9380</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>meta/design: add ast-mutation design doc (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9338 ">#9338</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>feat: add ai policy in contribution guide (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9315 ">#9315</a>)
by <a
href="https://github.com/mdong1909 "><code>@mdong1909</code></a></li>
</ul>
<h3>⚡ Performance</h3>
<ul>
<li>binding: enable mimalloc v3 to reduce idle memory (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9349 ">#9349</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
</ul>
<h3>🧪 Testing</h3>
<ul>
<li>mcs: cover require() in <code>$initial</code> group (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9376 ">#9376</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>add regression for CJS facade chunk merge into entry (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9351 ">#9351</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
</ul>
<h3>⚙️ Miscellaneous Tasks</h3>
<ul>
<li>switch prepare-release to manual dispatch with version input (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9383 ">#9383</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>migrate <code>@rolldown/pluginutils</code> to
<code>rolldown/plugins</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9317 ">#9317</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>deps: pin libmimalloc-sys2 to 0.1.54 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9372 ">#9372</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>replace <code>igorskyflyer/action-readfile</code> with
<code>cat</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9369 ">#9369</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>deps: update test262 submodule for tests (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9371 ">#9371</a>)
by <a
href="https://github.com/rolldown-guard "><code>@rolldown-guard</code></a>[bot]</li>
<li>use app token for test dep update PRs (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9368 ">#9368</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>replace some actions with gh commands (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9367 ">#9367</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>replace action-semantic-pull-request with inline regex (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9366 ">#9366</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="27779450b5 "><code>2777945</code></a>
release: v1.0.1 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9384 ">#9384</a>)</li>
<li><a
href="4e353804a3 "><code>4e35380</code></a>
feat(experimental/lazy-barrel): advice on oversized barrel modules (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9236 ">#9236</a>)</li>
<li><a
href="83d2762658 "><code>83d2762</code></a>
docs: clarify scope of <code>topLevelVar</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9380 ">#9380</a>)</li>
<li><a
href="9ba2e73935 "><code>9ba2e73</code></a>
chore: migrate <code>@rolldown/pluginutils</code> to
<code>rolldown/plugins</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9317 ">#9317</a>)</li>
<li><a
href="ef5796f0ec "><code>ef5796f</code></a>
fix(transform): enable <code>enum_eval</code> for
<code>transformSync</code> and vite TS transform ...</li>
<li><a
href="1f5dce1dc8 "><code>1f5dce1</code></a>
fix(error): remove severity prefix from diagnostic messages (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9262 ">#9262</a>)</li>
<li><a
href="fd479191a9 "><code>fd47919</code></a>
chore(deps): upgrade oxc to 0.130.0 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9360 ">#9360</a>)</li>
<li><a
href="4c121d30d1 "><code>4c121d3</code></a>
chore(deps): update npm packages (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9343 ">#9343</a>)</li>
<li><a
href="024de36969 "><code>024de36</code></a>
fix(rolldown_plugin_vite_resolve): handle errors in
<code>resolveSubpathImports</code> c...</li>
<li><a
href="7e5855c336 "><code>7e5855c</code></a>
feat(chunk-optimization): dedupe already-loaded dynamic deps (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9305 ">#9305</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/rolldown/rolldown/commits/v1.0.1/packages/rolldown ">compare
view</a></li>
</ul>
</details>
<br />
Updates `@rolldown/binding-darwin-arm64` from 1.0.0-rc.18 to 1.0.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rolldown/rolldown/releases ">@rolldown/binding-darwin-arm64's
releases</a>.</em></p>
<blockquote>
<h2>v1.0.1</h2>
<h2>[1.0.1] - 2026-05-13</h2>
<h3>🚀 Features</h3>
<ul>
<li>experimental/lazy-barrel: advice on oversized barrel modules (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9236 ">#9236</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>rolldown: inline optional-chain enum access (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9379 ">#9379</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>chunk-optimization: dedupe already-loaded dynamic deps (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9305 ">#9305</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>binding: call moduleParsed hook in ParallelJsPlugin (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9318 ">#9318</a>)
by <a href="https://github.com/jaehafe "><code>@jaehafe</code></a></li>
</ul>
<h3>🐛 Bug Fixes</h3>
<ul>
<li>transform: enable <code>enum_eval</code> for
<code>transformSync</code> and vite TS transform (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9325 ">#9325</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>error: remove severity prefix from diagnostic messages (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9262 ">#9262</a>)
by <a
href="https://github.com/Kyujenius "><code>@Kyujenius</code></a></li>
<li>deps: pin pnpm to 10.23.0 to work around catalog mismatch on Netlify
(<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9364 ">#9364</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>ci: pin mimalloc-safe to 0.1.58 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9361 ">#9361</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>dev/lazy: fix exports of lazy requests in lazy chunks (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9249 ">#9249</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>rolldown_plugin_vite_resolve: handle errors in
<code>resolveSubpathImports</code> callback (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9355 ">#9355</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>rolldown_plugin_lazy_compilation: use loadExports for fetched proxy
to preserve original export names (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9132 ">#9132</a>)
by <a href="https://github.com/h-a-n-a "><code>@h-a-n-a</code></a></li>
<li>common: include offending index in HybridIndexVec panic message (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9296 ">#9296</a>)
by <a href="https://github.com/SAY-5 "><code>@SAY-5</code></a></li>
</ul>
<h3>🚜 Refactor</h3>
<ul>
<li>ecmascript: extract semantic_builder_for_transform helper (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9326 ">#9326</a>)
by <a href="https://github.com/Dunqing "><code>@Dunqing</code></a></li>
<li>test: extract reusable static-import-cycle helper (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9332 ">#9332</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>clarify scope of <code>topLevelVar</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9380 ">#9380</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
<li>meta/design: add ast-mutation design doc (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9338 ">#9338</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>feat: add ai policy in contribution guide (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9315 ">#9315</a>)
by <a
href="https://github.com/mdong1909 "><code>@mdong1909</code></a></li>
</ul>
<h3>⚡ Performance</h3>
<ul>
<li>binding: enable mimalloc v3 to reduce idle memory (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9349 ">#9349</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
</ul>
<h3>🧪 Testing</h3>
<ul>
<li>mcs: cover require() in <code>$initial</code> group (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9376 ">#9376</a>)
by <a href="https://github.com/hyf0 "><code>@hyf0</code></a></li>
<li>add regression for CJS facade chunk merge into entry (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9351 ">#9351</a>)
by <a
href="https://github.com/IWANABETHATGUY "><code>@IWANABETHATGUY</code></a></li>
</ul>
<h3>⚙️ Miscellaneous Tasks</h3>
<ul>
<li>switch prepare-release to manual dispatch with version input (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9383 ">#9383</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>migrate <code>@rolldown/pluginutils</code> to
<code>rolldown/plugins</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9317 ">#9317</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>deps: pin libmimalloc-sys2 to 0.1.54 (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9372 ">#9372</a>)
by <a
href="https://github.com/shulaoda "><code>@shulaoda</code></a></li>
<li>replace <code>igorskyflyer/action-readfile</code> with
<code>cat</code> (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9369 ">#9369</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>deps: update test262 submodule for tests (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9371 ">#9371</a>)
by <a
href="https://github.com/rolldown-guard "><code>@rolldown-guard</code></a>[bot]</li>
<li>use app token for test dep update PRs (<a
href="https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9368 ">#9368</a>)
by <a
href="https://github.com/sapphi-red "><code>@sapphi-red</code></a></li>
<li>replace some actions with gh c...
_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: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-05-16 22:13:53 +02:00
Aleksandr Suhinin
8d76be356a
fix: load credential error for bedrock gateway ( #667 )
...
Sometimes leads to long initialization and error if
AWS_BEARER_TOKEN_BEDROCK:
Could not load credentials from any providers
2026-05-16 08:11:04 +02:00
Aleksandr Suhinin
002c63a78b
feat: add bedrock gateway authentication ( #665 )
2026-05-15 20:20:49 +02:00
Ben Brandt
867a3a0de2
fix: Honor availableModels settings allowlist ( #637 )
...
Merge and dedupe entries across settings sources, preserve the
default model, and pass user-specified model IDs through to setModel.
Closes #620
2026-05-07 21:15:04 +00:00
Ben Brandt
dba199839a
fix: Handle result origins in ACP agent ( #627 )
...
Add origin-aware raw SDK message filtering and forward result
origin metadata in usage updates.
Ignore task-notification followup results when computing the
user-turn stop reason or forwarding local slash-command output.
2026-05-04 00:07:16 +02:00
davethedev3
8d7e22026e
fix: emit a real diff when Write overwrites an existing file ( #618 )
...
## What's broken
The PostToolUse hook fan-out (`src/acp-agent.ts`) only invokes
`toolUpdateFromEditToolResponse` for tools named `Edit`. Any `Write`
that overwrites an existing file (`FileWriteOutput.type === "update"`)
keeps the optimistic content built at tool-use time by
`toolInfoFromToolUse` — `oldText: null, newText: input.content` —
permanently. The user sees a "creation" diff regardless of whether the
file already existed, so overwrites visually look indistinguishable from
brand-new files.
This affects every Write that touches an existing file, which Claude
does routinely (rewriting configs, replacing small files, etc.).
## Fix
The SDK's `FileWriteOutput`
(`@anthropic-ai/claude-agent-sdk/sdk-tools.d.ts`) ships the same
hunk-shaped `structuredPatch` for `Write` that we already render for
`Edit`. Extending the dispatch to cover both tools replays the hook's
payload through `toolUpdateFromEditToolResponse` so update mode shows
the actual diff.
Create mode is unchanged in practice because the structuredPatch hunk's
lines are all additions, which collapse to the same `oldText: null,
newText: <content>` shape the optimistic path produced.
## Tests
Two regression tests added in `src/tests/tools.test.ts` under a new
`describe("post-tool-use hook sends diff content for Write tool")`:
- `Write` with `type: "update"` asserts the corrected diff (real
`oldText` / `newText` derived from `structuredPatch`)
- `Write` with `type: "create"` asserts the existing optimistic-style
diff is preserved
All existing tests pass. Total: 240 → 242.
## Validation
- `npm run check` ✅
- `npm run build` ✅
- `npm run test:run` ✅ (242 passed, 13 integration skipped)
---------
Co-authored-by: dave <dave@mint.lan >
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-05-03 23:44:47 +02:00
davethedev3
ec47d3446f
fix: gate auto mode on model support ( #604 )
...
## Summary
Closes #594
Only advertise and accept `auto` permission mode when the active SDK
model reports `supportsAutoMode: true`.
This fixes the Haiku path where clients could select `auto`, only for
the SDK to later reject it with `auto mode unavailable for this model`.
Changes included:
- build available permission modes from the active model's `ModelInfo`
- omit `auto` from `availableModes` when `supportsAutoMode` is absent or
false
- clamp `permissions.defaultMode: "auto"` to `default` when the resolved
model cannot use auto mode
- recompute and clamp the current mode on model switch
- reject direct `setSessionMode("auto")` when `auto` is not available
- filter `ExitPlanMode` choices so unavailable modes are not offered or
accepted
- add regression coverage for session creation, model switching, direct
mode setting, and `ExitPlanMode`
## Verification
- `npm run lint`
- `npx prettier --check src/acp-agent.ts
src/tests/acp-agent-settings.test.ts src/tests/acp-agent.test.ts
src/tests/session-config-options.test.ts`
- `npm run build`
- `npm run test:run`
- Manual ACP subprocess smoke test with `ANTHROPIC_MODEL=haiku`
- `auto` was not advertised
- `setSessionMode("auto")` was rejected before reaching the SDK
---------
Co-authored-by: dave <dave@mint.lan >
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-04-28 16:08:46 +00:00
Ben Brandt
76b4e96508
fix: Rename effort config category to thought_level ( #609 )
...
Uses the canonical version it should have been using.
2026-04-28 14:54:53 +00:00
Alex Plãte
67af018d02
fix: tolerate invalid values in settings.json ( #601 )
...
A broken value in settings.json (e.g. an unknown permissions.defaultMode
or a non-string model) used to throw and prevent session creation. Match
the Claude Code SDK behavior by logging the bad value and falling back
to defaults instead, so a single typo no longer renders the agent
unusable.
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com >
2026-04-28 10:20:09 +02:00
Steffen Deusch
1a9d3cebcd
detect glibc and use correct binary ( #598 )
...
On Linux, the current code prefers the musl binary if multiple versions
are installed, but it actually crashes on glibc systems.
Supersedes
https://github.com/agentclientprotocol/claude-agent-acp/pull/597 .
Importantly, we need to pass the detected binary to
`pathToClaudeCodeExecutable`, otherwise the SDK itself selects the wrong
version.
See https://github.com/tidewave-ai/tidewave_app/issues/141 .
Closes https://github.com/tidewave-ai/tidewave_app/issues/141 .
2026-04-27 11:54:12 +02:00
Ben Brandt
5faefab8ab
fix: Session Replay and Permission rendering ( #593 )
...
Cleans up the replay of loaded sessions.
Also makes always allow permissions clearer of what will be applied.
Closes #579
2026-04-24 15:13:02 +00:00
Ben Brandt
b3ddfc3b86
fix: Forward full systemPrompt preset options from _meta ( #591 )
...
Closes #581
Pass through object-based systemPrompt options from _meta while
forcing the claude_code preset, and add tests for defaulting,
string replacement, option forwarding, and override protection.
2026-04-24 16:08:04 +02:00
Eric Holk
e09f1486f1
fix: Forward SDKAssistantMessage.error as structured data on internal errors ( #582 )
...
## Motivation
When a Zed user on the Claude Pro tier hits their usage limit, Zed
receives an error like this from claude-agent-acp:
```json
{
"code": -32603,
"message": "Internal error: You've hit your limit \u00b7 resets 8pm (America/Los_Angeles)",
"data": undefined
}
```
The only way for a client to recognize this as a rate-limit condition
(vs. any of the other things that can hit the `is_error: true` path —
billing issues, server errors, max tokens, etc.) is to pattern-match on
the human-readable message text. That's fragile and breaks every time
the message gets reworded upstream.
## What Claude Code already provides
The Claude Agent SDK actually emits a categorical kind on the
`SDKAssistantMessage` that precedes the failing `result`:
```ts
export declare type SDKAssistantMessageError =
| 'authentication_failed'
| 'billing_error'
| 'rate_limit'
| 'invalid_request'
| 'server_error'
| 'unknown'
| 'max_output_tokens';
```
\(Confirmed by inspection of the shipped `cli.js`: the CLI calls a
helper that wraps errors into assistant messages with `error:
"rate_limit"` \(or `billing_error`, etc.\) based on the nature of the
failure.\)
The adapter today reads `message.message.usage`,
`message.message.model`, and `message.message.content` off the
`SDKAssistantMessage`, but ignores the top-level `error` field. By the
time we throw `RequestError.internalError\(undefined, message.result\)`
on the failing result, the categorical info has been discarded.
## This PR
Capture the last seen `SDKAssistantMessage.error` and forward it to
`RequestError.internalError`'s `data` as `{ errorKind }`:
```json
{
"code": -32603,
"message": "Internal error: You've hit your limit \u00b7 resets 8pm (America/Los_Angeles)",
"data": { "errorKind": "rate_limit" }
}
```
ACP clients can then dispatch on the structured kind instead of
pattern-matching on the message text. Clients that don't understand the
field fall back to the existing message-based rendering unchanged
\(`data` is now populated in some cases where it used to be `undefined`,
but that's purely additive — no existing client reads this field today
so there's no compatibility risk\).
When the SDK doesn't provide a categorical error, we continue to pass
`undefined` so `data` stays absent.
## Changes
- `src/acp-agent.ts`: Track a `lastAssistantError:
SDKAssistantMessageError | undefined` through the `prompt()` iteration,
populated from the assistant branch. Thread it through to all three
`throw RequestError.internalError` sites in the result branch via a
small `errorKindData` helper.
- `src/tests/acp-agent.test.ts`: Two new tests — one verifying that an
upstream `error: "rate_limit"` on an `SDKAssistantMessage` shows up as
`{ errorKind: "rate_limit" }` on the thrown error's `data`, one
verifying that absence stays `undefined`.
## Open questions
1. **Field name.** I went with `errorKind` since it's short,
agent-agnostic, and not conflated with JSON-RPC's own `code`. Open to
bikeshedding.
2. **Whether to push this toward being an ACP-wide convention.** Other
adapters \(codex, gemini\) face the same problem — everything non-auth
squashed into `InternalError`. If this lands and works well here, it
might be worth writing up a little guidance in the ACP docs for "how
adapters should encode categorical error reasons" so we get the same
shape from every agent.
3. **Companion Zed PR.** The Zed-side change to read `data.errorKind`
and map to the existing `ThreadError::RateLimitExceeded` /
`AuthenticationRequired` / `PaymentRequired` / `MaxOutputTokens`
variants is straightforward \(~20 lines\) but I've held off on it until
this ships and a release is cut.
## Testing
- `npm run test:run`: 199 passing \(was 197; 2 new\).
- `npm run build`: clean.
- `npm run check`: lint + format clean.
This is part of a broader quality-week effort in Zed to improve the
external-agent debugging experience
\(<https://github.com/zed-industries/zed/issues/54531 >\).
2026-04-24 13:52:20 +00:00
Anna Zhdan
1e15f3d8b0
feat: allow configuring models through env vars ( #586 )
...
Allow providing Claude model settings via env var on startup. Providing
model settings is required when using Claude with alternative llm
provider, e.g. Bedrock as models have different IDs there
2026-04-24 15:50:28 +02:00
Ben Brandt
92adcbd1ac
feat: Update to acp sdk v0.20 ( #589 )
2026-04-24 13:49:18 +00:00
Ben Brandt
9e1185bfd5
feat: Support effort levels ( #464 )
2026-04-20 15:21:41 +02:00
Ben Brandt
e9dd45207d
feat: Update to claude-agent-sdk 0.2.114 ( #572 )
...
This now uses an exectuble version of claude code under the hood, so we
should be hopefully getting faster new session times.
2026-04-20 11:44:50 +00:00