zan-browser 3.0.10 → 3.0.12

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.
@@ -30,7 +30,6 @@ export declare class AgentLoop {
30
30
  private ctx;
31
31
  private conversation;
32
32
  private systemPrompt;
33
- private ssrNudgeSent;
34
33
  constructor(registry: ToolRegistry, ctx: ToolContext, model?: string, conversation?: ConversationHistory);
35
34
  run(config: AgentConfig): Promise<AgentResult>;
36
35
  private runValidationStep;
@@ -44,6 +43,7 @@ export declare class AgentLoop {
44
43
  private jsonToDecision;
45
44
  /** Fallback: extract params from flat action object (legacy format compat) */
46
45
  private extractLegacyParams;
46
+ private buildProgressSummary;
47
47
  private getCurrentUrl;
48
48
  private buildResult;
49
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAmB3D,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,eAAe,EAAE,CAAC;CACrC;AA2BD,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAS;gBAG3B,QAAQ,EAAE,YAAY,EACtB,GAAG,EAAE,WAAW,EAChB,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,mBAAmB;IAU9B,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YA+JtC,iBAAiB;IA0D/B,uEAAuE;IACvE,OAAO,CAAC,eAAe;IA4CvB,kGAAkG;IAClG,OAAO,CAAC,iBAAiB;YA4BX,MAAM;IAkBpB,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,cAAc;IAWtB,8EAA8E;IAC9E,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,WAAW;CASpB"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAmB3D,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,eAAe,EAAE,CAAC;CACrC;AA2BD,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,YAAY,CAAS;gBAG3B,QAAQ,EAAE,YAAY,EACtB,GAAG,EAAE,WAAW,EAChB,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,mBAAmB;IAU9B,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YAgItC,iBAAiB;IA0D/B,uEAAuE;IACvE,OAAO,CAAC,eAAe;IA4CvB,kGAAkG;IAClG,OAAO,CAAC,iBAAiB;YA4BX,MAAM;IAkCpB,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,cAAc;IAWtB,8EAA8E;IAC9E,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,oBAAoB;IA+D5B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,WAAW;CASpB"}
@@ -18,9 +18,9 @@ const DATA_PRODUCING_TOOLS = new Set([
18
18
  "read_network_logs", "scrape", "eval_js", "download_file",
19
19
  "fetch_url", "web_search",
20
20
  ]);
21
- // How many consecutive low-value steps before injecting a nudge
22
- const STAGNATION_WINDOW = 4;
23
21
  const FALLBACK_MODEL = "claude-haiku-4-5-20251001";
22
+ // Hard ceiling — absolute maximum to prevent runaway loops
23
+ const HARD_MAX_STEPS = 50;
24
24
  // ─── Patterns that indicate framework data-transport, not a real API ─────────
25
25
  const FRAMEWORK_URL_PATTERNS = [
26
26
  /__data\.json/,
@@ -36,7 +36,6 @@ class AgentLoop {
36
36
  ctx;
37
37
  conversation;
38
38
  systemPrompt;
39
- ssrNudgeSent = false;
40
39
  constructor(registry, ctx, model, conversation) {
41
40
  this.registry = registry;
42
41
  this.ctx = ctx;
@@ -46,7 +45,9 @@ class AgentLoop {
46
45
  this.systemPrompt = (0, prompt_1.buildSystemPrompt)(registry);
47
46
  }
48
47
  async run(config) {
49
- const maxSteps = config.maxSteps ?? 15;
48
+ const suggestedBudget = config.maxSteps ?? 15;
49
+ const hardCeiling = Math.max(suggestedBudget * 2, HARD_MAX_STEPS);
50
+ const startTime = Date.now();
50
51
  const progress = config.onProgress ?? (() => { });
51
52
  const steps = [];
52
53
  // Build the initial task message
@@ -59,9 +60,9 @@ class AgentLoop {
59
60
  const firstActionHint = isBlank
60
61
  ? "The browser is on a blank page. Use web_search to find the target URL, or navigate directly if the goal includes a URL."
61
62
  : `The browser is on ${currentUrl}. Start by observing the page.`;
62
- this.conversation.append("user", `NAVIGATION TASK\nGoal: ${config.goal}\nStep budget: ${maxSteps}${seedLines}\n\n${firstActionHint}`);
63
- for (let i = 0; i < maxSteps; i++) {
64
- progress(`Step ${i + 1}/${maxSteps}`);
63
+ this.conversation.append("user", `NAVIGATION TASK\nGoal: ${config.goal}\nSuggested budget: ${suggestedBudget} steps${seedLines}\n\n${firstActionHint}`);
64
+ for (let i = 0; i < hardCeiling; i++) {
65
+ progress(`Step ${i + 1} (budget: ${suggestedBudget})`);
65
66
  // ── 1. Ask LLM what to do ──────────────────────────────────────────
66
67
  const decision = await this.askLLM();
67
68
  // ── 2. Handle data_found — validate before accepting ───────────────
@@ -114,7 +115,8 @@ class AgentLoop {
114
115
  });
115
116
  }
116
117
  }
117
- // ── 5. Feed result back to conversation ────────────────────────────
118
+ // ── 5. Feed result + progress summary back to conversation ────────
119
+ const progressSummary = this.buildProgressSummary(steps, startTime, suggestedBudget);
118
120
  if (decision.tool_name === "screenshot" && result.success && result.data) {
119
121
  const screenshotData = result.data;
120
122
  this.conversation.append("user", [
@@ -122,42 +124,13 @@ class AgentLoop {
122
124
  type: "image",
123
125
  source: { type: "base64", media_type: "image/jpeg", data: screenshotData.base64 },
124
126
  },
125
- { type: "text", text: `Screenshot captured. URL: ${this.getCurrentUrl()}\nDecide next action.` },
127
+ { type: "text", text: `Screenshot captured. URL: ${this.getCurrentUrl()}\n\n${progressSummary}\nDecide next action.` },
126
128
  ]);
127
129
  }
128
130
  else {
129
- const stepContext = `Tool: ${decision.tool_name}\nResult: ${result.summary}\nURL: ${this.getCurrentUrl()}`;
131
+ const stepContext = `Tool: ${decision.tool_name}\nResult: ${result.summary}\nURL: ${this.getCurrentUrl()}\n\n${progressSummary}`;
130
132
  this.conversation.append("user", stepContext);
131
133
  }
132
- // ── 5b. Stagnation detection — nudge if spinning without results ──
133
- if (steps.length >= STAGNATION_WINDOW && steps.length % STAGNATION_WINDOW === 0) {
134
- const recent = steps.slice(-STAGNATION_WINDOW);
135
- const hasDataTool = recent.some((s) => DATA_PRODUCING_TOOLS.has(s.toolName));
136
- if (!hasDataTool) {
137
- this.conversation.append("user", `You've taken ${STAGNATION_WINDOW} steps without finding useful data on this site. Consider: ` +
138
- `1) navigating to a completely different site, ` +
139
- `2) using web_search to find a better source, or ` +
140
- `3) using fetch_url to try a known API endpoint directly.`);
141
- progress(`Stagnation nudge injected after ${steps.length} steps`);
142
- }
143
- }
144
- // ── 5c. SSR detection — if no XHR traffic after 3+ steps, nudge once
145
- if (!this.ssrNudgeSent && steps.length >= 3 && this.ctx.interceptor) {
146
- const useful = this.ctx.interceptor.getUseful(10);
147
- const highScoreXHR = useful.filter((r) => r.isXHR && r.score > 5);
148
- if (highScoreXHR.length === 0) {
149
- this.conversation.append("user", `No useful XHR traffic detected after several steps. ` +
150
- `This site likely renders data server-side (SSR — Next.js, Nuxt, Astro, etc.). ` +
151
- `The data is already in the HTML.\n` +
152
- `Switch strategy immediately:\n` +
153
- `1. Use scrape to extract structured data from the current page\n` +
154
- `2. Use eval_js to read window.__NEXT_DATA__, window.__NUXT__, or any global state object\n` +
155
- `3. Use extract_dom to get the raw text content\n` +
156
- `Do NOT keep waiting for XHR requests that will never come.`);
157
- this.ssrNudgeSent = true;
158
- progress("SSR nudge injected — no XHR traffic detected");
159
- }
160
- }
161
134
  // ── 6. Post-execution data_found check (for eval_js) ──────────────
162
135
  if (decision.data_found && decision.tool_name === "eval_js") {
163
136
  const validation = await this.runValidationStep(steps, progress);
@@ -169,9 +142,9 @@ class AgentLoop {
169
142
  continue;
170
143
  }
171
144
  }
172
- // Max steps exhausted
173
- progress(`Completed ${maxSteps} steps`);
174
- return this.buildResult(false, steps, `Reached max steps (${maxSteps}) without finding valid data`);
145
+ // Hard ceiling exhausted
146
+ progress(`Completed ${steps.length} steps (hard ceiling: ${hardCeiling})`);
147
+ return this.buildResult(false, steps, `Reached hard ceiling (${hardCeiling} steps) without finding valid data`);
175
148
  }
176
149
  // ─── Validation step: verify captured data is actually useful ─────────────
177
150
  async runValidationStep(steps, progress) {
@@ -278,10 +251,25 @@ class AgentLoop {
278
251
  // ─── Private: Ask LLM for next decision ────────────────────────────────────
279
252
  async askLLM() {
280
253
  const messages = this.conversation.toMessages();
254
+ // Mark early messages with cache_control so Anthropic caches them
255
+ // across steps (5-min TTL). Only the last 2 messages change per step.
256
+ if (messages.length > 2) {
257
+ const cacheBreakpoint = messages.length - 2;
258
+ for (let j = 0; j < cacheBreakpoint; j++) {
259
+ const msg = messages[j];
260
+ if (typeof msg.content === "string") {
261
+ messages[j].content = [
262
+ { type: "text", text: msg.content, cache_control: { type: "ephemeral" } },
263
+ ];
264
+ }
265
+ }
266
+ }
281
267
  const response = await this.client.messages.create({
282
268
  model: this.model,
283
269
  max_tokens: 800,
284
- system: this.systemPrompt,
270
+ system: [
271
+ { type: "text", text: this.systemPrompt, cache_control: { type: "ephemeral" } },
272
+ ],
285
273
  messages,
286
274
  });
287
275
  const text = response.content[0].type === "text" ? response.content[0].text : "{}";
@@ -339,6 +327,63 @@ class AgentLoop {
339
327
  }
340
328
  return params;
341
329
  }
330
+ // ─── Private: Progress summary ──────────────────────────────────────────────
331
+ buildProgressSummary(steps, startTime, suggestedBudget) {
332
+ const elapsed = ((Date.now() - startTime) / 1000).toFixed(1);
333
+ const hasUsefulData = steps.some((s) => DATA_PRODUCING_TOOLS.has(s.toolName) && s.result.success);
334
+ // Domains visited — only from explicit navigate/fetch_url actions
335
+ const domains = new Set();
336
+ for (const s of steps) {
337
+ if ((s.toolName === "navigate" || s.toolName === "fetch_url") && s.params.url) {
338
+ try {
339
+ domains.add(new URL(String(s.params.url)).hostname);
340
+ }
341
+ catch { /* ignore */ }
342
+ }
343
+ }
344
+ // Tool usage counts
345
+ const toolCounts = {};
346
+ for (const s of steps) {
347
+ toolCounts[s.toolName] = (toolCounts[s.toolName] ?? 0) + 1;
348
+ }
349
+ const toolLine = Object.entries(toolCounts).map(([t, c]) => `${t}:${c}`).join(", ");
350
+ // Last 3 actions
351
+ const last3 = steps.slice(-3).map((s) => `${s.toolName}(${s.result.success ? "ok" : "err"})`).join(" → ");
352
+ // XHR quality breakdown
353
+ const allRequests = this.ctx.interceptor?.getAll() ?? [];
354
+ const BINARY_TYPES = /grpc|protobuf|proto|wasm|octet-stream|msgpack/i;
355
+ const NOISE_TYPES = /tracking|analytics|pixel|beacon|ad[s]?[./]|doubleclick|googletag|facebook.*tr/i;
356
+ let useful = 0;
357
+ let binary = 0;
358
+ let noise = 0;
359
+ for (const r of allRequests) {
360
+ const ct = r.contentType ?? "";
361
+ const url = r.url ?? "";
362
+ if (BINARY_TYPES.test(ct) || BINARY_TYPES.test(url)) {
363
+ binary++;
364
+ }
365
+ else if (r.isAsset || NOISE_TYPES.test(url) || r.score < 0) {
366
+ noise++;
367
+ }
368
+ else if (r.isXHR && r.score >= 5 && (ct.includes("json") || ct.includes("xml"))) {
369
+ useful++;
370
+ }
371
+ else {
372
+ noise++;
373
+ }
374
+ }
375
+ const xhrLine = `${useful} useful (JSON/XML) / ${binary} binary (grpc/proto/wasm) / ${noise} noise (ads/tracking/assets)`;
376
+ return [
377
+ "PROGRESS SUMMARY:",
378
+ `- Steps taken: ${steps.length}/${suggestedBudget} suggested budget`,
379
+ `- Time elapsed: ${elapsed}s`,
380
+ `- Useful data found: ${hasUsefulData ? "yes" : "no"}`,
381
+ `- Sites visited: ${domains.size > 0 ? [...domains].join(", ") : "none"}`,
382
+ `- Tools used: ${toolLine || "none"}`,
383
+ `- Last 3 actions: ${last3 || "none"}`,
384
+ `- XHR quality: ${xhrLine}`,
385
+ ].join("\n");
386
+ }
342
387
  // ─── Private: Helpers ──────────────────────────────────────────────────────
343
388
  getCurrentUrl() {
344
389
  return this.ctx.page?.url() ?? "unknown";
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/agent/prompt.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CA8FhE"}
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/agent/prompt.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CA2GhE"}
@@ -73,6 +73,19 @@ Set data_found to true ONLY when high-score XHRs (≥ 60) confirm that the data
73
73
  described in the goal has been captured. Setting data_found=true terminates the
74
74
  session immediately — set it only when you are certain.
75
75
 
76
+ ─── Self-Assessment ───────────────────────────────────────────────────────────
77
+
78
+ Before each action, read the PROGRESS SUMMARY appended to every step result and assess your progress:
79
+
80
+ - If you have visited 2+ sites without finding data, try a completely different approach
81
+ - If you have used the same tool 3+ times in a row without progress, switch strategy
82
+ - If you have been searching/navigating for a long time without data_found, think creatively:
83
+ GitHub datasets, public CSVs, government APIs, RSS feeds, Wikipedia API, direct JSON endpoints
84
+ - If "Network: No useful XHR traffic detected" appears, the site is SSR — use scrape, eval_js
85
+ (window.__NEXT_DATA__, window.__NUXT__), or extract_dom instead of waiting for XHR
86
+ - You decide when to change strategy based on what you see in PROGRESS SUMMARY — there is
87
+ no fixed step limit forcing you to stop, but be efficient and do not waste steps
88
+
76
89
  ─── Rules ─────────────────────────────────────────────────────────────────────
77
90
 
78
91
  1. On a new page with content, always observe first before interacting.
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/agent/prompt.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,6EAA6E;AAC7E,qEAAqE;;AAKrE,8CA8FC;AAhGD,0CAAwD;AAExD,SAAgB,iBAAiB,CAAC,QAAsB;IACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IACjD,MAAM,iBAAiB,GAAG,IAAA,oCAAyB,GAAE,CAAC;IAEtD,OAAO;;;;;;EAMP,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAmCb,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0FAgD0E,CAAC;AAC3F,CAAC"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/agent/prompt.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,6EAA6E;AAC7E,qEAAqE;;AAKrE,8CA2GC;AA7GD,0CAAwD;AAExD,SAAgB,iBAAiB,CAAC,QAAsB;IACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;IACjD,MAAM,iBAAiB,GAAG,IAAA,oCAAyB,GAAE,CAAC;IAEtD,OAAO;;;;;;EAMP,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAmCb,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0FA6D0E,CAAC;AAC3F,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zan-browser",
3
- "version": "3.0.10",
3
+ "version": "3.0.12",
4
4
  "description": "AI-powered cloud browser library with observe-first, screenshot-as-fallback pattern",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",