zan-browser 2.0.6 → 2.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/ai.d.ts CHANGED
@@ -1,10 +1,46 @@
1
- import type { ObserveResult, AgentAction, SeedValue } from "./types";
1
+ import type { ObserveResult, AgentAction, SeedValue, CapturedRequest } from "./types";
2
+ export interface ConversationMessage {
3
+ role: "user" | "assistant";
4
+ content: string;
5
+ }
6
+ export interface AgentResponse {
7
+ memory: string;
8
+ next_goal: string;
9
+ reasoning: string;
10
+ data_found: boolean;
11
+ action: AgentAction;
12
+ }
13
+ export interface StepInput {
14
+ url: string;
15
+ actionSpace: string;
16
+ capturedRequests: CapturedRequest[];
17
+ navigationGoal: string;
18
+ strategy: "load-capture" | "search" | "multi-step";
19
+ stepNumber: number;
20
+ maxSteps: number;
21
+ seedValues?: SeedValue[];
22
+ actionResult?: string;
23
+ }
24
+ export declare const NAVIGATION_SYSTEM_PROMPT = "You are a browser navigation agent for zan-browser. Your mission is to discover APIs by navigating websites exactly like a real human user, triggering the network requests that return the data described in the navigation goal.\n\nYou observe the page as an ActionSpace \u2014 a compact, structured view of interactive elements \u2014 along with captured XHR requests scored by their relevance to the goal. You decide one action at a time.\n\n\u2500\u2500\u2500 ActionSpace Format \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nEach line represents one element:\n\n B1[:] \"Search flights\" \u2190 button, ID = B1\n L3[:] \"Flights > One-way\" \u2190 link, ID = L3\n I2[:] placeholder=\"From city\" \u2190 input field, ID = I2\n S4[:] selected=\"Economy\" \u2190 select element, ID = S4\n T1[:] \"Your message here\" \u2190 textarea, ID = T1\n C2[:] checked=false \"Newsletter\" \u2190 checkbox, ID = C2\n _[:] \"42 results found\" \u2190 non-interactive text (labels, headings)\n Scroll: 1400px hidden below \u2190 content hidden below the viewport\n\nIDs (B1, L3, I2 \u2026) are assigned fresh on every step.\nAn ID from a previous step is INVALID. Never reference a past ID.\nAlways read the current ActionSpace before choosing an element.\n\n\u2500\u2500\u2500 XHR Scores \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nEvery captured request is scored 0\u2013100 for relevance to the goal:\n\n 80\u2013100 High-value data API \u2014 structured JSON, likely triggered by user action\n 50\u201379 Potentially useful \u2014 API-shaped URL, JSON content type\n 20\u201349 Low-signal \u2014 config, feature flags, initialization, analytics\n 0\u201319 Noise \u2014 tracking pixels, CDN assets, fonts, thumbnails\n\nThe \u2191 marker means the request fired within 2 seconds of your last action.\nUse scores to judge whether useful data has already been captured before deciding to navigate further.\n\n\u2500\u2500\u2500 Navigation Strategies \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nload-capture\n The page likely fires data requests on load or on minimal interaction.\n Check if any captured XHR already has score \u2265 60 \u2014 if yes, set data_found=true.\n If not, look for controls (country selectors, filters, tabs, date pickers) that\n could trigger additional data loads. Avoid navigating away from the page.\n\nsearch\n The page has a search input. Find it, fill it with the seed value exactly as\n given, then handle any autocomplete dropdown (click the first relevant result).\n If no dropdown appears, submit with the form button or Enter. Confirm that\n post-submit XHRs with score \u2265 60 carry the target data.\n\nmulti-step\n Reaching the target content requires navigating through menus, tabs, sections,\n or filters. Move methodically toward the content described in the goal. After\n each action, check for new high-score XHRs. Stop as soon as target data is\n captured \u2014 do not continue navigating unnecessarily.\n\n\u2500\u2500\u2500 eval_js \u2014 In-page JavaScript Evaluation \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nUse eval_js to extract data embedded directly in the page that will never appear\nas an XHR request. Common patterns:\n\n window.__NEXT_DATA__?.props?.pageProps \u2190 Next.js SSR props\n window.__NUXT__?.data \u2190 Nuxt SSR state\n window.__REDUX_STATE__ || window.__INITIAL_STATE__\n JSON.parse(document.getElementById('__data__').textContent ?? 'null')\n window.pageData || window.APP_CONFIG || window.dataLayer?.[0]\n\nThe code field must be a single JS expression that returns a value (string or\nJSON-serializable object). Use optional chaining to avoid throwing on missing keys.\n\nThe result is injected as the action result in the next step. If you are confident\nthat the result satisfies the navigation goal, set data_found=true in the same\nresponse \u2014 the navigator will execute the code and terminate immediately.\n\n\u2500\u2500\u2500 Response Format \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nRespond ONLY with valid JSON. No markdown, no code fences, no extra text.\n\n{\n \"memory\": \"What I have tried, what worked, what failed, what I have ruled out\",\n \"next_goal\": \"What the next action is specifically intended to achieve\",\n \"reasoning\": \"Why I chose this action over the other available alternatives\",\n \"data_found\": false,\n \"action\": {\n \"type\": \"click\" | \"fill\" | \"scroll\" | \"wait\" | \"navigate\" | \"eval_js\" | \"done\" | \"impossible\",\n \"elementId\": \"B3\", \u2190 for click / fill \u2014 exact ID from current ActionSpace\n \"value\": \"search term\", \u2190 for fill only\n \"direction\": \"down\", \u2190 for scroll only (\"up\" | \"down\")\n \"amount\": 300, \u2190 optional pixels for scroll\n \"ms\": 1500, \u2190 for wait only\n \"url\": \"https://...\", \u2190 for navigate only\n \"code\": \"window.__NEXT_DATA__?.props?.pageProps\", \u2190 for eval_js only\n \"reason\": \"one-line reason\"\n }\n}\n\nSet data_found to true ONLY when high-score XHRs (\u2265 60) confirm that the data\ndescribed in the goal has been captured. Setting data_found=true terminates the\nsession immediately \u2014 set it only when you are certain.\n\n\u2500\u2500\u2500 Rules \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n1. One action per response. Never list multiple actions.\n2. IDs reset every step. Never reuse an ID from a prior step.\n3. data_found: true means immediate termination. Set it only when certain.\n4. Dismiss popups, cookie banners, and overlays before other interactions.\n5. If a modal is open, interact with it or close it (Escape) before anything else.\n6. Use seed values verbatim when filling inputs \u2014 do not rephrase or approximate.\n7. If the page shows errors or \"no results\", return done to allow retry with the\n next seed value.\n8. Prefer clicking visible elements over direct URL navigation (navigate loses\n captured page state).\n9. If the page is still loading, return wait with ms: 1500.\n10. Return impossible only for structural blockers: CAPTCHA with no bypass,\n mandatory login with no credentials provided, feature not present on the site.\n11. Reason like a real user. Click what you can see. Do not invent element IDs.";
2
25
  export declare class AIClient {
3
26
  private client;
4
27
  private model;
5
28
  constructor(apiKey: string, model?: string);
29
+ decideNextAction(input: StepInput, history: ConversationMessage[]): Promise<{
30
+ response: AgentResponse;
31
+ updatedHistory: ConversationMessage[];
32
+ }>;
33
+ decideNextActionFromScreenshot(input: StepInput, screenshotBase64: string, history: ConversationMessage[]): Promise<{
34
+ response: AgentResponse;
35
+ updatedHistory: ConversationMessage[];
36
+ }>;
6
37
  decideFromObservation(goal: string, observation: ObserveResult, history: string[], seedValues?: SeedValue[]): Promise<AgentAction>;
7
38
  decideFromScreenshot(goal: string, screenshotBase64: string, history: string[], seedValues?: SeedValue[]): Promise<AgentAction>;
39
+ private buildStepMessage;
40
+ private formatCapturedRequests;
41
+ private pruneHistory;
42
+ private parseAgentResponse;
43
+ private parseActionFromParsed;
8
44
  private parseAction;
9
45
  }
