zan-browser 3.0.0 → 3.0.2
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/agent/agent.d.ts
CHANGED
|
@@ -33,6 +33,8 @@ export declare class AgentLoop {
|
|
|
33
33
|
run(config: AgentConfig): Promise<AgentResult>;
|
|
34
34
|
private askLLM;
|
|
35
35
|
private parseDecision;
|
|
36
|
+
private tryParseJson;
|
|
37
|
+
private jsonToDecision;
|
|
36
38
|
/** Fallback: extract params from flat action object (legacy format compat) */
|
|
37
39
|
private extractLegacyParams;
|
|
38
40
|
private getCurrentUrl;
|
|
@@ -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;AAG7D,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAM3D,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;AAaD,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;IAUV,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;
|
|
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;AAG7D,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAM3D,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;AAaD,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;IAUV,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YA4FtC,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,iBAAiB;IAIzB,OAAO,CAAC,WAAW;CASpB"}
|
package/dist/agent/agent.js
CHANGED
|
@@ -35,7 +35,13 @@ class AgentLoop {
|
|
|
35
35
|
const seedLines = config.seedValues?.length
|
|
36
36
|
? `\nSeed values:\n${config.seedValues.map((s) => ` • ${s.paramName} (${s.description}): "${s.exampleValue}"`).join("\n")}`
|
|
37
37
|
: "";
|
|
38
|
-
|
|
38
|
+
// Detect if we're on a blank/empty page to guide the first action
|
|
39
|
+
const currentUrl = this.getCurrentUrl();
|
|
40
|
+
const isBlank = !currentUrl || currentUrl === "about:blank" || currentUrl === "unknown";
|
|
41
|
+
const firstActionHint = isBlank
|
|
42
|
+
? "The browser is on a blank page. Use web_search to find the target URL, or navigate directly if the goal includes a URL."
|
|
43
|
+
: `The browser is on ${currentUrl}. Start by observing the page.`;
|
|
44
|
+
this.conversation.append("user", `NAVIGATION TASK\nGoal: ${config.goal}\nStep budget: ${maxSteps}${seedLines}\n\n${firstActionHint}`);
|
|
39
45
|
for (let i = 0; i < maxSteps; i++) {
|
|
40
46
|
progress(`Step ${i + 1}/${maxSteps}`);
|
|
41
47
|
// ── 1. Ask LLM what to do ──────────────────────────────────────────
|
|
@@ -104,29 +110,46 @@ class AgentLoop {
|
|
|
104
110
|
return this.parseDecision(text);
|
|
105
111
|
}
|
|
106
112
|
parseDecision(raw) {
|
|
113
|
+
// Try 1: strip code fences and parse directly
|
|
114
|
+
const cleaned = raw.replace(/```json\n?/g, "").replace(/```\n?/g, "").trim();
|
|
115
|
+
const parsed = this.tryParseJson(cleaned);
|
|
116
|
+
if (parsed)
|
|
117
|
+
return this.jsonToDecision(parsed);
|
|
118
|
+
// Try 2: extract the first JSON object from free-text response
|
|
119
|
+
const jsonMatch = raw.match(/\{[\s\S]*\}/);
|
|
120
|
+
if (jsonMatch) {
|
|
121
|
+
const extracted = this.tryParseJson(jsonMatch[0]);
|
|
122
|
+
if (extracted)
|
|
123
|
+
return this.jsonToDecision(extracted);
|
|
124
|
+
}
|
|
125
|
+
// All parsing failed
|
|
126
|
+
return {
|
|
127
|
+
memory: "",
|
|
128
|
+
next_goal: "",
|
|
129
|
+
reasoning: `Failed to parse LLM response: ${raw.slice(0, 200)}`,
|
|
130
|
+
data_found: false,
|
|
131
|
+
tool_name: "impossible",
|
|
132
|
+
params: {},
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
tryParseJson(text) {
|
|
107
136
|
try {
|
|
108
|
-
|
|
109
|
-
const obj = JSON.parse(cleaned);
|
|
110
|
-
return {
|
|
111
|
-
memory: obj.memory ?? "",
|
|
112
|
-
next_goal: obj.next_goal ?? "",
|
|
113
|
-
reasoning: obj.reasoning ?? String(obj.reason ?? ""),
|
|
114
|
-
data_found: obj.data_found === true,
|
|
115
|
-
tool_name: obj.tool_name ?? obj.type ?? "impossible",
|
|
116
|
-
params: obj.params ?? this.extractLegacyParams(obj),
|
|
117
|
-
};
|
|
137
|
+
return JSON.parse(text);
|
|
118
138
|
}
|
|
119
139
|
catch {
|
|
120
|
-
return
|
|
121
|
-
memory: "",
|
|
122
|
-
next_goal: "",
|
|
123
|
-
reasoning: `Failed to parse LLM response: ${raw.slice(0, 100)}`,
|
|
124
|
-
data_found: false,
|
|
125
|
-
tool_name: "impossible",
|
|
126
|
-
params: {},
|
|
127
|
-
};
|
|
140
|
+
return null;
|
|
128
141
|
}
|
|
129
142
|
}
|
|
143
|
+
jsonToDecision(obj) {
|
|
144
|
+
return {
|
|
145
|
+
memory: String(obj.memory ?? ""),
|
|
146
|
+
next_goal: String(obj.next_goal ?? ""),
|
|
147
|
+
reasoning: String(obj.reasoning ?? obj.reason ?? ""),
|
|
148
|
+
data_found: obj.data_found === true,
|
|
149
|
+
tool_name: String(obj.tool_name ?? obj.type ?? "impossible"),
|
|
150
|
+
params: obj.params ?? this.extractLegacyParams(obj),
|
|
151
|
+
};
|
|
152
|
+
}
|
|
130
153
|
/** Fallback: extract params from flat action object (legacy format compat) */
|
|
131
154
|
extractLegacyParams(obj) {
|
|
132
155
|
const params = {};
|
package/dist/agent/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,sDAAsD;AACtD,iFAAiF;;;;;;AAEjF,4DAA0C;AAG1C,iDAAqD;AACrD,qCAA6C;AAG7C,MAAM,cAAc,GAAG,2BAA2B,CAAC;AAqCnD,gFAAgF;AAEhF,MAAa,SAAS;IACZ,MAAM,CAAY;IAClB,KAAK,CAAS;IACd,QAAQ,CAAe;IACvB,GAAG,CAAc;IACjB,YAAY,CAAsB;IAClC,YAAY,CAAS;IAE7B,YACE,QAAsB,EACtB,GAAgB,EAChB,KAAc;QAEd,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,GAAG,CAAC,OAAO,IAAI,cAAc,CAAC;QACpD,IAAI,CAAC,MAAM,GAAG,IAAI,aAAS,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,YAAY,GAAG,IAAI,kCAAmB,EAAE,CAAC;QAC9C,IAAI,CAAC,YAAY,GAAG,IAAA,0BAAiB,EAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAmB;QAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjD,MAAM,KAAK,GAAsB,EAAE,CAAC;QAEpC,iCAAiC;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,MAAM;YACzC,CAAC,CAAC,mBAAmB,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,WAAW,OAAO,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC5H,CAAC,CAAC,EAAE,CAAC;QAEP,IAAI,CAAC,YAAY,CAAC,MAAM,CACtB,MAAM,EACN,0BAA0B,MAAM,CAAC,IAAI,kBAAkB,QAAQ,GAAG,SAAS,
|
|
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,
|
|
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,CAwEhE"}
|
package/dist/agent/prompt.js
CHANGED
|
@@ -53,7 +53,9 @@ session immediately — set it only when you are certain.
|
|
|
53
53
|
|
|
54
54
|
─── Rules ─────────────────────────────────────────────────────────────────────
|
|
55
55
|
|
|
56
|
-
1.
|
|
56
|
+
1. On a new page with content, always observe first before interacting.
|
|
57
|
+
Exception: if the page is about:blank or empty, skip observe and use
|
|
58
|
+
"navigate" (if you know the URL) or "web_search" (if you don't) first.
|
|
57
59
|
2. One tool call per response. Never list multiple tools.
|
|
58
60
|
3. IDs reset every observation. Never reuse an ID from a prior step.
|
|
59
61
|
4. data_found: true means immediate termination. Set it only when certain.
|
|
@@ -64,10 +66,16 @@ session immediately — set it only when you are certain.
|
|
|
64
66
|
9. Prefer clicking visible elements over direct URL navigation.
|
|
65
67
|
10. If the page is still loading, use "wait" with 1500ms.
|
|
66
68
|
11. Return "impossible" only for structural blockers: CAPTCHA, mandatory login.
|
|
67
|
-
12. Use "web_search" when the
|
|
69
|
+
12. Use "web_search" when the target URL is unknown, the goal is vague, or
|
|
70
|
+
the page is about:blank. This should be your FIRST action when starting
|
|
71
|
+
without a loaded page — do not observe an empty page.
|
|
68
72
|
13. Use "fetch_url" to call a discovered API directly if the URL is known.
|
|
69
73
|
14. Use "read_network_logs" to check if useful data has already been captured.
|
|
70
74
|
15. Use "eval_js" to extract SSR data (window.__NEXT_DATA__, etc.).
|
|
71
|
-
16. Reason like a real user. Click what you can see. Do not invent element IDs
|
|
75
|
+
16. Reason like a real user. Click what you can see. Do not invent element IDs.
|
|
76
|
+
|
|
77
|
+
CRITICAL: You MUST respond with valid JSON only.
|
|
78
|
+
NO explanations, NO markdown, NO text before or after.
|
|
79
|
+
ONLY the JSON object. Any response that is not pure JSON will cause an immediate failure.`;
|
|
72
80
|
}
|
|
73
81
|
//# sourceMappingURL=prompt.js.map
|
package/dist/agent/prompt.js.map
CHANGED
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/agent/prompt.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,6EAA6E;AAC7E,qEAAqE;;AAKrE,8CAwEC;AA1ED,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;;;;;;;;;;;;;MAab,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0FAgD0E,CAAC;AAC3F,CAAC"}
|