documnet-service-worker-blocklist-issue
933 次代码提交
| 作者 | SHA1 | 备注 | 提交日期 | |
|---|---|---|---|---|
|
|
0d8b92e2a0 | Document allowlist/blocklist service worker limitation | ||
|
|
08c234ea4b |
feat: Add get_heapsnapshot_dominators MCP tool (#2215)
Adding the get_heapsnapshot_dominators MCP tool to show the dominators for a given node. In combination with get_heapsnapshot_retaining_paths this should help understand what keeps an object reachable and thus alive. Co-authored-by: Dominik Inführ <dinfuehr@chromium.org> Co-authored-by: Nicholas Roscino <nroscino@google.com> |
||
|
|
9e32002a69 |
fix: return error message when screencast_stop is called with no active recording (#2209)
## Summary
`screencast_stop` returns an empty response when no recording is active,
making it impossible for the calling agent to distinguish "stopped
successfully" from "nothing was recording."
`screencast_start` already handles its inverse case with an explicit
error (`"a screencast recording is already in progress"`), so this makes
`stop` consistent.
## Change
Added an error message when `screencast_stop` is called without an
active recording:
```ts
if (!data) {
response.appendResponseLine(
'Error: no active screencast recording to stop.',
);
return;
}
```
## Before
Empty tool response — agent cannot tell what happened.
## After
`Error: no active screencast recording to stop.`
---------
Co-authored-by: Nicholas Roscino <nroscino@google.com>
|
||
|
|
e77101e5dc |
fix: limit windows test concurrency (#2205)
Fixes #2137. This updates the test workflow so Windows jobs run the Node test runner with `--test-concurrency=1`. The issue points to intermittent Windows failures where the browser target closes during screenshot tests. Those tests start real browser sessions, and limiting test concurrency on Windows avoids overlapping screenshot/browser work there while keeping the existing parallel behavior on Linux and macOS. Verification: - `git diff --check` - Inspected the workflow command expansion: only `windows-latest` receives `--test-concurrency=1`; merge queue retries still pass `--retry` as before. |
||
|
|
ed02047ae9 |
fix: Reset toolGroups before gathering toolGroups (#2200)
`getToolGroups` can be called multiple times. We want to reset the `window.__dtmcp.toolGroups` array each time to prevent duplications. |
||
|
|
228cf3936a |
chore(deps-dev): bump the dev-dependencies group across 1 directory with 9 updates (#2196)
Bumps the dev-dependencies group with 9 updates in the / directory: | Package | From | To | | --- | --- | --- | | [@google/genai](https://github.com/googleapis/js-genai) | `2.7.0` | `2.8.0` | | [@toon-format/toon](https://github.com/toon-format/toon) | `2.2.0` | `2.3.0` | | [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.9.1` | `25.9.2` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.60.0` | `8.61.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.60.0` | `8.61.0` | | [prettier](https://github.com/prettier/prettier) | `3.8.3` | `3.8.4` | | [rollup](https://github.com/rollup/rollup) | `4.61.0` | `4.61.1` | | [semver](https://github.com/npm/node-semver) | `7.8.1` | `7.8.3` | | [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.60.0` | `8.61.0` | Updates `@google/genai` from 2.7.0 to 2.8.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/googleapis/js-genai/releases">@google/genai's releases</a>.</em></p> <blockquote> <h2>v2.8.0</h2> <h2><a href="https://github.com/googleapis/js-genai/compare/v2.7.0...v2.8.0">2.8.0</a> (2026-06-03)</h2> <h3>Features</h3> <ul> <li>Add Agent Platform MCP support to async generate_content (<a href="https://github.com/googleapis/js-genai/commit/baeaeaa5ae89f9f0a987a8cac5ef61703593fbc4">baeaeaa</a>)</li> <li>Add transcription language code. (<a href="https://github.com/googleapis/js-genai/commit/d2981d6c94e10f4b65d225e637e605b533c9a9d7">d2981d6</a>)</li> <li>Add TranslationConfig for live translation. (<a href="https://github.com/googleapis/js-genai/commit/8c44240f961708cfde6f2201af2175a0239ef490">8c44240</a>)</li> <li>Support ReinforcementTuning in GenAI SDK including ValidateReward API method. (<a href="https://github.com/googleapis/js-genai/commit/36f0bfb710ba954983de1fd786c89ed8fe887ce9">36f0bfb</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/googleapis/js-genai/blob/main/CHANGELOG.md">@google/genai's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/googleapis/js-genai/compare/v2.7.0...v2.8.0">2.8.0</a> (2026-06-03)</h2> <h3>Features</h3> <ul> <li>Add Agent Platform MCP support to async generate_content (<a href="https://github.com/googleapis/js-genai/commit/baeaeaa5ae89f9f0a987a8cac5ef61703593fbc4">baeaeaa</a>)</li> <li>Add transcription language code. (<a href="https://github.com/googleapis/js-genai/commit/d2981d6c94e10f4b65d225e637e605b533c9a9d7">d2981d6</a>)</li> <li>Add TranslationConfig for live translation. (<a href="https://github.com/googleapis/js-genai/commit/8c44240f961708cfde6f2201af2175a0239ef490">8c44240</a>)</li> <li>Support ReinforcementTuning in GenAI SDK including ValidateReward API method. (<a href="https://github.com/googleapis/js-genai/commit/36f0bfb710ba954983de1fd786c89ed8fe887ce9">36f0bfb</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/googleapis/js-genai/commit/ea0dd6004dcfdbb69895193efff2ee0af9b3ed80"><code>ea0dd60</code></a> chore(main): release 2.8.0 (<a href="https://redirect.github.com/googleapis/js-genai/issues/1646">#1646</a>)</li> <li><a href="https://github.com/googleapis/js-genai/commit/36f0bfb710ba954983de1fd786c89ed8fe887ce9"><code>36f0bfb</code></a> feat: Support ReinforcementTuning in GenAI SDK including ValidateReward API m...</li> <li><a href="https://github.com/googleapis/js-genai/commit/d2981d6c94e10f4b65d225e637e605b533c9a9d7"><code>d2981d6</code></a> feat: Add transcription language code.</li> <li><a href="https://github.com/googleapis/js-genai/commit/98ac90d0c4578d82754535d0df451b29c3ffb1c9"><code>98ac90d</code></a> chore: deprecate Google Maps grounding widget API fields</li> <li><a href="https://github.com/googleapis/js-genai/commit/8c44240f961708cfde6f2201af2175a0239ef490"><code>8c44240</code></a> feat: Add TranslationConfig for live translation.</li> <li><a href="https://github.com/googleapis/js-genai/commit/baeaeaa5ae89f9f0a987a8cac5ef61703593fbc4"><code>baeaeaa</code></a> feat: Add Agent Platform MCP support to async generate_content</li> <li><a href="https://github.com/googleapis/js-genai/commit/c1d3cb7bd100804437ca5c1c8d4d56dce881ef2d"><code>c1d3cb7</code></a> chore: Internal cleanup</li> <li><a href="https://github.com/googleapis/js-genai/commit/bd78ed331caeb1bd9d7322327f61a7dad9872e50"><code>bd78ed3</code></a> chore: Fix relative import path in pagers.ts.</li> <li>See full diff in <a href="https://github.com/googleapis/js-genai/compare/v2.7.0...v2.8.0">compare view</a></li> </ul> </details> <br /> Updates `@toon-format/toon` from 2.2.0 to 2.3.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/toon-format/toon/releases">@toon-format/toon's releases</a>.</em></p> <blockquote> <h2>v2.3.0</h2> <h3> 🚀 Features</h3> <ul> <li><strong>decode</strong>: Strict-mode error coverage for §6/§9.1/§14 - by <a href="https://github.com/johannschopplich"><code>@johannschopplich</code></a> <a href="https://github.com/toon-format/toon/commit/a13dcb5"><!-- raw HTML omitted -->(a13dc)<!-- raw HTML omitted --></a></li> <li><strong>docs</strong>: Add YAML input to Playground with tests - by <a href="https://github.com/swetasanghi2004-prog"><code>@swetasanghi2004-prog</code></a> in <a href="https://redirect.github.com/toon-format/toon/issues/303">toon-format/toon#303</a> <a href="https://github.com/toon-format/toon/commit/90a04bd"><!-- raw HTML omitted -->(90a04)<!-- raw HTML omitted --></a></li> <li><strong>encode</strong>: Emit canonical empty-array form <code>key: []</code> - by <a href="https://github.com/johannschopplich"><code>@johannschopplich</code></a> <a href="https://github.com/toon-format/toon/commit/e6d97d2"><!-- raw HTML omitted -->(e6d97)<!-- raw HTML omitted --></a></li> </ul> <h3> 🐞 Bug Fixes</h3> <ul> <li><strong>decode</strong>: <ul> <li>Support \uXXXX escape per §7.1 - by <a href="https://github.com/johannschopplich"><code>@johannschopplich</code></a> <a href="https://github.com/toon-format/toon/commit/1782076"><!-- raw HTML omitted -->(17820)<!-- raw HTML omitted --></a></li> <li>Reject whitespace gap in array header per §6 - by <a href="https://github.com/johannschopplich"><code>@johannschopplich</code></a> <a href="https://github.com/toon-format/toon/commit/d514942"><!-- raw HTML omitted -->(d5149)<!-- raw HTML omitted --></a></li> </ul> </li> </ul> <h5> <a href="https://github.com/toon-format/toon/compare/v2.2.0...v2.3.0">View changes on GitHub</a></h5> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/toon-format/toon/commit/3c66a1beada062dac82fa4f06c4dab2ed066407a"><code>3c66a1b</code></a> chore: release v2.3.0</li> <li><a href="https://github.com/toon-format/toon/commit/4b8aa998c371000bf5392868ecd05626feeee86b"><code>4b8aa99</code></a> chore(toon): bump <code>@toon-format/spec</code> to ^3.2.0</li> <li><a href="https://github.com/toon-format/toon/commit/1d23fa36d2d26ecf906acfa61de8ab418931ffec"><code>1d23fa3</code></a> chore: fix linting issues</li> <li><a href="https://github.com/toon-format/toon/commit/d6c64d23e475138e8b3d489a99207760b7da5c34"><code>d6c64d2</code></a> chore: upgrade dependencies</li> <li><a href="https://github.com/toon-format/toon/commit/dd856fe590d17c02b7b94866cd5bb0c2dd775be9"><code>dd856fe</code></a> docs: align prose with v3.2 spec wording</li> <li><a href="https://github.com/toon-format/toon/commit/d514942fc04a01fc76fafeb75f174858ea793ebb"><code>d514942</code></a> fix(decode): reject whitespace gap in array header per §6</li> <li><a href="https://github.com/toon-format/toon/commit/979152508dc04352258bdce308a681a7ceb48d92"><code>9791525</code></a> docs(toon): bump SPEC badge to v3.2, add What's new section, fix §17 anchor</li> <li><a href="https://github.com/toon-format/toon/commit/1446cae85de66ad380295f96defc0cde15600cd8"><code>1446cae</code></a> docs(cli): widen --no-strict description for v3.2 semantics</li> <li><a href="https://github.com/toon-format/toon/commit/13110eb975d7466e9e2c0bfbe4ca1202c8b1523f"><code>13110eb</code></a> docs: align guides and API reference with v3.2 spec changes</li> <li><a href="https://github.com/toon-format/toon/commit/1f53af3582b5a5b88489b7f529420c75a2ccea10"><code>1f53af3</code></a> docs(spec): refresh §17-19 layout, Appendix F, and §14 subsection references</li> <li>Additional commits viewable in <a href="https://github.com/toon-format/toon/compare/v2.2.0...v2.3.0">compare view</a></li> </ul> </details> <br /> Updates `@types/node` from 25.9.1 to 25.9.2 <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.60.0 to 8.61.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.61.0</h2> <h2>8.61.0 (2026-06-08)</h2> <h3>🚀 Features</h3> <ul> <li><strong>ast-spec:</strong> change type of <code>UnaryExpression.prefix</code> to always <code>true</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12372">#12372</a>)</li> <li><strong>ast-spec:</strong> tighten types of <code>ArrowFunction</code>, <code>YieldExpression</code>, <code>TSTypePredicate</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12373">#12373</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>rule-schema-to-typescript-types:</strong> respect ECMAScript line terminators (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12374">#12374</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>lumir</li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.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.61.0 (2026-06-08)</h2> <h3>🚀 Features</h3> <ul> <li><strong>ast-spec:</strong> change type of <code>UnaryExpression.prefix</code> to always <code>true</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12372">#12372</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.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="https://github.com/typescript-eslint/typescript-eslint/commit/16a5b247affc32af21b695cf96dfd75d7ded50a3"><code>16a5b24</code></a> chore(release): publish 8.61.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/ef1fd28c68b10da2e5b56823da8491f10f2c2b97"><code>ef1fd28</code></a> feat(ast-spec): change type of <code>UnaryExpression.prefix</code> to always <code>true</code> (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12">#12</a>...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68"><code>4f84a69</code></a> chore(release): publish 8.60.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391"><code>598af56</code></a> docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964"><code>1849b53</code></a> chore: typecheck using tsgo (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139">#12139</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216"><code>5341d59</code></a> chore: fix lint issues (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369">#12369</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576"><code>f525814</code></a> fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1">#1</a>...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450"><code>2df540c</code></a> chore(eslint-plugin): defer type checks to improve rules performance (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296">#12296</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243"><code>1ab4284</code></a> fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1"><code>2f49df5</code></a> docs: update references to <code>@stylistic/eslint-plugin</code> rules in documentation ...</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.61.0/packages/eslint-plugin">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/parser` from 8.60.0 to 8.61.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.61.0</h2> <h2>8.61.0 (2026-06-08)</h2> <h3>🚀 Features</h3> <ul> <li><strong>ast-spec:</strong> change type of <code>UnaryExpression.prefix</code> to always <code>true</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12372">#12372</a>)</li> <li><strong>ast-spec:</strong> tighten types of <code>ArrowFunction</code>, <code>YieldExpression</code>, <code>TSTypePredicate</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12373">#12373</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>rule-schema-to-typescript-types:</strong> respect ECMAScript line terminators (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12374">#12374</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>lumir</li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.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.61.0 (2026-06-08)</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.61.0">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.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="https://github.com/typescript-eslint/typescript-eslint/commit/16a5b247affc32af21b695cf96dfd75d7ded50a3"><code>16a5b24</code></a> chore(release): publish 8.61.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68"><code>4f84a69</code></a> chore(release): publish 8.60.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964"><code>1849b53</code></a> chore: typecheck using tsgo (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139">#12139</a>)</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.61.0/packages/parser">compare view</a></li> </ul> </details> <br /> Updates `prettier` from 3.8.3 to 3.8.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/prettier/prettier/releases">prettier's releases</a>.</em></p> <blockquote> <h2>3.8.4</h2> <ul> <li>Markdown: Fix blank lines between list items and nested sub-lists being removed in Markdown/MDX (<a href="https://redirect.github.com/prettier/prettier/pull/17746">prettier/prettier#17746</a> by <a href="https://github.com/byplayer"><code>@byplayer</code></a>)</li> </ul> <p>🔗 <a href="https://github.com/prettier/prettier/blob/3.8.4/CHANGELOG.md#384">Changelog</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/prettier/prettier/blob/main/CHANGELOG.md">prettier's changelog</a>.</em></p> <blockquote> <h1>3.8.4</h1> <p><a href="https://github.com/prettier/prettier/compare/3.8.3...3.8.4">diff</a></p> <h4>Markdown: Fix blank lines between list items and nested sub-lists being removed in Markdown/MDX (<a href="https://redirect.github.com/prettier/prettier/pull/17746">#17746</a> by <a href="https://github.com/byplayer"><code>@byplayer</code></a>)</h4> <p>Prettier was removing blank lines between list items and their nested sub-lists, converting loose lists into tight lists and changing their semantic meaning.</p> <!-- raw HTML omitted --> <pre lang="markdown"><code><!-- Input --> - a <ul> <li> <p>b</p> </li> <li> <p>c</p> <ul> <li>d</li> </ul> </li> </ul> <p><!-- Prettier 3.8.3 --></p> <ul> <li>a <ul> <li>b</li> </ul> </li> <li>c <ul> <li>d</li> </ul> </li> </ul> <p><!-- Prettier 3.8.4 --></p> <ul> <li> <p>a</p> <ul> <li>b</li> </ul> </li> <li> <p>c</p> <ul> <li>d<br /> </code></pre></li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/prettier/prettier/commit/1c6ba5539141552e0e8e22d401ea620d8fdff468"><code>1c6ba55</code></a> Release 3.8.4</li> <li><a href="https://github.com/prettier/prettier/commit/4a673dc9b59ddf7296bbab9822093d2971da84a8"><code>4a673dc</code></a> Fix blank lines between list items and nested sub-lists being removed in Mark...</li> <li><a href="https://github.com/prettier/prettier/commit/074aaedbb052a288e89d15eb0a4214de37a08866"><code>074aaed</code></a> Replace <code>main</code> branch in changelog link with tags (<a href="https://redirect.github.com/prettier/prettier/issues/19054">#19054</a>)</li> <li><a href="https://github.com/prettier/prettier/commit/c22a003ae97917c5043e8685b4fdff0f93e978f9"><code>c22a003</code></a> Bump Prettier dependency to 3.8.3</li> <li><a href="https://github.com/prettier/prettier/commit/07bad1f04536e9799927007baf466e67151576f0"><code>07bad1f</code></a> Clean changelog_unreleased</li> <li>See full diff in <a href="https://github.com/prettier/prettier/compare/3.8.3...3.8.4">compare view</a></li> </ul> </details> <br /> Updates `rollup` from 4.61.0 to 4.61.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/releases">rollup's releases</a>.</em></p> <blockquote> <h2>v4.61.1</h2> <h2>4.61.1</h2> <p><em>2026-06-04</em></p> <h3>Bug Fixes</h3> <ul> <li>Avoid extraneous newlines when adding headers via plugins (<a href="https://redirect.github.com/rollup/rollup/issues/6403">#6403</a>)</li> <li>Fix a rare issue where starting Rollup would hang on Windows (<a href="https://redirect.github.com/rollup/rollup/issues/6404">#6404</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6402">#6402</a>: Improve documentation for manualPureFunctions (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6403">#6403</a>: Does not add an extra leading line feed for addons (<a href="https://github.com/TrickyPi"><code>@TrickyPi</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6404">#6404</a>: fix: set report.excludeNetwork=true before getReport() to avoid blocking PTR lookups (<a href="https://github.com/jdz321"><code>@jdz321</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's changelog</a>.</em></p> <blockquote> <h2>4.61.1</h2> <p><em>2026-06-04</em></p> <h3>Bug Fixes</h3> <ul> <li>Avoid extraneous newlines when adding headers via plugins (<a href="https://redirect.github.com/rollup/rollup/issues/6403">#6403</a>)</li> <li>Fix a rare issue where starting Rollup would hang on Windows (<a href="https://redirect.github.com/rollup/rollup/issues/6404">#6404</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6402">#6402</a>: Improve documentation for manualPureFunctions (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6403">#6403</a>: Does not add an extra leading line feed for addons (<a href="https://github.com/TrickyPi"><code>@TrickyPi</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6404">#6404</a>: fix: set report.excludeNetwork=true before getReport() to avoid blocking PTR lookups (<a href="https://github.com/jdz321"><code>@jdz321</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rollup/rollup/commit/b77daf0a97cf96e61870cc02de584e923bc70fad"><code>b77daf0</code></a> 4.61.1</li> <li><a href="https://github.com/rollup/rollup/commit/91b6dc4def27e990412fa4dc5b4fe1a9af3adcba"><code>91b6dc4</code></a> fix: set report.excludeNetwork=true before getReport() to avoid blocking PTR ...</li> <li><a href="https://github.com/rollup/rollup/commit/f2a0449e1c7144acf12d2bf0a4aad76c9a7d85e6"><code>f2a0449</code></a> Improve documentation for manualPureFunctions (<a href="https://redirect.github.com/rollup/rollup/issues/6402">#6402</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/7bdce6c9e34bd395891aca96d17ccd14c5fd24ad"><code>7bdce6c</code></a> Does not add an extra leading line feed for addons (<a href="https://redirect.github.com/rollup/rollup/issues/6403">#6403</a>)</li> <li>See full diff in <a href="https://github.com/rollup/rollup/compare/v4.61.0...v4.61.1">compare view</a></li> </ul> </details> <br /> Updates `semver` from 7.8.1 to 7.8.3 <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.3</h2> <h2><a href="https://github.com/npm/node-semver/compare/v7.8.2...v7.8.3">7.8.3</a> (2026-06-08)</h2> <h3>Bug Fixes</h3> <ul> <li><a href="https://github.com/npm/node-semver/commit/046da7f527cc72a482b5dea8cb59392be65bf186"><code>046da7f</code></a> <a href="https://redirect.github.com/npm/node-semver/pull/872">#872</a> align caret includePrerelease lower bounds (<a href="https://redirect.github.com/npm/node-semver/issues/872">#872</a>) (<a href="https://github.com/wayyoungboy"><code>@wayyoungboy</code></a>)</li> </ul> <h3>Chores</h3> <ul> <li><a href="https://github.com/npm/node-semver/commit/3485ddadb2ca0d0691392ee5ce620072e1b1e040"><code>3485dda</code></a> <a href="https://redirect.github.com/npm/node-semver/pull/866">#866</a> bump <code>@npmcli/eslint-config</code> from 6.0.1 to 7.0.0 (<a href="https://redirect.github.com/npm/node-semver/issues/866">#866</a>) (<a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot])</li> </ul> <h2>v7.8.2</h2> <h2><a href="https://github.com/npm/node-semver/compare/v7.8.1...v7.8.2">7.8.2</a> (2026-06-04)</h2> <h3>Bug Fixes</h3> <ul> <li><a href="https://github.com/npm/node-semver/commit/bea6028694a75e840f48b288ac019e9644cfe6e8"><code>bea6028</code></a> <a href="https://redirect.github.com/npm/node-semver/pull/870">#870</a> increment dotted prerelease identifiers (<a href="https://redirect.github.com/npm/node-semver/issues/870">#870</a>) (<a href="https://github.com/liuzemei"><code>@liuzemei</code></a>, <a href="https://github.com/SheldonNeo"><code>@SheldonNeo</code></a>)</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.2...v7.8.3">7.8.3</a> (2026-06-08)</h2> <h3>Bug Fixes</h3> <ul> <li><a href="https://github.com/npm/node-semver/commit/046da7f527cc72a482b5dea8cb59392be65bf186"><code>046da7f</code></a> <a href="https://redirect.github.com/npm/node-semver/pull/872">#872</a> align caret includePrerelease lower bounds (<a href="https://redirect.github.com/npm/node-semver/issues/872">#872</a>) (<a href="https://github.com/wayyoungboy"><code>@wayyoungboy</code></a>)</li> </ul> <h3>Chores</h3> <ul> <li><a href="https://github.com/npm/node-semver/commit/3485ddadb2ca0d0691392ee5ce620072e1b1e040"><code>3485dda</code></a> <a href="https://redirect.github.com/npm/node-semver/pull/866">#866</a> bump <code>@npmcli/eslint-config</code> from 6.0.1 to 7.0.0 (<a href="https://redirect.github.com/npm/node-semver/issues/866">#866</a>) (<a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot])</li> </ul> <h2><a href="https://github.com/npm/node-semver/compare/v7.8.1...v7.8.2">7.8.2</a> (2026-06-04)</h2> <h3>Bug Fixes</h3> <ul> <li><a href="https://github.com/npm/node-semver/commit/bea6028694a75e840f48b288ac019e9644cfe6e8"><code>bea6028</code></a> <a href="https://redirect.github.com/npm/node-semver/pull/870">#870</a> increment dotted prerelease identifiers (<a href="https://redirect.github.com/npm/node-semver/issues/870">#870</a>) (<a href="https://github.com/liuzemei"><code>@liuzemei</code></a>, <a href="https://github.com/SheldonNeo"><code>@SheldonNeo</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/npm/node-semver/commit/6b77aa84a648a4b54ea32a21e6db60ebd54d5040"><code>6b77aa8</code></a> chore: release 7.8.3 (<a href="https://redirect.github.com/npm/node-semver/issues/873">#873</a>)</li> <li><a href="https://github.com/npm/node-semver/commit/3485ddadb2ca0d0691392ee5ce620072e1b1e040"><code>3485dda</code></a> chore: bump <code>@npmcli/eslint-config</code> from 6.0.1 to 7.0.0 (<a href="https://redirect.github.com/npm/node-semver/issues/866">#866</a>)</li> <li><a href="https://github.com/npm/node-semver/commit/046da7f527cc72a482b5dea8cb59392be65bf186"><code>046da7f</code></a> fix: align caret includePrerelease lower bounds (<a href="https://redirect.github.com/npm/node-semver/issues/872">#872</a>)</li> <li><a href="https://github.com/npm/node-semver/commit/efafcf8d029faa3d1ab74b5ec98d620112af859d"><code>efafcf8</code></a> chore: release 7.8.2 (<a href="https://redirect.github.com/npm/node-semver/issues/871">#871</a>)</li> <li><a href="https://github.com/npm/node-semver/commit/bea6028694a75e840f48b288ac019e9644cfe6e8"><code>bea6028</code></a> fix: increment dotted prerelease identifiers (<a href="https://redirect.github.com/npm/node-semver/issues/870">#870</a>)</li> <li>See full diff in <a href="https://github.com/npm/node-semver/compare/v7.8.1...v7.8.3">compare view</a></li> </ul> </details> <br /> Updates `typescript-eslint` from 8.60.0 to 8.61.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases">typescript-eslint's releases</a>.</em></p> <blockquote> <h2>v8.61.0</h2> <h2>8.61.0 (2026-06-08)</h2> <h3>🚀 Features</h3> <ul> <li><strong>ast-spec:</strong> change type of <code>UnaryExpression.prefix</code> to always <code>true</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12372">#12372</a>)</li> <li><strong>ast-spec:</strong> tighten types of <code>ArrowFunction</code>, <code>YieldExpression</code>, <code>TSTypePredicate</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12373">#12373</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>rule-schema-to-typescript-types:</strong> respect ECMAScript line terminators (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12374">#12374</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>lumir</li> </ul> <p>See <a href="https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>v8.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/typescript-eslint/CHANGELOG.md">typescript-eslint's changelog</a>.</em></p> <blockquote> <h2>8.61.0 (2026-06-08)</h2> <p>This was a version bump only for typescript-eslint 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.61.0">GitHub Releases</a> for more information.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> <h2>8.60.1 (2026-06-01)</h2> <p>This was a version bump only for typescript-eslint 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="https://github.com/typescript-eslint/typescript-eslint/commit/16a5b247affc32af21b695cf96dfd75d7ded50a3"><code>16a5b24</code></a> chore(release): publish 8.61.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68"><code>4f84a69</code></a> chore(release): publish 8.60.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964"><code>1849b53</code></a> chore: typecheck using tsgo (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint/issues/12139">#12139</a>)</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.61.0/packages/typescript-eslint">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
4f8eb7ad6b |
feat: Add the get_heapsnapshot_edges MCP tool (#2180)
This PR adds the get_heapsnapshot_edges MCP tool. Agents can use it to look at the outgoing edges for a specifc object. Co-authored-by: Dominik Inführ <dinfuehr@chromium.org> |
||
|
|
6bd8c91678 |
feat: Use HeapSnapshotProxy.nodeIndexById (#2193)
Co-authored-by: Dominik Inführ <dinfuehr@chromium.org> |
||
|
|
b646feb4f3 |
feat: include page title in list_pages output (#2166)
## Motivation `list_pages` shows each page's URL but not its title, which is painful when multiple pages share a host — e.g. several tabs under `app.example.com/u/0/`, `/u/1/`, `/u/2/`. There's no way to tell which is which without visiting each one, even though every page has a usable `document.title`. Fixes #2156. Closes #2175 ## What this changes - `list_pages` text output now shows the title before the URL when available: `1: My Page (https://example.com) [selected]`. If the page has no title (e.g. `about:blank`), the format is unchanged. - The structured content entry for each page now includes a `title` field alongside `id`, `url`, and `selected`. - `page.title()` is awaited with a `.catch(() => '')` so a closed or erroring page silently falls back to the URL-only format. - `format()` is made `async` to support the `await` inside the page loop; `createStructuredPage()` likewise becomes `async`. ## Testing Start the MCP server with multiple tabs open. Call `list_pages` — pages with titles now display as `id: Title (url)`. Pages without titles (`about:blank`, data URLs) display as before. --------- Co-authored-by: Piotr Paulski <31672205+zyzyzyryxy@users.noreply.github.com> |
||
|
|
834b259eb2 |
chore: expose loadResouce HostBinding (#2194)
This makes sure that if any resource that is loaded via the HostBinding will be correctly checked agains the roots object. |
||
|
|
a97c642d43 |
feat: Add retaining paths MCP tool (#2187)
This PR adds the `get_heapsnapshot_retaining_paths` MCP tool. This can be used to find the paths from the target object to the GC roots which keep that object alive. Co-authored-by: Dominik Inführ <dinfuehr@chromium.org> |
||
|
|
bede4fbdfa |
chore: install HostBindingAdapter (#2186)
This PR introduces the HostBindingAdapter to utilize the functions usually available to DevTools. Additionally I moved all the DevTools related files under a `devtools` directory to better separate the extractor logic. The patch scripts for DevTools were moved under a function to remove the side-effect nature of the file. Now gets called in a the creation of the McpContext (and a before hook in test.) |
||
|
|
702d3734f2 |
chore(main): release chrome-devtools-mcp 1.2.0 (#2153)
publish-on-tag / publish-to-npm (push) Has been cancelled
publish-on-tag / publish-to-mcp-registry (push) Has been cancelled
🤖 I have created a release *beep* *boop* --- ## [1.2.0](https://github.com/ChromeDevTools/chrome-devtools-mcp/compare/chrome-devtools-mcp-v1.1.1...chrome-devtools-mcp-v1.2.0) (2026-06-08) ### 🎉 Features * add experimental TOON support for structured content output ([#2042](https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/2042)) ([chrome-devtools-mcp-v1.2.0 |
||
|
|
8b458f7ad1 |
docs(skill): guide agent to prompt for --categoryExtensions (#2189)
...when extension tools are missing. I've run into the situation that the coding agent would try different esoteric approach to install the extension when asked to debug it in chrome DevTools. |
||
|
|
aa33bff19f |
feat: add experimental TOON support for structured content output (#2042)
Adds `--experimentalToonFormat` boolean flag, controlling how structured content is formatted in text response. By default, custom shorthand format is used. With this flag, TOON format (see https://github.com/toon-format/toon) is used instead. TOON format is supposed to be more token-efficient and less error-prone for agents to understand than json, but it's not clear if it will be better on those metrics than the custom format used so far. (Evals pending) One clear benefit over custom format would be less code to maintain if we decide to fully switch to TOON, due to dropping custom formatters and reusing json formatters used for structuredContent anyways. Co-authored-by: Piotr Paulski <piotrpaulski@chromium.org> |
||
|
|
29e389848f |
feat: implement extension service worker logs (#1915)
This PR introduces the possiblity to collect console messages from service workers. |
||
|
|
02b4492ca6 |
feat: support allowedUrlPattern & blockedUrlPattern Options (#2037)
## Support for Network Blocklists and Allowlists (`--blocked-url-pattern` & `--allowed-url-pattern` arguments) This PR adds support for CLI options to restrict network access in the browser session via URL patterns. ### Key Features & How It Works - **Pattern Matching:** Utilizes the [URLPattern Standard](https://urlpattern.spec.whatwg.org/) for pattern matching. - **Target Detachment:** Silently detaches from targets (pages/tabs) whose URLs match blocked patterns (or do not match allowed patterns) upon connection. - **Runtime Blocking:** Prevents navigations and blocks runtime requests (such as fetch/XHR and subresources) if they violate the pattern rules. - **Mutual Exclusivity:** `--blocked-url-pattern` and `--allowed-url-pattern` conflict with each other and cannot be configured simultaneously. - **Browser Requirements:** - **`--allowed-url-pattern`**: Requires **Chrome 149+**. - **`--blocked-url-pattern`**: Works on Chrome versions older than 149, but **Chrome 149+ is highly recommended**. ### Important Limitations & Side Effects - **Network Emulation/Throttling Conflict:** Network throttling is disabled when a network blocklist/allowlist is configured, to avoid conflicting with Puppeteer's underlying blocking mechanisms. - Using the `emulate` tool to modify `networkConditions` (e.g. setting to `Offline`) will throw an error: *`Network throttling is not supported when network blocking (allowlist/blocklist) is configured.`* - Other emulation settings (e.g., `cpuThrottlingRate`, `geolocation`, `viewport`) are unaffected and remain fully functional. --- ### Configuration Examples #### 1. Blocking specific domains or endpoints (Blocklist) Add the `--blocked-url-pattern` options to the `args` list in your MCP settings file: ```json { "mcpServers": { "chrome-devtools": { "command": "npx", "args": [ "chrome-devtools-mcp@latest", "--blocked-url-pattern=*://*.blocked-example.com/*", "--blocked-url-pattern=*://*.another-blocked-example.com/*" ] } } } ``` #### 2. Restricting access to authorized domains (Allowlist) Add the `--allowed-url-pattern` options to restrict the browser to permitted hosts (requires Chrome 149+): ```json { "mcpServers": { "chrome-devtools": { "command": "npx", "args": [ "chrome-devtools-mcp@latest", "--allowed-url-pattern=https://*.allowed-example.com/*", "--allowed-url-pattern=https://*.another-allowed-example.com/*" ] } } } ``` --------- Co-authored-by: Natallia Harshunova <nharshunova@chromium.org> Co-authored-by: Alex Rudenko <alexrudenko@chromium.org> |
||
|
|
7afd01673f |
chore(deps): bump actions/checkout from 6.0.2 to 6.0.3 in the all group (#2185)
Bumps the all group with 1 update: [actions/checkout](https://github.com/actions/checkout). Updates `actions/checkout` from 6.0.2 to 6.0.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/checkout/releases">actions/checkout's releases</a>.</em></p> <blockquote> <h2>v6.0.3</h2> <h2>What's Changed</h2> <ul> <li>Update changelog by <a href="https://github.com/ericsciple"><code>@ericsciple</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2357">actions/checkout#2357</a></li> <li>fix: expand merge commit SHA regex and add SHA-256 test cases by <a href="https://github.com/yaananth"><code>@yaananth</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2414">actions/checkout#2414</a></li> <li>Fix checkout init for SHA-256 repositories by <a href="https://github.com/yaananth"><code>@yaananth</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2439">actions/checkout#2439</a></li> <li>Update changelog for v6.0.3 by <a href="https://github.com/yaananth"><code>@yaananth</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2446">actions/checkout#2446</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/yaananth"><code>@yaananth</code></a> made their first contribution in <a href="https://redirect.github.com/actions/checkout/pull/2414">actions/checkout#2414</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/checkout/compare/v6...v6.0.3">https://github.com/actions/checkout/compare/v6...v6.0.3</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/checkout/blob/main/CHANGELOG.md">actions/checkout's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <h2>v6.0.3</h2> <ul> <li>Fix checkout init for SHA-256 repositories by <a href="https://github.com/yaananth"><code>@yaananth</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2439">actions/checkout#2439</a></li> <li>fix: expand merge commit SHA regex and add SHA-256 test cases by <a href="https://github.com/yaananth"><code>@yaananth</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2414">actions/checkout#2414</a></li> </ul> <h2>v6.0.2</h2> <ul> <li>Fix tag handling: preserve annotations and explicit fetch-tags by <a href="https://github.com/ericsciple"><code>@ericsciple</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2356">actions/checkout#2356</a></li> </ul> <h2>v6.0.1</h2> <ul> <li>Add worktree support for persist-credentials includeIf by <a href="https://github.com/ericsciple"><code>@ericsciple</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2327">actions/checkout#2327</a></li> </ul> <h2>v6.0.0</h2> <ul> <li>Persist creds to a separate file by <a href="https://github.com/ericsciple"><code>@ericsciple</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2286">actions/checkout#2286</a></li> <li>Update README to include Node.js 24 support details and requirements by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2248">actions/checkout#2248</a></li> </ul> <h2>v5.0.1</h2> <ul> <li>Port v6 cleanup to v5 by <a href="https://github.com/ericsciple"><code>@ericsciple</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2301">actions/checkout#2301</a></li> </ul> <h2>v5.0.0</h2> <ul> <li>Update actions checkout to use node 24 by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2226">actions/checkout#2226</a></li> </ul> <h2>v4.3.1</h2> <ul> <li>Port v6 cleanup to v4 by <a href="https://github.com/ericsciple"><code>@ericsciple</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2305">actions/checkout#2305</a></li> </ul> <h2>v4.3.0</h2> <ul> <li>docs: update README.md by <a href="https://github.com/motss"><code>@motss</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1971">actions/checkout#1971</a></li> <li>Add internal repos for checking out multiple repositories by <a href="https://github.com/mouismail"><code>@mouismail</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1977">actions/checkout#1977</a></li> <li>Documentation update - add recommended permissions to Readme by <a href="https://github.com/benwells"><code>@benwells</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2043">actions/checkout#2043</a></li> <li>Adjust positioning of user email note and permissions heading by <a href="https://github.com/joshmgross"><code>@joshmgross</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2044">actions/checkout#2044</a></li> <li>Update README.md by <a href="https://github.com/nebuk89"><code>@nebuk89</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2194">actions/checkout#2194</a></li> <li>Update CODEOWNERS for actions by <a href="https://github.com/TingluoHuang"><code>@TingluoHuang</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2224">actions/checkout#2224</a></li> <li>Update package dependencies by <a href="https://github.com/salmanmkc"><code>@salmanmkc</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/2236">actions/checkout#2236</a></li> </ul> <h2>v4.2.2</h2> <ul> <li><code>url-helper.ts</code> now leverages well-known environment variables by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1941">actions/checkout#1941</a></li> <li>Expand unit test coverage for <code>isGhes</code> by <a href="https://github.com/jww3"><code>@jww3</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1946">actions/checkout#1946</a></li> </ul> <h2>v4.2.1</h2> <ul> <li>Check out other refs/* by commit if provided, fall back to ref by <a href="https://github.com/orhantoy"><code>@orhantoy</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1924">actions/checkout#1924</a></li> </ul> <h2>v4.2.0</h2> <ul> <li>Add Ref and Commit outputs by <a href="https://github.com/lucacome"><code>@lucacome</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1180">actions/checkout#1180</a></li> <li>Dependency updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>- <a href="https://redirect.github.com/actions/checkout/pull/1777">actions/checkout#1777</a>, <a href="https://redirect.github.com/actions/checkout/pull/1872">actions/checkout#1872</a></li> </ul> <h2>v4.1.7</h2> <ul> <li>Bump the minor-npm-dependencies group across 1 directory with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1739">actions/checkout#1739</a></li> <li>Bump actions/checkout from 3 to 4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1697">actions/checkout#1697</a></li> <li>Check out other refs/* by commit by <a href="https://github.com/orhantoy"><code>@orhantoy</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1774">actions/checkout#1774</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/checkout/commit/df4cb1c069e1874edd31b4311f1884172cec0e10"><code>df4cb1c</code></a> Update changelog for v6.0.3 (<a href="https://redirect.github.com/actions/checkout/issues/2446">#2446</a>)</li> <li><a href="https://github.com/actions/checkout/commit/1cce3390c2bfda521930d01229c073c7ff920824"><code>1cce339</code></a> Fix checkout init for SHA-256 repositories (<a href="https://redirect.github.com/actions/checkout/issues/2439">#2439</a>)</li> <li><a href="https://github.com/actions/checkout/commit/900f2210b1d28bbbd0bd22d17926b9e224e8f231"><code>900f221</code></a> fix: expand merge commit SHA regex and add SHA-256 test cases (<a href="https://redirect.github.com/actions/checkout/issues/2414">#2414</a>)</li> <li><a href="https://github.com/actions/checkout/commit/0c366fd6a839edf440554fa01a7085ccba70ac98"><code>0c366fd</code></a> Update changelog (<a href="https://redirect.github.com/actions/checkout/issues/2357">#2357</a>)</li> <li>See full diff in <a href="https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67214ff5f5447ce83dd...df4cb1c069e1874edd31b4311f1884172cec0e10">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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> |
||
|
|
83ff511dab |
chore(deps-dev): bump chrome-devtools-frontend from 1.0.1638082 to 1.0.1641723 in the bundled-devtools group (#2184)
Bumps the bundled-devtools group with 1 update: [chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend). Updates `chrome-devtools-frontend` from 1.0.1638082 to 1.0.1641723 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/cf513d18ad1f86f5c9961f32958489fe7476d59c"><code>cf513d1</code></a> Update DevTools DEPS (trusted)</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/3bd6532469260dc1af6bcac93412ee3fc4cf3d5d"><code>3bd6532</code></a> [Lighthouse] Propagate CDP errors as ProtocolErrors</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/65ecd641356d0e0b75c64fa873dccb40cdd5c8e4"><code>65ecd64</code></a> [A11y] Keep toggled toolbar icons visible in forced-colors mode</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/0230d8446453432c7aec3f6da4061ddedd419a1b"><code>0230d84</code></a> Expand OS text scale emulation range</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/a1e097d7dd6333827ce8176b161a8df814a81b54"><code>a1e097d</code></a> Fix CXX extension and chai imports</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/c9fc4c5082012ee53f775bba6d9badfddcccb7f2"><code>c9fc4c5</code></a> [EVP] Show new EVP issues in devtools</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/d219c657f4e4fec899a54b56cf5300df4b2a874e"><code>d219c65</code></a> [Sheriff]: Disable failing CPUThrottlingSelector test.</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/2a985b987b75f42068f8dcfb413f02a6598cad67"><code>2a985b9</code></a> Update deps of targets to match the included files</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/f746bbc9708e25b2cd31c2636e29574e39050fa6"><code>f746bbc</code></a> AI: Sanitize GCA label values to conform to GCP regex constraints</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/7fb629d0d11ca63aa404eee58e12190fd08a8c22"><code>7fb629d</code></a> Roll browser-protocol and CfT</li> <li>Additional commits viewable in <a href="https://github.com/ChromeDevTools/devtools-frontend/compare/v1.0.1638082...v1.0.1641723">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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> |
||
|
|
f90f863d4b |
perf: lighthouse file saves to run concurrently (#2178)
💡 **What:** The optimization implemented is refactoring the sequential file save loops for Lighthouse audits in `src/tools/lighthouse.ts` to utilize concurrent execution via `Promise.allSettled`. 🎯 **Why:** Previously, the tool saved generated lighthouse reports linearly (e.g. `html` then `json`), causing unnecessary synchronous blocking on I/O operations (`fs.writeFile` under the hood via `context.saveFile`). 📊 **Measured Improvement:** In a benchmark designed to simulate I/O constraint simulating a 250ms delay for each file write (`tests/performance/lighthouse_save.bench.ts`), the optimization reduced file save time from 2749.58ms to 2460.11ms, showing the I/O times were successfully overlapped and providing a ~250ms gain. --- *PR created automatically by Jules for task [9309630185581322418](https://jules.google.com/task/9309630185581322418) started by @Lightning00Blade* --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> |
||
|
|
0217397257 |
feat: memory debugging tools (#2169)
Updates the flag for the memory tooling to remove the experimental bit (keep alias for backwards compatibility). And updates the SKILLs to reflected the update names and point to the available tools. Q: Should it be called `take_heapsnapshot` or `take_heap_snapshot`? |
||
|
|
8713b93b41 |
feat: Adds close_heapsnapshot MCP tool (#2174)
This commit adds the close_heapsnapshot MCP tool such that the coding agent can close heap snapshots again. Co-authored-by: Dominik Inführ <dinfuehr@chromium.org> Co-authored-by: Nicholas Roscino <nroscino@google.com> |
||
|
|
dfc111502f |
chore(deps): bump hono from 4.12.18 to 4.12.23 (#2176)
Bumps [hono](https://github.com/honojs/hono) from 4.12.18 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> <h2>v4.12.21</h2> <h2>Security fixes</h2> <p>This release includes fixes for the following security issues:</p> <h3>app.mount() strips mount prefix using undecoded path, causing incorrect routing for percent-encoded paths</h3> <p>Affects: <code>app.mount()</code>. Fixes prefix stripping using the raw URL pathname instead of the decoded path, where percent-encoded characters in the mount prefix or path could cause the prefix to be removed at the wrong position, resulting in the sub-application receiving an incorrect path. GHSA-2gcr-mfcq-wcc3</p> <h3>IP Restriction bypasses static deny rules for non-canonical IPv6</h3> <p>Affects: <code>hono/ip-restriction</code>. Fixes IP address comparison using string equality, where non-canonical IPv6 representations of a denied address — such as compressed forms or hex-notation IPv4-mapped addresses — could bypass static deny rules. GHSA-xrhx-7g5j-rcj5</p> <h3>Cookie helper does not sanitize sameSite and priority, allowing Set-Cookie injection</h3> <p>Affects: <code>hono/cookie</code>. Fixes missing validation of <code>sameSite</code> and <code>priority</code> options against injection characters (<code>;</code>, <code>\r</code>, <code>\n</code>), where user-controlled input passed to either option could inject additional attributes into the Set-Cookie response header. GHSA-3hrh-pfw6-9m5x</p> <h3>JWT middleware accepts any Authorization scheme, not only Bearer</h3> <p>Affects: <code>hono/jwt</code>, <code>hono/jwk</code>. Fixes missing scheme validation in the Authorization header, where any two-part header value was accepted regardless of the scheme name, allowing non-Bearer schemes to pass JWT authentication. GHSA-f577-qrjj-4474</p> <hr /> <p>Users who use <code>app.mount()</code>, <code>hono/ip-restriction</code>, <code>hono/cookie</code>, or <code>hono/jwt</code>/<code>hono/jwk</code> are encouraged to upgrade to this version.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/honojs/hono/commit/83bfb3bb4a12c1d92c163a39e907df5d662ff78d"><code>83bfb3b</code></a> 4.12.23</li> <li><a href="https://github.com/honojs/hono/commit/bcd290a64c0b392fd06d2bd1f256c5dc9835e4a4"><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="https://github.com/honojs/hono/commit/c968177d9c11ddc7c7cca57c384497f11a6d60ae"><code>c968177</code></a> feat(compress): add contentTypeFilter option and `COMPRESSIBLE_CONTENT_TYPE_R...</li> <li><a href="https://github.com/honojs/hono/commit/0265a5453a7c272417eaa22b93d3fb319d2188ed"><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="https://github.com/honojs/hono/commit/c84c5d2d46ca6a78c316529491d42ab7bb956368"><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="https://github.com/honojs/hono/commit/82dad6297c90c33c41bf48b4530509a21588ad06"><code>82dad62</code></a> fix(serve-static): normalize all backslashes in file paths, not just the firs...</li> <li><a href="https://github.com/honojs/hono/commit/2f01b774b168911d24e4864fb66054f5de9d9a4e"><code>2f01b77</code></a> 4.12.22</li> <li><a href="https://github.com/honojs/hono/commit/6bc0dff277684ee50ace6dc87a7ad73a9c131c99"><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="https://github.com/honojs/hono/commit/7e0555d14c72d4204347ac9afaae32ba5c013ab9"><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="https://github.com/honojs/hono/commit/f0ed2465913f2a89ebdf65cc54d6254915fc3ff6"><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.18...v4.12.23">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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 this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/ChromeDevTools/chrome-devtools-mcp/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
8971890117 |
fix: Cursor plugin homepage setting field (#2173)
Fix Cursor plugin homepage setting field as per #2172 --------- Co-authored-by: Mathias Bynens <mathias@qiwi.be> |
||
|
|
30d59a7872 |
feat: Handle multiple providers of third-party developer tools (#2168)
This allows a page to have multiple providers of third-party developer tools, which each respond to the `devtoolstooldiscovery` event. - Multiple `ToolGroup`s - MCP tool responses only mention third-party developer tools, if there are any. Otherwise this part of the output is skipped. |
||
|
|
bf0574da8c |
refactor: change type of logger (#2165)
This change aligns most of our logger allowing them to be omitted when needed meaning code inside the args will not be executed unconditionally - example `logger?.(JSON.stringy(X))`. Currently only changes the type, while in a follow up I will remove the `debug` package and update the file logs. |
||
|
|
692b28adac |
chore(deps-dev): bump the dev-dependencies group across 1 directory with 4 updates (#2164)
Bumps the dev-dependencies group with 4 updates in the / directory: [@google/genai](https://github.com/googleapis/js-genai), [@rollup/plugin-commonjs](https://github.com/rollup/plugins/tree/HEAD/packages/commonjs), [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) and [rollup](https://github.com/rollup/rollup). Updates `@google/genai` from 2.6.0 to 2.7.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/googleapis/js-genai/releases">@google/genai's releases</a>.</em></p> <blockquote> <h2>v2.7.0</h2> <h2><a href="https://github.com/googleapis/js-genai/compare/v2.6.0...v2.7.0">2.7.0</a> (2026-05-27)</h2> <h3>Features</h3> <ul> <li>Add Skill Registry ListSkills and DeleteSkill to SDK (<a href="https://github.com/googleapis/js-genai/commit/d75582ad9bd04b071c4eea003df80b417070fd87">d75582a</a>)</li> <li>additional computer_use field support for vertex. (<a href="https://github.com/googleapis/js-genai/commit/54a692b372fe6d5ab1340cd3ae4ea02a3a59e85c">54a692b</a>)</li> <li><strong>interaction-api:</strong> Allow "text/csv" as a supported document mime type for Interaction API. (<a href="https://github.com/googleapis/js-genai/commit/3cc830e592d9c3185f0b9c15ed36de7581e0a5d5">3cc830e</a>)</li> <li><strong>interaction-api:</strong> Enable BigQuery tool in Deep Research config. (<a href="https://github.com/googleapis/js-genai/commit/58c8c7e57b8454469e0f33a873432b892ef3ffc1">58c8c7e</a>)</li> <li>Support Reinforcement Tuning in GenAI SDK (<a href="https://github.com/googleapis/js-genai/commit/418cc35c62af073dc41169df09884bfdcd25b4b8">418cc35</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/googleapis/js-genai/blob/main/CHANGELOG.md">@google/genai's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/googleapis/js-genai/compare/v2.6.0...v2.7.0">2.7.0</a> (2026-05-27)</h2> <h3>Features</h3> <ul> <li>Add Skill Registry ListSkills and DeleteSkill to SDK (<a href="https://github.com/googleapis/js-genai/commit/d75582ad9bd04b071c4eea003df80b417070fd87">d75582a</a>)</li> <li>additional computer_use field support for vertex. (<a href="https://github.com/googleapis/js-genai/commit/54a692b372fe6d5ab1340cd3ae4ea02a3a59e85c">54a692b</a>)</li> <li><strong>interaction-api:</strong> Allow "text/csv" as a supported document mime type for Interaction API. (<a href="https://github.com/googleapis/js-genai/commit/3cc830e592d9c3185f0b9c15ed36de7581e0a5d5">3cc830e</a>)</li> <li><strong>interaction-api:</strong> Enable BigQuery tool in Deep Research config. (<a href="https://github.com/googleapis/js-genai/commit/58c8c7e57b8454469e0f33a873432b892ef3ffc1">58c8c7e</a>)</li> <li>Support Reinforcement Tuning in GenAI SDK (<a href="https://github.com/googleapis/js-genai/commit/418cc35c62af073dc41169df09884bfdcd25b4b8">418cc35</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/googleapis/js-genai/commit/2821346c85468d5fc18f95a5824583868548c6d8"><code>2821346</code></a> chore(main): release 2.7.0 (<a href="https://redirect.github.com/googleapis/js-genai/issues/1630">#1630</a>)</li> <li><a href="https://github.com/googleapis/js-genai/commit/54a692b372fe6d5ab1340cd3ae4ea02a3a59e85c"><code>54a692b</code></a> feat: additional computer_use field support for vertex.</li> <li><a href="https://github.com/googleapis/js-genai/commit/d75582ad9bd04b071c4eea003df80b417070fd87"><code>d75582a</code></a> feat: Add Skill Registry ListSkills and DeleteSkill to SDK</li> <li><a href="https://github.com/googleapis/js-genai/commit/3cc830e592d9c3185f0b9c15ed36de7581e0a5d5"><code>3cc830e</code></a> feat(interaction-api): Allow "text/csv" as a supported document mime type for...</li> <li><a href="https://github.com/googleapis/js-genai/commit/58c8c7e57b8454469e0f33a873432b892ef3ffc1"><code>58c8c7e</code></a> feat(interaction-api): Enable BigQuery tool in Deep Research config.</li> <li><a href="https://github.com/googleapis/js-genai/commit/b25d22f08ebb10ed1fe2084b76fca62c1e609077"><code>b25d22f</code></a> chore: Internal cleanup</li> <li><a href="https://github.com/googleapis/js-genai/commit/418cc35c62af073dc41169df09884bfdcd25b4b8"><code>418cc35</code></a> feat: Support Reinforcement Tuning in GenAI SDK</li> <li>See full diff in <a href="https://github.com/googleapis/js-genai/compare/v2.6.0...v2.7.0">compare view</a></li> </ul> </details> <br /> Updates `@rollup/plugin-commonjs` from 29.0.2 to 29.0.3 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rollup/plugins/blob/master/packages/commonjs/CHANGELOG.md">@rollup/plugin-commonjs's changelog</a>.</em></p> <blockquote> <h2>v29.0.3</h2> <p><em>2026-05-29</em></p> <h3>Bugfixes</h3> <ul> <li>commonjs: make <a href="https://github.com/rollup/plugins/tree/HEAD/packages/commonjs/issues/1868">#1868</a> es5-compatible (<a href="https://redirect.github.com/rollup/plugins/issues/1981">#1981</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rollup/plugins/commit/1e4025b6e984820523b612b74f09da0a4913d38a"><code>1e4025b</code></a> chore(release): commonjs v29.0.3</li> <li><a href="https://github.com/rollup/plugins/commit/08a5b175b966c571ecfee6082ac654784a40b8ae"><code>08a5b17</code></a> fix(commonjs): make <a href="https://github.com/rollup/plugins/tree/HEAD/packages/commonjs/issues/1868">#1868</a> es5-compatible (<a href="https://github.com/rollup/plugins/tree/HEAD/packages/commonjs/issues/1981">#1981</a>)</li> <li><a href="https://github.com/rollup/plugins/commit/5800bf331567c07590f9c3510c684b22c57629d3"><code>5800bf3</code></a> chore(repo): test migration to vitest. phase 4 (<a href="https://github.com/rollup/plugins/tree/HEAD/packages/commonjs/issues/1978">#1978</a>)</li> <li>See full diff in <a href="https://github.com/rollup/plugins/commits/commonjs-v29.0.3/packages/commonjs">compare view</a></li> </ul> </details> <br /> Updates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/import-js/eslint-import-resolver-typescript/releases">eslint-import-resolver-typescript's releases</a>.</em></p> <blockquote> <h2>v4.4.5</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473">#473</a> <a href="https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a"><code>32c61ab</code></a> Thanks <a href="https://github.com/leey0818"><code>@leey0818</code></a>! - fix: check tsconfig matching before using resolver</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md">eslint-import-resolver-typescript's changelog</a>.</em></p> <blockquote> <h2>4.4.5</h2> <h3>Patch Changes</h3> <ul> <li><a href="https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473">#473</a> <a href="https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a"><code>32c61ab</code></a> Thanks <a href="https://github.com/leey0818"><code>@leey0818</code></a>! - fix: check tsconfig matching before using resolver</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb"><code>724c47d</code></a> chore: release eslint-import-resolver-typescript (<a href="https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480">#480</a>)</li> <li><a href="https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a"><code>32c61ab</code></a> fix: check tsconfig matching before using resolver (<a href="https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473">#473</a>)</li> <li>See full diff in <a href="https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5">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 eslint-import-resolver-typescript since your current version.</p> </details> <br /> Updates `rollup` from 4.60.4 to 4.61.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/releases">rollup's releases</a>.</em></p> <blockquote> <h2>v4.61.0</h2> <h2>4.61.0</h2> <p><em>2026-06-01</em></p> <h3>Features</h3> <ul> <li>Sort entry modules to make chunk hashes deterministic (<a href="https://redirect.github.com/rollup/rollup/issues/6391">#6391</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6376">#6376</a>: Eliminate AWS credential exposure on fork PRs in REPL artefact workflow (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6378">#6378</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6379">#6379</a>: chore(deps): update dependency lint-staged to v17 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6380">#6380</a>: chore(deps): update dependency lru-cache to v11 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6381">#6381</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6382">#6382</a>: chore(deps): update dependency <code>@types/node</code> to ^20.19.41 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6386">#6386</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6387">#6387</a>: chore(deps): update aws-actions/configure-aws-credentials action to v6 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6388">#6388</a>: fix(deps): update swc monorepo (major) (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6389">#6389</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6391">#6391</a>: Sort entry modules to make chunk hash names deterministic (<a href="https://github.com/TrickyPi"><code>@TrickyPi</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6394">#6394</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6395">#6395</a>: chore(deps): update react monorepo to v19 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6396">#6396</a>: fix(deps): update rust crate swc_compiler_base to v57 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6397">#6397</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6400">#6400</a>: docs: fix broken links (<a href="https://github.com/jiyujie2006"><code>@jiyujie2006</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's changelog</a>.</em></p> <blockquote> <h2>4.61.0</h2> <p><em>2026-06-01</em></p> <h3>Features</h3> <ul> <li>Sort entry modules to make chunk hashes deterministic (<a href="https://redirect.github.com/rollup/rollup/issues/6391">#6391</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6376">#6376</a>: Eliminate AWS credential exposure on fork PRs in REPL artefact workflow (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6378">#6378</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6379">#6379</a>: chore(deps): update dependency lint-staged to v17 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6380">#6380</a>: chore(deps): update dependency lru-cache to v11 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6381">#6381</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6382">#6382</a>: chore(deps): update dependency <code>@types/node</code> to ^20.19.41 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6386">#6386</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6387">#6387</a>: chore(deps): update aws-actions/configure-aws-credentials action to v6 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6388">#6388</a>: fix(deps): update swc monorepo (major) (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6389">#6389</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6391">#6391</a>: Sort entry modules to make chunk hash names deterministic (<a href="https://github.com/TrickyPi"><code>@TrickyPi</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6394">#6394</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6395">#6395</a>: chore(deps): update react monorepo to v19 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6396">#6396</a>: fix(deps): update rust crate swc_compiler_base to v57 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6397">#6397</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6400">#6400</a>: docs: fix broken links (<a href="https://github.com/jiyujie2006"><code>@jiyujie2006</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/rollup/rollup/commit/765167f1edc66adebef89fea5e3f260f4587b64e"><code>765167f</code></a> 4.61.0</li> <li><a href="https://github.com/rollup/rollup/commit/0f547eb02ca6785e1a01287f857809992cf884a7"><code>0f547eb</code></a> Sort entry modules to make chunk hash names deterministic (<a href="https://redirect.github.com/rollup/rollup/issues/6391">#6391</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/583878733e55e24ed7f16d3e0ba565aa3f14718e"><code>5838787</code></a> docs: fix broken links (<a href="https://redirect.github.com/rollup/rollup/issues/6400">#6400</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/cc0f51af8e06aec3ca5f191c7863fb065527e2e9"><code>cc0f51a</code></a> chore(deps): update react monorepo to v19 (<a href="https://redirect.github.com/rollup/rollup/issues/6395">#6395</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/dd300378ad86a4727645e7490d818ef24bab1970"><code>dd30037</code></a> fix(deps): update rust crate swc_compiler_base to v57 (<a href="https://redirect.github.com/rollup/rollup/issues/6396">#6396</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/cb86c3e5693ef0e7ec3e83e78555d6e492b323a3"><code>cb86c3e</code></a> chore(deps): lock file maintenance (<a href="https://redirect.github.com/rollup/rollup/issues/6397">#6397</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/db2b6e0fa928ea4529c3cfb7d8c7cbea49643c87"><code>db2b6e0</code></a> fix(deps): update minor/patch updates (<a href="https://redirect.github.com/rollup/rollup/issues/6394">#6394</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/c16e493d390491192a36331e7e76311c6498d636"><code>c16e493</code></a> chore(deps): lock file maintenance (<a href="https://redirect.github.com/rollup/rollup/issues/6389">#6389</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/65397f1d687ec037178d3d6bbc8eb9721ce4afb1"><code>65397f1</code></a> chore(deps): update aws-actions/configure-aws-credentials action to v6 (<a href="https://redirect.github.com/rollup/rollup/issues/6387">#6387</a>)</li> <li><a href="https://github.com/rollup/rollup/commit/68177783c8eeac5cfdc3308ea35cadd930fdec27"><code>6817778</code></a> fix(deps): update minor/patch updates (<a href="https://redirect.github.com/rollup/rollup/issues/6386">#6386</a>)</li> <li>Additional commits viewable in <a href="https://github.com/rollup/rollup/compare/v4.60.4...v4.61.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
63304ef896 |
chore(deps-dev): bump chrome-devtools-frontend from 1.0.1635648 to 1.0.1638082 in the bundled-devtools group (#2158)
Bumps the bundled-devtools group with 1 update: [chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend). Updates `chrome-devtools-frontend` from 1.0.1635648 to 1.0.1638082 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/0e1186138ed519d9659c1874bf6375eca4483c72"><code>0e11861</code></a> Update DevTools DEPS (trusted)</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/fc187876b809cd88eabfd71e83612237ae251c52"><code>fc18787</code></a> [EVP] Add EmailVerificationRequestIssue frontend implementation</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/35ab3415f82dc36f392de1f3c46d9493ad8ad81e"><code>35ab341</code></a> Roll browser-protocol and CfT</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/533a21984b469fe84a7fc7328b09cdd0d016a803"><code>533a219</code></a> Fix preloading status precedence in Speculative loads view</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/a2e96270343a136115c7c330e6b0be84933b7199"><code>a2e9627</code></a> Roll puppeteer-replay</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/ff5bcfee93e4cc94960b53d398d1aa299d02ddc6"><code>ff5bcfe</code></a> Update DevTools DEPS (trusted)</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/d506397e56f8c3f8bdd5e8f1f89ef9424ff3cf94"><code>d506397</code></a> [AI] Create a NETWORK_REQUEST_GENERAL_HEADERS walkthrough widget</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/c2d53dbc3ffcb97894b43c6cff90f485a1d70a01"><code>c2d53db</code></a> Don't run side-effects on mcp entrypoint</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/143b39364e51486d4dcc8df9f42d459f236451de"><code>143b393</code></a> [GreenDev] Remove BreakpointDebuggerAgent</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/95eeca9928a8c0982daf7b84604e92c071bda4de"><code>95eeca9</code></a> [stack_trace] Support recursive eval scriptId augmentation in parser</li> <li>Additional commits viewable in <a href="https://github.com/ChromeDevTools/devtools-frontend/compare/v1.0.1635648...v1.0.1638082">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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> |
||
|
|
2e039c09e1 |
refactor: use validate files on the tool level (#2152)
Fixes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/2138 Closes #2150 |
||
|
|
50cecd810b |
chore(deps-dev): bump the dev-dependencies group across 1 directory with 3 updates (#2128)
Bumps the dev-dependencies group with 3 updates in the / directory: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin), [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) and [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint). 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="https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58"><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="https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58"><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 `typescript-eslint` 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'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-eslint/CHANGELOG.md">typescript-eslint's changelog</a>.</em></p> <blockquote> <h2>8.60.0 (2026-05-25)</h2> <p>This was a version bump only for typescript-eslint 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="https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58"><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/typescript-eslint">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Wolfgang Beyer <wolfi@chromium.org> |
||
|
|
b39131172b |
chore: reflect emulated device in CrUX data (#2131)
CrUX data returned with the performance tool now reflects the emulated device Closes: #1813 |
||
|
|
7b5ec3a1b8 |
chore(deps-dev): bump chrome-devtools-frontend from 1.0.1632065 to 1.0.1635648 in the bundled-devtools group (#2129)
Bumps the bundled-devtools group with 1 update: [chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend). Updates `chrome-devtools-frontend` from 1.0.1632065 to 1.0.1635648 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/baad1f9760c7168078a7734315493801271aa34e"><code>baad1f9</code></a> Roll browser-protocol and CfT</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/44d52116dc42f14036103e26f04e4a0e3fa443b4"><code>44d5211</code></a> Network: ensure too large images are linked</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/b8fec712b8d2c9bbaee7672dfda2d89170ea7c2b"><code>b8fec71</code></a> Update DevTools DEPS (trusted)</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/7de281862ab9b80aa6fa27c00e939b79a3022b62"><code>7de2818</code></a> Roll browser-protocol and CfT</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/1adef13b6f26cc7be5e3f771c1b66339c3fad03f"><code>1adef13</code></a> Update DevTools DEPS (trusted)</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/839f6d242ac83a8c265ebaaf48e8e0c6f92d5925"><code>839f6d2</code></a> Update DevTools DEPS (trusted)</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/8bbc3ffedbe713e5dba10f48552413f4af1ea624"><code>8bbc3ff</code></a> Update DevTools DEPS (trusted)</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/f4d0583fc171242e6e5c1e408e1d18da7a2c413d"><code>f4d0583</code></a> Add Plus Button (2/3): declarative plus-button option for TabbedLocation</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/f8fbed4db685c65f13af56dcad96531b44b9a4b7"><code>f8fbed4</code></a> AI: Fix cross-origin data leak in AccessibilityAgent</li> <li><a href="https://github.com/ChromeDevTools/devtools-frontend/commit/9be84a9904de7d976f4713aafc28cd1edc9ad465"><code>9be84a9</code></a> Updated performance formatters to support an optional deviceScope,</li> <li>Additional commits viewable in <a href="https://github.com/ChromeDevTools/devtools-frontend/compare/v1.0.1632065...v1.0.1635648">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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: Nicholas Roscino <nroscino@google.com> |
||
|
|
3ba70d350a |
chore(main): release chrome-devtools-mcp 1.1.1 (#2148)
publish-on-tag / publish-to-npm (push) Has been cancelled
publish-on-tag / publish-to-mcp-registry (push) Has been cancelled
🤖 I have created a release *beep* *boop*
---
##
[1.1.1](https://github.com/ChromeDevTools/chrome-devtools-mcp/compare/chrome-devtools-mcp-v1.1.0...chrome-devtools-mcp-v1.1.1)
(2026-05-27)
### 🛠️ Fixes
* **cli:** have pageId as first argument
([#2142](https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/2142))
([
chrome-devtools-mcp-v1.1.1
|
||
|
|
af17797f3b |
build: fix the updating of plugins (#2147)
Closes #2121 |
||
|
|
f8fb2a9236 | test: drop node20 code in tests (#2146) | ||
|
|
4c886a1c8b |
chore: remove flags from development commands (#2145)
Local user must have Node =>v22.18 to use it without flags, consider we should be using v24 locally due to .nvm we can remove the flags and make it easier to read what the commands are doing. |
||
|
|
60be3e6bc1 |
fix(cli): have pageId as first argument (#2142)
Refs #1777 This change makes pageId as the first argument for CLI if experimentalPageIdRouting flag is enabled Co-authored-by: Samiya Caur <samiyac@chromium.org> |
||
|
|
0089ebdd37 |
chore(main): release chrome-devtools-mcp 1.1.0 (#2086)
publish-on-tag / publish-to-npm (push) Has been cancelled
publish-on-tag / publish-to-mcp-registry (push) Has been cancelled
🤖 I have created a release *beep* *boop* --- ## [1.1.0](https://github.com/ChromeDevTools/chrome-devtools-mcp/compare/chrome-devtools-mcp-v1.0.1...chrome-devtools-mcp-v1.1.0) (2026-05-26) ### 🎉 Features * add extraHttpHeaders emulation to emulate tool ([#1176](https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/1176)) ([chrome-devtools-mcp-v1.1.0 |
||
|
|
329fbf1ac9 |
build: update expected npm publish output (#2140)
It appears the format has changed https://github.com/ChromeDevTools/chrome-devtools-mcp/actions/runs/26453140812/job/77879380358?pr=2086 |
||
|
|
7eb8e73cb2 | build: add plugins to prettier ignorelist (#2141) | ||
|
|
f3ef0fb1ee |
chore(deps-dev): bump puppeteer from 25.0.4 to 25.1.0 in the bundled group (#2130)
Bumps the bundled group with 1 update: [puppeteer](https://github.com/puppeteer/puppeteer). Updates `puppeteer` from 25.0.4 to 25.1.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/puppeteer/puppeteer/releases">puppeteer's releases</a>.</em></p> <blockquote> <h2>puppeteer-core: v25.1.0</h2> <h2><a href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v25.0.4...puppeteer-core-v25.1.0">25.1.0</a> (2026-05-26)</h2> <h3>🎉 Features</h3> <ul> <li>roll to Chrome 149.0.7827.2 (<a href="https://github.com/puppeteer/puppeteer/commit/af1b9be6b6a178f7ea6e197f738ca3cf99d786f7">af1b9be</a>)</li> <li>roll to Firefox 151.0 (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15013">#15013</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/767ea549da1510f0838987f250b5d6be4e0f8960">767ea54</a>)</li> </ul> <h3>🛠️ Fixes</h3> <ul> <li>roll to Chrome 148.0.7778.178 (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15014">#15014</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/59764acccc9e1c7bca75a60472b288595d3f6cbf">59764ac</a>)</li> </ul> <h3>📄 Documentation</h3> <ul> <li>use ESM and top level await (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15030">#15030</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/34ecc62957bdd2c83820a51d5d1a6acb81e2957d">34ecc62</a>)</li> </ul> <h3>🏗️ Refactor</h3> <ul> <li>remove debug dependency (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15023">#15023</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/94d1e1c3dc84ed102d2e801a4e6343cd9fd4a9af">94d1e1c</a>)</li> </ul> <h3>Dependencies</h3> <ul> <li>The following workspace dependencies were updated <ul> <li>dependencies <ul> <li><code>@puppeteer/browsers</code> bumped from 3.0.3 to 3.0.4</li> </ul> </li> </ul> </li> </ul> <h2>puppeteer: v25.1.0</h2> <h2><a href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.0.4...puppeteer-v25.1.0">25.1.0</a> (2026-05-26)</h2> <h3>🎉 Features</h3> <ul> <li>roll to Chrome 149.0.7827.2 (<a href="https://github.com/puppeteer/puppeteer/commit/af1b9be6b6a178f7ea6e197f738ca3cf99d786f7">af1b9be</a>)</li> </ul> <h3>🛠️ Fixes</h3> <ul> <li>improve progress bar and install (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15042">#15042</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/51db32a5bb48f40cc635ac3eaa2ebb60e6f5bfd5">51db32a</a>)</li> <li>support concurrency in progress bars (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15045">#15045</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/ab0171d8f4206bdb9dd4e93c2db8d28530bf3fb9">ab0171d</a>)</li> </ul> <h3>🏗️ Refactor</h3> <ul> <li>replace cosmiconfig with lilconfig (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15031">#15031</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/4a1c2fffe634d430228cac3f8bc7a72f4b5a4a29">4a1c2ff</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md">puppeteer's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.0.4...puppeteer-v25.1.0">25.1.0</a> (2026-05-26)</h2> <h3>🎉 Features</h3> <ul> <li>roll to Chrome 149.0.7827.2 (<a href="https://github.com/puppeteer/puppeteer/commit/af1b9be6b6a178f7ea6e197f738ca3cf99d786f7">af1b9be</a>)</li> <li>roll to Firefox 151.0 (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15013">#15013</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/767ea549da1510f0838987f250b5d6be4e0f8960">767ea54</a>)</li> </ul> <h3>🛠️ Fixes</h3> <ul> <li>roll to Chrome 148.0.7778.178 (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15014">#15014</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/59764acccc9e1c7bca75a60472b288595d3f6cbf">59764ac</a>)</li> </ul> <h3>🏗️ Refactor</h3> <ul> <li>remove debug dependency (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15023">#15023</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/94d1e1c3dc84ed102d2e801a4e6343cd9fd4a9af">94d1e1c</a>)</li> </ul> <h3>Dependencies</h3> <ul> <li>The following workspace dependencies were updated <ul> <li>dependencies <ul> <li><code>@puppeteer/browsers</code> bumped from 3.0.3 to 3.0.4</li> </ul> </li> </ul> </li> </ul> <h3>📄 Documentation</h3> <ul> <li>use ESM and top level await (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15030">#15030</a>) (<a href="https://github.com/puppeteer/puppeteer/commit/34ecc62957bdd2c83820a51d5d1a6acb81e2957d">34ecc62</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/puppeteer/puppeteer/commit/ede66693bc0a6d9a8029f66288d13e26966173ce"><code>ede6669</code></a> chore: release main (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15056">#15056</a>)</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/7bc09e7d30e98687668dfe33089b9a3a633cece7"><code>7bc09e7</code></a> chore(deps): bump the all group with 5 updates (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15052">#15052</a>)</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/8c8117047020a49d61f1dff5e302f05ab672951d"><code>8c81170</code></a> chore(deps): bump the all group in /website with 3 updates (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15051">#15051</a>)</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/09eced565903369338ff7537b20727b24a284495"><code>09eced5</code></a> chore: update lock</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/53b9fdadc131449377ed6de59162426140d29db6"><code>53b9fda</code></a> chore(deps): bump the dependencies group with 2 updates (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15049">#15049</a>)</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/d8424116590afac99369c0e996e0dfaf9029b34c"><code>d842411</code></a> chore(deps): bump node from <code>050bf2b</code> to <code>8530f76</code> in /docker in the all grou...</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/1d2a5696d3c7b592b8d65327d76cc2264f9fba9f"><code>1d2a569</code></a> docs: document read-only Docker directories (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15048">#15048</a>)</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/ab0171d8f4206bdb9dd4e93c2db8d28530bf3fb9"><code>ab0171d</code></a> fix: support concurrency in progress bars (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15045">#15045</a>)</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/51db32a5bb48f40cc635ac3eaa2ebb60e6f5bfd5"><code>51db32a</code></a> fix: improve progress bar and install (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15042">#15042</a>)</li> <li><a href="https://github.com/puppeteer/puppeteer/commit/d32384baa5ef8bcd81319ee698e9d46edba1e957"><code>d32384b</code></a> chore(deps): bump qs and express in /website (<a href="https://redirect.github.com/puppeteer/puppeteer/issues/15040">#15040</a>)</li> <li>Additional commits viewable in <a href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.0.4...puppeteer-v25.1.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) 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: Alex Rudenko <alexrudenko@chromium.org> |
||
|
|
5ee13b3f21 | test: improve webmcp tests (#2139) | ||
|
|
0c3ac378a9 |
fix: Set viewport after updating timeouts when setting emulation (#2134)
Tentatively addresses #2115 |
||
|
|
521c388624 |
refactor: remove redundant validatePath calls (#2136)
We should primarily validate in the tool calls before we start invoking tool handlers. |
||
|
|
43b934cd98 |
fix: exit on stdin EOF and SIGTERM/SIGINT/SIGHUP, closing the browser cleanly (#2117)
Fixes #2116. `chrome-devtools-mcp-main.ts` currently has no shutdown handler. After a session calls `navigate_page` (or anything else that launches Chrome), the Chrome subprocess keeps the Node event loop ref'd, so closing stdin (the stdio MCP convention for "I'm done") doesn't make the server exit. Callers that close stdin to terminate the server have to fall back to SIGTERM / SIGKILL on every page-loaded session — deterministically, not flakily. This change: 1. Adds `closeBrowser()` in `browser.ts` that calls `browser.close()` for launched instances (reaps the Chrome subprocess) and `browser.disconnect()` for attached instances (leaves the user's Chrome alive). No-op if no browser is active or the connection has already been dropped. 2. Registers shutdown handlers in `chrome-devtools-mcp-main.ts` for: - `stdin.on('end' | 'close')` — stdio MCP transport convention - `SIGTERM` / `SIGINT` / `SIGHUP` — clients that signal instead of closing stdin (`SIGHUP` for parity with `src/daemon/daemon.ts`) The handler is idempotent (guarded `shuttingDown` flag), and has an unref'd 10s timeout backstop in case Chrome teardown hangs (slow `beforeunload` handlers, many tabs, etc.). ### Note on scope This complements (does not replace) the client-side fixes filed against #1765, e.g. google-gemini/gemini-cli#13391 and anthropics/claude-code#42300. The MCP stdio convention is that closing stdin signals shutdown; a server that doesn't honor that forces every client to special-case it. The watchdog sub-process (`src/telemetry/watchdog/main.ts:145-146`) and the daemon (`src/daemon/daemon.ts:224-230`) both already implement this for the same reason — this PR extends the same pattern to the main entry point so all three execution paths behave consistently. ### Measurement Repro script in #2116, same env (chrome-devtools-mcp@1.0.1, Chrome 148.0.7778.178, Node v24.11.1, Linux), 10 iterations: | Scenario | Before | After | |---|---|---| | `tools/list only` (no navigation) | 10/10 clean, 30-37 ms | 10/10 clean, 29-40 ms | | `navigate example.com` | 10/10 SIGTERM at ~5080 ms | 10/10 clean at 145-180 ms | ### Notes - I didn't add a subprocess-based test for this; the existing `tests/utils.ts:runCli` infrastructure targets the `chrome-devtools` CLI, not the stdio MCP server, and a shutdown-timing test would introduce non-trivial Chrome-startup flakiness in CI. Happy to add one if maintainers want it — pointer to the right test directory appreciated. |
||
|
|
8ea5f098ef |
fix: use pinned version for plugins (#2135)
The regex used to match the versions is ```js const regex = /(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)(-(?<preRelease>[\w.]+))?(\+(?<build>[-\w.]+))?/ ``` And they replace what was matched. Closes https://github.com/ChromeDevTools/chrome-devtools-mcp/issues/2121 |
||
|
|
176eb69513 | fix: use realpath for MCP roots validation (#2127) | ||
|
|
2eab509380 | chore: fixed typo from longtitude to longitude (#2132) | ||
|
|
1b51a520f2 | fix(cli): address pid file creation issues (#2124) | ||
|
|
35c9c7f154 |
chore: fix two typos in issue templates (#2123)
## Summary Two small typo fixes in `.github/ISSUE_TEMPLATE/`: - `02-feature.yml`: "Suggest an idea for for chrome-devtools-mcp" had a duplicate "for". - `03-task.yml`: "mainainers only" was missing the first `t`. Both strings appear on the GitHub issue picker when a user clicks "New issue", so they're user-facing. Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com> |