10
46
  //# sourceMappingURL=ai.d.ts.map
package/dist/ai.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAIrE,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,EAAE,MAAM,EAAE,KAAK,SAAgB;IAM3C,qBAAqB,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,aAAa,EAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,SAAS,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC;IAiEjB,oBAAoB,CACxB,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,SAAS,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC;IAkEvB,OAAO,CAAC,WAAW;CA2BpB"}
1
+ {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAWtF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,cAAc,GAAG,QAAQ,GAAG,YAAY,CAAC;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID,eAAO,MAAM,wBAAwB,6+PAgH2C,CAAC;AAIjF,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,EAAE,MAAM,EAAE,KAAK,SAAgB;IAU3C,gBAAgB,CACpB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,mBAAmB,EAAE,GAC7B,OAAO,CAAC;QAAE,QAAQ,EAAE,aAAa,CAAC;QAAC,cAAc,EAAE,mBAAmB,EAAE,CAAA;KAAE,CAAC;IAgCxE,8BAA8B,CAClC,KAAK,EAAE,SAAS,EAChB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,mBAAmB,EAAE,GAC7B,OAAO,CAAC;QAAE,QAAQ,EAAE,aAAa,CAAC;QAAC,cAAc,EAAE,mBAAmB,EAAE,CAAA;KAAE,CAAC;IAwCxE,qBAAqB,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,aAAa,EAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,SAAS,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC;IAiEjB,oBAAoB,CACxB,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,CAAC,EAAE,SAAS,EAAE,GACvB,OAAO,CAAC,WAAW,CAAC;IAkEvB,OAAO,CAAC,gBAAgB;IAkCxB,OAAO,CAAC,sBAAsB;IA2B9B,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,kBAAkB;IAyC1B,OAAO,CAAC,qBAAqB;IAwD7B,OAAO,CAAC,WAAW;CAcpB"}
package/dist/ai.js CHANGED
@@ -3,9 +3,128 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.AIClient = void 0;
6
+ exports.AIClient = exports.NAVIGATION_SYSTEM_PROMPT = void 0;
7
7
  const sdk_1 = __importDefault(require("@anthropic-ai/sdk"));
8
8
  const DEFAULT_MODEL = "claude-haiku-4-5-20251001";
9
+ // How many user+assistant pairs to keep beyond the first message.
10
+ // First message (task context) is always preserved.
11
+ // 6 pairs = 12 messages + 1 initial = 13 messages max in history.
12
+ const MAX_HISTORY_PAIRS = 6;
13
+ // ─── System Prompt ────────────────────────────────────────────────────────────
14
+ exports.NAVIGATION_SYSTEM_PROMPT = `You are a browser navigation agent for zan-browser. Your mission is to discover APIs by navigating websites exactly like a real human user, triggering the network requests that return the data described in the navigation goal.
15
+
16
+ You observe the page as an ActionSpace — a compact, structured view of interactive elements — along with captured XHR requests scored by their relevance to the goal. You decide one action at a time.
17
+
18
+ ─── ActionSpace Format ────────────────────────────────────────────────────────
19
+
20
+ Each line represents one element:
21
+
22
+ B1[:] "Search flights" ← button, ID = B1
23
+ L3[:] "Flights > One-way" ← link, ID = L3
24
+ I2[:] placeholder="From city" ← input field, ID = I2
25
+ S4[:] selected="Economy" ← select element, ID = S4
26
+ T1[:] "Your message here" ← textarea, ID = T1
27
+ C2[:] checked=false "Newsletter" ← checkbox, ID = C2
28
+ _[:] "42 results found" ← non-interactive text (labels, headings)
29
+ Scroll: 1400px hidden below ← content hidden below the viewport
30
+
31
+ IDs (B1, L3, I2 …) are assigned fresh on every step.
32
+ An ID from a previous step is INVALID. Never reference a past ID.
33
+ Always read the current ActionSpace before choosing an element.
34
+
35
+ ─── XHR Scores ────────────────────────────────────────────────────────────────
36
+
37
+ Every captured request is scored 0–100 for relevance to the goal:
38
+
39
+ 80–100 High-value data API — structured JSON, likely triggered by user action
40
+ 50–79 Potentially useful — API-shaped URL, JSON content type
41
+ 20–49 Low-signal — config, feature flags, initialization, analytics
42
+ 0–19 Noise — tracking pixels, CDN assets, fonts, thumbnails
43
+
44
+ The ↑ marker means the request fired within 2 seconds of your last action.
45
+ Use scores to judge whether useful data has already been captured before deciding to navigate further.
46
+
47
+ ─── Navigation Strategies ────────────────────────────────────────────────────
48
+
49
+ load-capture
50
+ The page likely fires data requests on load or on minimal interaction.
51
+ Check if any captured XHR already has score ≥ 60 — if yes, set data_found=true.
52
+ If not, look for controls (country selectors, filters, tabs, date pickers) that
53
+ could trigger additional data loads. Avoid navigating away from the page.
54
+
55
+ search
56
+ The page has a search input. Find it, fill it with the seed value exactly as
57
+ given, then handle any autocomplete dropdown (click the first relevant result).
58
+ If no dropdown appears, submit with the form button or Enter. Confirm that
59
+ post-submit XHRs with score ≥ 60 carry the target data.
60
+
61
+ multi-step
62
+ Reaching the target content requires navigating through menus, tabs, sections,
63
+ or filters. Move methodically toward the content described in the goal. After
64
+ each action, check for new high-score XHRs. Stop as soon as target data is
65
+ captured — do not continue navigating unnecessarily.
66
+
67
+ ─── eval_js — In-page JavaScript Evaluation ──────────────────────────────────
68
+
69
+ Use eval_js to extract data embedded directly in the page that will never appear
70
+ as an XHR request. Common patterns:
71
+
72
+ window.__NEXT_DATA__?.props?.pageProps ← Next.js SSR props
73
+ window.__NUXT__?.data ← Nuxt SSR state
74
+ window.__REDUX_STATE__ || window.__INITIAL_STATE__
75
+ JSON.parse(document.getElementById('__data__').textContent ?? 'null')
76
+ window.pageData || window.APP_CONFIG || window.dataLayer?.[0]
77
+
78
+ The code field must be a single JS expression that returns a value (string or
79
+ JSON-serializable object). Use optional chaining to avoid throwing on missing keys.
80
+
81
+ The result is injected as the action result in the next step. If you are confident
82
+ that the result satisfies the navigation goal, set data_found=true in the same
83
+ response — the navigator will execute the code and terminate immediately.
84
+
85
+ ─── Response Format ───────────────────────────────────────────────────────────
86
+
87
+ Respond ONLY with valid JSON. No markdown, no code fences, no extra text.
88
+
89
+ {
90
+ "memory": "What I have tried, what worked, what failed, what I have ruled out",
91
+ "next_goal": "What the next action is specifically intended to achieve",
92
+ "reasoning": "Why I chose this action over the other available alternatives",
93
+ "data_found": false,
94
+ "action": {
95
+ "type": "click" | "fill" | "scroll" | "wait" | "navigate" | "eval_js" | "done" | "impossible",
96
+ "elementId": "B3", ← for click / fill — exact ID from current ActionSpace
97
+ "value": "search term", ← for fill only
98
+ "direction": "down", ← for scroll only ("up" | "down")
99
+ "amount": 300, ← optional pixels for scroll
100
+ "ms": 1500, ← for wait only
101
+ "url": "https://...", ← for navigate only
102
+ "code": "window.__NEXT_DATA__?.props?.pageProps", ← for eval_js only
103
+ "reason": "one-line reason"
104
+ }
105
+ }
106
+
107
+ Set data_found to true ONLY when high-score XHRs (≥ 60) confirm that the data
108
+ described in the goal has been captured. Setting data_found=true terminates the
109
+ session immediately — set it only when you are certain.
110
+
111
+ ─── Rules ─────────────────────────────────────────────────────────────────────
112
+
113
+ 1. One action per response. Never list multiple actions.
114
+ 2. IDs reset every step. Never reuse an ID from a prior step.
115
+ 3. data_found: true means immediate termination. Set it only when certain.
116
+ 4. Dismiss popups, cookie banners, and overlays before other interactions.
117
+ 5. If a modal is open, interact with it or close it (Escape) before anything else.
118
+ 6. Use seed values verbatim when filling inputs — do not rephrase or approximate.
119
+ 7. If the page shows errors or "no results", return done to allow retry with the
120
+ next seed value.
121
+ 8. Prefer clicking visible elements over direct URL navigation (navigate loses
122
+ captured page state).
123
+ 9. If the page is still loading, return wait with ms: 1500.
124
+ 10. Return impossible only for structural blockers: CAPTCHA with no bypass,
125
+ mandatory login with no credentials provided, feature not present on the site.
126
+ 11. Reason like a real user. Click what you can see. Do not invent element IDs.`;
127
+ // ─── AIClient ─────────────────────────────────────────────────────────────────
9
128
  class AIClient {
10
129
  client;
11
130
  model;
@@ -13,7 +132,68 @@ class AIClient {
13
132
  this.client = new sdk_1.default({ apiKey });
14
133
  this.model = model;
15
134
  }
16
- // Decide the next action given the observed DOM state (text first, no screenshot)
135
+ // ─── Multi-turn navigation decision ───────────────────────────────────────
136
+ // Each call appends one user message and returns the updated history
137
+ // (now ending with the new assistant response).
138
+ // history must always end with an assistant message or be empty.
139
+ async decideNextAction(input, history) {
140
+ const userMessage = this.buildStepMessage(input);
141
+ const pruned = this.pruneHistory(history);
142
+ const messages = [
143
+ ...pruned.map(m => ({ role: m.role, content: m.content })),
144
+ { role: "user", content: userMessage },
145
+ ];
146
+ const apiResponse = await this.client.messages.create({
147
+ model: this.model,
148
+ max_tokens: 800,
149
+ system: exports.NAVIGATION_SYSTEM_PROMPT,
150
+ messages,
151
+ });
152
+ const text = apiResponse.content[0].type === "text" ? apiResponse.content[0].text : "{}";
153
+ const parsed = this.parseAgentResponse(text);
154
+ const updatedHistory = [
155
+ ...pruned,
156
+ { role: "user", content: userMessage },
157
+ { role: "assistant", content: text },
158
+ ];
159
+ return { response: parsed, updatedHistory };
160
+ }
161
+ // ─── Screenshot fallback (multi-turn aware) ───────────────────────────────
162
+ // Used when observe() finds no visible elements.
163
+ // The image is sent only for this call; only the text is stored in history.
164
+ async decideNextActionFromScreenshot(input, screenshotBase64, history) {
165
+ const userMessage = this.buildStepMessage(input, true);
166
+ const pruned = this.pruneHistory(history);
167
+ const apiMessages = [
168
+ ...pruned.map(m => ({ role: m.role, content: m.content })),
169
+ {
170
+ role: "user",
171
+ content: [
172
+ {
173
+ type: "image",
174
+ source: { type: "base64", media_type: "image/jpeg", data: screenshotBase64 },
175
+ },
176
+ { type: "text", text: userMessage },
177
+ ],
178
+ },
179
+ ];
180
+ const apiResponse = await this.client.messages.create({
181
+ model: this.model,
182
+ max_tokens: 800,
183
+ system: exports.NAVIGATION_SYSTEM_PROMPT,
184
+ messages: apiMessages,
185
+ });
186
+ const text = apiResponse.content[0].type === "text" ? apiResponse.content[0].text : "{}";
187
+ const parsed = this.parseAgentResponse(text);
188
+ // Store text-only representation in history (image is ephemeral)
189
+ const updatedHistory = [
190
+ ...pruned,
191
+ { role: "user", content: `[screenshot] ${userMessage}` },
192
+ { role: "assistant", content: text },
193
+ ];
194
+ return { response: parsed, updatedHistory };
195
+ }
196
+ // ─── Legacy single-turn methods (used by session.act()) ──────────────────
17
197
  async decideFromObservation(goal, observation, history, seedValues) {
18
198
  const historyText = history.length > 0
19
199
  ? `\nPREVIOUS STEPS:\n${history.slice(-5).join("\n")}`
@@ -127,32 +307,165 @@ Respond with JSON (no markdown, no code fences):
127
307
  const text = response.content[0].type === "text" ? response.content[0].text : "";
128
308
  return this.parseAction(text);
129
309
  }
130
- // ─── Private ─────────────────────────────────────────────────────────────────
131
- parseAction(raw) {
310
+ // ─── Private helpers ──────────────────────────────────────────────────────
311
+ buildStepMessage(input, isScreenshot = false) {
312
+ const parts = [];
313
+ // Step 1: include full task context so the model always has it at the top
314
+ // of the conversation regardless of history pruning.
315
+ if (input.stepNumber === 1) {
316
+ const seedLines = input.seedValues && input.seedValues.length > 0
317
+ ? `\nSeed values:\n${input.seedValues
318
+ .map(s => ` • ${s.paramName} (${s.description}): "${s.exampleValue}"`)
319
+ .join("\n")}`
320
+ : "";
321
+ parts.push(`NAVIGATION TASK\nGoal: ${input.navigationGoal}\nStrategy: ${input.strategy}\nStep budget: ${input.maxSteps}${seedLines}`);
322
+ }
323
+ parts.push(`STEP ${input.stepNumber} / ${input.maxSteps} | URL: ${input.url}`);
324
+ if (input.actionResult) {
325
+ parts.push(`Previous action result: ${input.actionResult}`);
326
+ }
327
+ if (!isScreenshot) {
328
+ parts.push(`Current page state:\n${input.actionSpace}`);
329
+ }
330
+ else {
331
+ parts.push("Current page state: [screenshot — ActionSpace found no visible elements]");
332
+ }
333
+ parts.push(this.formatCapturedRequests(input.capturedRequests));
334
+ return parts.join("\n\n");
335
+ }
336
+ formatCapturedRequests(requests) {
337
+ if (requests.length === 0)
338
+ return "Captured XHRs: none yet.";
339
+ const top = [...requests]
340
+ .sort((a, b) => b.score - a.score)
341
+ .slice(0, 10);
342
+ const lines = top.map(r => {
343
+ const marker = r.triggeredByAction ? " ↑" : " ";
344
+ const kb = r.responseBody
345
+ ? ` ${(r.responseBody.length / 1024).toFixed(1)}KB`
346
+ : "";
347
+ const ct = r.contentType ? ` ${r.contentType.split(";")[0]}` : "";
348
+ return ` [${r.score}]${marker} ${r.method} ${r.url}${ct}${kb}`;
349
+ });
350
+ const overflow = requests.length > 10 ? `\n … and ${requests.length - 10} more` : "";
351
+ return (`Captured XHRs (${requests.length} total, top by score):\n` +
352
+ lines.join("\n") +
353
+ overflow);
354
+ }
355
+ // Keep the first message (task context) + last MAX_HISTORY_PAIRS pairs.
356
+ pruneHistory(history) {
357
+ const maxMessages = 1 + MAX_HISTORY_PAIRS * 2;
358
+ if (history.length <= maxMessages)
359
+ return history;
360
+ return [history[0], ...history.slice(-(MAX_HISTORY_PAIRS * 2))];
361
+ }
362
+ parseAgentResponse(raw) {
132
363
  try {
133
- const cleaned = raw.replace(/```json\n?/g, "").replace(/```\n?/g, "").trim();
134
- const parsed = JSON.parse(cleaned);
135
- switch (parsed.type) {
136
- case "click":
137
- return { type: "click", elementId: parsed.elementId ?? "", reason: parsed.reason ?? "" };
138
- case "fill":
139
- return { type: "fill", elementId: parsed.elementId ?? "", value: parsed.value ?? "", reason: parsed.reason ?? "" };
140
- case "scroll":
141
- return { type: "scroll", direction: parsed.direction ?? "down", amount: parsed.amount, reason: parsed.reason ?? "" };
142
- case "wait":
143
- return { type: "wait", ms: parsed.ms ?? 1000, reason: parsed.reason ?? "" };
144
- case "navigate":
145
- return { type: "navigate", url: parsed.url ?? "", reason: parsed.reason ?? "" };
146
- case "done":
147
- return { type: "done", reason: parsed.reason ?? "" };
148
- case "impossible":
149
- return { type: "impossible", reason: parsed.reason ?? "could not achieve goal" };
150
- default:
151
- return { type: "impossible", reason: `unknown action type: ${parsed.type}` };
364
+ const cleaned = raw
365
+ .replace(/```json\n?/g, "")
366
+ .replace(/```\n?/g, "")
367
+ .trim();
368
+ const obj = JSON.parse(cleaned);
369
+ // New wrapper format
370
+ if (obj.action && typeof obj.memory === "string") {
371
+ return {
372
+ memory: obj.memory,
373
+ next_goal: obj.next_goal ?? "",
374
+ reasoning: obj.reasoning ?? "",
375
+ data_found: obj.data_found === true,
376
+ action: this.parseActionFromParsed(obj.action),
377
+ };
152
378
  }
379
+ // Fallback: bare action object (model didn't follow new format)
380
+ return {
381
+ memory: "",
382
+ next_goal: "",
383
+ reasoning: String(obj.reason ?? ""),
384
+ data_found: false,
385
+ action: this.parseActionFromParsed(obj),
386
+ };
387
+ }
388
+ catch {
389
+ return {
390
+ memory: "",
391
+ next_goal: "",
392
+ reasoning: "",
393
+ data_found: false,
394
+ action: {
395
+ type: "impossible",
396
+ reason: `failed to parse response: ${raw.slice(0, 100)}`,
397
+ },
398
+ };
399
+ }
400
+ }
401
+ parseActionFromParsed(obj) {
402
+ switch (obj.type) {
403
+ case "click":
404
+ return {
405
+ type: "click",
406
+ elementId: String(obj.elementId ?? ""),
407
+ reason: String(obj.reason ?? ""),
408
+ };
409
+ case "fill":
410
+ return {
411
+ type: "fill",
412
+ elementId: String(obj.elementId ?? ""),
413
+ value: String(obj.value ?? ""),
414
+ reason: String(obj.reason ?? ""),
415
+ };
416
+ case "scroll":
417
+ return {
418
+ type: "scroll",
419
+ direction: obj.direction ?? "down",
420
+ amount: obj.amount,
421
+ reason: String(obj.reason ?? ""),
422
+ };
423
+ case "wait":
424
+ return {
425
+ type: "wait",
426
+ ms: Number(obj.ms ?? 1000),
427
+ reason: String(obj.reason ?? ""),
428
+ };
429
+ case "navigate":
430
+ return {
431
+ type: "navigate",
432
+ url: String(obj.url ?? ""),
433
+ reason: String(obj.reason ?? ""),
434
+ };
435
+ case "eval_js":
436
+ return {
437
+ type: "eval_js",
438
+ code: String(obj.code ?? ""),
439
+ reason: String(obj.reason ?? ""),
440
+ };
441
+ case "done":
442
+ return { type: "done", reason: String(obj.reason ?? "") };
443
+ case "impossible":
444
+ return {
445
+ type: "impossible",
446
+ reason: String(obj.reason ?? "could not achieve goal"),
447
+ };
448
+ default:
449
+ return {
450
+ type: "impossible",
451
+ reason: `unknown action type: ${String(obj.type)}`,
452
+ };
453
+ }
454
+ }
455
+ // Used by legacy decideFromObservation / decideFromScreenshot
456
+ parseAction(raw) {
457
+ try {
458
+ const cleaned = raw
459
+ .replace(/```json\n?/g, "")
460
+ .replace(/```\n?/g, "")
461
+ .trim();
462
+ return this.parseActionFromParsed(JSON.parse(cleaned));
153
463
  }
154
464
  catch {
155
- return { type: "impossible", reason: `failed to parse AI response: ${raw.slice(0, 100)}` };
465
+ return {
466
+ type: "impossible",
467
+ reason: `failed to parse AI response: ${raw.slice(0, 100)}`,
468
+ };
156
469
  }
157
470
  }
158
471
  }
package/dist/ai.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA0C;AAG1C,MAAM,aAAa,GAAG,2BAA2B,CAAC;AAElD,kEAAkE;AAClE,oDAAoD;AACpD,kEAAkE;AAClE,MAAM,iBAAiB,GAAG,CAAC,CAAC;AA6B5B,iFAAiF;AAEpE,QAAA,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gFAgHwC,CAAC;AAEjF,iFAAiF;AAEjF,MAAa,QAAQ;IACX,MAAM,CAAY;IAClB,KAAK,CAAS;IAEtB,YAAY,MAAc,EAAE,KAAK,GAAG,aAAa;QAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,aAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,6EAA6E;IAC7E,qEAAqE;IACrE,gDAAgD;IAChD,iEAAiE;IAEjE,KAAK,CAAC,gBAAgB,CACpB,KAAgB,EAChB,OAA8B;QAE9B,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE1C,MAAM,QAAQ,GAA6B;YACzC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAA4B,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAClF,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;SACvC,CAAC;QAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACpD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,GAAG;YACf,MAAM,EAAE,gCAAwB;YAChC,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACzF,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,cAAc,GAA0B;YAC5C,GAAG,MAAM;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;YACtC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE;SACrC,CAAC;QAEF,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAC9C,CAAC;IAED,6EAA6E;IAC7E,iDAAiD;IACjD,4EAA4E;IAE5E,KAAK,CAAC,8BAA8B,CAClC,KAAgB,EAChB,gBAAwB,EACxB,OAA8B;QAE9B,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE1C,MAAM,WAAW,GAA6B;YAC5C,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAA4B,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAClF;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,OAAO;wBACb,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,gBAAgB,EAAE;qBAC7E;oBACD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE;iBACpC;aACF;SACF,CAAC;QAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACpD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,GAAG;YACf,MAAM,EAAE,gCAAwB;YAChC,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACzF,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE7C,iEAAiE;QACjE,MAAM,cAAc,GAA0B;YAC5C,GAAG,MAAM;YACT,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,WAAW,EAAE,EAAE;YACxD,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE;SACrC,CAAC;QAEF,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAC9C,CAAC;IAED,4EAA4E;IAE5E,KAAK,CAAC,qBAAqB,CACzB,IAAY,EACZ,WAA0B,EAC1B,OAAiB,EACjB,UAAwB;QAExB,MAAM,WAAW,GACf,OAAO,CAAC,MAAM,GAAG,CAAC;YAChB,CAAC,CAAC,sBAAsB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,WAAW,GACf,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YACjC,CAAC,CAAC,2BAA2B,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,WAAW,WAAW,CAAC,CAAC,YAAY,yCAAyC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACnK,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,MAAM,GAAG;;;;;;;;;;;;;QAaX,IAAI;EACV,WAAW,GAAG,WAAW;;;EAGzB,WAAW,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;EAwBhB,CAAC;QAEC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACjD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,GAAG;YACf,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;SAC9C,CAAC,CAAC;QAEH,MAAM,IAAI,GACR,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,IAAY,EACZ,gBAAwB,EACxB,OAAiB,EACjB,UAAwB;QAExB,MAAM,WAAW,GACf,OAAO,CAAC,MAAM,GAAG,CAAC;YAChB,CAAC,CAAC,sBAAsB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,WAAW,GACf,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YACjC,CAAC,CAAC,2BAA2B,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,WAAW,WAAW,CAAC,CAAC,YAAY,yCAAyC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACnK,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,MAAM,GAAG;;;;QAIX,IAAI;EACV,WAAW,GAAG,WAAW;;;;;;;;;;;;;;;;;;;;EAoBzB,CAAC;QAEC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACjD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,GAAG;YACf,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE,YAAY;gCACxB,IAAI,EAAE,gBAAgB;6BACvB;yBACF;wBACD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;qBAC/B;iBACF;aACF;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,GACR,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,6EAA6E;IAErE,gBAAgB,CAAC,KAAgB,EAAE,YAAY,GAAG,KAAK;QAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,0EAA0E;QAC1E,qDAAqD;QACrD,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,SAAS,GACb,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBAC7C,CAAC,CAAC,mBAAmB,KAAK,CAAC,UAAU;qBAChC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,WAAW,OAAO,CAAC,CAAC,YAAY,GAAG,CAAC;qBACtE,IAAI,CAAC,IAAI,CAAC,EAAE;gBACjB,CAAC,CAAC,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CACR,0BAA0B,KAAK,CAAC,cAAc,eAAe,KAAK,CAAC,QAAQ,kBAAkB,KAAK,CAAC,QAAQ,GAAG,SAAS,EAAE,CAC1H,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,UAAU,MAAM,KAAK,CAAC,QAAQ,aAAa,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAEjF,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,2BAA2B,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,wBAAwB,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;QACzF,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAEhE,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAEO,sBAAsB,CAAC,QAA2B;QACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,0BAA0B,CAAC;QAE7D,MAAM,GAAG,GAAG,CAAC,GAAG,QAAQ,CAAC;aACtB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEhB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxB,MAAM,MAAM,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YACjD,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY;gBACvB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;gBACnD,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,OAAO,MAAM,CAAC,CAAC,KAAK,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GACZ,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,QAAQ,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAEvE,OAAO,CACL,kBAAkB,QAAQ,CAAC,MAAM,0BAA0B;YAC3D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAChB,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,wEAAwE;IAChE,YAAY,CAAC,OAA8B;QACjD,MAAM,WAAW,GAAG,CAAC,GAAG,iBAAiB,GAAG,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,MAAM,IAAI,WAAW;YAAE,OAAO,OAAO,CAAC;QAClD,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IAEO,kBAAkB,CAAC,GAAW;QACpC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,GAAG;iBAChB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;iBAC1B,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;iBACtB,IAAI,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEhC,qBAAqB;YACrB,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACjD,OAAO;oBACL,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;oBAC9B,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;oBAC9B,UAAU,EAAE,GAAG,CAAC,UAAU,KAAK,IAAI;oBACnC,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC;iBAC/C,CAAC;YACJ,CAAC;YAED,gEAAgE;YAChE,OAAO;gBACL,MAAM,EAAE,EAAE;gBACV,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;gBACnC,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC;aACxC,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,MAAM,EAAE,EAAE;gBACV,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,EAAE;gBACb,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE;oBACN,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,6BAA6B,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;iBACzD;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,GAA4B;QACxD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,OAAO;gBACV,OAAO;oBACL,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;oBACtC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;iBACjC,CAAC;YACJ,KAAK,MAAM;gBACT,OAAO;oBACL,IAAI,EAAE,MAAM;oBACZ,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;oBACtC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC9B,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;iBACjC,CAAC;YACJ,KAAK,QAAQ;gBACX,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAG,GAAG,CAAC,SAA2B,IAAI,MAAM;oBACrD,MAAM,EAAE,GAAG,CAAC,MAA4B;oBACxC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;iBACjC,CAAC;YACJ,KAAK,MAAM;gBACT,OAAO;oBACL,IAAI,EAAE,MAAM;oBACZ,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC;oBAC1B,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;iBACjC,CAAC;YACJ,KAAK,UAAU;gBACb,OAAO;oBACL,IAAI,EAAE,UAAU;oBAChB,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;oBAC1B,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;iBACjC,CAAC;YACJ,KAAK,SAAS;gBACZ,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;oBAC5B,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;iBACjC,CAAC;YACJ,KAAK,MAAM;gBACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YAC5D,KAAK,YAAY;gBACf,OAAO;oBACL,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,wBAAwB,CAAC;iBACvD,CAAC;YACJ;gBACE,OAAO;oBACL,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,wBAAwB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;iBACnD,CAAC;QACN,CAAC;IACH,CAAC;IAED,8DAA8D;IACtD,WAAW,CAAC,GAAW;QAC7B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,GAAG;iBAChB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;iBAC1B,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;iBACtB,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,gCAAgC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;aAC5D,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA5ZD,4BA4ZC"}
@@ -32,6 +32,7 @@ export declare class SmartNavigator {
32
32
  private strategyLoadAndCapture;
33
33
  private strategySearchInteraction;
34
34
  private strategyMultiStep;
35
+ private executeEvalJs;
35
36
  private executeAction;
36
37
  private tryClickAutocomplete;
37
38
  private waitForNetworkSettle;
@@ -1 +1 @@
1
- {"version":3,"file":"navigator.d.ts","sourceRoot":"","sources":["../src/navigator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAe,MAAM,SAAS,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAKL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAItB,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC;AAEnF,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;CAC1B;AAyBD,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,EAAE,CAAW;gBAGnB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,EAAE,EAAE,QAAQ;IAUR,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAuBrD,sBAAsB;YA+BtB,yBAAyB;YAmNzB,iBAAiB;YAuJjB,aAAa;YAiEb,oBAAoB;YAkBpB,oBAAoB;IAuBlC,OAAO,CAAC,aAAa;CAetB"}
1
+ {"version":3,"file":"navigator.d.ts","sourceRoot":"","sources":["../src/navigator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAe,MAAM,SAAS,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAiD,MAAM,MAAM,CAAC;AACpF,OAAO,EAKL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAItB,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC;AAEnF,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;CAC1B;AAyBD,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,EAAE,CAAW;gBAGnB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,EAAE,EAAE,QAAQ;IAUR,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAuBrD,sBAAsB;YA+BtB,yBAAyB;YAoNzB,iBAAiB;YA4PjB,aAAa;YAwBb,aAAa;YAiEb,oBAAoB;YAkBpB,oBAAoB;IAuBlC,OAAO,CAAC,aAAa;CAetB"}
package/dist/navigator.js CHANGED
@@ -50,7 +50,7 @@ class SmartNavigator {
50
50
  case "search":
51
51
  return this.strategySearchInteraction(config);
52
52
  case "multi-step":
53
- return this.strategyMultiStep(config);
53
+ return this.strategyMultiStep(config, "multi-step");
54
54
  default:
55
55
  return this.strategySearchInteraction(config); // safe default
56
56
  }
@@ -78,7 +78,7 @@ class SmartNavigator {
78
78
  // - If good data was already captured on load, Claude will say "done" immediately
79
79
  // - If the page needs navigation (country selector, search form, etc.), Claude navigates
80
80
  config.onProgress?.("Page loaded — letting Claude assess and navigate if needed...");
81
- return this.strategyMultiStep(config);
81
+ return this.strategyMultiStep(config, "load-capture");
82
82
  }
83
83
  // ─── Strategy: Search Interaction ─────────────────────────────────────────────
84
84
  // For sites with a search box: fill input → handle autocomplete → submit → capture
@@ -275,14 +275,20 @@ class SmartNavigator {
275
275
  }
276
276
  // Nothing found via search — try multi-step as last resort
277
277
  config.onProgress?.("Search interaction failed, trying AI navigation...");
278
- return this.strategyMultiStep(config);
278
+ return this.strategyMultiStep(config, "multi-step");
279
279
  }
280
280
  // ─── Strategy: Multi-step AI Navigation ───────────────────────────────────────
281
281
  // For complex sites: AI observes → decides → acts → re-observes.
282
- // One action per step with full re-observation (Notte pattern).
283
- async strategyMultiStep(config) {
282
+ // One action per step, full re-observation each time (Notte pattern).
283
+ // Conversation history is maintained across steps as real multi-turn messages.
284
+ async strategyMultiStep(config, resolvedStrategy = "multi-step") {
284
285
  const steps = [];
285
286
  const seedStrings = config.seedValues.map((s) => String(s.exampleValue));
287
+ // Multi-turn conversation state.
288
+ // history alternates: [user, assistant, user, assistant, ...]
289
+ // Always ends with assistant (or empty). decideNextAction appends user + assistant.
290
+ let history = [];
291
+ let prevActionResult;
286
292
  const context = {
287
293
  stepNumber: 0,
288
294
  history: steps,
@@ -298,7 +304,7 @@ class SmartNavigator {
298
304
  const errorMessages = await this.observer.detectErrors();
299
305
  // Build structured perception
300
306
  const perception = (0, perception_1.buildPerception)(observation, forms, autocompleteItems, errorMessages, this.interceptor.getAll(), seedStrings);
301
- // Early termination check
307
+ // Deterministic early termination: interceptor already confirmed data
302
308
  if (perception.networkSummary.hasSeedValueInResponses) {
303
309
  config.onProgress?.("Seed value found in responses — stopping");
304
310
  return {
@@ -310,23 +316,90 @@ class SmartNavigator {
310
316
  earlyTerminated: true,
311
317
  };
312
318
  }
313
- // Format perception for LLM
319
+ // Format perception for LLM (ActionSpace + network + form context)
314
320
  const perceptionText = (0, perception_1.formatPerceptionForLLM)(perception, context);
315
- // Ask AI what to do
321
+ // Build StepInput for the AI
322
+ const stepInput = {
323
+ url: this.page.url(),
324
+ actionSpace: perceptionText,
325
+ capturedRequests: this.interceptor.getAll(),
326
+ navigationGoal: config.navigationGoal,
327
+ strategy: resolvedStrategy,
328
+ stepNumber: i + 1,
329
+ maxSteps: config.maxSteps,
330
+ seedValues: config.seedValues,
331
+ actionResult: prevActionResult,
332
+ };
333
+ // Ask AI what to do (multi-turn)
316
334
  let action;
317
- let usedScreenshot = false;
318
- if (observation.elements.filter((e) => e.visible).length > 0) {
319
- action = await this.ai.decideFromObservation(config.navigationGoal, { ...observation, text: perceptionText }, // override text with structured perception
320
- steps.map((s) => `Step ${s.step}: ${s.action} ${s.result}`), config.seedValues);
335
+ let agentResponse;
336
+ const hasVisibleElements = observation.elements.filter((e) => e.visible).length > 0;
337
+ if (hasVisibleElements) {
338
+ const { response, updatedHistory } = await this.ai.decideNextAction(stepInput, history);
339
+ history = updatedHistory;
340
+ agentResponse = response;
341
+ action = response.action;
342
+ // AI-driven early termination — skipped for eval_js, which runs first and
343
+ // then checks data_found after seeing the JS result.
344
+ if (response.data_found && action.type !== "eval_js") {
345
+ config.onProgress?.("Agent signalled data_found — stopping");
346
+ return {
347
+ success: true,
348
+ requests: this.interceptor.getUseful(3),
349
+ steps,
350
+ finalUrl: this.page.url(),
351
+ reason: response.reasoning || action.reason,
352
+ earlyTerminated: true,
353
+ };
354
+ }
321
355
  }
322
356
  else {
323
- // Fallback to screenshot
357
+ // Fallback to screenshot when no visible elements found
324
358
  const screenshot = await this.page.screenshot({ type: "jpeg", quality: 80, encoding: "base64" });
325
359
  const base64 = typeof screenshot === "string" ? screenshot : screenshot.toString("base64");
326
- action = await this.ai.decideFromScreenshot(config.navigationGoal, base64, steps.map((s) => `Step ${s.step}: ${s.action} → ${s.result}`), config.seedValues);
327
- usedScreenshot = true;
360
+ const { response, updatedHistory } = await this.ai.decideNextActionFromScreenshot(stepInput, base64, history);
361
+ history = updatedHistory;
362
+ agentResponse = response;
363
+ action = response.action;
364
+ if (response.data_found && action.type !== "eval_js") {
365
+ config.onProgress?.("Agent signalled data_found (screenshot) — stopping");
366
+ return {
367
+ success: true,
368
+ requests: this.interceptor.getUseful(3),
369
+ steps,
370
+ finalUrl: this.page.url(),
371
+ reason: response.reasoning || action.reason,
372
+ earlyTerminated: true,
373
+ };
374
+ }
375
+ }
376
+ // ── eval_js: execute JS in page context, capture result, then check data_found ──
377
+ // Handled before done/impossible so the agent can terminate in the same step.
378
+ if (action.type === "eval_js") {
379
+ const jsResult = await this.executeEvalJs(action.code);
380
+ prevActionResult = `eval_js result:\n${jsResult}`;
381
+ steps.push({
382
+ step: i + 1,
383
+ action: action.type,
384
+ result: jsResult.startsWith("ERROR:") ? "error" : "success",
385
+ newRequestCount: 0,
386
+ errorMessages: jsResult.startsWith("ERROR:") ? [jsResult] : [],
387
+ });
388
+ if (agentResponse.data_found) {
389
+ config.onProgress?.(`Step ${i + 1}: eval_js → data_found, stopping`);
390
+ return {
391
+ success: true,
392
+ requests: this.interceptor.getUseful(3),
393
+ steps,
394
+ finalUrl: this.page.url(),
395
+ reason: agentResponse.reasoning || action.reason,
396
+ earlyTerminated: true,
397
+ };
398
+ }
399
+ config.onProgress?.(`Step ${i + 1}: eval_js → ${jsResult.length} chars`);
400
+ continue;
328
401
  }
329
- // Terminal states
402
+ // Terminal states returned by the action itself
330
403
  if (action.type === "done") {
331
404
  const captured = this.interceptor.getUseful(3);
332
405
  // Reject premature "done" if only init/config requests were captured.
@@ -336,15 +409,20 @@ class SmartNavigator {
336
409
  const onlyInitRequests = captured.length > 0 && captured.every(r => INIT_PATTERNS.test(r.url));
337
410
  const hasStepsLeft = config.maxSteps - i > 2;
338
411
  if (onlyInitRequests && hasStepsLeft) {
412
+ const rejectionNote = "Only initialization/config requests captured. Must interact with search or filters to get actual data.";
339
413
  steps.push({
340
414
  step: i + 1,
341
415
  action: "done-rejected",
342
416
  result: "no-change",
343
417
  newRequestCount: 0,
344
- errorMessages: [
345
- "Only initialization/config requests captured. Must interact with search or filters to get actual data.",
346
- ],
418
+ errorMessages: [rejectionNote],
347
419
  });
420
+ // Inject the rejection as a user message so the model learns from it
421
+ history = [
422
+ ...history,
423
+ { role: "user", content: `Action rejected: ${rejectionNote}` },
424
+ ];
425
+ prevActionResult = `done rejected — ${rejectionNote}`;
348
426
  config.onProgress?.("Rejecting premature done — only init requests, need interaction...");
349
427
  continue;
350
428
  }
@@ -367,23 +445,33 @@ class SmartNavigator {
367
445
  earlyTerminated: false,
368
446
  };
369
447
  }
370
- // Execute action
448
+ // Execute action and measure new network activity
371
449
  const requestsBefore = this.interceptor.getAll().length;
372
450
  await this.executeAction(action);
373
- // Wait after interaction (2s — shorter than initial)
374
451
  await this.waitForNetworkSettle("interaction");
375
452
  const requestsAfter = this.interceptor.getAll().length;
453
+ const newRequestCount = requestsAfter - requestsBefore;
376
454
  const postErrors = await this.observer.detectErrors();
455
+ const stepResult = newRequestCount > 0 ? "new-requests" : postErrors.length > 0 ? "error" : "no-change";
377
456
  steps.push({
378
457
  step: i + 1,
379
458
  action: action.type,
380
459
  elementId: "elementId" in action ? action.elementId : undefined,
381
460
  value: "value" in action ? action.value : undefined,
382
- result: requestsAfter > requestsBefore ? "new-requests" : postErrors.length > 0 ? "error" : "no-change",
383
- newRequestCount: requestsAfter - requestsBefore,
461
+ result: stepResult,
462
+ newRequestCount,
384
463
  errorMessages: postErrors,
385
464
  });
386
- config.onProgress?.(`Step ${i + 1}: ${action.type} ${requestsAfter - requestsBefore} new requests`);
465
+ // Build the action result string for the next step's user message
466
+ const elementDesc = "elementId" in action ? ` ${action.elementId}` : "";
467
+ const valueDesc = "value" in action && action.value
468
+ ? ` → "${action.value}"`
469
+ : "";
470
+ const errorDesc = postErrors.length > 0
471
+ ? `; errors: [${postErrors.slice(0, 2).join(", ")}]`
472
+ : "";
473
+ prevActionResult = `${action.type}${elementDesc}${valueDesc} — ${newRequestCount} new XHR${newRequestCount !== 1 ? "s" : ""}${errorDesc}`;
474
+ config.onProgress?.(`Step ${i + 1}: ${action.type}${elementDesc} → ${newRequestCount} new requests`);
387
475
  }
388
476
  // Max steps reached
389
477
  return {
@@ -395,6 +483,31 @@ class SmartNavigator {
395
483
  earlyTerminated: false,
396
484
  };
397
485
  }
486
+ // ─── JS evaluation in page context ──────────────────────────────────────────
487
+ // Evaluates a JS expression in the live page, returns result as string.
488
+ // Capped at 5s and 4000 chars to keep it safe for the next-step context.
489
+ async executeEvalJs(code) {
490
+ try {
491
+ const result = await Promise.race([
492
+ this.page.evaluate((jsCode) => {
493
+ // new Function runs in the browser's global scope, giving access to
494
+ // window.__NEXT_DATA__, window.__REDUX_STATE__, etc.
495
+ // eslint-disable-next-line no-new-func
496
+ const fn = new Function(`return (${jsCode})`);
497
+ return fn();
498
+ }, code),
499
+ new Promise((_, reject) => setTimeout(() => reject(new Error("eval_js timeout after 5s")), 5_000)),
500
+ ]);
501
+ if (result === null || result === undefined)
502
+ return "";
503
+ if (typeof result === "string")
504
+ return result.slice(0, 4000);
505
+ return JSON.stringify(result, null, 2).slice(0, 4000);
506
+ }
507
+ catch (err) {
508
+ return `ERROR: ${err.message}`;
509
+ }
510
+ }
398
511
  // ─── Execute a single action ────────────────────────────────────────────────
399
512
  async executeAction(action) {
400
513
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"navigator.js","sourceRoot":"","sources":["../src/navigator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"navigator.js","sourceRoot":"","sources":["../src/navigator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACT,cAAc,EAEd,UAAU,EACV,SAAS,EACV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,cAAc,CAAS;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGrC,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,aAAa,EAC5B,EAAE,EAAE,QAAQ,EACZ,OAAO,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM;IAiBpB,OAAO,IAAI,UAAU;IACrB,cAAc,IAAI,WAAW;IAC7B,WAAW,IAAI,QAAQ;IACvB,KAAK,IAAI,QAAQ;IAIX,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBhE,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAIK,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IAMjC,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAItC,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIjD,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMjC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAWjC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAgBrC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB3C,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBzD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWpD,mBAAmB,IAAI,eAAe,EAAE;IAIxC,iBAAiB,CAAC,QAAQ,SAAI,GAAG,eAAe,EAAE;IAIlD,0BAA0B,IAAI,eAAe,EAAE;IAI/C,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,GAAG,IAAI;IAIxD,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO;IAItD,mBAAmB,IAAI,IAAI;IAMrB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAK,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAyC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAK,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAYxF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAOjB,aAAa;CAsD5B"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACT,cAAc,EAEd,UAAU,EACV,SAAS,EACV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,cAAc,CAAS;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGrC,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,aAAa,EAC5B,EAAE,EAAE,QAAQ,EACZ,OAAO,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM;IAiBpB,OAAO,IAAI,UAAU;IACrB,cAAc,IAAI,WAAW;IAC7B,WAAW,IAAI,QAAQ;IACvB,KAAK,IAAI,QAAQ;IAIX,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBhE,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAIK,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IAMjC,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAItC,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIjD,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMjC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAWjC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAgBrC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB3C,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBzD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWpD,mBAAmB,IAAI,eAAe,EAAE;IAIxC,iBAAiB,CAAC,QAAQ,SAAI,GAAG,eAAe,EAAE;IAIlD,0BAA0B,IAAI,eAAe,EAAE;IAI/C,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,GAAG,IAAI;IAIxD,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO;IAItD,mBAAmB,IAAI,IAAI;IAMrB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAK,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAyC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAK,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAYxF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAOjB,aAAa;CAkE5B"}
package/dist/session.js CHANGED
@@ -251,6 +251,18 @@ class Session {
251
251
  case "wait":
252
252
  await this.page.waitForTimeout(action.ms);
253
253
  break;
254
+ case "eval_js":
255
+ try {
256
+ await this.page.evaluate((jsCode) => {
257
+ // eslint-disable-next-line no-new-func
258
+ const fn = new Function(`return (${jsCode})`);
259
+ return fn();
260
+ }, action.code);
261
+ }
262
+ catch {
263
+ // result not captured in the legacy act() path
264
+ }
265
+ break;
254
266
  case "screenshot":
255
267
  break;
256
268
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -64,6 +64,10 @@ export type AgentAction = {
64
64
  } | {
65
65
  type: "screenshot";
66
66
  reason: string;
67
+ } | {
68
+ type: "eval_js";
69
+ code: string;
70
+ reason: string;
67
71
  } | {
68
72
  type: "done";
69
73
  reason: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zan-browser",
3
- "version": "2.0.6",
3
+ "version": "2.0.8",
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",