Evidence and archive

main.js · part 153

Full reference
Topics
Status
Showing all 60

60 text occurrences from desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, part 153. Every entry preserves the shipped literal and its saved verdict or selection reason.

File contents and all parts · All files

Shipped text

exit code ${e}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4812900–4812916, SHA-256 beb4767020093535.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: exit code ${e}

exit code ${e}

signal ${t}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4812933–4812946, SHA-256 1cc2f420a5903f2f.

Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: signal ${t}

signal ${t}

unknown exit status

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4812947–4812968, SHA-256 cd2d0ef4871662cf.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: unknown exit status

unknown exit status

; stderr: ${oze(t).slice(0,1e3)}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4813027–4813061, SHA-256 d65517a45402d2f6.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ; stderr: ${oze(t).slice(0,1e3)}

; stderr: ${oze(t).slice(0,1e3)}

${JSON.stringify(t)}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4822998–4823022, SHA-256 c0a235a4dedbf2ea.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ${JSON.stringify(t)}

${JSON.stringify(t)}

Cursor Agent Local Requests

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4823576–4823605, SHA-256 ec74571b5c777531.

Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Cursor Agent Local Requests

Cursor Agent Local Requests

doctype html html lang="en" head meta charset="utf-8" / meta name="vie

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4823612–4843587, SHA-256 155fbb2ab76b0b65.

