cbrowser 18.42.4 → 18.42.6

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.
Files changed (59) hide show
  1. package/README.md +129 -26
  2. package/dist/analysis/agent-ready-audit.d.ts.map +1 -1
  3. package/dist/analysis/agent-ready-audit.js +6 -1
  4. package/dist/analysis/agent-ready-audit.js.map +1 -1
  5. package/dist/browser.d.ts.map +1 -1
  6. package/dist/browser.js +2 -0
  7. package/dist/browser.js.map +1 -1
  8. package/dist/geo-proxy.d.ts +39 -0
  9. package/dist/geo-proxy.d.ts.map +1 -0
  10. package/dist/geo-proxy.js +109 -0
  11. package/dist/geo-proxy.js.map +1 -0
  12. package/dist/index.d.ts +1 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +1 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/mcp-server-remote.d.ts.map +1 -1
  17. package/dist/mcp-server-remote.js +29 -1
  18. package/dist/mcp-server-remote.js.map +1 -1
  19. package/dist/mcp-tools/base/audit-tools.d.ts.map +1 -1
  20. package/dist/mcp-tools/base/audit-tools.js +519 -0
  21. package/dist/mcp-tools/base/audit-tools.js.map +1 -1
  22. package/dist/mcp-tools/base/persona-comparison-tools.d.ts.map +1 -1
  23. package/dist/mcp-tools/base/persona-comparison-tools.js +66 -7
  24. package/dist/mcp-tools/base/persona-comparison-tools.js.map +1 -1
  25. package/dist/mcp-tools/base/visual-testing-tools.d.ts.map +1 -1
  26. package/dist/mcp-tools/base/visual-testing-tools.js +141 -50
  27. package/dist/mcp-tools/base/visual-testing-tools.js.map +1 -1
  28. package/dist/mcp-tools/tool-categories.d.ts +28 -0
  29. package/dist/mcp-tools/tool-categories.d.ts.map +1 -0
  30. package/dist/mcp-tools/tool-categories.js +284 -0
  31. package/dist/mcp-tools/tool-categories.js.map +1 -0
  32. package/dist/types.d.ts +8 -0
  33. package/dist/types.d.ts.map +1 -1
  34. package/dist/types.js +25 -0
  35. package/dist/types.js.map +1 -1
  36. package/dist/visual/attention-quality.d.ts +79 -0
  37. package/dist/visual/attention-quality.d.ts.map +1 -0
  38. package/dist/visual/attention-quality.js +199 -0
  39. package/dist/visual/attention-quality.js.map +1 -0
  40. package/dist/visual/attention-transport.d.ts.map +1 -1
  41. package/dist/visual/attention-transport.js +16 -5
  42. package/dist/visual/attention-transport.js.map +1 -1
  43. package/dist/visual/heatmap-overlay.d.ts +31 -0
  44. package/dist/visual/heatmap-overlay.d.ts.map +1 -0
  45. package/dist/visual/heatmap-overlay.js +139 -0
  46. package/dist/visual/heatmap-overlay.js.map +1 -0
  47. package/dist/visual/index.d.ts +3 -0
  48. package/dist/visual/index.d.ts.map +1 -1
  49. package/dist/visual/index.js +3 -0
  50. package/dist/visual/index.js.map +1 -1
  51. package/dist/visual/perceptual-transport.d.ts.map +1 -1
  52. package/dist/visual/perceptual-transport.js +28 -17
  53. package/dist/visual/perceptual-transport.js.map +1 -1
  54. package/dist/visual/visual-overlays.d.ts +73 -0
  55. package/dist/visual/visual-overlays.d.ts.map +1 -0
  56. package/dist/visual/visual-overlays.js +348 -0
  57. package/dist/visual/visual-overlays.js.map +1 -0
  58. package/docs/Tools-Overview.md +2 -2
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"perceptual-transport.js","sourceRoot":"","sources":["../../src/visual/perceptual-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"perceptual-transport.js","sourceRoot":"","sources":["../../src/visual/perceptual-transport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Visual Overlays — generate diagnostic overlay images for MCP tool responses.
3
+ *
4
+ * Each overlay takes a screenshot + analysis data and produces a
5
+ * base64 PNG with colored annotations overlaid on the page.
6
+ *
7
+ * @since v18.39.0
8
+ */
9
+ export interface MotorElement {
10
+ selector: string;
11
+ x: number;
12
+ y: number;
13
+ width: number;
14
+ height: number;
15
+ hitProbability: number;
16
+ isBarrier: boolean;
17
+ }
18
+ /**
19
+ * Overlay showing hit probability per interactive element.
20
+ * Green = easy to click, Yellow = moderate, Red = motor barrier.
21
+ */
22
+ export declare function generateMotorOverlay(screenshotPath: string, elements: MotorElement[], personaName: string, cssViewportWidth?: number): Promise<string>;
23
+ export interface AttentionTarget {
24
+ type: "cta" | "heading" | "navigation" | "content" | "decorative" | "unknown";
25
+ x: number;
26
+ y: number;
27
+ width: number;
28
+ height: number;
29
+ saliency: number;
30
+ label: string;
31
+ }
32
+ /**
33
+ * Overlay showing what type of element each saliency hotspot lands on.
34
+ * Green = CTA/heading (good), Yellow = content, Red = decorative/distractor.
35
+ */
36
+ export declare function generateAttentionQualityOverlay(screenshotPath: string, targets: AttentionTarget[], personaName: string, cssViewportWidth?: number): Promise<string>;
37
+ export interface ReadabilityBlock {
38
+ x: number;
39
+ y: number;
40
+ width: number;
41
+ height: number;
42
+ difficulty: number;
43
+ wpm: number;
44
+ text: string;
45
+ }
46
+ /**
47
+ * Overlay showing reading difficulty per text block.
48
+ * Green = easy to read, Yellow = moderate, Red = very difficult for this persona.
49
+ */
50
+ export declare function generateReadabilityOverlay(screenshotPath: string, blocks: ReadabilityBlock[], personaName: string): Promise<string>;
51
+ /**
52
+ * Generate a difference heatmap between two persona saliency maps.
53
+ * Blue = persona A looks here more, Red = persona B looks here more.
54
+ */
55
+ export declare function generateComparisonHeatmap(screenshotPath: string, cellsA: Float64Array | number[], cellsB: Float64Array | number[], gridRows: number, gridCols: number, personaA: string, personaB: string): Promise<string>;
56
+ /**
57
+ * Generate a single composite overlay with attention heatmap + motor annotations + quality labels.
58
+ */
59
+ export declare function generateCombinedStoryOverlay(screenshotPath: string, heatmapCells: Float64Array | number[] | null, heatmapRows: number, heatmapCols: number, motorElements: MotorElement[], qualityTargets: AttentionTarget[], personaName: string, cssViewportWidth?: number): Promise<string>;
60
+ export interface CognitiveRegion {
61
+ x: number;
62
+ y: number;
63
+ width: number;
64
+ height: number;
65
+ load: number;
66
+ dimension: string;
67
+ }
68
+ /**
69
+ * Overlay showing cognitive load per page region.
70
+ * Green = low load, Red = high load for this persona.
71
+ */
72
+ export declare function generateCognitiveLoadOverlay(screenshotPath: string, regions: CognitiveRegion[], personaName: string): Promise<string>;
73
+ //# sourceMappingURL=visual-overlays.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visual-overlays.d.ts","sourceRoot":"","sources":["../../src/visual/visual-overlays.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAoFH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,YAAY,EAAE,EACxB,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,MAAM,CAAC,CAqBjB;AAID,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,KAAK,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC;IAC9E,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,wBAAsB,+BAA+B,CACnD,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,eAAe,EAAE,EAC1B,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,MAAM,CAAC,CA2BjB;AAID,MAAM,WAAW,gBAAgB;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,gBAAgB,EAAE,EAC1B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAID;;;GAGG;AACH,wBAAsB,yBAAyB,CAC7C,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,EAC/B,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,EAC/B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAyEjB;AAID;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,YAAY,GAAG,MAAM,EAAE,GAAG,IAAI,EAC5C,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,YAAY,EAAE,EAC7B,cAAc,EAAE,eAAe,EAAE,EACjC,WAAW,EAAE,MAAM,EACnB,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,MAAM,CAAC,CAyHjB;AAID,MAAM,WAAW,eAAe;IAC9B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAsB,4BAA4B,CAChD,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,eAAe,EAAE,EAC1B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAgBjB"}
@@ -0,0 +1,348 @@
1
+ /**
2
+ * Visual Overlays — generate diagnostic overlay images for MCP tool responses.
3
+ *
4
+ * Each overlay takes a screenshot + analysis data and produces a
5
+ * base64 PNG with colored annotations overlaid on the page.
6
+ *
7
+ * @since v18.39.0
8
+ */
9
+ import sharp from "sharp";
10
+ // ── Color helpers ──
11
+ function rgba(r, g, b, a) {
12
+ return `rgba(${r},${g},${b},${(a / 255).toFixed(2)})`;
13
+ }
14
+ function scoreToColor(score) {
15
+ // 0 = red (bad), 0.5 = yellow, 1 = green (good)
16
+ const s = Math.max(0, Math.min(1, score));
17
+ if (s < 0.5) {
18
+ const t = s * 2;
19
+ return rgba(255, Math.round(255 * t), 0, 160);
20
+ }
21
+ else {
22
+ const t = (s - 0.5) * 2;
23
+ return rgba(Math.round(255 * (1 - t)), 255, 0, 160);
24
+ }
25
+ }
26
+ function diffToColor(value) {
27
+ // -1 = blue (persona A stronger), 0 = transparent, +1 = red (persona B stronger)
28
+ const v = Math.max(-1, Math.min(1, value));
29
+ const a = Math.round(Math.abs(v) * 180);
30
+ if (v < 0)
31
+ return rgba(0, 100, 255, a);
32
+ if (v > 0)
33
+ return rgba(255, 50, 0, a);
34
+ return rgba(0, 0, 0, 0);
35
+ }
36
+ function buildSvgOverlay(width, height, rects, title) {
37
+ let svg = `<svg xmlns="http://www.w3.org/2000/svg" width="${width}" height="${height}">`;
38
+ for (const rect of rects) {
39
+ svg += `<rect x="${rect.x}" y="${rect.y}" width="${rect.width}" height="${rect.height}" fill="${rect.color}" rx="4"`;
40
+ if (rect.borderColor)
41
+ svg += ` stroke="${rect.borderColor}" stroke-width="2"`;
42
+ svg += `/>`;
43
+ if (rect.label) {
44
+ const fontSize = Math.min(14, Math.max(9, rect.height * 0.4));
45
+ svg += `<text x="${rect.x + 4}" y="${rect.y + fontSize + 2}" font-family="sans-serif" font-size="${fontSize}" fill="white" font-weight="bold" opacity="0.9">${rect.label.replace(/&/g, "&amp;").replace(/</g, "&lt;")}</text>`;
46
+ }
47
+ }
48
+ if (title) {
49
+ const titleW = title.length * 10 + 24;
50
+ svg += `<rect x="10" y="10" width="${titleW}" height="32" rx="6" fill="rgba(0,0,0,0.8)"/>`;
51
+ svg += `<text x="22" y="32" font-family="sans-serif" font-size="16" fill="white" font-weight="bold">${title}</text>`;
52
+ }
53
+ svg += `</svg>`;
54
+ return svg;
55
+ }
56
+ async function compositeOverlay(screenshotPath, svgContent) {
57
+ const outputBuffer = await sharp(screenshotPath)
58
+ .grayscale()
59
+ .modulate({ brightness: 0.75 })
60
+ .composite([{ input: Buffer.from(svgContent), blend: "over" }])
61
+ .png()
62
+ .toBuffer();
63
+ return outputBuffer.toString("base64");
64
+ }
65
+ /**
66
+ * Overlay showing hit probability per interactive element.
67
+ * Green = easy to click, Yellow = moderate, Red = motor barrier.
68
+ */
69
+ export async function generateMotorOverlay(screenshotPath, elements, personaName, cssViewportWidth) {
70
+ const metadata = await sharp(screenshotPath).metadata();
71
+ const width = metadata.width || 1920;
72
+ const height = metadata.height || 1080;
73
+ // Scale factor: CSS pixels → image pixels
74
+ // getBoundingClientRect returns CSS px, but screenshot is device px
75
+ const scale = cssViewportWidth ? width / cssViewportWidth : 1;
76
+ const rects = elements.map(el => ({
77
+ x: Math.round(el.x * scale),
78
+ y: Math.round(el.y * scale),
79
+ width: Math.round(el.width * scale),
80
+ height: Math.round(el.height * scale),
81
+ color: scoreToColor(el.hitProbability),
82
+ borderColor: el.isBarrier ? "rgba(255,0,0,0.8)" : undefined,
83
+ label: `${Math.round(el.hitProbability * 100)}%`,
84
+ }));
85
+ const svg = buildSvgOverlay(width, height, rects, `${personaName} Motor Accessibility`);
86
+ return compositeOverlay(screenshotPath, svg);
87
+ }
88
+ /**
89
+ * Overlay showing what type of element each saliency hotspot lands on.
90
+ * Green = CTA/heading (good), Yellow = content, Red = decorative/distractor.
91
+ */
92
+ export async function generateAttentionQualityOverlay(screenshotPath, targets, personaName, cssViewportWidth) {
93
+ const metadata = await sharp(screenshotPath).metadata();
94
+ const width = metadata.width || 1920;
95
+ const height = metadata.height || 1080;
96
+ const scale = cssViewportWidth ? width / cssViewportWidth : 1;
97
+ const typeColors = {
98
+ cta: rgba(0, 220, 0, 200),
99
+ heading: rgba(0, 150, 255, 180),
100
+ navigation: rgba(255, 200, 0, 160),
101
+ content: rgba(200, 200, 200, 80),
102
+ decorative: rgba(255, 50, 0, 180),
103
+ unknown: rgba(128, 128, 128, 120),
104
+ };
105
+ const rects = targets.map(t => ({
106
+ x: Math.round(t.x * scale),
107
+ y: Math.round(t.y * scale),
108
+ width: Math.round(t.width * scale),
109
+ height: Math.round(t.height * scale),
110
+ color: typeColors[t.type] || typeColors.unknown,
111
+ borderColor: t.type === "cta" ? "rgba(0,255,0,1)" : t.type === "decorative" ? "rgba(255,0,0,1)" : t.type === "heading" ? "rgba(0,150,255,0.9)" : "rgba(200,200,200,0.5)",
112
+ label: `${t.type}: ${t.label.slice(0, 25)}`,
113
+ }));
114
+ const svg = buildSvgOverlay(width, height, rects, `${personaName} Attention Quality`);
115
+ return compositeOverlay(screenshotPath, svg);
116
+ }
117
+ /**
118
+ * Overlay showing reading difficulty per text block.
119
+ * Green = easy to read, Yellow = moderate, Red = very difficult for this persona.
120
+ */
121
+ export async function generateReadabilityOverlay(screenshotPath, blocks, personaName) {
122
+ const metadata = await sharp(screenshotPath).metadata();
123
+ const width = metadata.width || 1920;
124
+ const height = metadata.height || 1080;
125
+ const rects = blocks.map(b => ({
126
+ x: b.x,
127
+ y: b.y,
128
+ width: b.width,
129
+ height: b.height,
130
+ color: scoreToColor(1 - b.difficulty), // invert: high difficulty = red
131
+ label: `${b.wpm} WPM`,
132
+ }));
133
+ const svg = buildSvgOverlay(width, height, rects, `${personaName} Readability`);
134
+ return compositeOverlay(screenshotPath, svg);
135
+ }
136
+ // ── 4. Persona Comparison (Difference Map) ──
137
+ /**
138
+ * Generate a difference heatmap between two persona saliency maps.
139
+ * Blue = persona A looks here more, Red = persona B looks here more.
140
+ */
141
+ export async function generateComparisonHeatmap(screenshotPath, cellsA, cellsB, gridRows, gridCols, personaA, personaB) {
142
+ const metadata = await sharp(screenshotPath).metadata();
143
+ const width = metadata.width || 1920;
144
+ const height = metadata.height || 1080;
145
+ // Normalize both
146
+ let maxA = 0, maxB = 0;
147
+ for (let i = 0; i < cellsA.length; i++) {
148
+ if (cellsA[i] > maxA)
149
+ maxA = cellsA[i];
150
+ if (cellsB[i] > maxB)
151
+ maxB = cellsB[i];
152
+ }
153
+ maxA = maxA || 1;
154
+ maxB = maxB || 1;
155
+ // Build difference buffer
156
+ const buf = Buffer.alloc(width * height * 4);
157
+ const cellW = width / gridCols;
158
+ const cellH = height / gridRows;
159
+ for (let y = 0; y < height; y++) {
160
+ for (let x = 0; x < width; x++) {
161
+ const gr = Math.min(Math.floor(y / cellH), gridRows - 1);
162
+ const gc = Math.min(Math.floor(x / cellW), gridCols - 1);
163
+ const idx = gr * gridCols + gc;
164
+ const normA = cellsA[idx] / maxA;
165
+ const normB = cellsB[idx] / maxB;
166
+ const diff = normB - normA; // positive = B stronger, negative = A stronger
167
+ const intensity = Math.abs(diff);
168
+ const alpha = Math.round(intensity * 200);
169
+ const px = (y * width + x) * 4;
170
+ if (diff > 0.02) {
171
+ // Red: persona B looks here more
172
+ buf[px] = 255;
173
+ buf[px + 1] = 50;
174
+ buf[px + 2] = 0;
175
+ buf[px + 3] = alpha;
176
+ }
177
+ else if (diff < -0.02) {
178
+ // Blue: persona A looks here more
179
+ buf[px] = 0;
180
+ buf[px + 1] = 100;
181
+ buf[px + 2] = 255;
182
+ buf[px + 3] = alpha;
183
+ }
184
+ else {
185
+ buf[px + 3] = 0; // transparent — similar attention
186
+ }
187
+ }
188
+ }
189
+ // Blur for smoothness
190
+ const blurSigma = Math.max(1, Math.round(cellW * 0.6));
191
+ const diffPng = await sharp(buf, { raw: { width, height, channels: 4 } })
192
+ .blur(blurSigma)
193
+ .png()
194
+ .toBuffer();
195
+ // Label
196
+ const labelW = (personaA.length + personaB.length) * 8 + 80;
197
+ const labelSvg = Buffer.from(`<svg width="${labelW}" height="36">
198
+ <rect x="0" y="0" width="${labelW}" height="36" rx="6" fill="rgba(0,0,0,0.8)"/>
199
+ <circle cx="14" cy="18" r="6" fill="rgb(0,100,255)"/>
200
+ <text x="24" y="24" font-family="sans-serif" font-size="12" fill="white">${personaA}</text>
201
+ <circle cx="${personaA.length * 8 + 44}" cy="18" r="6" fill="rgb(255,50,0)"/>
202
+ <text x="${personaA.length * 8 + 54}" y="24" font-family="sans-serif" font-size="12" fill="white">${personaB}</text>
203
+ </svg>`);
204
+ const output = await sharp(screenshotPath)
205
+ .composite([
206
+ { input: diffPng, blend: "over" },
207
+ { input: labelSvg, top: 10, left: 10, blend: "over" },
208
+ ])
209
+ .png()
210
+ .toBuffer();
211
+ return output.toString("base64");
212
+ }
213
+ // ── 5. Combined Story Overlay — all layers on one image ──
214
+ /**
215
+ * Generate a single composite overlay with attention heatmap + motor annotations + quality labels.
216
+ */
217
+ export async function generateCombinedStoryOverlay(screenshotPath, heatmapCells, heatmapRows, heatmapCols, motorElements, qualityTargets, personaName, cssViewportWidth) {
218
+ const metadata = await sharp(screenshotPath).metadata();
219
+ const width = metadata.width || 1920;
220
+ const height = metadata.height || 1080;
221
+ const scale = cssViewportWidth ? width / cssViewportWidth : 1;
222
+ const layers = [];
223
+ // Layer 1: Attention heatmap (semi-transparent underneath)
224
+ if (heatmapCells && heatmapCells.length > 0) {
225
+ // Import heatmap buffer generator
226
+ const { default: sharpMod } = await import("sharp");
227
+ // Build heatmap RGBA buffer
228
+ let maxVal = 0;
229
+ for (let i = 0; i < heatmapCells.length; i++) {
230
+ if (heatmapCells[i] > maxVal)
231
+ maxVal = heatmapCells[i];
232
+ }
233
+ maxVal = maxVal || 1;
234
+ const buf = Buffer.alloc(width * height * 4);
235
+ const cellW = width / heatmapCols;
236
+ const cellH = height / heatmapRows;
237
+ for (let y = 0; y < height; y++) {
238
+ for (let x = 0; x < width; x++) {
239
+ const gr = Math.min(Math.floor(y / cellH), heatmapRows - 1);
240
+ const gc = Math.min(Math.floor(x / cellW), heatmapCols - 1);
241
+ const idx = gr * heatmapCols + gc;
242
+ const value = heatmapCells[idx] / maxVal;
243
+ // Reduced opacity for combined view (don't overwhelm other layers)
244
+ const alpha = Math.round(value * 120); // max 120/255 opacity
245
+ const r = Math.round(value * 255);
246
+ const g = Math.round((1 - Math.abs(value - 0.5) * 2) * 200);
247
+ const b = Math.round((1 - value) * 255);
248
+ const px = (y * width + x) * 4;
249
+ buf[px] = r;
250
+ buf[px + 1] = g;
251
+ buf[px + 2] = b;
252
+ buf[px + 3] = alpha;
253
+ }
254
+ }
255
+ const blurSigma = Math.max(1, Math.round(cellW * 0.6));
256
+ const heatPng = await sharp(buf, { raw: { width, height, channels: 4 } })
257
+ .blur(blurSigma).png().toBuffer();
258
+ layers.push({ input: heatPng, blend: "over" });
259
+ }
260
+ // Layer 2: Motor + Quality annotations as SVG
261
+ const rects = [];
262
+ // Motor barriers (red borders on hard-to-click elements)
263
+ for (const el of motorElements) {
264
+ if (el.isBarrier) {
265
+ rects.push({
266
+ x: Math.round(el.x * scale), y: Math.round(el.y * scale),
267
+ width: Math.round(el.width * scale), height: Math.round(el.height * scale),
268
+ color: "rgba(255,0,0,0.15)",
269
+ borderColor: "rgba(255,50,0,0.9)",
270
+ label: `${Math.round(el.hitProbability * 100)}% hit`,
271
+ });
272
+ }
273
+ }
274
+ // Quality targets (CTA = green border, decorative = red border)
275
+ for (const t of qualityTargets) {
276
+ if (t.type === "cta") {
277
+ rects.push({
278
+ x: Math.round(t.x * scale), y: Math.round(t.y * scale),
279
+ width: Math.round(t.width * scale), height: Math.round(t.height * scale),
280
+ color: "rgba(0,200,0,0.12)",
281
+ borderColor: "rgba(0,220,0,0.9)",
282
+ label: `CTA: ${t.label.slice(0, 20)}`,
283
+ });
284
+ }
285
+ else if (t.type === "decorative") {
286
+ rects.push({
287
+ x: Math.round(t.x * scale), y: Math.round(t.y * scale),
288
+ width: Math.round(t.width * scale), height: Math.round(t.height * scale),
289
+ color: "rgba(255,0,0,0.08)",
290
+ borderColor: "rgba(255,100,0,0.7)",
291
+ label: "distractor",
292
+ });
293
+ }
294
+ else if (t.type === "heading") {
295
+ rects.push({
296
+ x: Math.round(t.x * scale), y: Math.round(t.y * scale),
297
+ width: Math.round(t.width * scale), height: Math.round(t.height * scale),
298
+ color: "rgba(0,100,255,0.08)",
299
+ borderColor: "rgba(0,120,255,0.7)",
300
+ });
301
+ }
302
+ }
303
+ if (rects.length > 0) {
304
+ const svg = buildSvgOverlay(width, height, rects, `${personaName} — Combined Analysis`);
305
+ layers.push({ input: Buffer.from(svg), blend: "over" });
306
+ }
307
+ // Legend
308
+ const legendSvg = Buffer.from(`<svg width="280" height="100">
309
+ <rect x="0" y="0" width="280" height="100" rx="8" fill="rgba(0,0,0,0.8)"/>
310
+ <circle cx="16" cy="20" r="6" fill="rgb(255,50,0)"/>
311
+ <text x="28" y="24" font-family="sans-serif" font-size="11" fill="white">High attention</text>
312
+ <circle cx="16" cy="40" r="6" fill="rgb(0,100,255)"/>
313
+ <text x="28" y="44" font-family="sans-serif" font-size="11" fill="white">Low attention</text>
314
+ <rect x="10" y="54" width="12" height="12" rx="2" stroke="rgb(0,220,0)" stroke-width="2" fill="none"/>
315
+ <text x="28" y="64" font-family="sans-serif" font-size="11" fill="white">CTA (conversion target)</text>
316
+ <rect x="10" y="74" width="12" height="12" rx="2" stroke="rgb(255,50,0)" stroke-width="2" fill="none"/>
317
+ <text x="28" y="84" font-family="sans-serif" font-size="11" fill="white">Motor barrier / distractor</text>
318
+ </svg>`);
319
+ layers.push({ input: legendSvg, top: height - 110, left: 10, blend: "over" });
320
+ // Desaturate base image so overlays pop (grayscale + slight darken)
321
+ const output = await sharp(screenshotPath)
322
+ .grayscale()
323
+ .modulate({ brightness: 0.7 })
324
+ .composite(layers)
325
+ .png()
326
+ .toBuffer();
327
+ return output.toString("base64");
328
+ }
329
+ /**
330
+ * Overlay showing cognitive load per page region.
331
+ * Green = low load, Red = high load for this persona.
332
+ */
333
+ export async function generateCognitiveLoadOverlay(screenshotPath, regions, personaName) {
334
+ const metadata = await sharp(screenshotPath).metadata();
335
+ const width = metadata.width || 1920;
336
+ const height = metadata.height || 1080;
337
+ const rects = regions.map(r => ({
338
+ x: r.x,
339
+ y: r.y,
340
+ width: r.width,
341
+ height: r.height,
342
+ color: scoreToColor(1 - r.load),
343
+ label: `${r.dimension}: ${Math.round(r.load * 100)}%`,
344
+ }));
345
+ const svg = buildSvgOverlay(width, height, rects, `${personaName} Cognitive Load`);
346
+ return compositeOverlay(screenshotPath, svg);
347
+ }
348
+ //# sourceMappingURL=visual-overlays.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visual-overlays.js","sourceRoot":"","sources":["../../src/visual/visual-overlays.ts"],"names":[],"mappings":"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"}
@@ -32,8 +32,8 @@ CBrowser fixes this with AI-powered automation that:
32
32
 
33
33
  | Tier | Tools | Access | Best For |
34
34
  |------|-------|--------|----------|
35
- | **Demo** | 91 tools (72 real + 19 stubs) | Free at `demo.cbrowser.ai/mcp` | Evaluation, small projects, learning |
36
- | **Enterprise** | 91 tools (all real) | Self-hosted or authenticated | Production use, marketing intelligence, stealth testing |
35
+ | **Demo** | 108 tools (rate-limited) | Free at `demo.cbrowser.ai/mcp` | Evaluation, small projects, learning |
36
+ | **Enterprise** | 108 tools (all real, unlimited) | Self-hosted or authenticated | Production use, marketing intelligence, stealth testing |
37
37
 
38
38
  The Demo tier gives you everything you need to automate browsers, run tests, and simulate users. Enterprise adds autonomous AI execution, marketing campaign analysis, and bot detection bypass for authorized testing.
39
39
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cbrowser",
3
- "version": "18.42.4",
3
+ "version": "18.42.6",
4
4
  "type": "module",
5
5
  "description": "Cognitive browser automation that thinks like your users—and helps AI agents navigate too. Simulate real user cognition with abandonment detection, constitutional safety, chaos engineering, and UX friction discovery. Sites that pass CBrowser's cognitive tests are easier for both humans and AI agents to navigate.",
6
6
  "main": "dist/index.js",