extension.js · part 6
Full reference60 text occurrences from desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, part 6. Every entry preserves the shipped literal and its saved verdict or selection reason.
File contents and all parts · All files
Shipped text
Unknown action: ${e.action}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 131020–131049, SHA-256 af408694d801e9b0.
Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Unknown action: ${e.action}
Unknown action: ${e.action}
No browser tab available. Please navigate to a page first.
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 131165–131225, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.09; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
${c} (function() { const options = ${JSON.stringify(r)}; const result = buildPag
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 131375–131794, SHA-256 5da99a135eb16fdb.
Jev judged not model-facing (confidence 0.08; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${c} (function() { const options = ${JSON.stringify(r)}; const result = buildPageSnapshot(options); return { success: true, pageState: { url: window.location.href, title: document.title, …
${c}
(function() {
const options = ${JSON.stringify(r)};
const result = buildPageSnapshot(options);
return {
success: true,
pageState: {
url: window.location.href,
title: document.title,
snapshot: result.tree
},
stats: result.stats
};
})();
Browser tab is detached or unresponsive. Retry browser navigate to recreate it.
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 131867–131948, SHA-256 0262ec1d6360ac48.
Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Browser tab is detached or unresponsive. Retry browser_navigate to recreate it.
Browser tab is detached or unresponsive. Retry browser_navigate to recreate it.
- Total refs: ${s.stats.totalRefs}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 131998–132034, SHA-256 c6a4d33983356c7c.
Jev judged not model-facing (confidence 0.14; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Total refs: ${s.stats.totalRefs}
- Total refs: ${s.stats.totalRefs}
- Interactive refs: ${s.stats.interactiveRefs}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 132043–132091, SHA-256 4e03948f8a4a04c9.
Jev judged not model-facing (confidence 0.24; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Interactive refs: ${s.stats.interactiveRefs}
- Interactive refs: ${s.stats.interactiveRefs}
- Filter: interactive only
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 132115–132143, SHA-256 3142edafae98a5d9.
Jev judged not model-facing (confidence 0.28; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Filter: interactive only
- Filter: interactive only
- Filter: compact mode
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 132163–132187, SHA-256 da9e2908a09d84d4.
Jev judged not model-facing (confidence 0.13; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Filter: compact mode
- Filter: compact mode
- Selector: ${t.selector}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 132208–132235, SHA-256 151c88941e68d400.
Jev judged not model-facing (confidence 0.31; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Selector: ${t.selector}
- Selector: ${t.selector}
No browser tab available. Please navigate to a page first. · byte 133059
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 133059–133119, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.08; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
${"Profiler.stop"===e.method?"Profile data can be large, so it was saved to a fi
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 133472–133690, SHA-256 6b651a79e85ebd2d.
Jev judged not model-facing (confidence 0.19; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${"Profiler.stop"===e.method?"Profile data can be large, so it was saved to a file instead of being inlined.":"CDP response exceeded 25000 characters, so it was saved to a file instead of being inlined."} File: ${t}
${"Profiler.stop"===e.method?"Profile data can be large, so it was saved to a file instead of being inlined.":"CDP response exceeded 25000 characters, so it was saved to a file instead of being inlined."}
File: ${t}
Profile data can be large, so it was saved to a file instead of being inlined.
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 133502–133582, SHA-256 e394771c5945c6fa.
Jev judged not model-facing (confidence 0.24; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Profile data can be large, so it was saved to a file instead of being inlined.
Profile data can be large, so it was saved to a file instead of being inlined.
CDP response exceeded 25000 characters, so it was saved to a file instead of bei
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 133583–133676, SHA-256 9c5a42da38047a26.
Jev judged not model-facing (confidence 0.28; role human). This is a classifier judgment, not proof of delivery.
Readable text: CDP response exceeded 25000 characters, so it was saved to a file instead of being inlined.
CDP response exceeded 25000 characters, so it was saved to a file instead of being inlined.
No browser tab available. Please navigate to a page first. · byte 134067
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 134067–134127, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.06; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
screen shot timed out, please try again
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 134414–134455, SHA-256 da777d12a8ab88d4.
Jev judged not model-facing (confidence 0.06; role human). This is a classifier judgment, not proof of delivery.
Readable text: screen shot timed out, please try again
screen shot timed out, please try again
Screenshot failed: ${a.error "Unknown error"}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 134618–134666, SHA-256 7e117745e3badbe3.
Jev judged not model-facing (confidence 0.11; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Screenshot failed: ${a.error||"Unknown error"}
Screenshot failed: ${a.error||"Unknown error"}
Unknown error
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 134649–134664, SHA-256 70e280a3cf0ea5f5.
Jev judged not model-facing (confidence 0.06; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Unknown error
Unknown error
Screenshot captured successfully
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 134845–134879, SHA-256 5fc20042ebeb31ce.
Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Screenshot captured successfully
Screenshot captured successfully
Filename: ${a.filename}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 134907–134932, SHA-256 a0b048cbd912faca.
Jev judged not model-facing (confidence 0.12; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Filename: ${a.filename}
Filename: ${a.filename}
Saved to: ${a.savedPath}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 134954–134980, SHA-256 c8941bbdd8022c27.
Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Saved to: ${a.savedPath}
Saved to: ${a.savedPath}
Screenshot saved to: ${a.savedPath}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 135108–135145, SHA-256 8730bb2f77054302.
Jev judged not model-facing (confidence 0.12; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Screenshot saved to: ${a.savedPath}
Screenshot saved to: ${a.savedPath}
Screenshot captured but no image data available
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 135146–135195, SHA-256 400783233cf81cc6.
Jev judged not model-facing (confidence 0.16; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Screenshot captured but no image data available
Screenshot captured but no image data available
No browser tab available. Please navigate to a page first. · byte 135314
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 135314–135374, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.1; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
(async function() { ${q} const ref = ${JSON.stringify(a)}; const deltaX = ${r};
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 135650–142379, SHA-256 b5692eec98f4fbe5.
Jev judged not model-facing (confidence 0.06; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: (async function() { ${q} const ref = ${JSON.stringify(a)}; const deltaX = ${r}; const deltaY = ${o}; const scrollIntoView = ${i}; function getScrollableAncestors(el) { const ancestors = []; l…
(async function() {
${q}
const ref = ${JSON.stringify(a)};
const deltaX = ${r};
const deltaY = ${o};
const scrollIntoView = ${i};
function getScrollableAncestors(el) {
const ancestors = [];
let current = el.parentElement;
while (current && current !== document.body && current !== document.documentElement) {
const style = window.getComputedStyle(current);
const overflowY = style.overflowY;
const overflowX = style.overflowX;
const isScrollable = (
(overflowY === 'auto' || overflowY === 'scroll' || overflowX === 'auto' || overflowX === 'scroll') &&
(current.scrollHeight > current.clientHeight || current.scrollWidth > current.clientWidth)
);
if (isScrollable) {
ancestors.push(current);
}
current = current.parentElement;
}
return ancestors;
}
function isElementVisibleInContainer(el, container) {
const elRect = el.getBoundingClientRect();
const containerRect = container.getBoundingClientRect();
const padding = 10;
return (
elRect.top >= containerRect.top - padding &&
elRect.bottom <= containerRect.bottom + padding &&
elRect.left >= containerRect.left - padding &&
elRect.right <= containerRect.right + padding
);
}
function scrollElementIntoContainer(el, container) {
const elRect = el.getBoundingClientRect();
const containerRect = container.getBoundingClientRect();
let scrollTopDelta = 0;
let scrollLeftDelta = 0;
const elCenterY = elRect.top + elRect.height / 2;
const containerCenterY = containerRect.top + containerRect.height / 2;
const elCenterX = elRect.left + elRect.width / 2;
const containerCenterX = containerRect.left + containerRect.width / 2;
scrollTopDelta = elCenterY - containerCenterY;
scrollLeftDelta = elCenterX - containerCenterX;
if (Math.abs(scrollTopDelta) > 5 || Math.abs(scrollLeftDelta) > 5) {
container.scrollBy({ top: scrollTopDelta, left: scrollLeftDelta, behavior: 'instant' });
return true;
}
return false;
}
if (ref) {
const { element } = findElementByRef(ref);
if (!element) {
return {
success: false,
error: 'Element not found: ' + ref + '. Take a snapshot to get updated refs.'
};
}
if (scrollIntoView) {
const scrollableAncestors = getScrollableAncestors(element);
let scrolledContainers = 0;
for (const container of scrollableAncestors) {
if (!isElementVisibleInContainer(element, container)) {
scrollElementIntoContainer(element, container);
scrolledContainers++;
await new Promise(r => setTimeout(r, 100));
}
}
element.scrollIntoView({ behavior: 'smooth', block: 'center', inline: 'center' });
await new Promise(r => setTimeout(r, 200));
const finalRect = element.getBoundingClientRect();
const isVisible = finalRect.top >= 0 && finalRect.bottom <= window.innerHeight &&
finalRect.left >= 0 && finalRect.right <= window.innerWidth;
return {
success: true,
action: 'scrollIntoView',
ref: ref,
scrolledContainers: scrolledContainers,
isNowVisible: isVisible,
message: 'Scrolled element into view' + (scrolledContainers > 0 ? ' (scrolled ' + scrolledContainers + ' nested container(s))' : '') + (isVisible ? '' : ' (element may still be partially obscured)')
};
} else {
const scrollableParent = getScrollableAncestors(element)[0];
if (scrollableParent) {
const beforeX = scrollableParent.scrollLeft;
const beforeY = scrollableParent.scrollTop;
scrollableParent.scrollBy({ left: deltaX, top: deltaY, behavior: 'smooth' });
await new Promise(r => setTimeout(r, 200));
const actualDeltaX = scrollableParent.scrollLeft - beforeX;
const actualDeltaY = scrollableParent.scrollTop - beforeY;
const containerRef = scrollableParent.getAttribute('data-cursor-ref');
return {
success: true,
action: 'scrollContainer',
ref: ref,
containerRef: containerRef || undefined,
scrolled: { deltaX: actualDeltaX, deltaY: actualDeltaY },
message: 'Scrolled container by (' + actualDeltaX + ', ' + actualDeltaY + ') pixels'
};
} else {
return {
success: false,
error: 'Element ' + ref + ' is not inside a scrollable container.',
suggestion: 'Use scrollIntoView: true to scroll the element into view using the standard scrollIntoView method, or omit the ref to scroll the main page.'
};
}
}
} else {
const beforeX = window.scrollX;
const beforeY = window.scrollY;
window.scrollBy({ left: deltaX, top: deltaY, behavior: 'smooth' });
await new Promise(r => setTimeout(r, 200));
const actualDeltaX = window.scrollX - beforeX;
const actualDeltaY = window.scrollY - beforeY;
if (actualDeltaX === 0 && actualDeltaY === 0 && (deltaX !== 0 || deltaY !== 0)) {
return {
success: true,
action: 'scroll',
warning: 'Page may have reached scroll boundary',
message: 'Attempted to scroll page, but no scroll occurred (may be at edge)'
};
}
return {
success: true,
action: 'scroll',
scrolled: { deltaX: actualDeltaX, deltaY: actualDeltaY },
message: 'Scrolled page by (' + actualDeltaX + ', ' + actualDeltaY + ') pixels'
};
}
})();
Unknown scroll error
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 142477–142499, SHA-256 4d5baca144797eed.
Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Unknown scroll error
Unknown scroll error
Action: scroll
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 142526–142546, SHA-256 d06231e6f2bdb3d6.
Jev judged not model-facing (confidence 0.36; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ### Action: scroll
### Action: scroll
- ${c.message}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 142562–142578, SHA-256 40f86aa8f0739924.
Jev judged not model-facing (confidence 0.38; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - ${c.message}
- ${c.message}
- Actual scroll: (${c.scrolled.deltaX}px, ${c.scrolled.deltaY}px)
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 142599–142666, SHA-256 bec2c0665acc00ab.
Jev judged not model-facing (confidence 0.35; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Actual scroll: (${c.scrolled.deltaX}px, ${c.scrolled.deltaY}px)
- Actual scroll: (${c.scrolled.deltaX}px, ${c.scrolled.deltaY}px)
- Warning: ${c.warning}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 142686–142711, SHA-256 cdb90bbba886b14e.
Jev judged not model-facing (confidence 0.34; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Warning: ${c.warning}
- Warning: ${c.warning}
No browser tab available. Please navigate to a page first. · byte 142921
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 142921–142981, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.08; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
${q} (function() { const ref = ${JSON.stringify(r)}; const expectedDescription =
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 143091–144086, SHA-256 d502bbafd5e07ff0.
Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${q} (function() { const ref = ${JSON.stringify(r)}; const expectedDescription = ${JSON.stringify(o)}; const { element } = findElementByRef(ref); if (!element) { return { success: false, error: 'Ele…
${q}
(function() {
const ref = ${JSON.stringify(r)};
const expectedDescription = ${JSON.stringify(o)};
const { element } = findElementByRef(ref);
if (!element) {
return { success: false, error: 'Element not found: ' + ref + '. Take a snapshot to get updated refs.' };
}
assertDescriptionMatches(element, ref, expectedDescription);
const rect = element.getBoundingClientRect();
const x = rect.left + window.scrollX;
const y = rect.top + window.scrollY;
return {
success: true,
box: {
x,
y,
width: rect.width,
height: rect.height,
top: rect.top,
left: rect.left,
right: rect.right,
bottom: rect.bottom
}
};
})();
Bounding box: x=${Math.round(i.x)}, y=${Math.round(i.y)}, w=${Math.round(i.width
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 144166–144277, SHA-256 95bb1165e93c84cb.
Jev judged not model-facing (confidence 0.16; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Bounding box: x=${Math.round(i.x)}, y=${Math.round(i.y)}, w=${Math.round(i.width)}, h=${Math.round(i.height)}
Bounding box: x=${Math.round(i.x)}, y=${Math.round(i.y)}, w=${Math.round(i.width)}, h=${Math.round(i.height)}
No browser tab available. Please navigate to a page first. · byte 144532
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 144532–144592, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.09; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
${q} (function() { const ref = ${JSON.stringify(r)}; const expectedDescription = · byte 144715
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 144715–145873, SHA-256 9139e8733665775e.
Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${q} (function() { const ref = ${JSON.stringify(r)}; const expectedDescription = ${JSON.stringify(o)}; const durationMs = ${s}; const { element } = findElementByRef(ref); if (!element) { retur…
${q}
(function() {
const ref = ${JSON.stringify(r)};
const expectedDescription = ${JSON.stringify(o)};
const durationMs = ${s};
const { element } = findElementByRef(ref);
if (!element) {
return { success: false, error: 'Element not found: ' + ref + '. Take a snapshot to get updated refs.' };
}
assertDescriptionMatches(element, ref, expectedDescription);
const styleId = 'cursor-highlight-style';
if (!document.getElementById(styleId)) {
const style = document.createElement('style');
style.id = styleId;
style.textContent = '.cursor-highlighted { outline: 2px solid #ff6a00; box-shadow: 0 0 0 2px rgba(255, 106, 0, 0.4); }';
document.head.appendChild(style);
}
element.classList.add('cursor-highlighted');
setTimeout(() => {
element.classList.remove('cursor-highlighted');
}, durationMs);
return { success: true, durationMs };
})();
Highlighted element for ${nt(await et(i,n,t.headless,e), "durationMs" ).duration
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 145908–145995, SHA-256 be1730bf83f94acf.
Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Highlighted element for ${nt(await et(i,n,t.headless,e),["durationMs"]).durationMs}ms
Highlighted element for ${nt(await et(i,n,t.headless,e),["durationMs"]).durationMs}ms
No browser tab available. Please navigate to a page first. · byte 146238
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 146238–146298, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.09; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
Browser unlocked.
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 146480–146499, SHA-256 e1be9106e26a595e.
Jev judged not model-facing (confidence 0.09; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Browser unlocked.
Browser unlocked.
Browser locked.
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 146500–146517, SHA-256 3e0d647043dc4cd6.
Jev judged not model-facing (confidence 0.11; role human). This is a classifier judgment, not proof of delivery.
Readable text: Browser locked.
Browser locked.
Failed to unlock browser.
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 146572–146599, SHA-256 097035e65824633c.
Jev judged not model-facing (confidence 0.09; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Failed to unlock browser.
Failed to unlock browser.
Failed to lock browser.
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 146600–146625, SHA-256 0b4eca21c946cc7e.
Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: Failed to lock browser.
Failed to lock browser.
No browser tab available. Please navigate to a page first. · byte 146723
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 146723–146783, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.19; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
${q} ${c} ${dt} (async function() { const ref = ${JSON.stringify(r)}; const expe
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 146881–154439, SHA-256 d813d1414f1e2bdb.
Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${q} ${c} ${dt} (async function() { const ref = ${JSON.stringify(r)}; const expectedDescription = ${JSON.stringify(o)}; const { element } = findElementByRef(ref); validateElementForInteraction(el…
${q}
${c}
${dt}
(async function() {
const ref = ${JSON.stringify(r)};
const expectedDescription = ${JSON.stringify(o)};
const { element } = findElementByRef(ref);
validateElementForInteraction(element, ref, 'type', expectedDescription);
const rect = element.getBoundingClientRect();
const scrollPadding = 50;
const needsScroll = rect.top < scrollPadding || rect.left < scrollPadding ||
rect.bottom > window.innerHeight - scrollPadding || rect.right > window.innerWidth - scrollPadding;
if (needsScroll) {
element.scrollIntoView({ block: 'center', inline: 'center', behavior: 'smooth' });
await new Promise(r => setTimeout(r, 300));
}
const tagName = element.tagName.toUpperCase();
const isContentEditable = element.isContentEditable;
const valueBefore = isContentEditable ? element.textContent : element.value;
const previousActiveElement = document.activeElement;
if (previousActiveElement && previousActiveElement !== element && previousActiveElement !== document.body) {
if (typeof previousActiveElement.blur === 'function') {
previousActiveElement.blur();
}
}
element.focus();
await new Promise(r => setTimeout(r, 0));
if (document.activeElement !== element) {
element.click();
element.focus();
await new Promise(r => setTimeout(r, 0));
}
if (document.activeElement !== element) {
const elementTag = element.tagName?.toLowerCase() || 'element';
const focusBlockers = [];
const style = window.getComputedStyle(element);
if (element.tabIndex < 0) focusBlockers.push('negative tabindex');
if (style.display === 'none') focusBlockers.push('display: none');
if (style.visibility === 'hidden') focusBlockers.push('visibility: hidden');
if (element.disabled) focusBlockers.push('disabled attribute');
const hitCheck = document.elementFromPoint(
rect.left + rect.width / 2,
rect.top + rect.height / 2
);
if (hitCheck && hitCheck !== element && !element.contains(hitCheck)) {
const hitPreview = hitCheck.tagName?.toLowerCase() + (hitCheck.getAttribute('data-cursor-ref') ? ' (ref: ' + hitCheck.getAttribute('data-cursor-ref') + ')' : '');
focusBlockers.push('another element at position: ' + hitPreview);
}
const reason = focusBlockers.length > 0
? ' Possible reasons: ' + focusBlockers.join(', ') + '.'
: ' The element may not be focusable, or another element may be intercepting focus.';
throw new Error('Failed to focus ' + elementTag + ' ' + ref + '.' + reason + ' Try taking a fresh snapshot to verify the element state.');
}
const text = ${JSON.stringify(t.text)};
const clearFirst = ${JSON.stringify(t.clear)} || false;
const slowly = ${JSON.stringify(t.slowly)} || false;
const submit = ${JSON.stringify(t.submit)} || false;
function dispatchInputEvent(el) {
const inputEvent = new InputEvent('input', { bubbles: true, cancelable: true, inputType: 'insertText', data: text });
el.dispatchEvent(inputEvent);
}
if (clearFirst) {
if (isContentEditable) {
element.textContent = '';
} else {
setNativeValue(element, '');
}
element.dispatchEvent(new Event('input', { bubbles: true }));
}
if (slowly) {
const delay = 50;
const existingValue = clearFirst ? '' : (isContentEditable ? (element.textContent || '') : (element.value || ''));
for (let i = 0; i < text.length; i++) {
const char = text[i];
if (isContentEditable) {
const selection = window.getSelection();
const range = document.createRange();
range.selectNodeContents(element);
range.collapse(false);
selection.removeAllRanges();
selection.addRange(range);
document.execCommand('insertText', false, char);
} else {
setNativeValue(element, existingValue + text.substring(0, i + 1));
}
element.dispatchEvent(new KeyboardEvent('keydown', { key: char, bubbles: true, cancelable: true }));
dispatchInputEvent(element);
element.dispatchEvent(new KeyboardEvent('keyup', { key: char, bubbles: true, cancelable: true }));
await new Promise(r => setTimeout(r, delay));
}
} else {
if (isContentEditable) {
const existingContent = clearFirst ? '' : (element.textContent || '');
element.textContent = existingContent + text;
element.dispatchEvent(new Event('input', { bubbles: true }));
} else {
const existingValue = clearFirst ? '' : (element.value || '');
setNativeValue(element, existingValue + text);
dispatchInputEvent(element);
}
}
element.dispatchEvent(new Event('change', { bubbles: true }));
if (submit) {
element.dispatchEvent(new KeyboardEvent('keydown', { key: 'Enter', keyCode: 13, code: 'Enter', which: 13, bubbles: true, cancelable: true }));
element.dispatchEvent(new KeyboardEvent('keypress', { key: 'Enter', keyCode: 13, code: 'Enter', which: 13, bubbles: true, cancelable: true }));
element.dispatchEvent(new KeyboardEvent('keyup', { key: 'Enter', keyCode: 13, code: 'Enter', which: 13, bubbles: true, cancelable: true }));
}
const valueAfter = isContentEditable ? element.textContent : element.value;
const valueChanged = valueBefore !== valueAfter;
const valueMatchesExpected = isContentEditable
? (element.textContent || '').includes(text)
: element.value === text || element.value.endsWith(text);
const maxLength = element.maxLength;
const hasMaxLength = maxLength > 0 && maxLength !== 2147483647;
const exceedsMaxLength = hasMaxLength && (valueAfter?.length || 0) > maxLength;
const snapshotResult = buildPageSnapshot();
return {
success: true,
slowly,
submitted: submit,
textLength: text.length,
valueChanged,
valueMatchesExpected,
actualValue: valueAfter ? String(valueAfter).substring(0, 100) : '',
maxLength: hasMaxLength ? maxLength : null,
exceedsMaxLength,
pageState: {
url: window.location.href,
title: document.title,
snapshot: snapshotResult.tree
}
};
})();
- Characters typed: ${i.textLength}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154488–154525, SHA-256 8e53df7ea9f9de18.
Jev judged not model-facing (confidence 0.24; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Characters typed: ${i.textLength}
- Characters typed: ${i.textLength}
- Typing mode:
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154534–154551, SHA-256 85aecd29549b7c74.
Jev judged not model-facing (confidence 0.32; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Typing mode:
- Typing mode:
slow (character-by-character)
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154562–154593, SHA-256 aead130a84576e45.
Jev judged not model-facing (confidence 0.11; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: slow (character-by-character)
slow (character-by-character)
- Cleared existing content: yes
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154619–154652, SHA-256 1607d7d742cb9912.
Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Cleared existing content: yes
- Cleared existing content: yes
- Form submitted: yes (Enter key pressed)
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154674–154717, SHA-256 6cb99eff7c7991f5.
Jev judged not model-facing (confidence 0.21; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Form submitted: yes (Enter key pressed)
- Form submitted: yes (Enter key pressed)
- WARNING: Value did not change after typing
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154742–154788, SHA-256 eeba1c16f6cf3b0b.
Jev judged not model-facing (confidence 0.08; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - WARNING: Value did not change after typing
- WARNING: Value did not change after typing
- Note: Final value differs from input (actual: "${i.actualValue}")
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154838–154907, SHA-256 3a2da9482bb2ba2d.
Jev judged not model-facing (confidence 0.22; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Note: Final value differs from input (actual: "${i.actualValue}")
- Note: Final value differs from input (actual: "${i.actualValue}")
- Note: Input exceeds maxlength attribute (${i.maxLength}). Browser automation b
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 154956–155119, SHA-256 d181e8f4e1b449ec.
Jev judged not model-facing (confidence 0.26; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Note: Input exceeds maxlength attribute (${i.maxLength}). Browser automation bypasses maxlength validation. Server-side validation may still reject this value.
- Note: Input exceeds maxlength attribute (${i.maxLength}). Browser automation bypasses maxlength validation. Server-side validation may still reject this value.
No browser tab available. Please navigate to a page first. · byte 155470
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 155470–155530, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.1; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
${q} ${c} ${dt} (async function() { const ref = ${JSON.stringify(r)}; const expe · byte 155628
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 155628–158043, SHA-256 65395dbb4b10b261.
Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${q} ${c} ${dt} (async function() { const ref = ${JSON.stringify(r)}; const expectedDescription = ${JSON.stringify(o)}; const { element } = findElementByRef(ref); validateElementForInteraction(el…
${q}
${c}
${dt}
(async function() {
const ref = ${JSON.stringify(r)};
const expectedDescription = ${JSON.stringify(o)};
const { element } = findElementByRef(ref);
validateElementForInteraction(element, ref, 'fill', expectedDescription);
const rect = element.getBoundingClientRect();
const scrollPadding = 50;
const needsScroll = rect.top < scrollPadding || rect.left < scrollPadding ||
rect.bottom > window.innerHeight - scrollPadding || rect.right > window.innerWidth - scrollPadding;
if (needsScroll) {
element.scrollIntoView({ block: 'center', inline: 'center', behavior: 'smooth' });
await new Promise(r => setTimeout(r, 300));
}
const tagName = element.tagName.toUpperCase();
const isContentEditable = element.isContentEditable;
const previousActiveElement = document.activeElement;
if (previousActiveElement && previousActiveElement !== element && previousActiveElement !== document.body) {
if (typeof previousActiveElement.blur === 'function') {
previousActiveElement.blur();
}
}
element.focus();
await new Promise(r => setTimeout(r, 0));
if (document.activeElement !== element) {
element.click();
element.focus();
await new Promise(r => setTimeout(r, 0));
}
const value = ${JSON.stringify(t.value)};
if (isContentEditable) {
element.textContent = '';
element.textContent = value;
} else {
setNativeValue(element, '');
setNativeValue(element, value);
}
element.dispatchEvent(new Event('input', { bubbles: true }));
element.dispatchEvent(new Event('change', { bubbles: true }));
const snapshotResult = buildPageSnapshot();
return {
success: true,
value: value,
pageState: {
url: window.location.href,
title: document.title,
snapshot: snapshotResult.tree
}
};
})();
- Filled with value: "${i.value.substring(0,50)}${i.value.length 50?"...":""}"
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 158140–158220, SHA-256 03cb412d89e9584d.
Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Filled with value: "${i.value.substring(0,50)}${i.value.length>50?"...":""}"
- Filled with value: "${i.value.substring(0,50)}${i.value.length>50?"...":""}"
No browser tab available. Please navigate to a page first. · byte 158514
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 158514–158574, SHA-256 16f1b030dc2ec6f3.
Jev judged not model-facing (confidence 0.1; role human). This is a classifier judgment, not proof of delivery.
Readable text: No browser tab available. Please navigate to a page first.
No browser tab available. Please navigate to a page first.
Error: Missing required "fields" parameter. The browser fill form tool requires
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 158651–158977, SHA-256 2c58b69c1e210c42.
Not classified: Source failed the privacy boundary.
Readable text: Error: Missing required "fields" parameter. The browser_fill_form tool requires a "fields" array containing the fields to fill. Example usage: { fields: [{ ref: "e123", value: "John Doe" }, { ref: "e456", value: "john@example.com" }] } E…
Error: Missing required "fields" parameter.
The browser_fill_form tool requires a "fields" array containing the fields to fill.
Example usage:
{ fields: [{ ref: "e123", value: "John Doe" }, { ref: "e456", value: "john@example.com" }] }
Each field should have a "ref" (element reference) and "value" (text to fill).
Error: Empty "fields" array provided. Provide at least one field to fill. Take a
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 159038–159176, SHA-256 c0bbdd70dd263d9a.
Jev judged not model-facing (confidence 0.27; role human). This is a classifier judgment, not proof of delivery.
Readable text: Error: Empty "fields" array provided. Provide at least one field to fill. Take a snapshot to identify the form fields and their refs.
Error: Empty "fields" array provided.
Provide at least one field to fill. Take a snapshot to identify the form fields and their refs.
${q} ${c} ${dt} (async function() { const fields = ${JSON.stringify(r)}; const f
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 159338–162152, SHA-256 475d5287d4862bf3.
Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${q} ${c} ${dt} (async function() { const fields = ${JSON.stringify(r)}; const filled = []; const failed = []; for (const field of fields) { const ref = field.ref; const expectedDe…
${q}
${c}
${dt}
(async function() {
const fields = ${JSON.stringify(r)};
const filled = [];
const failed = [];
for (const field of fields) {
const ref = field.ref;
const expectedDescription = field.element || '';
try {
const { element } = findElementByRef(ref);
validateElementForInteraction(element, ref, 'fill', expectedDescription);
const rect = element.getBoundingClientRect();
const scrollPadding = 50;
const needsScroll = rect.top < scrollPadding || rect.left < scrollPadding ||
rect.bottom > window.innerHeight - scrollPadding || rect.right > window.innerWidth - scrollPadding;
if (needsScroll) {
element.scrollIntoView({ block: 'center', inline: 'center', behavior: 'smooth' });
await new Promise(r => setTimeout(r, 300));
}
const isContentEditable = element.isContentEditable;
const clearFirst = field.clear !== undefined ? field.clear : true;
const value = String(field.value);
if (clearFirst) {
if (isContentEditable) {
element.textContent = '';
} else {
setNativeValue(element, '');
}
}
if (isContentEditable) {
const existingContent = clearFirst ? '' : (element.textContent || '');
element.textContent = existingContent + value;
} else {
const existingValue = clearFirst ? '' : (element.value || '');
setNativeValue(element, existingValue + value);
}
element.dispatchEvent(new Event('input', { bubbles: true }));
element.dispatchEvent(new Event('change', { bubbles: true }));
const preview = value.length > 60 ? value.substring(0, 60) + '...' : value;
filled.push({ ref, valuePreview: preview });
} catch (err) {
const message = err instanceof Error ? err.message : String(err);
failed.push({ ref, error: message });
}
}
const snapshotResult = buildPageSnapshot();
return {
success: failed.length === 0,
filled,
failed,
pageState: {
url: window.location.href,
title: document.title,
snapshot: snapshotResult.tree
}
};
})();
- Fields filled: ${s.filled.length}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 162233–162270, SHA-256 f841c4ae97ff4bd3.
Jev judged not model-facing (confidence 0.22; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Fields filled: ${s.filled.length}
- Fields filled: ${s.filled.length}
- Fields failed: ${s.failed.length}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 162298–162335, SHA-256 c6738bc4735ff7fd.
Jev judged not model-facing (confidence 0.14; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: - Fields failed: ${s.failed.length}
- Fields failed: ${s.failed.length}
${t.ref}: ${t.error}
Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-browser-automation/dist/extension.js, bytes 162372–162394, SHA-256 329da83f629406a8.
Jev judged not model-facing (confidence 0.11; role code_data). This is a classifier judgment, not proof of delivery.
Readable text: ${t.ref}: ${t.error}
${t.ref}: ${t.error}