zan-browser 3.0.30 → 3.0.32
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 +4 -1
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/agent.js +119 -7
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/conversation.js +2 -2
- package/dist/agent/conversation.js.map +1 -1
- package/dist/agent/discovery-state.d.ts +38 -0
- package/dist/agent/discovery-state.d.ts.map +1 -0
- package/dist/agent/discovery-state.js +112 -0
- package/dist/agent/discovery-state.js.map +1 -0
- package/dist/agent/orchestrator.d.ts +5 -3
- package/dist/agent/orchestrator.d.ts.map +1 -1
- package/dist/agent/orchestrator.js +49 -105
- package/dist/agent/orchestrator.js.map +1 -1
- package/dist/agent/planner.d.ts +2 -1
- package/dist/agent/planner.d.ts.map +1 -1
- package/dist/agent/planner.js +9 -3
- package/dist/agent/planner.js.map +1 -1
- package/dist/agent/progress.d.ts +2 -1
- package/dist/agent/progress.d.ts.map +1 -1
- package/dist/agent/progress.js +24 -3
- package/dist/agent/progress.js.map +1 -1
- package/dist/agent/prompt.d.ts.map +1 -1
- package/dist/agent/prompt.js +7 -48
- package/dist/agent/prompt.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +5 -2
- package/dist/session.js.map +1 -1
- package/package.json +1 -1
package/dist/agent/agent.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { ToolRegistry } from "../registry";
|
|
|
2
2
|
import type { ToolContext } from "../tools/base";
|
|
3
3
|
import { ConversationHistory } from "./conversation";
|
|
4
4
|
import type { SeedValue, CapturedRequest } from "../types";
|
|
5
|
+
import { DiscoveryState } from "./discovery-state";
|
|
5
6
|
export interface AgentConfig {
|
|
6
7
|
goal: string;
|
|
7
8
|
seedValues?: SeedValue[];
|
|
@@ -29,15 +30,17 @@ export declare class AgentLoop {
|
|
|
29
30
|
private model;
|
|
30
31
|
private registry;
|
|
31
32
|
private ctx;
|
|
33
|
+
private state;
|
|
32
34
|
private conversation;
|
|
33
35
|
private systemPrompt;
|
|
34
|
-
constructor(registry: ToolRegistry, ctx: ToolContext, model
|
|
36
|
+
constructor(registry: ToolRegistry, ctx: ToolContext, model: string | undefined, state: DiscoveryState, conversation?: ConversationHistory);
|
|
35
37
|
run(config: AgentConfig): Promise<AgentResult>;
|
|
36
38
|
private buildInitialMessage;
|
|
37
39
|
private askLLM;
|
|
38
40
|
private maybeSynthetic;
|
|
39
41
|
private appendStepResult;
|
|
40
42
|
private url;
|
|
43
|
+
private extractHostname;
|
|
41
44
|
private result;
|
|
42
45
|
}
|
|
43
46
|
//# sourceMappingURL=agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMrD,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3D,OAAO,EAAE,cAAc,EAAqB,MAAM,mBAAmB,CAAC;AAgBtE,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;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;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,OAAO,eAAe,EAAE,UAAU,CAAC;IAC3C,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;AAID,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,KAAK,CAAiB;IAC9B,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,YAAY,CAAS;gBAG3B,QAAQ,EAAE,YAAY,EACtB,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,KAAK,EAAE,cAAc,EACrB,YAAY,CAAC,EAAE,mBAAmB;IAW9B,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAgKpD,OAAO,CAAC,mBAAmB;YAeb,MAAM;IA8CpB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,GAAG;IAEX,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,MAAM;CAGf"}
|
package/dist/agent/agent.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// ─── Agent Loop ──────────────────────────────────────────────────────────────
|
|
3
3
|
// observe → LLM decides → registry.execute() → repeat
|
|
4
4
|
// No hardcoded strategies — the LLM decides everything.
|
|
5
|
+
// Mechanical enforcement (dead domains, fetch limits) lives in code, not prompt.
|
|
5
6
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
7
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
8
|
};
|
|
@@ -15,23 +16,31 @@ const validation_1 = require("./validation");
|
|
|
15
16
|
const parser_1 = require("./parser");
|
|
16
17
|
const crypto_1 = require("crypto");
|
|
17
18
|
const planner_1 = require("./planner");
|
|
19
|
+
const discovery_state_1 = require("./discovery-state");
|
|
18
20
|
// Tools whose output should be injected as synthetic requests
|
|
19
21
|
const SYNTHETIC_TOOLS = new Set(["scrape", "extract_dom", "download_file"]);
|
|
20
22
|
const FALLBACK_MODEL = "claude-sonnet-4-6";
|
|
21
23
|
const HARD_MAX_STEPS = 50;
|
|
24
|
+
// Mechanical thresholds
|
|
25
|
+
const FETCH_WITHOUT_SIGNAL_LIMIT = 5;
|
|
26
|
+
const DOMAIN_EXHAUSTION_STEPS = 7;
|
|
27
|
+
const DOMAIN_EXHAUSTION_MIN_SCORE = 35;
|
|
28
|
+
const USEFUL_XHR_MIN_SCORE = 40;
|
|
22
29
|
// ─── Agent ───────────────────────────────────────────────────────────────────
|
|
23
30
|
class AgentLoop {
|
|
24
31
|
client;
|
|
25
32
|
model;
|
|
26
33
|
registry;
|
|
27
34
|
ctx;
|
|
35
|
+
state;
|
|
28
36
|
conversation;
|
|
29
37
|
systemPrompt;
|
|
30
|
-
constructor(registry, ctx, model, conversation) {
|
|
38
|
+
constructor(registry, ctx, model, state, conversation) {
|
|
31
39
|
this.registry = registry;
|
|
32
40
|
this.ctx = ctx;
|
|
33
41
|
this.model = model ?? ctx.aiModel ?? FALLBACK_MODEL;
|
|
34
42
|
this.client = new sdk_1.default({ apiKey: ctx.anthropicApiKey });
|
|
43
|
+
this.state = state;
|
|
35
44
|
this.conversation = conversation ?? new conversation_1.ConversationHistory();
|
|
36
45
|
this.systemPrompt = (0, prompt_1.buildSystemPrompt)(registry);
|
|
37
46
|
}
|
|
@@ -43,7 +52,7 @@ class AgentLoop {
|
|
|
43
52
|
const steps = [];
|
|
44
53
|
// Planning call — one-shot LLM call to produce investigation plan
|
|
45
54
|
progress("Planning...");
|
|
46
|
-
const plan = await (0, planner_1.buildPlan)(this.client, this.model, config.goal, config.seedValues ?? [], config.priorContext);
|
|
55
|
+
const plan = await (0, planner_1.buildPlan)(this.client, this.model, config.goal, config.seedValues ?? [], config.priorContext, this.state);
|
|
47
56
|
progress(`Plan: ${plan.hypothesis}`);
|
|
48
57
|
this.conversation.append("user", this.buildInitialMessage(config, suggestedBudget, plan));
|
|
49
58
|
for (let i = 0; i < hardCeiling; i++) {
|
|
@@ -69,16 +78,111 @@ class AgentLoop {
|
|
|
69
78
|
progress(`Agent: impossible — ${decision.reasoning}`);
|
|
70
79
|
return this.result(false, steps, decision.reasoning);
|
|
71
80
|
}
|
|
72
|
-
// 4.
|
|
81
|
+
// 4. PRE-EXECUTION enforcement ─────────────────────────────────────────
|
|
82
|
+
// 4a. Dead/exhausted domain check for navigate/fetch_url
|
|
83
|
+
if ((decision.tool_name === "navigate" || decision.tool_name === "fetch_url") && decision.params.url) {
|
|
84
|
+
const hostname = this.extractHostname(String(decision.params.url));
|
|
85
|
+
if (hostname && this.state.isDead(hostname)) {
|
|
86
|
+
const blocked = { success: false, summary: `Domain blocked: connection error on previous attempt`, error: `Domain ${hostname} is permanently unreachable` };
|
|
87
|
+
steps.push({ step: i + 1, toolName: decision.tool_name, params: decision.params, result: blocked, reasoning: decision.reasoning });
|
|
88
|
+
progress(`Step ${i + 1}: ${decision.tool_name} → blocked (dead domain: ${hostname})`);
|
|
89
|
+
this.conversation.append("user", `Domain ${hostname} is permanently unreachable (connection error on a previous attempt). Do not attempt to visit it again. Remove it from your plan and choose a different source.`);
|
|
90
|
+
this.state.totalSteps++;
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
if (hostname && this.state.isExhausted(hostname)) {
|
|
94
|
+
const blocked = { success: false, summary: `Domain exhausted: many steps without useful signal`, error: `Domain ${hostname} has been exhausted without finding useful data` };
|
|
95
|
+
steps.push({ step: i + 1, toolName: decision.tool_name, params: decision.params, result: blocked, reasoning: decision.reasoning });
|
|
96
|
+
progress(`Step ${i + 1}: ${decision.tool_name} → blocked (exhausted domain: ${hostname})`);
|
|
97
|
+
this.conversation.append("user", `Domain ${hostname} has been explored extensively without finding useful API signal. Try a completely different site or source.`);
|
|
98
|
+
this.state.totalSteps++;
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// 4b. Consecutive fetch_url without signal limit
|
|
103
|
+
if (decision.tool_name === "fetch_url" && this.state.consecutiveFetchWithoutSignal >= FETCH_WITHOUT_SIGNAL_LIMIT) {
|
|
104
|
+
const blocked = { success: false, summary: `fetch_url blocked: ${FETCH_WITHOUT_SIGNAL_LIMIT} consecutive calls without useful signal`, error: "fetch limit reached" };
|
|
105
|
+
steps.push({ step: i + 1, toolName: decision.tool_name, params: decision.params, result: blocked, reasoning: decision.reasoning });
|
|
106
|
+
progress(`Step ${i + 1}: fetch_url → blocked (${FETCH_WITHOUT_SIGNAL_LIMIT} consecutive without signal)`);
|
|
107
|
+
this.conversation.append("user", `You have made ${FETCH_WITHOUT_SIGNAL_LIMIT} consecutive fetch_url calls without finding useful data. Stop probing URLs and change approach: navigate to a real website, interact with it, and inspect network traffic or JS source to find real endpoints.`);
|
|
108
|
+
this.state.totalSteps++;
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
// 5. Execute tool ──────────────────────────────────────────────────────
|
|
73
112
|
const res = await this.registry.execute(decision.tool_name, decision.params, this.ctx);
|
|
74
113
|
steps.push({ step: i + 1, toolName: decision.tool_name, params: decision.params, result: res, reasoning: decision.reasoning });
|
|
75
114
|
progress(`Step ${i + 1}: ${decision.tool_name} → ${res.success ? "ok" : `error: ${res.error ?? res.summary}`}`);
|
|
76
|
-
//
|
|
115
|
+
// 6. POST-EXECUTION state updates ──────────────────────────────────────
|
|
116
|
+
const isNavOrFetch = decision.tool_name === "navigate" || decision.tool_name === "fetch_url";
|
|
117
|
+
const actionUrl = isNavOrFetch ? String(decision.params.url ?? "") : "";
|
|
118
|
+
const actionHostname = actionUrl ? this.extractHostname(actionUrl) : null;
|
|
119
|
+
// 6a. Connection error → mark dead
|
|
120
|
+
if (!res.success && isNavOrFetch && actionUrl) {
|
|
121
|
+
const errMsg = String(res.error ?? res.summary ?? "");
|
|
122
|
+
if ((0, discovery_state_1.isConnectionError)(errMsg) && actionHostname) {
|
|
123
|
+
this.state.markDead(actionHostname);
|
|
124
|
+
progress(`Dead domain detected: ${actionHostname}`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
// 6b. fetch_url signal tracking
|
|
128
|
+
if (decision.tool_name === "fetch_url") {
|
|
129
|
+
const topXhr = this.ctx.interceptor?.getUseful(USEFUL_XHR_MIN_SCORE)?.[0];
|
|
130
|
+
const hadNewSignal = topXhr && (!this.state.bestSignal || topXhr.score > this.state.bestSignal.score);
|
|
131
|
+
if (hadNewSignal) {
|
|
132
|
+
this.state.resetFetchCounter();
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
this.state.incrementFetchWithoutSignal();
|
|
136
|
+
if (actionUrl && !res.success) {
|
|
137
|
+
this.state.triedEndpoints.set(actionUrl, String(res.error ?? "request failed"));
|
|
138
|
+
}
|
|
139
|
+
else if (actionUrl && res.success) {
|
|
140
|
+
this.state.triedEndpoints.set(actionUrl, "returned data but no useful XHR signal");
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
// Any non-fetch_url tool resets the consecutive counter
|
|
146
|
+
this.state.resetFetchCounter();
|
|
147
|
+
}
|
|
148
|
+
// 6c. Update best signal from interceptor
|
|
149
|
+
const currentTop = this.ctx.interceptor?.getUseful(1)?.[0];
|
|
150
|
+
if (currentTop) {
|
|
151
|
+
this.state.updateBestSignal(currentTop.score, currentTop.url);
|
|
152
|
+
}
|
|
153
|
+
// 6d. Track domain steps
|
|
154
|
+
if (isNavOrFetch && actionHostname) {
|
|
155
|
+
this.state.incrementStepsForDomain(actionHostname);
|
|
156
|
+
this.state.visitedDomains.add(actionHostname);
|
|
157
|
+
}
|
|
158
|
+
// 6e. Domain exhaustion check
|
|
159
|
+
if (actionHostname) {
|
|
160
|
+
const domainSteps = this.state.stepsByDomain.get(actionHostname) ?? 0;
|
|
161
|
+
if (domainSteps >= DOMAIN_EXHAUSTION_STEPS) {
|
|
162
|
+
// Check best XHR score for this specific domain
|
|
163
|
+
const domainRequests = this.ctx.interceptor?.getAll().filter((r) => {
|
|
164
|
+
try {
|
|
165
|
+
return new URL(r.url).hostname === actionHostname;
|
|
166
|
+
}
|
|
167
|
+
catch {
|
|
168
|
+
return false;
|
|
169
|
+
}
|
|
170
|
+
}) ?? [];
|
|
171
|
+
const bestDomainScore = domainRequests.reduce((max, r) => Math.max(max, r.score), 0);
|
|
172
|
+
if (bestDomainScore < DOMAIN_EXHAUSTION_MIN_SCORE) {
|
|
173
|
+
this.state.markExhausted(actionHostname);
|
|
174
|
+
progress(`Exhausted domain: ${actionHostname} (${domainSteps} steps, best score ${bestDomainScore})`);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
// 6f. Increment total steps
|
|
179
|
+
this.state.totalSteps++;
|
|
180
|
+
// 7. Inject synthetic request for content-extraction tools
|
|
77
181
|
this.maybeSynthetic(decision.tool_name, res);
|
|
78
|
-
//
|
|
79
|
-
const summary = (0, progress_1.buildProgressSummary)(steps, startTime, suggestedBudget, this.ctx.interceptor, this.url());
|
|
182
|
+
// 8. Feed result + progress summary
|
|
183
|
+
const summary = (0, progress_1.buildProgressSummary)(steps, startTime, suggestedBudget, this.ctx.interceptor, this.url(), this.state);
|
|
80
184
|
this.appendStepResult(decision, res, summary);
|
|
81
|
-
//
|
|
185
|
+
// 9. data_found (post-execution for eval_js)
|
|
82
186
|
if (decision.data_found && decision.tool_name === "eval_js") {
|
|
83
187
|
const v = await (0, validation_1.runValidationStep)(steps, this.ctx, this.registry, this.conversation, progress);
|
|
84
188
|
if (v.valid) {
|
|
@@ -172,6 +276,14 @@ class AgentLoop {
|
|
|
172
276
|
}
|
|
173
277
|
}
|
|
174
278
|
url() { return this.ctx.page?.url() ?? "unknown"; }
|
|
279
|
+
extractHostname(url) {
|
|
280
|
+
try {
|
|
281
|
+
return new URL(url).hostname;
|
|
282
|
+
}
|
|
283
|
+
catch {
|
|
284
|
+
return null;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
175
287
|
result(success, steps, reason) {
|
|
176
288
|
return { success, steps, finalUrl: this.url(), reason, capturedRequests: this.ctx.interceptor?.getUseful(3) ?? [] };
|
|
177
289
|
}
|
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,wDAAwD;;;;;;AAExD,4DAA0C;AAG1C,iDAAqD;AACrD,qCAA6C;AAC7C,yCAAkD;AAClD,6CAAiD;AACjD,qCAAyC;AAGzC,mCAAoC;AACpC,uCAAsC;AAGtC,8DAA8D;AAC9D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;AAE5E,MAAM,cAAc,GAAG,mBAAmB,CAAC;AAC3C,MAAM,cAAc,GAAG,EAAE,CAAC;AA6B1B,gFAAgF;AAEhF,MAAa,SAAS;IACZ,MAAM,CAAY;IAClB,KAAK,CAAS;IACd,QAAQ,CAAe;IACvB,GAAG,CAAc;IACjB,YAAY,CAAsB;IAClC,YAAY,CAAS;IAE7B,YAAY,QAAsB,EAAE,GAAgB,EAAE,KAAc,EAAE,YAAkC;QACtG,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,YAAY,IAAI,IAAI,kCAAmB,EAAE,CAAC;QAC9D,IAAI,CAAC,YAAY,GAAG,IAAA,0BAAiB,EAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAmB;QAC3B,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjD,MAAM,KAAK,GAAsB,EAAE,CAAC;QAEpC,kEAAkE;QAClE,QAAQ,CAAC,aAAa,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,MAAM,IAAA,mBAAS,EAC1B,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EACpC,MAAM,CAAC,UAAU,IAAI,EAAE,EAAE,MAAM,CAAC,YAAY,CAC7C,CAAC;QACF,QAAQ,CAAC,SAAS,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAErC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC;QAE1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,eAAe,GAAG,CAAC,CAAC;YAEvD,aAAa;YACb,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAErC,4DAA4D;YAC5D,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5D,MAAM,CAAC,GAAG,MAAM,IAAA,8BAAiB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;gBAC/F,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;oBAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;oBAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAAC,CAAC;gBACvG,QAAQ,CAAC,wBAAwB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC7C,SAAS;YACX,CAAC;YAED,qBAAqB;YACrB,IAAI,QAAQ,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;gBAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;YAAC,CAAC;YACpH,IAAI,QAAQ,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;gBAAC,QAAQ,CAAC,uBAAuB,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;gBAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;YAAC,CAAC;YAEzJ,kBAAkB;YAClB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACvF,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;YAC/H,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,SAAS,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAEhH,4DAA4D;YAC5D,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAE7C,oCAAoC;YACpC,MAAM,OAAO,GAAG,IAAA,+BAAoB,EAAC,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAC1G,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAE9C,6CAA6C;YAC7C,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5D,MAAM,CAAC,GAAG,MAAM,IAAA,8BAAiB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;gBAC/F,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;oBAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;oBAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAAC,CAAC;gBACjH,QAAQ,CAAC,kCAAkC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvD,SAAS;YACX,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,yBAAyB,WAAW,SAAS,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,yBAAyB,WAAW,oCAAoC,CAAC,CAAC;IAC7G,CAAC;IAED,gFAAgF;IAExE,mBAAmB,CAAC,MAAmB,EAAE,MAAc,EAAE,IAAW;QAC1E,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;QACP,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK,aAAa,IAAI,GAAG,KAAK,SAAS,CAAC;QACnE,MAAM,IAAI,GAAG,OAAO;YAClB,CAAC,CAAC,yHAAyH;YAC3H,CAAC,CAAC,qBAAqB,GAAG,gCAAgC,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAI;YACpB,CAAC,CAAC,wCAAwC,IAAI,CAAC,UAAU,iBAAiB,IAAI,CAAC,SAAS,2BAA2B,IAAI,CAAC,aAAa,eAAe,IAAI,CAAC,QAAQ,EAAE;YACnK,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,0BAA0B,MAAM,CAAC,IAAI,uBAAuB,MAAM,SAAS,SAAS,OAAO,IAAI,GAAG,SAAS,EAAE,CAAC;IACvH,CAAC;IAEO,KAAK,CAAC,MAAM;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QAEhD,wDAAwD;QACxD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAClE,QAAQ,CAAC,CAAC,CAAS,CAAC,OAAO,GAAG;gBAC7B,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;aAClF,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACjD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,CAAQ;YAChG,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAElC,qFAAqF;QACrF,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAI,KAAa,CAAC,KAAK,IAAI,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAClE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YACzD,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAChF,MAAM,QAAQ,GAAgB;gBAC5B,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI;gBACrC,SAAS,EAAE,MAAM,CAAE,KAAa,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,IAAI,YAAY,CAAC;gBACzE,MAAM,EAAG,KAAK,CAAC,MAAkC,IAAI,KAAK;gBAC1D,UAAU;gBACV,IAAI;gBACJ,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;gBAC1C,gBAAgB,EAAE,eAAe;aAClC,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAChE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACvD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO,IAAA,sBAAa,EAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEO,cAAc,CAAC,QAAgB,EAAE,GAAuC;QAC9E,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW;YAAE,OAAO;QACpF,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACtF,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG;YAAE,OAAO;QAC/B,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,eAAe,CAAC;YACnC,EAAE,EAAE,IAAA,mBAAU,GAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;YAChD,cAAc,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY;YACjE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,eAAe,EAAE,IAAI;SACtF,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,QAAqB,EAAE,GAAuC,EAAE,OAAe;QACtG,IAAI,QAAQ,CAAC,SAAS,KAAK,YAAY,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACnE,MAAM,GAAG,GAAI,GAAG,CAAC,IAA2B,CAAC,MAAM,CAAC;YACpD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC/B,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;gBAClF,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,IAAI,CAAC,GAAG,EAAE,OAAO,OAAO,iDAAiD,EAAE;aACxH,CAAC,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,QAAQ,CAAC,SAAS,aAAa,GAAG,CAAC,OAAO,UAAU,IAAI,CAAC,GAAG,EAAE,OAAO,OAAO,EAAE,CAAC,CAAC;QAC5H,CAAC;IACH,CAAC;IAEO,GAAG,KAAa,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC;IAE3D,MAAM,CAAC,OAAgB,EAAE,KAAwB,EAAE,MAAc;QACvE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;IACtH,CAAC;CACF;AAxKD,8BAwKC"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ConversationHistory = void 0;
|
|
7
7
|
// How many user+assistant pairs to keep beyond the first message.
|
|
8
|
-
//
|
|
9
|
-
const MAX_HISTORY_PAIRS =
|
|
8
|
+
// 10 pairs = 20 messages + 1 initial = 21 messages max.
|
|
9
|
+
const MAX_HISTORY_PAIRS = 10;
|
|
10
10
|
/** Strip lone surrogates that cause Anthropic API JSON errors. */
|
|
11
11
|
function sanitizeForJSON(text) {
|
|
12
12
|
// eslint-disable-next-line no-control-regex
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/agent/conversation.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,uEAAuE;AACvE,qDAAqD;;;AAIrD,kEAAkE;AAClE,
|
|
1
|
+
{"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/agent/conversation.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,uEAAuE;AACvE,qDAAqD;;;AAIrD,kEAAkE;AAClE,wDAAwD;AACxD,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B,kEAAkE;AAClE,SAAS,eAAe,CAAC,IAAY;IACnC,4CAA4C;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC;AAOD,MAAa,mBAAmB;IACtB,QAAQ,GAA0B,EAAE,CAAC;IAE7C,uFAAuF;IACvF,MAAM,CAAC,IAA0B,EAAE,OAAmD;QACpF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,8EAA8E;IACtE,QAAQ,CAAC,OAAmD;QAClE,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;QACjE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;QAC5C,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;YAC7D,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtD,OAAO,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAsC,CAAC;IAC1C,CAAC;IAED,4DAA4D;IAC5D,UAAU;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB,CAAC,CAA6B,CAAC;IAClC,CAAC;IAED,sDAAsD;IACtD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,yBAAyB;IACzB,KAAK;QACH,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED;;;OAGG;IACK,KAAK;QACX,MAAM,WAAW,GAAG,CAAC,GAAG,iBAAiB,GAAG,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,WAAW;YAAE,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnE,OAAO;YACL,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAChB,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;SACjD,CAAC;IACJ,CAAC;CACF;AApDD,kDAoDC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Rejection, AttemptRecord } from "./orchestrator";
|
|
2
|
+
/** Returns true if the error message indicates a permanent connection failure. */
|
|
3
|
+
export declare function isConnectionError(errMsg: string): boolean;
|
|
4
|
+
export declare class DiscoveryState {
|
|
5
|
+
/** Domains with permanent connection errors (DNS, TLS, refused). */
|
|
6
|
+
deadDomains: Set<string>;
|
|
7
|
+
/** Domains where >= 7 steps produced no XHR with score >= 35. */
|
|
8
|
+
exhaustedDomains: Set<string>;
|
|
9
|
+
/** Endpoints already tried → why they failed. */
|
|
10
|
+
triedEndpoints: Map<string, string>;
|
|
11
|
+
/** Best XHR captured so far (persists between attempts). */
|
|
12
|
+
bestSignal: {
|
|
13
|
+
score: number;
|
|
14
|
+
url: string;
|
|
15
|
+
} | null;
|
|
16
|
+
/** How many consecutive fetch_url calls produced no new useful XHR. */
|
|
17
|
+
consecutiveFetchWithoutSignal: number;
|
|
18
|
+
/** Total steps across all attempts. */
|
|
19
|
+
totalSteps: number;
|
|
20
|
+
/** Steps spent per domain (hostname → count). */
|
|
21
|
+
stepsByDomain: Map<string, number>;
|
|
22
|
+
/** Pipeline feedback from downstream (validator, request-selector, etc.). */
|
|
23
|
+
rejections: Rejection[];
|
|
24
|
+
/** All domains visited via navigate/fetch_url. */
|
|
25
|
+
visitedDomains: Set<string>;
|
|
26
|
+
/** Attempt history (pushed by orchestrator). */
|
|
27
|
+
attempts: AttemptRecord[];
|
|
28
|
+
markDead(hostname: string): void;
|
|
29
|
+
markExhausted(hostname: string): void;
|
|
30
|
+
updateBestSignal(score: number, url: string): void;
|
|
31
|
+
incrementFetchWithoutSignal(): void;
|
|
32
|
+
resetFetchCounter(): void;
|
|
33
|
+
incrementStepsForDomain(hostname: string): void;
|
|
34
|
+
isDead(hostname: string): boolean;
|
|
35
|
+
isExhausted(hostname: string): boolean;
|
|
36
|
+
summarize(): string;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=discovery-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery-state.d.ts","sourceRoot":"","sources":["../../src/agent/discovery-state.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAS/D,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,qBAAa,cAAc;IACzB,oEAAoE;IACpE,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAErC,iEAAiE;IACjE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAE1C,iDAAiD;IACjD,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAEhD,4DAA4D;IAC5D,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAQ;IAEzD,uEAAuE;IACvE,6BAA6B,SAAK;IAElC,uCAAuC;IACvC,UAAU,SAAK;IAEf,iDAAiD;IACjD,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAE/C,6EAA6E;IAC7E,UAAU,EAAE,SAAS,EAAE,CAAM;IAE7B,kDAAkD;IAClD,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAExC,gDAAgD;IAChD,QAAQ,EAAE,aAAa,EAAE,CAAM;IAI/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIhC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIrC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAMlD,2BAA2B,IAAI,IAAI;IAInC,iBAAiB,IAAI,IAAI;IAIzB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI/C,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIjC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAMtC,SAAS,IAAI,MAAM;CAkDpB"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ─── Discovery State ─────────────────────────────────────────────────────────
|
|
3
|
+
// Shared state that persists across the entire discovery process — between
|
|
4
|
+
// attempts (orchestrator) and between steps (agent loop). Single source of
|
|
5
|
+
// truth for dead domains, exhausted domains, tried endpoints, best signal,
|
|
6
|
+
// mechanical counters, and pipeline rejections.
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.DiscoveryState = void 0;
|
|
9
|
+
exports.isConnectionError = isConnectionError;
|
|
10
|
+
// Connection-level error patterns — the site is structurally unreachable
|
|
11
|
+
const CONNECTION_ERROR_PATTERNS = [
|
|
12
|
+
"ERR_CERT", "ERR_NAME_NOT_RESOLVED", "ERR_CONNECTION_REFUSED",
|
|
13
|
+
"ERR_TIMED_OUT", "net::ERR_", "ECONNREFUSED", "ENOTFOUND",
|
|
14
|
+
"ETIMEDOUT", "SSL_ERROR", "certificate",
|
|
15
|
+
];
|
|
16
|
+
/** Returns true if the error message indicates a permanent connection failure. */
|
|
17
|
+
function isConnectionError(errMsg) {
|
|
18
|
+
return CONNECTION_ERROR_PATTERNS.some((p) => errMsg.includes(p));
|
|
19
|
+
}
|
|
20
|
+
class DiscoveryState {
|
|
21
|
+
/** Domains with permanent connection errors (DNS, TLS, refused). */
|
|
22
|
+
deadDomains = new Set();
|
|
23
|
+
/** Domains where >= 7 steps produced no XHR with score >= 35. */
|
|
24
|
+
exhaustedDomains = new Set();
|
|
25
|
+
/** Endpoints already tried → why they failed. */
|
|
26
|
+
triedEndpoints = new Map();
|
|
27
|
+
/** Best XHR captured so far (persists between attempts). */
|
|
28
|
+
bestSignal = null;
|
|
29
|
+
/** How many consecutive fetch_url calls produced no new useful XHR. */
|
|
30
|
+
consecutiveFetchWithoutSignal = 0;
|
|
31
|
+
/** Total steps across all attempts. */
|
|
32
|
+
totalSteps = 0;
|
|
33
|
+
/** Steps spent per domain (hostname → count). */
|
|
34
|
+
stepsByDomain = new Map();
|
|
35
|
+
/** Pipeline feedback from downstream (validator, request-selector, etc.). */
|
|
36
|
+
rejections = [];
|
|
37
|
+
/** All domains visited via navigate/fetch_url. */
|
|
38
|
+
visitedDomains = new Set();
|
|
39
|
+
/** Attempt history (pushed by orchestrator). */
|
|
40
|
+
attempts = [];
|
|
41
|
+
// ─── Mutations ──────────────────────────────────────────────────────────────
|
|
42
|
+
markDead(hostname) {
|
|
43
|
+
this.deadDomains.add(hostname);
|
|
44
|
+
}
|
|
45
|
+
markExhausted(hostname) {
|
|
46
|
+
this.exhaustedDomains.add(hostname);
|
|
47
|
+
}
|
|
48
|
+
updateBestSignal(score, url) {
|
|
49
|
+
if (!this.bestSignal || score > this.bestSignal.score) {
|
|
50
|
+
this.bestSignal = { score, url };
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
incrementFetchWithoutSignal() {
|
|
54
|
+
this.consecutiveFetchWithoutSignal++;
|
|
55
|
+
}
|
|
56
|
+
resetFetchCounter() {
|
|
57
|
+
this.consecutiveFetchWithoutSignal = 0;
|
|
58
|
+
}
|
|
59
|
+
incrementStepsForDomain(hostname) {
|
|
60
|
+
this.stepsByDomain.set(hostname, (this.stepsByDomain.get(hostname) ?? 0) + 1);
|
|
61
|
+
}
|
|
62
|
+
isDead(hostname) {
|
|
63
|
+
return this.deadDomains.has(hostname);
|
|
64
|
+
}
|
|
65
|
+
isExhausted(hostname) {
|
|
66
|
+
return this.exhaustedDomains.has(hostname);
|
|
67
|
+
}
|
|
68
|
+
// ─── Summary for planner / enriched goal ────────────────────────────────────
|
|
69
|
+
summarize() {
|
|
70
|
+
const parts = [];
|
|
71
|
+
if (this.visitedDomains.size > 0) {
|
|
72
|
+
parts.push(`Domains visited: ${[...this.visitedDomains].join(", ")}`);
|
|
73
|
+
}
|
|
74
|
+
if (this.deadDomains.size > 0) {
|
|
75
|
+
parts.push(`Dead domains (connection error): ${[...this.deadDomains].join(", ")}`);
|
|
76
|
+
}
|
|
77
|
+
if (this.exhaustedDomains.size > 0) {
|
|
78
|
+
parts.push(`Exhausted domains (no useful signal): ${[...this.exhaustedDomains].join(", ")}`);
|
|
79
|
+
}
|
|
80
|
+
if (this.triedEndpoints.size > 0) {
|
|
81
|
+
const eps = [...this.triedEndpoints.entries()]
|
|
82
|
+
.map(([url, reason]) => `${url} → ${reason}`)
|
|
83
|
+
.join("; ");
|
|
84
|
+
parts.push(`Failed endpoints: ${eps}`);
|
|
85
|
+
}
|
|
86
|
+
if (this.bestSignal) {
|
|
87
|
+
parts.push(`Best signal so far: score ${this.bestSignal.score} at ${this.bestSignal.url}`);
|
|
88
|
+
}
|
|
89
|
+
if (this.rejections.length > 0) {
|
|
90
|
+
const rej = this.rejections
|
|
91
|
+
.map((r) => `[${r.source}] ${r.reason}`)
|
|
92
|
+
.join("; ");
|
|
93
|
+
parts.push(`Pipeline rejections: ${rej}`);
|
|
94
|
+
}
|
|
95
|
+
if (this.attempts.length > 0) {
|
|
96
|
+
for (let i = 0; i < this.attempts.length; i++) {
|
|
97
|
+
const a = this.attempts[i];
|
|
98
|
+
const stepsUsed = a.agentResult.steps.length;
|
|
99
|
+
const endedAt = a.agentResult.finalUrl;
|
|
100
|
+
let line = `Attempt ${i + 1}: ${stepsUsed} steps, ended at ${endedAt}`;
|
|
101
|
+
if (a.rejectionReason) {
|
|
102
|
+
line += ` — failed: ${a.rejectionReason}`;
|
|
103
|
+
}
|
|
104
|
+
parts.push(line);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
parts.push(`Total steps used: ${this.totalSteps}`);
|
|
108
|
+
return parts.join("\n");
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.DiscoveryState = DiscoveryState;
|
|
112
|
+
//# sourceMappingURL=discovery-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery-state.js","sourceRoot":"","sources":["../../src/agent/discovery-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ToolRegistry } from "../registry";
|
|
2
2
|
import type { ToolContext } from "../tools/base";
|
|
3
3
|
import type { AgentResult } from "./agent";
|
|
4
|
+
import { DiscoveryState } from "./discovery-state";
|
|
4
5
|
import type { SeedValue, CapturedRequest } from "../types";
|
|
5
6
|
export interface AttemptRecord {
|
|
6
7
|
agentResult: AgentResult;
|
|
@@ -46,17 +47,18 @@ export declare class AgentOrchestrator {
|
|
|
46
47
|
private ctx;
|
|
47
48
|
private model;
|
|
48
49
|
private state;
|
|
49
|
-
|
|
50
|
+
private originalGoal;
|
|
51
|
+
private seedValues;
|
|
52
|
+
private startTime;
|
|
53
|
+
constructor(registry: ToolRegistry, ctx: ToolContext, state: DiscoveryState, model?: string);
|
|
50
54
|
run(config: OrchestratorConfig): Promise<OrchestratorResult>;
|
|
51
55
|
/** Inject external feedback from the pipeline (validator, request-selector, etc.) */
|
|
52
56
|
injectFeedback(rejection: Rejection): void;
|
|
53
|
-
private buildPriorContext;
|
|
54
57
|
private buildEnrichedGoal;
|
|
55
58
|
private evaluateResult;
|
|
56
59
|
private buildUrlTemplate;
|
|
57
60
|
private explainReproducibility;
|
|
58
61
|
private diagnoseFailure;
|
|
59
|
-
private extractDomains;
|
|
60
62
|
private recordFailedEndpoints;
|
|
61
63
|
private buildFailureSummary;
|
|
62
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3D,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,WAAW,GAAG,kBAAkB,GAAG,UAAU,CAAC;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,KAAK,CAAiB;IAG9B,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,SAAS,CAAK;gBAEV,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,MAAM;IAOrF,GAAG,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA8ElE,qFAAqF;IACrF,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAM1C,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,cAAc;IAqEtB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,eAAe;IAwBvB,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,mBAAmB;CAe5B"}
|
|
@@ -17,30 +17,25 @@ class AgentOrchestrator {
|
|
|
17
17
|
ctx;
|
|
18
18
|
model;
|
|
19
19
|
state;
|
|
20
|
-
|
|
20
|
+
// Local orchestrator state (not shared with agent loop)
|
|
21
|
+
originalGoal = "";
|
|
22
|
+
seedValues = [];
|
|
23
|
+
startTime = 0;
|
|
24
|
+
constructor(registry, ctx, state, model) {
|
|
21
25
|
this.registry = registry;
|
|
22
26
|
this.ctx = ctx;
|
|
27
|
+
this.state = state;
|
|
23
28
|
this.model = model;
|
|
24
|
-
this.state = {
|
|
25
|
-
attempts: [],
|
|
26
|
-
visitedDomains: new Set(),
|
|
27
|
-
triedEndpoints: new Map(),
|
|
28
|
-
rejections: [],
|
|
29
|
-
originalGoal: "",
|
|
30
|
-
seedValues: [],
|
|
31
|
-
totalStepsUsed: 0,
|
|
32
|
-
startTime: 0,
|
|
33
|
-
};
|
|
34
29
|
}
|
|
35
30
|
async run(config) {
|
|
36
31
|
const maxAttempts = config.maxAttempts ?? 3;
|
|
37
32
|
const maxTotalSteps = config.maxTotalSteps ?? 45;
|
|
38
33
|
const progress = config.onProgress ?? (() => { });
|
|
39
|
-
this.
|
|
40
|
-
this.
|
|
41
|
-
this.
|
|
34
|
+
this.originalGoal = config.goal;
|
|
35
|
+
this.seedValues = config.seedValues ?? [];
|
|
36
|
+
this.startTime = Date.now();
|
|
42
37
|
for (let attempt = 0; attempt < maxAttempts; attempt++) {
|
|
43
|
-
const remainingSteps = maxTotalSteps - this.state.
|
|
38
|
+
const remainingSteps = maxTotalSteps - this.state.totalSteps;
|
|
44
39
|
if (remainingSteps <= 0)
|
|
45
40
|
break;
|
|
46
41
|
const stepsForAttempt = Math.min(Math.ceil(remainingSteps / (maxAttempts - attempt)), remainingSteps);
|
|
@@ -56,20 +51,16 @@ class AgentOrchestrator {
|
|
|
56
51
|
const enrichedGoal = this.buildEnrichedGoal();
|
|
57
52
|
// 2. Fresh conversation for each attempt
|
|
58
53
|
const conversation = new conversation_1.ConversationHistory();
|
|
59
|
-
// 3. Create and run AgentLoop
|
|
60
|
-
const agent = new agent_1.AgentLoop(this.registry, this.ctx, this.model, conversation);
|
|
54
|
+
// 3. Create and run AgentLoop — shares DiscoveryState
|
|
55
|
+
const agent = new agent_1.AgentLoop(this.registry, this.ctx, this.model, this.state, conversation);
|
|
61
56
|
const agentResult = await agent.run({
|
|
62
57
|
goal: enrichedGoal,
|
|
63
58
|
seedValues: config.seedValues,
|
|
64
59
|
maxSteps: stepsForAttempt,
|
|
65
60
|
onProgress: progress,
|
|
66
|
-
priorContext: attempt > 0 ? this.
|
|
61
|
+
priorContext: attempt > 0 ? this.state.summarize() : undefined,
|
|
67
62
|
});
|
|
68
|
-
// 4.
|
|
69
|
-
this.state.totalStepsUsed += agentResult.steps.length;
|
|
70
|
-
// 5. Extract domains visited from steps
|
|
71
|
-
this.extractDomains(agentResult.steps);
|
|
72
|
-
// 6. Evaluate result — is it a reproducible endpoint?
|
|
63
|
+
// 4. Evaluate result — is it a reproducible endpoint?
|
|
73
64
|
const endpoint = this.evaluateResult(agentResult);
|
|
74
65
|
const record = {
|
|
75
66
|
agentResult,
|
|
@@ -85,8 +76,8 @@ class AgentOrchestrator {
|
|
|
85
76
|
attempts: this.state.attempts,
|
|
86
77
|
bestEndpoint: endpoint,
|
|
87
78
|
reason: endpoint.whyReproducible,
|
|
88
|
-
totalSteps: this.state.
|
|
89
|
-
totalTime: Date.now() - this.
|
|
79
|
+
totalSteps: this.state.totalSteps,
|
|
80
|
+
totalTime: Date.now() - this.startTime,
|
|
90
81
|
};
|
|
91
82
|
}
|
|
92
83
|
progress(`Attempt ${attempt + 1} failed: ${record.rejectionReason}`);
|
|
@@ -95,8 +86,8 @@ class AgentOrchestrator {
|
|
|
95
86
|
success: false,
|
|
96
87
|
attempts: this.state.attempts,
|
|
97
88
|
reason: this.buildFailureSummary(),
|
|
98
|
-
totalSteps: this.state.
|
|
99
|
-
totalTime: Date.now() - this.
|
|
89
|
+
totalSteps: this.state.totalSteps,
|
|
90
|
+
totalTime: Date.now() - this.startTime,
|
|
100
91
|
};
|
|
101
92
|
}
|
|
102
93
|
/** Inject external feedback from the pipeline (validator, request-selector, etc.) */
|
|
@@ -104,29 +95,10 @@ class AgentOrchestrator {
|
|
|
104
95
|
this.state.rejections.push(rejection);
|
|
105
96
|
}
|
|
106
97
|
// ─── Private ───────────────────────────────────────────────────────────────
|
|
107
|
-
buildPriorContext() {
|
|
108
|
-
const parts = [];
|
|
109
|
-
if (this.state.visitedDomains.size > 0) {
|
|
110
|
-
parts.push(`Domains visited: ${[...this.state.visitedDomains].join(", ")}`);
|
|
111
|
-
}
|
|
112
|
-
if (this.state.triedEndpoints.size > 0) {
|
|
113
|
-
const eps = [...this.state.triedEndpoints.values()]
|
|
114
|
-
.map((ep) => `${ep.method} ${ep.url} → ${ep.whyFailed}`)
|
|
115
|
-
.join("; ");
|
|
116
|
-
parts.push(`Failed endpoints: ${eps}`);
|
|
117
|
-
}
|
|
118
|
-
if (this.state.rejections.length > 0) {
|
|
119
|
-
const rej = this.state.rejections
|
|
120
|
-
.map((r) => `[${r.source}] ${r.reason}`)
|
|
121
|
-
.join("; ");
|
|
122
|
-
parts.push(`Pipeline rejections: ${rej}`);
|
|
123
|
-
}
|
|
124
|
-
return parts.join("\n");
|
|
125
|
-
}
|
|
126
98
|
buildEnrichedGoal() {
|
|
127
99
|
const lines = [];
|
|
128
100
|
// Core goal
|
|
129
|
-
lines.push(`GOAL: ${this.
|
|
101
|
+
lines.push(`GOAL: ${this.originalGoal}`);
|
|
130
102
|
// What counts as success
|
|
131
103
|
lines.push("");
|
|
132
104
|
lines.push("SUCCESS CRITERIA: Find an HTTP endpoint (API, JSON feed, or structured data URL) " +
|
|
@@ -134,48 +106,19 @@ class AgentOrchestrator {
|
|
|
134
106
|
"DOM extractions, scraped HTML text, and framework data-transport routes (/_next/data/, " +
|
|
135
107
|
"__data.json) do NOT count. The result must be a reproducible URL with a real HTTP response.");
|
|
136
108
|
// Seed values context
|
|
137
|
-
if (this.
|
|
109
|
+
if (this.seedValues.length > 0) {
|
|
138
110
|
lines.push("");
|
|
139
111
|
lines.push("SEED VALUES (use these verbatim when searching/filling):");
|
|
140
|
-
for (const s of this.
|
|
112
|
+
for (const s of this.seedValues) {
|
|
141
113
|
lines.push(` • ${s.paramName} (${s.description}): "${s.exampleValue}"`);
|
|
142
114
|
}
|
|
143
115
|
}
|
|
144
|
-
//
|
|
145
|
-
|
|
116
|
+
// Accumulated discovery context from shared state
|
|
117
|
+
const stateSummary = this.state.summarize();
|
|
118
|
+
if (stateSummary) {
|
|
146
119
|
lines.push("");
|
|
147
|
-
lines.push("
|
|
148
|
-
|
|
149
|
-
const a = this.state.attempts[i];
|
|
150
|
-
const stepsUsed = a.agentResult.steps.length;
|
|
151
|
-
const endedAt = a.agentResult.finalUrl;
|
|
152
|
-
lines.push(` Attempt ${i + 1}: ${stepsUsed} steps, ended at ${endedAt}`);
|
|
153
|
-
if (a.rejectionReason) {
|
|
154
|
-
lines.push(` Failed because: ${a.rejectionReason}`);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
// Pipeline feedback — specific reasons from downstream
|
|
159
|
-
if (this.state.rejections.length > 0) {
|
|
160
|
-
lines.push("");
|
|
161
|
-
lines.push("PIPELINE FEEDBACK (specific reasons previous results were rejected):");
|
|
162
|
-
for (const r of this.state.rejections) {
|
|
163
|
-
const urlNote = r.capturedUrl ? ` (URL: ${r.capturedUrl})` : "";
|
|
164
|
-
lines.push(` [${r.source}] ${r.reason}${urlNote}`);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
// Domains already explored
|
|
168
|
-
if (this.state.visitedDomains.size > 0) {
|
|
169
|
-
lines.push("");
|
|
170
|
-
lines.push(`DOMAINS ALREADY VISITED: ${[...this.state.visitedDomains].join(", ")}`);
|
|
171
|
-
}
|
|
172
|
-
// Endpoints already tried and failed
|
|
173
|
-
if (this.state.triedEndpoints.size > 0) {
|
|
174
|
-
lines.push("");
|
|
175
|
-
lines.push("ENDPOINTS ALREADY TRIED:");
|
|
176
|
-
for (const [url, ep] of this.state.triedEndpoints) {
|
|
177
|
-
lines.push(` ${ep.method} ${url} → ${ep.whyFailed}`);
|
|
178
|
-
}
|
|
120
|
+
lines.push("ACCUMULATED CONTEXT:");
|
|
121
|
+
lines.push(stateSummary);
|
|
179
122
|
}
|
|
180
123
|
return lines.join("\n");
|
|
181
124
|
}
|
|
@@ -187,17 +130,32 @@ class AgentOrchestrator {
|
|
|
187
130
|
verifiedUrls.add(String(step.params.url));
|
|
188
131
|
}
|
|
189
132
|
}
|
|
190
|
-
// A candidate is reproducible only if the agent consciously verified it
|
|
191
|
-
// via fetch_url AND it scored well in the interceptor
|
|
192
133
|
const candidates = [];
|
|
193
134
|
const allCaptured = [
|
|
194
135
|
...agentResult.capturedRequests,
|
|
195
136
|
...(this.ctx.interceptor?.getAll() ?? []),
|
|
196
137
|
];
|
|
138
|
+
// Deduplicate by URL
|
|
139
|
+
const seenUrls = new Set();
|
|
140
|
+
// Path 1: fetch_url verified endpoints with score >= 50
|
|
197
141
|
for (const url of verifiedUrls) {
|
|
198
142
|
const match = allCaptured.find((r) => r.url === url && !r.isDomExtraction && !r.isAsset && r.score >= 50);
|
|
199
|
-
if (match && !
|
|
143
|
+
if (match && !seenUrls.has(url)) {
|
|
200
144
|
candidates.push(match);
|
|
145
|
+
seenUrls.add(url);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// Path 2: high-score XHRs from browser navigation (THE CRITICAL FIX)
|
|
149
|
+
// Accepts XHRs captured by navigating and interacting — not just fetch_url verified
|
|
150
|
+
for (const r of allCaptured) {
|
|
151
|
+
if (r.score >= 60 &&
|
|
152
|
+
!r.isDomExtraction &&
|
|
153
|
+
!r.isAsset &&
|
|
154
|
+
r.isXHR &&
|
|
155
|
+
!this.state.triedEndpoints.has(r.url) &&
|
|
156
|
+
!seenUrls.has(r.url)) {
|
|
157
|
+
candidates.push(r);
|
|
158
|
+
seenUrls.add(r.url);
|
|
201
159
|
}
|
|
202
160
|
}
|
|
203
161
|
// Exclude endpoints that already failed in previous attempts
|
|
@@ -221,7 +179,7 @@ class AgentOrchestrator {
|
|
|
221
179
|
}
|
|
222
180
|
buildUrlTemplate(url) {
|
|
223
181
|
let template = url;
|
|
224
|
-
for (const seed of this.
|
|
182
|
+
for (const seed of this.seedValues) {
|
|
225
183
|
if (template.includes(seed.exampleValue)) {
|
|
226
184
|
template = template.split(seed.exampleValue).join(`{${seed.paramName}}`);
|
|
227
185
|
}
|
|
@@ -263,36 +221,22 @@ class AgentOrchestrator {
|
|
|
263
221
|
}
|
|
264
222
|
return "Captured requests did not meet reproducibility criteria";
|
|
265
223
|
}
|
|
266
|
-
extractDomains(steps) {
|
|
267
|
-
for (const s of steps) {
|
|
268
|
-
if ((s.toolName === "navigate" || s.toolName === "fetch_url") && s.params.url) {
|
|
269
|
-
try {
|
|
270
|
-
this.state.visitedDomains.add(new URL(String(s.params.url)).hostname);
|
|
271
|
-
}
|
|
272
|
-
catch { /* ignore invalid URLs */ }
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
224
|
recordFailedEndpoints(agentResult) {
|
|
277
225
|
// Record fetch_url attempts that didn't produce a good result
|
|
278
226
|
for (const step of agentResult.steps) {
|
|
279
227
|
if (step.toolName === "fetch_url" && step.params.url) {
|
|
280
228
|
const url = String(step.params.url);
|
|
281
229
|
if (!this.state.triedEndpoints.has(url)) {
|
|
282
|
-
this.state.triedEndpoints.set(url,
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
whyFailed: step.result.success
|
|
286
|
-
? "returned data but not structured/useful enough"
|
|
287
|
-
: String(step.result.error ?? "request failed"),
|
|
288
|
-
});
|
|
230
|
+
this.state.triedEndpoints.set(url, step.result.success
|
|
231
|
+
? "returned data but not structured/useful enough"
|
|
232
|
+
: String(step.result.error ?? "request failed"));
|
|
289
233
|
}
|
|
290
234
|
}
|
|
291
235
|
}
|
|
292
236
|
}
|
|
293
237
|
buildFailureSummary() {
|
|
294
238
|
const parts = [];
|
|
295
|
-
parts.push(`Exhausted ${this.state.attempts.length} attempts (${this.state.
|
|
239
|
+
parts.push(`Exhausted ${this.state.attempts.length} attempts (${this.state.totalSteps} total steps)`);
|
|
296
240
|
if (this.state.visitedDomains.size > 0) {
|
|
297
241
|
parts.push(`Visited: ${[...this.state.visitedDomains].join(", ")}`);
|
|
298
242
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/planner.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import Anthropic from "@anthropic-ai/sdk";
|
|
2
2
|
import type { SeedValue } from "../types";
|
|
3
|
+
import type { DiscoveryState } from "./discovery-state";
|
|
3
4
|
export interface Plan {
|
|
4
5
|
hypothesis: string;
|
|
5
6
|
firstMove: string;
|
|
6
7
|
seedTransform: string;
|
|
7
8
|
fallback: string;
|
|
8
9
|
}
|
|
9
|
-
export declare function buildPlan(client: Anthropic,
|
|
10
|
+
export declare function buildPlan(client: Anthropic, _model: string, goal: string, seedValues: SeedValue[], priorContext?: string, state?: DiscoveryState): Promise<Plan>;
|
|
10
11
|
//# sourceMappingURL=planner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../src/agent/planner.ts"],"names":[],"mappings":"AAIA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../src/agent/planner.ts"],"names":[],"mappings":"AAIA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,WAAW,IAAI;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAaD,wBAAsB,SAAS,CAC7B,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,SAAS,EAAE,EACvB,YAAY,CAAC,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC,CAmDf"}
|
package/dist/agent/planner.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
// plan. The plan is context for the agent, not control flow.
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.buildPlan = buildPlan;
|
|
7
|
+
const PLANNING_MODEL = "claude-haiku-4-5-20251001";
|
|
7
8
|
const PLANNING_SYSTEM = `You are a planning agent. Given a data discovery goal, produce a concrete investigation plan. Be specific about what type of source to look for and how to find it. Do not execute — only plan.`;
|
|
8
9
|
const DEFAULT_PLAN = {
|
|
9
10
|
hypothesis: "unknown",
|
|
@@ -11,16 +12,20 @@ const DEFAULT_PLAN = {
|
|
|
11
12
|
seedTransform: "use as-is",
|
|
12
13
|
fallback: "try alternative sources via web_search",
|
|
13
14
|
};
|
|
14
|
-
async function buildPlan(client,
|
|
15
|
+
async function buildPlan(client, _model, goal, seedValues, priorContext, state) {
|
|
15
16
|
const seedBlock = seedValues.length
|
|
16
17
|
? `\nSeed values:\n${seedValues.map((s) => ` • ${s.paramName} (${s.description}): "${s.exampleValue}"`).join("\n")}`
|
|
17
18
|
: "\nNo seed values provided.";
|
|
18
19
|
const contextBlock = priorContext
|
|
19
20
|
? `\nPrior attempts context:\n${priorContext}`
|
|
20
21
|
: "";
|
|
22
|
+
const stateBlock = state
|
|
23
|
+
? `\nDiscovery state:\n${state.summarize()}`
|
|
24
|
+
: "";
|
|
21
25
|
const userPrompt = `Goal: ${goal}
|
|
22
26
|
${seedBlock}
|
|
23
27
|
${contextBlock}
|
|
28
|
+
${stateBlock}
|
|
24
29
|
|
|
25
30
|
Produce a JSON plan with these fields:
|
|
26
31
|
{
|
|
@@ -33,7 +38,7 @@ Produce a JSON plan with these fields:
|
|
|
33
38
|
Respond ONLY with valid JSON. No markdown, no code fences, no extra text.`;
|
|
34
39
|
try {
|
|
35
40
|
const response = await client.messages.create({
|
|
36
|
-
model,
|
|
41
|
+
model: PLANNING_MODEL,
|
|
37
42
|
max_tokens: 500,
|
|
38
43
|
system: PLANNING_SYSTEM,
|
|
39
44
|
messages: [{ role: "user", content: userPrompt }],
|
|
@@ -49,7 +54,8 @@ Respond ONLY with valid JSON. No markdown, no code fences, no extra text.`;
|
|
|
49
54
|
fallback: String(parsed.fallback ?? DEFAULT_PLAN.fallback),
|
|
50
55
|
};
|
|
51
56
|
}
|
|
52
|
-
catch {
|
|
57
|
+
catch (err) {
|
|
58
|
+
console.warn("[planner] failed:", err);
|
|
53
59
|
return DEFAULT_PLAN;
|
|
54
60
|
}
|
|
55
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/agent/planner.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,8EAA8E;AAC9E,6DAA6D;;
|
|
1
|
+
{"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/agent/planner.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,8EAA8E;AAC9E,6DAA6D;;AAwB7D,8BA0DC;AArED,MAAM,cAAc,GAAG,2BAA2B,CAAC;AAEnD,MAAM,eAAe,GAAG,iMAAiM,CAAC;AAE1N,MAAM,YAAY,GAAS;IACzB,UAAU,EAAE,SAAS;IACrB,SAAS,EAAE,YAAY;IACvB,aAAa,EAAE,WAAW;IAC1B,QAAQ,EAAE,wCAAwC;CACnD,CAAC;AAEK,KAAK,UAAU,SAAS,CAC7B,MAAiB,EACjB,MAAc,EACd,IAAY,EACZ,UAAuB,EACvB,YAAqB,EACrB,KAAsB;IAEtB,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM;QACjC,CAAC,CAAC,mBAAmB,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;QACrH,CAAC,CAAC,4BAA4B,CAAC;IAEjC,MAAM,YAAY,GAAG,YAAY;QAC/B,CAAC,CAAC,8BAA8B,YAAY,EAAE;QAC9C,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,UAAU,GAAG,KAAK;QACtB,CAAC,CAAC,uBAAuB,KAAK,CAAC,SAAS,EAAE,EAAE;QAC5C,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,UAAU,GAAG,SAAS,IAAI;EAChC,SAAS;EACT,YAAY;EACZ,UAAU;;;;;;;;;;0EAU8D,CAAC;IAEzE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC5C,KAAK,EAAE,cAAc;YACrB,UAAU,EAAE,GAAG;YACf,MAAM,EAAE,eAAe;YACvB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;SAClD,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEnC,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU,CAAC;YAChE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU,IAAI,YAAY,CAAC,SAAS,CAAC;YAClF,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,cAAc,IAAI,YAAY,CAAC,aAAa,CAAC;YAClG,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC;SAC3D,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;QACvC,OAAO,YAAY,CAAC;IACtB,CAAC;AACH,CAAC"}
|
package/dist/agent/progress.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { ToolResult } from "../tools/base";
|
|
2
2
|
import type { Interceptor } from "../interceptor";
|
|
3
|
+
import type { DiscoveryState } from "./discovery-state";
|
|
3
4
|
export interface StepRecord {
|
|
4
5
|
toolName: string;
|
|
5
6
|
params: Record<string, unknown>;
|
|
6
7
|
result: ToolResult;
|
|
7
8
|
}
|
|
8
|
-
export declare function buildProgressSummary(steps: StepRecord[], startTime: number, suggestedBudget: number, interceptor: Interceptor | undefined, currentUrl: string): string;
|
|
9
|
+
export declare function buildProgressSummary(steps: StepRecord[], startTime: number, suggestedBudget: number, interceptor: Interceptor | undefined, currentUrl: string, state?: DiscoveryState): string;
|
|
9
10
|
//# sourceMappingURL=progress.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/agent/progress.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/agent/progress.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAWxD,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,UAAU,EAAE,EACnB,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,WAAW,GAAG,SAAS,EACpC,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,cAAc,GACrB,MAAM,CA2ER"}
|
package/dist/agent/progress.js
CHANGED
|
@@ -11,7 +11,7 @@ const DATA_PRODUCING_TOOLS = new Set([
|
|
|
11
11
|
]);
|
|
12
12
|
const BINARY_TYPES = /grpc|protobuf|proto|wasm|octet-stream|msgpack/i;
|
|
13
13
|
const NOISE_TYPES = /tracking|analytics|pixel|beacon|ad[s]?[./]|doubleclick|googletag|facebook.*tr/i;
|
|
14
|
-
function buildProgressSummary(steps, startTime, suggestedBudget, interceptor, currentUrl) {
|
|
14
|
+
function buildProgressSummary(steps, startTime, suggestedBudget, interceptor, currentUrl, state) {
|
|
15
15
|
const elapsed = ((Date.now() - startTime) / 1000).toFixed(1);
|
|
16
16
|
const hasUsefulData = steps.some((s) => DATA_PRODUCING_TOOLS.has(s.toolName) && s.result.success);
|
|
17
17
|
// Domains visited — only from explicit navigate/fetch_url actions
|
|
@@ -54,7 +54,7 @@ function buildProgressSummary(steps, startTime, suggestedBudget, interceptor, cu
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
const xhrLine = `${useful} useful (JSON/XML) / ${binary} binary (grpc/proto/wasm) / ${noise} noise (ads/tracking/assets)`;
|
|
57
|
-
|
|
57
|
+
const lines = [
|
|
58
58
|
"PROGRESS SUMMARY:",
|
|
59
59
|
`- Steps taken: ${steps.length}/${suggestedBudget} suggested budget`,
|
|
60
60
|
`- Time elapsed: ${elapsed}s`,
|
|
@@ -63,6 +63,27 @@ function buildProgressSummary(steps, startTime, suggestedBudget, interceptor, cu
|
|
|
63
63
|
`- Tools used: ${toolLine || "none"}`,
|
|
64
64
|
`- Last 3 actions: ${last3 || "none"}`,
|
|
65
65
|
`- XHR quality: ${xhrLine}`,
|
|
66
|
-
]
|
|
66
|
+
];
|
|
67
|
+
if (state) {
|
|
68
|
+
if (state.bestSignal) {
|
|
69
|
+
try {
|
|
70
|
+
const path = new URL(state.bestSignal.url).pathname;
|
|
71
|
+
lines.push(`- Best signal: score ${state.bestSignal.score} at ${path}`);
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
lines.push(`- Best signal: score ${state.bestSignal.score} at ${state.bestSignal.url.slice(0, 80)}`);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
lines.push("- Best signal: none yet");
|
|
79
|
+
}
|
|
80
|
+
if (state.consecutiveFetchWithoutSignal > 0) {
|
|
81
|
+
lines.push(`- Consecutive fetch without signal: ${state.consecutiveFetchWithoutSignal}/5`);
|
|
82
|
+
}
|
|
83
|
+
if (state.exhaustedDomains.size > 0) {
|
|
84
|
+
lines.push(`- Exhausted domains: ${[...state.exhaustedDomains].join(", ")}`);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return lines.join("\n");
|
|
67
88
|
}
|
|
68
89
|
//# sourceMappingURL=progress.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/agent/progress.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oEAAoE;AACpE,sDAAsD;;
|
|
1
|
+
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/agent/progress.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,CAqKhE"}
|
package/dist/agent/prompt.js
CHANGED
|
@@ -30,7 +30,7 @@ The ↑ marker means the request fired within 2 seconds of your last action.
|
|
|
30
30
|
|
|
31
31
|
─── Priority Strategy — Check for Public APIs First ──────────────────────────
|
|
32
32
|
|
|
33
|
-
Before opening any website,
|
|
33
|
+
Before opening any website, consider if a free public API exists for this data:
|
|
34
34
|
|
|
35
35
|
- Use web_search with queries like:
|
|
36
36
|
"[data type] free public API no key required"
|
|
@@ -42,12 +42,6 @@ Before opening any website, always consider if a free public API exists for this
|
|
|
42
42
|
2. If it returns structured JSON with the target data → set data_found=true immediately
|
|
43
43
|
3. Skip browser navigation entirely
|
|
44
44
|
|
|
45
|
-
- Known patterns worth trying first:
|
|
46
|
-
* Government open data APIs (datos.gob.ar, data.gov, etc.)
|
|
47
|
-
* RSS/Atom feeds for news sites
|
|
48
|
-
* Public JSON endpoints for financial data
|
|
49
|
-
* OpenMeteo, wttr.in for weather (no key needed)
|
|
50
|
-
|
|
51
45
|
Only open the browser if no public API is found after 2 web_search attempts.
|
|
52
46
|
|
|
53
47
|
─── ${toolsBlock} ────────────────────────────────────────────────────────────
|
|
@@ -76,16 +70,8 @@ session immediately — set it only when you are certain.
|
|
|
76
70
|
|
|
77
71
|
─── Self-Assessment ───────────────────────────────────────────────────────────
|
|
78
72
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
- If you have visited 2+ sites without finding data, try a completely different approach
|
|
82
|
-
- If you have used the same tool 3+ times in a row without progress, switch strategy
|
|
83
|
-
- If you have been searching/navigating for a long time without data_found, think creatively:
|
|
84
|
-
GitHub datasets, public CSVs, government APIs, RSS feeds, Wikipedia API, direct JSON endpoints
|
|
85
|
-
- If "Network: No useful XHR traffic detected" appears, the site is SSR — use scrape, eval_js
|
|
86
|
-
(window.__NEXT_DATA__, window.__NUXT__), or extract_dom instead of waiting for XHR
|
|
87
|
-
- You decide when to change strategy based on what you see in PROGRESS SUMMARY — there is
|
|
88
|
-
no fixed step limit forcing you to stop, but be efficient and do not waste steps
|
|
73
|
+
Read the PROGRESS SUMMARY appended to every step result and decide if you need
|
|
74
|
+
to change strategy based on what you see.
|
|
89
75
|
|
|
90
76
|
─── Site Type Recognition & Strategy ──────────────────────────────────────
|
|
91
77
|
|
|
@@ -135,23 +121,11 @@ The only true dead ends are: CAPTCHA walls, OAuth flows requiring real user cred
|
|
|
135
121
|
and endpoints that require paid API keys. Everything else is solvable with enough
|
|
136
122
|
information from the error response.
|
|
137
123
|
|
|
138
|
-
─── Anti-Loop
|
|
139
|
-
|
|
140
|
-
Before each action, check whether you're making real progress or spinning in place.
|
|
141
|
-
|
|
142
|
-
Signs you're stalled:
|
|
143
|
-
- You've used the same tool repeatedly and the page state or network capture hasn't
|
|
144
|
-
changed meaningfully between uses.
|
|
145
|
-
- You're revisiting pages or re-trying actions you already attempted.
|
|
146
|
-
- Your memory field keeps describing the same situation across multiple steps.
|
|
147
|
-
|
|
148
|
-
When you recognize a stall, stop executing and reason explicitly in your memory about
|
|
149
|
-
why you're stuck and what fundamentally different approach could work. "Different"
|
|
150
|
-
means a different source, a different extraction method, or a different way of finding
|
|
151
|
-
the data — not the same approach with minor variations.
|
|
124
|
+
─── Anti-Loop ─────────────────────────────────────────────────────────────
|
|
152
125
|
|
|
153
|
-
|
|
154
|
-
|
|
126
|
+
If the PROGRESS SUMMARY shows you are not making forward progress — same tools
|
|
127
|
+
repeating, no new signal, same situation described — stop and reason about a
|
|
128
|
+
fundamentally different approach before acting again.
|
|
155
129
|
|
|
156
130
|
─── Rules ─────────────────────────────────────────────────────────────────────
|
|
157
131
|
|
|
@@ -188,21 +162,6 @@ abandon it and try something structurally different.
|
|
|
188
162
|
with eval_js (framework globals, inline JSON, script tags).
|
|
189
163
|
4. Visible HTML — if the data is only in the rendered markup with no API or
|
|
190
164
|
embedded state, use scrape or extract_dom as a last resort.
|
|
191
|
-
19. fetch_url requires evidence, not navigation. You may call fetch_url any time
|
|
192
|
-
you have a concrete reason to believe the URL exists and returns what you
|
|
193
|
-
need — a web_search result, a URL seen in read_network_logs, an endpoint
|
|
194
|
-
extracted from a JS bundle, or a pattern from API documentation. What is
|
|
195
|
-
prohibited is inventing or guessing URLs with no source backing them. If
|
|
196
|
-
three consecutive fetch_url calls fail, stop probing and change approach:
|
|
197
|
-
navigate to the site, interact, and inspect network traffic or JS source
|
|
198
|
-
to find real endpoints before attempting more direct calls.
|
|
199
|
-
20. Connection errors are permanent. If navigate or fetch_url fails with a
|
|
200
|
-
connection-level error — SSL/TLS failure, connection refused, DNS resolution
|
|
201
|
-
failure, timeout with no response — that site is structurally unreachable.
|
|
202
|
-
Record it in memory as inaccessible and never retry it. These are not
|
|
203
|
-
application errors that can be fixed with different headers or params;
|
|
204
|
-
the server is down or doesn't exist. HTTP errors (4xx, 5xx) are different
|
|
205
|
-
— those come from a working server and may be solvable.
|
|
206
165
|
|
|
207
166
|
CRITICAL RESPONSE FORMAT:
|
|
208
167
|
You MUST respond with a single valid JSON object. Your ENTIRE response must be parseable by JSON.parse().
|
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,8CAqKC;AAvKD,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA6Bb,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oEA6HoD,CAAC;AACrE,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export { Session } from "./session";
|
|
|
3
3
|
export { ToolRegistry } from "./registry";
|
|
4
4
|
export { AgentLoop } from "./agent/agent";
|
|
5
5
|
export { AgentOrchestrator } from "./agent/orchestrator";
|
|
6
|
+
export { DiscoveryState } from "./agent/discovery-state";
|
|
6
7
|
export type { Tool, ToolContext, ToolResult, JSONSchema } from "./tools/base";
|
|
7
8
|
export type { AgentConfig, AgentResult, AgentStepRecord } from "./agent/agent";
|
|
8
9
|
export type { ConversationMessage } from "./agent/conversation";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG9E,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,SAAS,EACT,cAAc,EACd,aAAa,EACb,QAAQ,EACR,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,UAAU,EACV,aAAa,EACb,eAAe,EACf,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,YAAY,EACZ,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzD,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG9E,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,SAAS,EACT,cAAc,EACd,aAAa,EACb,QAAQ,EACR,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,UAAU,EACV,aAAa,EACb,eAAe,EACf,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,YAAY,EACZ,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// ─── Public API ──────────────────────────────────────────────────────────────
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.ReadNetworkLogsTool = exports.DownloadFileTool = exports.FetchUrlTool = exports.WebSearchTool = exports.ExtractDomTool = exports.ScrapeTool = exports.ObserveTool = exports.ScreenshotTool = exports.EvalJsTool = exports.WaitTool = exports.NavigateTool = exports.ScrollTool = exports.FillTool = exports.ClickTool = exports.hasStructuredData = exports.isBlacklisted = exports.AgentOrchestrator = exports.AgentLoop = exports.ToolRegistry = exports.Session = exports.RensanBrowser = void 0;
|
|
4
|
+
exports.ReadNetworkLogsTool = exports.DownloadFileTool = exports.FetchUrlTool = exports.WebSearchTool = exports.ExtractDomTool = exports.ScrapeTool = exports.ObserveTool = exports.ScreenshotTool = exports.EvalJsTool = exports.WaitTool = exports.NavigateTool = exports.ScrollTool = exports.FillTool = exports.ClickTool = exports.hasStructuredData = exports.isBlacklisted = exports.DiscoveryState = exports.AgentOrchestrator = exports.AgentLoop = exports.ToolRegistry = exports.Session = exports.RensanBrowser = void 0;
|
|
5
5
|
var browser_1 = require("./browser");
|
|
6
6
|
Object.defineProperty(exports, "RensanBrowser", { enumerable: true, get: function () { return browser_1.RensanBrowser; } });
|
|
7
7
|
var session_1 = require("./session");
|
|
@@ -12,6 +12,8 @@ var agent_1 = require("./agent/agent");
|
|
|
12
12
|
Object.defineProperty(exports, "AgentLoop", { enumerable: true, get: function () { return agent_1.AgentLoop; } });
|
|
13
13
|
var orchestrator_1 = require("./agent/orchestrator");
|
|
14
14
|
Object.defineProperty(exports, "AgentOrchestrator", { enumerable: true, get: function () { return orchestrator_1.AgentOrchestrator; } });
|
|
15
|
+
var discovery_state_1 = require("./agent/discovery-state");
|
|
16
|
+
Object.defineProperty(exports, "DiscoveryState", { enumerable: true, get: function () { return discovery_state_1.DiscoveryState; } });
|
|
15
17
|
var blacklist_1 = require("./blacklist");
|
|
16
18
|
Object.defineProperty(exports, "isBlacklisted", { enumerable: true, get: function () { return blacklist_1.isBlacklisted; } });
|
|
17
19
|
var validation_1 = require("./agent/validation");
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;;;AAEhF,qCAA0C;AAAjC,wGAAA,aAAa,OAAA;AACtB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,uCAA0C;AAAjC,wGAAA,YAAY,OAAA;AACrB,uCAA0C;AAAjC,kGAAA,SAAS,OAAA;AAClB,qDAAyD;AAAhD,iHAAA,iBAAiB,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;;;AAEhF,qCAA0C;AAAjC,wGAAA,aAAa,OAAA;AACtB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,uCAA0C;AAAjC,wGAAA,YAAY,OAAA;AACrB,uCAA0C;AAAjC,kGAAA,SAAS,OAAA;AAClB,qDAAyD;AAAhD,iHAAA,iBAAiB,OAAA;AAC1B,2DAAyD;AAAhD,iHAAA,cAAc,OAAA;AAkDvB,yCAA4C;AAAnC,0GAAA,aAAa,OAAA;AACtB,iDAAuD;AAA9C,+GAAA,iBAAiB,OAAA;AAE1B,+EAA+E;AAC/E,+CAAkD;AAAzC,kGAAA,SAAS,OAAA;AAClB,6CAAgD;AAAvC,gGAAA,QAAQ,OAAA;AACjB,iDAAoD;AAA3C,oGAAA,UAAU,OAAA;AACnB,qDAAwD;AAA/C,wGAAA,YAAY,OAAA;AACrB,6CAAgD;AAAvC,gGAAA,QAAQ,OAAA;AACjB,mDAAqD;AAA5C,qGAAA,UAAU,OAAA;AACnB,yDAA4D;AAAnD,4GAAA,cAAc,OAAA;AACvB,gDAAmD;AAA1C,sGAAA,WAAW,OAAA;AACpB,8CAAiD;AAAxC,oGAAA,UAAU,OAAA;AACnB,wDAA0D;AAAjD,6GAAA,cAAc,OAAA;AACvB,yDAA2D;AAAlD,2GAAA,aAAa,OAAA;AACtB,uDAAyD;AAAhD,yGAAA,YAAY,OAAA;AACrB,+DAAiE;AAAxD,iHAAA,gBAAgB,OAAA;AACzB,uEAAwE;AAA/D,wHAAA,mBAAmB,OAAA"}
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG3D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG3D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAwBzD,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,QAAQ,CAAe;IAC/B,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGrC,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EACvB,OAAO,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM;IAiCZ,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAWtE,IAAI,GAAG,IAAI,MAAM,CAEhB;IAIK,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAWvC,mBAAmB,IAAI,eAAe,EAAE;IAIxC,iBAAiB,CAAC,QAAQ,SAAI,GAAG,eAAe,EAAE;IAM5C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAc5E,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,iBAAiB;IAOrD,8EAA8E;IAC9E,iBAAiB,IAAI,IAAI;IAMzB,WAAW,IAAI,YAAY;IAI3B,cAAc,IAAI,WAAW;IAMvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/B,OAAO,CAAC,oBAAoB;CAqB7B"}
|
package/dist/session.js
CHANGED
|
@@ -9,6 +9,7 @@ const observer_1 = require("./observer");
|
|
|
9
9
|
const registry_1 = require("./registry");
|
|
10
10
|
const agent_1 = require("./agent/agent");
|
|
11
11
|
const orchestrator_1 = require("./agent/orchestrator");
|
|
12
|
+
const discovery_state_1 = require("./agent/discovery-state");
|
|
12
13
|
const conversation_1 = require("./agent/conversation");
|
|
13
14
|
// ─── Browser tools ───────────────────────────────────────────────────────────
|
|
14
15
|
const click_1 = require("./tools/browser/click");
|
|
@@ -95,7 +96,8 @@ class Session {
|
|
|
95
96
|
}
|
|
96
97
|
// ─── Agent — the main entry point ─────────────────────────────────────────────
|
|
97
98
|
async act(goal, config) {
|
|
98
|
-
const
|
|
99
|
+
const state = new discovery_state_1.DiscoveryState();
|
|
100
|
+
const agent = new agent_1.AgentLoop(this.registry, this.ctx, this.aiModel, state, this.conversation);
|
|
99
101
|
return agent.run({
|
|
100
102
|
goal,
|
|
101
103
|
maxSteps: config?.maxSteps ?? 15,
|
|
@@ -106,7 +108,8 @@ class Session {
|
|
|
106
108
|
}
|
|
107
109
|
// ─── Orchestrator — multi-attempt with accumulated context ───────────────────
|
|
108
110
|
createOrchestrator(model) {
|
|
109
|
-
|
|
111
|
+
const state = new discovery_state_1.DiscoveryState();
|
|
112
|
+
return new orchestrator_1.AgentOrchestrator(this.registry, this.ctx, state, model ?? this.aiModel);
|
|
110
113
|
}
|
|
111
114
|
// ─── Conversation control ────────────────────────────────────────────────────
|
|
112
115
|
/** Reset conversation history. Page, interceptor, and browser stay intact. */
|
package/dist/session.js.map
CHANGED
|
@@ -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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"}
|