chrome-devtools-mcp 0.25.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -6
- package/build/src/DevtoolsUtils.js +13 -0
- package/build/src/HeapSnapshotManager.js +26 -2
- package/build/src/McpContext.js +3 -0
- package/build/src/McpResponse.js +51 -21
- package/build/src/ToolHandler.js +217 -0
- package/build/src/WaitForHelper.js +18 -4
- package/build/src/bin/check-latest-version.js +25 -1
- package/build/src/bin/chrome-devtools-cli-options.js +38 -2
- package/build/src/bin/chrome-devtools-mcp-cli-options.js +2 -8
- package/build/src/bin/chrome-devtools-mcp-main.js +4 -3
- package/build/src/bin/chrome-devtools.js +0 -2
- package/build/src/daemon/client.js +12 -6
- package/build/src/formatters/HeapSnapshotFormatter.js +27 -6
- package/build/src/index.js +11 -164
- package/build/src/telemetry/ClearcutLogger.js +34 -118
- package/build/src/telemetry/errors.js +18 -0
- package/build/src/telemetry/flagUtils.js +4 -3
- package/build/src/telemetry/{toolMetricsUtils.js → metricsRegistry.js} +3 -3
- package/build/src/telemetry/persistence.js +20 -2
- package/build/src/telemetry/transformation.js +134 -0
- package/build/src/telemetry/types.js +0 -8
- package/build/src/third_party/THIRD_PARTY_NOTICES +140 -857
- package/build/src/third_party/bundled-packages.json +3 -3
- package/build/src/third_party/devtools-formatter-worker.js +475 -146
- package/build/src/third_party/devtools-heap-snapshot-worker.js +39 -44
- package/build/src/third_party/index.js +4055 -30401
- package/build/src/third_party/issue-descriptions/genericBackUINavigationWouldSkipAd.md +4 -0
- package/build/src/third_party/lighthouse-devtools-mcp-bundle.js +4236 -4219
- package/build/src/tools/ToolDefinition.js +1 -1
- package/build/src/tools/emulation.js +3 -2
- package/build/src/tools/input.js +46 -16
- package/build/src/tools/lighthouse.js +7 -7
- package/build/src/tools/memory.js +24 -0
- package/build/src/tools/script.js +32 -10
- package/build/src/version.js +1 -1
- package/package.json +10 -7
- package/build/src/telemetry/metricUtils.js +0 -15
|
@@ -761,50 +761,6 @@ var HeapSnapshotModel$1 = /*#__PURE__*/Object.freeze({
|
|
|
761
761
|
baseUnreachableDistance: baseUnreachableDistance
|
|
762
762
|
});
|
|
763
763
|
|
|
764
|
-
// Copyright 2025 The Chromium Authors
|
|
765
|
-
class WritableDevToolsContext {
|
|
766
|
-
#instances = new Map();
|
|
767
|
-
get(ctor) {
|
|
768
|
-
const instance = this.#instances.get(ctor);
|
|
769
|
-
if (!instance) {
|
|
770
|
-
throw new Error(`No instance for ${ctor.name}. Ensure the bootstrapper creates it.`);
|
|
771
|
-
}
|
|
772
|
-
return instance;
|
|
773
|
-
}
|
|
774
|
-
has(ctor) {
|
|
775
|
-
return this.#instances.has(ctor);
|
|
776
|
-
}
|
|
777
|
-
set(ctor, instance) {
|
|
778
|
-
this.#instances.set(ctor, instance);
|
|
779
|
-
}
|
|
780
|
-
delete(ctor) {
|
|
781
|
-
this.#instances.delete(ctor);
|
|
782
|
-
}
|
|
783
|
-
}
|
|
784
|
-
let gInstance = null;
|
|
785
|
-
function globalInstance() {
|
|
786
|
-
if (!gInstance) {
|
|
787
|
-
gInstance = new WritableDevToolsContext();
|
|
788
|
-
}
|
|
789
|
-
return gInstance;
|
|
790
|
-
}
|
|
791
|
-
|
|
792
|
-
// Copyright 2026 The Chromium Authors
|
|
793
|
-
var ExperimentName;
|
|
794
|
-
(function (ExperimentName) {
|
|
795
|
-
ExperimentName["ALL"] = "*";
|
|
796
|
-
ExperimentName["CAPTURE_NODE_CREATION_STACKS"] = "capture-node-creation-stacks";
|
|
797
|
-
ExperimentName["LIVE_HEAP_PROFILE"] = "live-heap-profile";
|
|
798
|
-
ExperimentName["PROTOCOL_MONITOR"] = "protocol-monitor";
|
|
799
|
-
ExperimentName["TIMELINE_INVALIDATION_TRACKING"] = "timeline-invalidation-tracking";
|
|
800
|
-
ExperimentName["FONT_EDITOR"] = "font-editor";
|
|
801
|
-
ExperimentName["INSTRUMENTATION_BREAKPOINTS"] = "instrumentation-breakpoints";
|
|
802
|
-
ExperimentName["USE_SOURCE_MAP_SCOPES"] = "use-source-map-scopes";
|
|
803
|
-
ExperimentName["TIMELINE_DEBUG_MODE"] = "timeline-debug-mode";
|
|
804
|
-
ExperimentName["DURABLE_MESSAGES"] = "durable-messages";
|
|
805
|
-
ExperimentName["JPEG_XL"] = "jpeg-xl";
|
|
806
|
-
})(ExperimentName || (ExperimentName = {}));
|
|
807
|
-
|
|
808
764
|
// Copyright 2020 The Chromium Authors
|
|
809
765
|
const BASE64_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
|
|
810
766
|
const BASE64_CODES = new Uint8Array(123);
|
|
@@ -2850,6 +2806,45 @@ const LAYOUT_LINES_HIGHLIGHT_COLOR = [127, 32, 210];
|
|
|
2850
2806
|
Mask: Legacy.fromRGBA([248, 249, 249, 1]),
|
|
2851
2807
|
});
|
|
2852
2808
|
|
|
2809
|
+
// Copyright 2025 The Chromium Authors
|
|
2810
|
+
class WritableDevToolsContext {
|
|
2811
|
+
#instances = new Map();
|
|
2812
|
+
get(ctor) {
|
|
2813
|
+
const instance = this.#instances.get(ctor);
|
|
2814
|
+
if (!instance) {
|
|
2815
|
+
throw new Error(`No instance for ${ctor.name}. Ensure the bootstrapper creates it.`);
|
|
2816
|
+
}
|
|
2817
|
+
return instance;
|
|
2818
|
+
}
|
|
2819
|
+
has(ctor) {
|
|
2820
|
+
return this.#instances.has(ctor);
|
|
2821
|
+
}
|
|
2822
|
+
set(ctor, instance) {
|
|
2823
|
+
this.#instances.set(ctor, instance);
|
|
2824
|
+
}
|
|
2825
|
+
delete(ctor) {
|
|
2826
|
+
this.#instances.delete(ctor);
|
|
2827
|
+
}
|
|
2828
|
+
}
|
|
2829
|
+
let gInstance = null;
|
|
2830
|
+
function globalInstance() {
|
|
2831
|
+
if (!gInstance) {
|
|
2832
|
+
gInstance = new WritableDevToolsContext();
|
|
2833
|
+
}
|
|
2834
|
+
return gInstance;
|
|
2835
|
+
}
|
|
2836
|
+
|
|
2837
|
+
// Copyright 2026 The Chromium Authors
|
|
2838
|
+
var ExperimentName;
|
|
2839
|
+
(function (ExperimentName) {
|
|
2840
|
+
ExperimentName["ALL"] = "*";
|
|
2841
|
+
ExperimentName["PROTOCOL_MONITOR"] = "protocol-monitor";
|
|
2842
|
+
ExperimentName["INSTRUMENTATION_BREAKPOINTS"] = "instrumentation-breakpoints";
|
|
2843
|
+
ExperimentName["USE_SOURCE_MAP_SCOPES"] = "use-source-map-scopes";
|
|
2844
|
+
ExperimentName["DURABLE_MESSAGES"] = "durable-messages";
|
|
2845
|
+
ExperimentName["JPEG_XL"] = "jpeg-xl";
|
|
2846
|
+
})(ExperimentName || (ExperimentName = {}));
|
|
2847
|
+
|
|
2853
2848
|
// Copyright 2021 The Chromium Authors
|
|
2854
2849
|
class ObjectWrapper {
|
|
2855
2850
|
listeners;
|