Jev judged not model-facing (confidence 0.03; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: <!doctype html\> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>${n}</title> <style> :root { color-scheme: light dark; font-family: ui-sans-serif, sy…

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>${n}</title>
  <style>
    :root { color-scheme: light dark; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
    body { margin: 0; background: Canvas; color: CanvasText; }
    header { position: sticky; top: 0; z-index: 1; padding: 16px 20px; border-bottom: 1px solid color-mix(in srgb, CanvasText 16%, transparent); background: color-mix(in srgb, Canvas 92%, transparent); backdrop-filter: blur(12px); }
    h1 { margin: 0 0 6px; font-size: 18px; }
    .path { margin: 0; color: color-mix(in srgb, CanvasText 62%, transparent); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; }
    main { padding: 16px 20px 32px; }
    .summary { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
    .pill { border: 1px solid color-mix(in srgb, CanvasText 16%, transparent); border-radius: 999px; padding: 5px 10px; font-size: 12px; }
    .run { border: 1px solid color-mix(in srgb, CanvasText 22%, transparent); border-radius: 14px; margin: 0 0 18px; overflow: hidden; }
    .run-header { display: flex; gap: 12px; align-items: center; justify-content: space-between; padding: 14px; background: color-mix(in srgb, CanvasText 7%, transparent); }
    .run-title { margin: 0; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; overflow-wrap: anywhere; }
    .run-meta { margin: 4px 0 0; color: color-mix(in srgb, CanvasText 62%, transparent); font-size: 12px; }
    .upload-button { flex: none; border: 1px solid color-mix(in srgb, CanvasText 24%, transparent); border-radius: 7px; padding: 7px 10px; color: CanvasText; background: Canvas; font-size: 12px; font-weight: 600; text-decoration: none; }
    .upload-button:hover { background: color-mix(in srgb, CanvasText 8%, transparent); }
    .attempt { margin: 12px; border: 1px solid color-mix(in srgb, CanvasText 14%, transparent); border-radius: 10px; overflow: hidden; }
    .attempt-title { padding: 9px 12px; font-size: 12px; font-weight: 600; background: color-mix(in srgb, CanvasText 4%, transparent); }
    .invocation { margin: 10px; }
    .invocation-title { margin: 0 0 7px; color: color-mix(in srgb, CanvasText 70%, transparent); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; overflow-wrap: anywhere; }
    .request { border: 1px solid color-mix(in srgb, CanvasText 18%, transparent); border-radius: 9px; margin: 0 0 10px; overflow: hidden; }
    .request-header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 12px 14px; background: color-mix(in srgb, CanvasText 5%, transparent); }
    .method { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-weight: 700; }
    .url { overflow-wrap: anywhere; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; }
    .status { border-radius: 999px; padding: 4px 8px; font-size: 12px; background: color-mix(in srgb, CanvasText 9%, transparent); }
    .status.error { background: color-mix(in srgb, red 25%, transparent); }
    details { border-top: 1px solid color-mix(in srgb, CanvasText 12%, transparent); }
    summary { cursor: pointer; padding: 10px 14px; font-weight: 600; }
    pre { margin: 0; padding: 0 14px 14px; overflow: auto; font-size: 12px; line-height: 1.45; }
    .json { padding: 0 14px 14px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; line-height: 1.45; overflow: auto; }
    .json details { border: 0; margin-left: 16px; }
    .json summary { padding: 2px 0; font-weight: 400; }
    .json-row { display: flex; gap: 8px; padding: 1px 0; }
    .json-key { color: color-mix(in srgb, CanvasText 62%, transparent); }
    .json-string { color: #2f8f46; }
    .json-number, .json-boolean { color: #8b5cf6; }
    .json-null { color: color-mix(in srgb, CanvasText 48%, transparent); }
    .tool-list { padding: 0 14px 14px; }
    .tool-row { border: 0; border-radius: 8px; margin: 4px 0; background: color-mix(in srgb, CanvasText 4%, transparent); }
    .tool-row summary { display: grid; grid-template-columns: minmax(140px, max-content) minmax(0, 1fr); gap: 8px 12px; align-items: baseline; padding: 8px 10px; }
    .tool-name { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-weight: 700; }
    .tool-description { color: color-mix(in srgb, CanvasText 70%, transparent); font-weight: 400; overflow-wrap: anywhere; }
    .tool-kind { color: color-mix(in srgb, CanvasText 58%, transparent); font-weight: 400; }
    .tool-detail-body { padding: 0 10px 10px; }
    .tool-detail-body details { border: 0; margin-top: 6px; }
    .tool-detail-body summary { display: block; padding: 4px 0; }
    .tool-description-text { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; line-height: 1.45; }
    .message { padding: 12px 14px; border-top: 1px solid color-mix(in srgb, CanvasText 12%, transparent); }
    .message-label { margin: 0 0 6px; color: color-mix(in srgb, CanvasText 62%, transparent); font-size: 11px; font-weight: 700; text-transform: uppercase; }
    .message-text { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.5; }
    .empty { color: color-mix(in srgb, CanvasText 62%, transparent); }
  </style>
</head>
<body>
  <header>
    <h1>${n}</h1>
    <p class="path">${o=e,o.replace(/[&<>"']/gu,e=>{switch(e){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#39;";default:return e}})}</p>
  </header>
  <main>
    <div id="summary" class="summary"></div>
    <div id="runs"></div>
  </main>
  <script>
    // EMBEDDED_JSONL holds a bounded tail of the log. The agent re-embeds this
    // tail on each append, so the page live-updates by re-reading itself — which
    // works over file:// (where the viewer is normally opened and fetching a
    // sibling file is blocked). Embedding only the tail keeps each rewrite cheap
    // regardless of total log size.
    const EMBEDDED_JSONL = ${r};
    let currentJsonl = EMBEDDED_JSONL;
    renderFromJsonl(currentJsonl);
    setInterval(pollForChanges, 500);

    function renderFromJsonl(jsonl, openDetails = new Set()) {
      const events = jsonl.split("\n").filter(Boolean).map(line => {
        try { return JSON.parse(line); } catch (error) { return { type: "parseError", line, error: String(error) }; }
      });
      const groupedRequests = new Map();
      for (const event of events) {
        if (!event.httpRequestId) continue;
        const group = groupedRequests.get(event.httpRequestId) ?? { httpRequestId: event.httpRequestId };
        group[event.type] = event;
        groupedRequests.set(event.httpRequestId, group);
      }
      const runsById = new Map();
      const uncorrelatedRequests = [];
      for (const group of groupedRequests.values()) {
        const request = group.request ?? group.response ?? group.error ?? group.responseBody;
        if (!request?.generationUUID) {
          uncorrelatedRequests.push(group);
          continue;
        }
        const run = getOrCreateRun(runsById, request.generationUUID, request.conversationId);
        const attemptKey = request.attemptRequestId ?? `attempt-${request.attempt ?? "unknown"}`;
        const attempt = run.attempts.get(attemptKey) ?? {
          attemptRequestId: attemptKey,
          attempt: request.attempt,
          invocations: new Map(),
        };
        run.attempts.set(attemptKey, attempt);
        const invocationKey = request.invocationId ?? "Provider setup";
        const invocation = attempt.invocations.get(invocationKey) ?? {
          invocationId: invocationKey,
          requests: [],
        };
        invocation.requests.push(group);
        attempt.invocations.set(invocationKey, invocation);
        run.latestTimestamp = laterTimestamp(run.latestTimestamp, request.timestamp);
      }
      for (const event of events) {
        if (event.type !== "promptQualityRunSnapshot") continue;
        const run = getOrCreateRun(runsById, event.generationUUID, event.conversationId);
        run.snapshot = event;
        run.latestTimestamp = laterTimestamp(run.latestTimestamp, event.timestamp);
      }
      const runs = Array.from(runsById.values()).sort((a, b) =>
        String(b.latestTimestamp ?? "").localeCompare(String(a.latestTimestamp ?? ""))
      );
      const groups = Array.from(groupedRequests.values());
      document.querySelector("#summary").innerHTML = [
        ["Events", events.length],
        ["Runs", runs.length],
        ["Requests", groups.length],
        ["Errors", groups.filter(group => group.error).length],
        ["Auto-refresh", "0.5s"],
      ].map(([label, value]) => `<span class="pill">${label}: ${value}</span>`).join("");
      document.querySelector("#runs").innerHTML = runs.length === 0 && uncorrelatedRequests.length === 0
        ? '<p class="empty">No requests logged yet. Keep this page open while running the local agent.</p>'
        : runs.map(renderRun).join("") + renderUncorrelatedRequests(uncorrelatedRequests);
      restoreOpenDetails(openDetails);
    }

    function getOrCreateRun(runsById, generationUUID, conversationId) {
      const existing = runsById.get(generationUUID);
      if (existing) return existing;
      const run = {
        generationUUID,
        conversationId,
        attempts: new Map(),
        snapshot: undefined,
        latestTimestamp: undefined,
      };
      runsById.set(generationUUID, run);
      return run;
    }

    function laterTimestamp(current, candidate) {
      if (!candidate) return current;
      return !current || candidate > current ? candidate : current;
    }

    function renderRun(run) {
      const snapshot = run.snapshot;
      const urlProtocol = snapshot?.urlProtocol === "cursor-dev" ? "cursor-dev" : "cursor";
      const uploadLink = snapshot
        ? urlProtocol + "://local-agent-prompt-quality/upload?generationUUID=" +
          encodeURIComponent(run.generationUUID) +
          "&nonce=" +
          encodeURIComponent(snapshot.capabilityNonce)
        : undefined;
      const attempts = Array.from(run.attempts.values()).sort(
        (a, b) => (a.attempt ?? 0) - (b.attempt ?? 0)
      );
      const status = snapshot
        ? `${snapshot.terminalStatus} · ${snapshot.invocationCount} invocation${snapshot.invocationCount === 1 ? "" : "s"}`
        : "Run in progress";
      return `<section class="run">
        <div class="run-header">
          <div>
            <h2 class="run-title">${escapeHtml(run.generationUUID)}</h2>
            <p class="run-meta">${escapeHtml(status)}${run.conversationId ? ` · Conversation ${escapeHtml(run.conversationId)}` : ""}</p>
          </div>
          ${uploadLink ? `<a class="upload-button" href="${escapeAttribute(uploadLink)}">Upload to Prompt Quality</a>` : ""}
        </div>
        ${attempts.map(renderAttempt).join("")}
      </section>`;
    }

    function renderAttempt(attempt) {
      const invocations = Array.from(attempt.invocations.values());
      return `<section class="attempt">
        <div class="attempt-title">Attempt ${escapeHtml(attempt.attempt ?? "?")} · ${escapeHtml(attempt.attemptRequestId)}</div>
        ${invocations.map(renderInvocation).join("")}
      </section>`;
    }

    function renderInvocation(invocation) {
      return `<section class="invocation">
        <h3 class="invocation-title">${escapeHtml(invocation.invocationId)}</h3>
        ${invocation.requests.map(renderGroup).join("")}
      </section>`;
    }

    function renderUncorrelatedRequests(groups) {
      if (groups.length === 0) return "";
      return `<section class="run">
        <div class="run-header"><div><h2 class="run-title">Uncorrelated Provider Requests</h2><p class="run-meta">Auxiliary requests outside an agent run</p></div></div>
        <div class="invocation">${groups.map(renderGroup).join("")}</div>
      </section>`;
    }

    async function pollForChanges() {
      try {
        const viewerUrl = window.location.href.split("#")[0].split("?")[0];
        const response = await fetch(`${viewerUrl}?t=${Date.now()}`, { cache: "no-store" });
        const nextJsonl = extractEmbeddedJsonl(await response.text());
        if (nextJsonl !== undefined && nextJsonl !== currentJsonl) {
          const openDetails = captureOpenDetails();
          currentJsonl = nextJsonl;
          renderFromJsonl(currentJsonl, openDetails);
        }
      } catch {
        // Some browsers restrict file:// fetches. In that case the page remains
        // usable as a snapshot and can be manually refreshed.
      }
    }

    function extractEmbeddedJsonl(html) {
      const match = html.match(/const EMBEDDED_JSONL = ([\s\S]*?);\n\s*let currentJsonl/u);
      if (!match) return undefined;
      try { return JSON.parse(match[1]); } catch { return undefined; }
    }

    function captureOpenDetails() {
      return new Set(Array.from(document.querySelectorAll("details[data-detail-key][open]")).map(details => details.dataset.detailKey));
    }

    function restoreOpenDetails(openDetails) {
      for (const details of document.querySelectorAll("details[data-detail-key]")) {
        details.open = openDetails.has(details.dataset.detailKey);
      }
    }

    function renderGroup(group) {
      const request = group.request ?? {};
      const response = group.response;
      const error = group.error;
      const statusText = error ? `Error · ${error.durationMs ?? "?"}ms` : response ? `${response.status} ${response.statusText} · ${response.durationMs}ms` : "Pending";
      return `<section class="request">
        <div class="request-header">
          <span class="method">${escapeHtml(request.method ?? "?")}</span>
          <span class="url">${escapeHtml(request.url ?? group.httpRequestId)}</span>
          <span class="status ${error ? "error" : ""}">${escapeHtml(statusText)}</span>
        </div>
        ${request.text ? renderMessage("User message", request.text) : ""}
        ${group.responseBody?.text ? renderMessage("Agent response", group.responseBody.text) : ""}
        ${renderResponseToolCalls(group.responseBody?.toolCalls)}
        ${request.generationUUID ? renderDetails("Correlation", {
          httpRequestId: request.httpRequestId,
          generationUUID: request.generationUUID,
          attemptRequestId: request.attemptRequestId,
          attempt: request.attempt,
          conversationId: request.conversationId,
          invocationId: request.invocationId,
        }, `${group.httpRequestId}:correlation`) : ""}
        ${renderDetails("Request headers", request.headers, `${group.httpRequestId}:requestHeaders`)}
        ${renderToolsDetails(request.body, `${group.httpRequestId}:requestTools`)}
        ${renderDetails("Request body", request.body, `${group.httpRequestId}:requestBody`)}
        ${response ? renderDetails("Response headers", response.headers, `${group.httpRequestId}:responseHeaders`) : ""}
        ${group.responseBody ? renderDetails("Response body", group.responseBody.body, `${group.httpRequestId}:responseBody`) : ""}
        ${error ? renderDetails("Error", error.error, `${group.httpRequestId}:error`) : ""}
      </section>`;
    }

    function renderMessage(label, text) {
      return `<div class="message"><p class="message-label">${escapeHtml(label)}</p><p class="message-text">${escapeHtml(text)}</p></div>`;
    }

    function renderResponseToolCalls(toolCalls) {
      if (!Array.isArray(toolCalls)) return "";
      return toolCalls.map(toolCall => {
        const args = typeof toolCall.arguments === "string"
          ? toolCall.arguments
          : JSON.stringify(toolCall.arguments, undefined, 2);
        return renderMessage("Tool call · " + (toolCall.name ?? "unknown"), args ?? "");
      }).join("");
    }

    function renderDetails(label, value, detailKey) {
      return `<details data-detail-key="${escapeAttribute(detailKey)}"><summary>${escapeHtml(label)}</summary><div class="json">${renderJson(value, undefined, detailKey + ":json")}</div></details>`;
    }

    function renderToolsDetails(body, detailKey) {
      const tools = body && typeof body === "object" && Array.isArray(body.tools) ? body.tools : undefined;
      if (!tools || tools.length === 0) return "";

      return `<details data-detail-key="${escapeAttribute(detailKey)}"><summary>Request tools (${tools.length})</summary><div class="tool-list">${tools.map((tool, index) => renderTool(tool, detailKey + ":" + index)).join("")}</div></details>`;
    }

    function renderTool(tool, detailKey) {
      const info = describeTool(tool);
      return `<details class="tool-row" data-detail-key="${escapeAttribute(detailKey)}"><summary><span class="tool-name">${escapeHtml(info.name)}</span><span class="tool-kind">${escapeHtml(info.kind)}</span></summary><div class="tool-detail-body">${info.description ? `<details data-detail-key="${escapeAttribute(detailKey + ":description")}"><summary>Description</summary><p class="tool-description-text">${escapeHtml(info.description)}</p></details>` : ""}<details data-detail-key="${escapeAttribute(detailKey + ":schema")}"><summary>Full schema</summary><div class="json">${renderJson(tool, undefined, detailKey + ":json")}</div></details></div></details>`;
    }

    function describeTool(tool) {
      if (!tool || typeof tool !== "object") {
        return { name: "unknown", kind: "", description: "" };
      }
      const fn = tool.function && typeof tool.function === "object" ? tool.function : undefined;
      const name = typeof fn?.name === "string"
        ? fn.name
        : typeof tool.name === "string"
          ? tool.name
          : "unknown";
      const kind = typeof tool.type === "string" ? tool.type : "";
      const description = typeof fn?.description === "string"
        ? fn.description
        : typeof tool.description === "string"
          ? tool.description
          : "";
      return { name, kind, description };
    }

    function renderJson(value, label, detailKey) {
      const labelPrefix = label === undefined ? "" : `<span class="json-key">${escapeHtml(label)}:</span>`;
      if (Array.isArray(value)) {
        return `<details data-detail-key="${escapeAttribute(detailKey)}"><summary>${labelPrefix} Array(${value.length})</summary>${value.map((item, index) => renderJson(item, String(index), detailKey + ":" + index)).join("")}</details>`;
      }
      if (value && typeof value === "object") {
        const entries = Object.entries(value);
        return `<details data-detail-key="${escapeAttribute(detailKey)}"><summary>${labelPrefix} Object(${entries.length})</summary>${entries.map(([key, nested]) => renderJson(nested, key, detailKey + ":" + key)).join("")}</details>`;
      }
      return `<div class="json-row">${labelPrefix}<span class="${jsonScalarClass(value)}">${escapeHtml(JSON.stringify(value))}</span></div>`;
    }

    function jsonScalarClass(value) {
      if (value === null) return "json-null";
      return `json-${typeof value}`;
    }

    function escapeHtml(value) {
      return String(value).replace(/[&<>"']/g, char => ({ "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" }[char]));
    }

    function escapeAttribute(value) {
      return escapeHtml(value);
    }
  </script>
</body>
</html>

Bearer ${e.apiKey}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4846744–4846764, SHA-256 01b0e0b8927f64fa.

Jev judged not model-facing (confidence 0.09; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Bearer ${e.apiKey}

Bearer ${e.apiKey}

Too many redirects while fetching URL.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4848685–4848725, SHA-256 667ce591a29c7adf.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Too many redirects while fetching URL.

Too many redirects while fetching URL.

Cannot fetch from localhost (${gHe(e)}) in local agent mode.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4849067–4849129, SHA-256 ac326f8fdec8a3f6.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Cannot fetch from localhost (${gHe(e)}) in local agent mode.

Cannot fetch from localhost (${gHe(e)}) in local agent mode.

Cannot fetch from private or loopback IP (${gHe(e)}) in local agent mode.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4849157–4849232, SHA-256 1afdc7245f34e209.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Cannot fetch from private or loopback IP (${gHe(e)}) in local agent mode.

Cannot fetch from private or loopback IP (${gHe(e)}) in local agent mode.

Could not resolve host (${gHe(e)}).

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4849336–4849373, SHA-256 1f5e1b0440382624.

Jev judged not model-facing (confidence 0.03; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Could not resolve host (${gHe(e)}).

Could not resolve host (${gHe(e)}).

Cannot fetch ${gHe(e)} because it resolves to a private or loopback IP (${o.addr

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4849439–4849527, SHA-256 480896da3ad21052.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Cannot fetch ${gHe(e)} because it resolves to a private or loopback IP (${o.address}).

Cannot fetch ${gHe(e)} because it resolves to a private or loopback IP (${o.address}).

WebFetch timed out after 30000ms.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4850453–4850488, SHA-256 7c0024fb318f1474.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: WebFetch timed out after 30000ms.

WebFetch timed out after 30000ms.

Invalid URL: must include http:// or https://.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4850694–4850742, SHA-256 1ff17b11ed566f56.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Invalid URL: must include http:// or https://.

Invalid URL: must include http:// or https://.

Invalid URL protocol: ${e.protocol} (must be http or https).

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4850839–4850901, SHA-256 765369b8a8290dc4.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Invalid URL protocol: ${e.protocol} (must be http or https).

Invalid URL protocol: ${e.protocol} (must be http or https).

Search the web for the following query and return a concise answer with sources:

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4851518–4851617, SHA-256 b01ee56ad094a693.

Jev judged model-facing (confidence 0.87; role user_template). This is a classifier judgment, not proof of delivery.

Readable text: Search the web for the following query and return a concise answer with sources: ${r.searchTerm}

Search the web for the following query and return a concise answer with sources:
${r.searchTerm}

Reference images are not supported by the local OpenAI-compatible image service.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4851937–4852019, SHA-256 5e52ab953b042d69.

Jev judged not model-facing (confidence 0.11; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Reference images are not supported by the local OpenAI-compatible image service.

Reference images are not supported by the local OpenAI-compatible image service.

Image provider response did not include inline image data.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4852283–4852343, SHA-256 506dd9ba4ecd131a.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Image provider response did not include inline image data.

Image provider response did not include inline image data.

Failed to download generated image: ${t.statusCode} ${t.statusMessage}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4852437–4852509, SHA-256 a92a5670641cbae2.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Failed to download generated image: ${t.statusCode} ${t.statusMessage}

Failed to download generated image: ${t.statusCode} ${t.statusMessage}

Image provider response did not include image data.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4852605–4852658, SHA-256 9feca045da114861.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Image provider response did not include image data.

Image provider response did not include image data.

${t.statusCode} ${t.statusMessage}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4852809–4852845, SHA-256 06fbda656677ee92.

Jev judged not model-facing (confidence 0.06; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ${t.statusCode} ${t.statusMessage}

${t.statusCode} ${t.statusMessage}

Bearer ${e.apiKey} · byte 4853201

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4853201–4853221, SHA-256 01b0e0b8927f64fa.

Jev judged not model-facing (confidence 0.09; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Bearer ${e.apiKey}

Bearer ${e.apiKey}

Provider request failed: ${n.status} ${n.statusText} ${o}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4853348–4853408, SHA-256 22917d04e08b5d49.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Provider request failed: ${n.status} ${n.statusText} ${o}

Provider request failed: ${n.status} ${n.statusText}
${o}

The "input" argument must be of type string. Received type ${typeof e} (${e})

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4853833–4853912, SHA-256 97959805044c9216.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: The "input" argument must be of type string. Received type ${typeof e} (${e})

The "input" argument must be of type string. Received type ${typeof e} (${e})

Int64 buffers must be exactly 8 bytes

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4858117–4858156, SHA-256 c20229bc5090d9fa.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Int64 buffers must be exactly 8 bytes

Int64 buffers must be exactly 8 bytes

${e} is too large (or, if negative, too small) to represent as an Int64

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4858242–4858315, SHA-256 65605f0d26e4b026.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ${e} is too large (or, if negative, too small) to represent as an Int64

${e} is too large (or, if negative, too small) to represent as an Int64

Invalid UUID received: ${e.value}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4860008–4860043, SHA-256 bb136dc5321a09f5.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Invalid UUID received: ${e.value}

Invalid UUID received: ${e.value}

Unrecognized header type tag

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4861244–4861274, SHA-256 e9b1771413be9cbc.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Unrecognized header type tag

Unrecognized header type tag

Provided message too short to accommodate event stream message overhead

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4862729–4862802, SHA-256 e09385c09ade7936.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Provided message too short to accommodate event stream message overhead

Provided message too short to accommodate event stream message overhead

Reported message length does not match received message length

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4862877–4862941, SHA-256 04b8ad57f571afad.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Reported message length does not match received message length

Reported message length does not match received message length

The prelude checksum specified in the message (${i}) does not match the calculat

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4863087–4863202, SHA-256 48265af3a175f321.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: The prelude checksum specified in the message (${i}) does not match the calculated CRC32 checksum (${l.digest()})

The prelude checksum specified in the message (${i}) does not match the calculated CRC32 checksum (${l.digest()})

The message checksum (${l.digest()}) did not match the expected value of ${a}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4863275–4863354, SHA-256 57c64f6250c8cdea.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: The message checksum (${l.digest()}) did not match the expected value of ${a}

The message checksum (${l.digest()}) did not match the expected value of ${a}

url is a required option

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4864253–4864279, SHA-256 63d20afaf829e35d.

Jev judged not model-facing (confidence 0.05; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: url is a required option

url is a required option

accessKeyId is a required option

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4864312–4864346, SHA-256 9fbe4721a85a14e6.

Jev judged not model-facing (confidence 0.06; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: accessKeyId is a required option

accessKeyId is a required option

secretAccessKey is a required option

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4864379–4864417, SHA-256 1dcc8a9957f68998.

Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: secretAccessKey is a required option

secretAccessKey is a required option

AWS4-HMAC-SHA256 Credential=

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4867963–4867993, SHA-256 ea681cba1a7ddb1f.

Jev judged not model-facing (confidence 0.04; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: AWS4-HMAC-SHA256 Credential=

AWS4-HMAC-SHA256 Credential=

body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4869011–4869118, SHA-256 36bb471889fb9168.

Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header

body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header

Unsupported role: ${e}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4870469–4870493, SHA-256 e2a792084d59fd27.

Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Unsupported role: ${e}

Unsupported role: ${e}

Multiple system messages that are separated by user/assistant messages

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4870661–4870733, SHA-256 2e5274ce519e593d.

Jev judged not model-facing (confidence 0.26; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Multiple system messages that are separated by user/assistant messages

Multiple system messages that are separated by user/assistant messages

Image URLs in user messages

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4871107–4871136, SHA-256 3c5b854ed6b9237a.

Jev judged not model-facing (confidence 0.13; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Image URLs in user messages

Image URLs in user messages

File URLs in user messages

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4871344–4871372, SHA-256 67668d41c8d75daf.

Jev judged not model-facing (confidence 0.21; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: File URLs in user messages

File URLs in user messages

Image mime type is required in tool result part content

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4871683–4871740, SHA-256 0225a3b240beaed4.

Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Image mime type is required in tool result part content

Image mime type is required in tool result part content

Unsupported image format: ${t}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4871802–4871834, SHA-256 59f50499e4615e82.

Jev judged not model-facing (confidence 0.09; role human). This is a classifier judgment, not proof of delivery.

Readable text: Unsupported image format: ${t}

Unsupported image format: ${t}

Unsupported role: ${a}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4872006–4872030, SHA-256 856ce328541d343d.

Jev judged not model-facing (confidence 0.08; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Unsupported role: ${a}

Unsupported role: ${a}

Unsupported type: ${d}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4872737–4872761, SHA-256 683a524aae5d6a8e.

Jev judged not model-facing (confidence 0.09; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Unsupported type: ${d}

Unsupported type: ${d}

JSON response format is not supported.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4873901–4873941, SHA-256 1e0b22a83ac63d29.

Jev judged not model-facing (confidence 0.16; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: JSON response format is not supported.

JSON response format is not supported.

invalid reasoning configuration options

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4874142–4874183, SHA-256 f735760c3a1a3a2c.

Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: invalid reasoning configuration options

invalid reasoning configuration options

temperature is not supported when thinking is enabled

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4874632–4874687, SHA-256 e2d2ecebdf721ad1.

Jev judged not model-facing (confidence 0.16; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: temperature is not supported when thinking is enabled

temperature is not supported when thinking is enabled

topP is not supported when thinking is enabled

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4874781–4874829, SHA-256 c339b75fb6c3caa6.

Jev judged not model-facing (confidence 0.14; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: topP is not supported when thinking is enabled

topP is not supported when thinking is enabled

Unsupported tool choice type: ${i}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4876061–4876097, SHA-256 45e8a602e6abc0fc.

Jev judged not model-facing (confidence 0.11; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Unsupported tool choice type: ${i}

Unsupported tool choice type: ${i}

json-mode object generation

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4876252–4876281, SHA-256 6452844f34f195c5.

Jev judged not model-facing (confidence 0.23; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: json-mode object generation

json-mode object generation

Unsupported type: ${w}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4876516–4876540, SHA-256 4ca1689a9a8402ef.

Jev judged not model-facing (confidence 0.1; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Unsupported type: ${w}

Unsupported type: ${w}

${null =(t=e.message)?t:"Unknown error"}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4876861–4876903, SHA-256 643d37cd1933869e.

Jev judged not model-facing (confidence 0.11; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ${null!=(t=e.message)?t:"Unknown error"}

${null!=(t=e.message)?t:"Unknown error"}

Unknown error

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4876886–4876901, SHA-256 70e280a3cf0ea5f5.

Jev judged not model-facing (confidence 0.11; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: Unknown error

Unknown error

${e.type}: ${e.message}

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4878985–4879010, SHA-256 60bfb3a9f3f43a11.

Jev judged not model-facing (confidence 0.07; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ${e.type}: ${e.message}

${e.type}: ${e.message}

${e.type}: ${e.message} · byte 4885300

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4885300–4885325, SHA-256 60bfb3a9f3f43a11.

Jev judged not model-facing (confidence 0.06; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ${e.type}: ${e.message}

${e.type}: ${e.message}

This model does not support aspect ratio. Use size instead.

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4886729–4886792, SHA-256 d87f4006c41ebe36.

Jev judged not model-facing (confidence 0.2; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: This model does not support aspect ratio. Use 'size' instead.

This model does not support aspect ratio. Use `size` instead.

${e.type}: ${e.message} · byte 4887093

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4887093–4887118, SHA-256 60bfb3a9f3f43a11.

Jev judged not model-facing (confidence 0.06; role code_data). This is a classifier judgment, not proof of delivery.

Readable text: ${e.type}: ${e.message}

${e.type}: ${e.message}

AWS region

Source: desktop/Cursor.app/Contents/Resources/app/extensions/cursor-local-agent-runtime/dist/main.js, bytes 4888472–4888484, SHA-256 6cf83f85a76cdf01.

Jev judged not model-facing (confidence 0.32; role parameter). This is a classifier judgment, not proof of delivery.

Readable text: AWS region

AWS region