@tangle-network/browser-agent-driver 0.8.7 → 0.11.0
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/README.md +2 -2
- package/dist/brain/index.d.ts +2 -0
- package/dist/brain/index.d.ts.map +1 -1
- package/dist/brain/index.js +96 -10
- package/dist/brain/index.js.map +1 -1
- package/dist/browser-launch.d.ts +3 -0
- package/dist/browser-launch.d.ts.map +1 -1
- package/dist/browser-launch.js +12 -2
- package/dist/browser-launch.js.map +1 -1
- package/dist/cli-design-audit.d.ts.map +1 -1
- package/dist/cli-design-audit.js +250 -2
- package/dist/cli-design-audit.js.map +1 -1
- package/dist/cli-showcase.d.ts +28 -0
- package/dist/cli-showcase.d.ts.map +1 -0
- package/dist/cli-showcase.js +131 -0
- package/dist/cli-showcase.js.map +1 -0
- package/dist/cli-ui.d.ts.map +1 -1
- package/dist/cli-ui.js +35 -2
- package/dist/cli-ui.js.map +1 -1
- package/dist/cli.js +462 -217
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +5 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +3 -2
- package/dist/config.js.map +1 -1
- package/dist/design/compare.d.ts +9 -0
- package/dist/design/compare.d.ts.map +1 -0
- package/dist/design/compare.js +339 -0
- package/dist/design/compare.js.map +1 -0
- package/dist/design/index.d.ts +6 -0
- package/dist/design/index.d.ts.map +1 -0
- package/dist/design/index.js +5 -0
- package/dist/design/index.js.map +1 -0
- package/dist/design/page-interaction.d.ts +24 -0
- package/dist/design/page-interaction.d.ts.map +1 -0
- package/dist/design/page-interaction.js +244 -0
- package/dist/design/page-interaction.js.map +1 -0
- package/dist/design/rip.d.ts +9 -0
- package/dist/design/rip.d.ts.map +1 -0
- package/dist/design/rip.js +362 -0
- package/dist/design/rip.js.map +1 -0
- package/dist/design/types.d.ts +126 -0
- package/dist/design/types.d.ts.map +1 -0
- package/dist/design/types.js +3 -0
- package/dist/design/types.js.map +1 -0
- package/dist/design-audit.js +2 -2
- package/dist/design-audit.js.map +1 -1
- package/dist/index.d.ts +10 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/memory/knowledge.d.ts +25 -9
- package/dist/memory/knowledge.d.ts.map +1 -1
- package/dist/memory/knowledge.js +94 -28
- package/dist/memory/knowledge.js.map +1 -1
- package/dist/memory/run-registry.d.ts +85 -0
- package/dist/memory/run-registry.d.ts.map +1 -0
- package/dist/memory/run-registry.js +144 -0
- package/dist/memory/run-registry.js.map +1 -0
- package/dist/multi-actor.d.ts +3 -3
- package/dist/multi-actor.d.ts.map +1 -1
- package/dist/multi-actor.js +3 -3
- package/dist/multi-actor.js.map +1 -1
- package/dist/runner/index.d.ts +2 -2
- package/dist/runner/index.d.ts.map +1 -1
- package/dist/runner/index.js +1 -1
- package/dist/runner/index.js.map +1 -1
- package/dist/runner/runner.d.ts +9 -5
- package/dist/runner/runner.d.ts.map +1 -1
- package/dist/runner/runner.js +95 -22
- package/dist/runner/runner.js.map +1 -1
- package/dist/runner.d.ts +2 -2
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +1 -1
- package/dist/runner.js.map +1 -1
- package/dist/showcase/annotate.d.ts +28 -0
- package/dist/showcase/annotate.d.ts.map +1 -0
- package/dist/showcase/annotate.js +95 -0
- package/dist/showcase/annotate.js.map +1 -0
- package/dist/showcase/assemble.d.ts +31 -0
- package/dist/showcase/assemble.d.ts.map +1 -0
- package/dist/showcase/assemble.js +107 -0
- package/dist/showcase/assemble.js.map +1 -0
- package/dist/showcase/demo-player.d.ts +53 -0
- package/dist/showcase/demo-player.d.ts.map +1 -0
- package/dist/showcase/demo-player.js +325 -0
- package/dist/showcase/demo-player.js.map +1 -0
- package/dist/showcase/index.d.ts +21 -0
- package/dist/showcase/index.d.ts.map +1 -0
- package/dist/showcase/index.js +289 -0
- package/dist/showcase/index.js.map +1 -0
- package/dist/showcase/types.d.ts +111 -0
- package/dist/showcase/types.d.ts.map +1 -0
- package/dist/showcase/types.js +3 -0
- package/dist/showcase/types.js.map +1 -0
- package/dist/test-runner.d.ts +1 -0
- package/dist/test-runner.d.ts.map +1 -1
- package/dist/test-runner.js +26 -2
- package/dist/test-runner.js.map +1 -1
- package/dist/types.d.ts +32 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +11 -1
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run Registry — orchestration-facing run manifest storage.
|
|
3
|
+
*
|
|
4
|
+
* Provides a structured API for external orchestrators (Foreman) to
|
|
5
|
+
* enumerate, inspect, resume, and fork browser agent runs.
|
|
6
|
+
*
|
|
7
|
+
* Separate from AppKnowledge: knowledge.json is the LLM-facing memory
|
|
8
|
+
* substrate, runs/*.json is the orchestration-facing substrate.
|
|
9
|
+
*/
|
|
10
|
+
export type RunStatus = 'running' | 'completed' | 'failed';
|
|
11
|
+
export interface RunManifest {
|
|
12
|
+
runId: string;
|
|
13
|
+
sessionId?: string;
|
|
14
|
+
parentRunId?: string;
|
|
15
|
+
status: RunStatus;
|
|
16
|
+
goal: string;
|
|
17
|
+
domain: string;
|
|
18
|
+
startUrl?: string;
|
|
19
|
+
finalUrl?: string;
|
|
20
|
+
currentUrl?: string;
|
|
21
|
+
startedAt: string;
|
|
22
|
+
updatedAt: string;
|
|
23
|
+
completedAt?: string;
|
|
24
|
+
success?: boolean;
|
|
25
|
+
summary?: string;
|
|
26
|
+
artifactPaths: string[];
|
|
27
|
+
turnCount: number;
|
|
28
|
+
result?: string;
|
|
29
|
+
reason?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface RunFilters {
|
|
32
|
+
domain?: string;
|
|
33
|
+
sessionId?: string;
|
|
34
|
+
status?: RunStatus;
|
|
35
|
+
limit?: number;
|
|
36
|
+
}
|
|
37
|
+
export declare class RunRegistry {
|
|
38
|
+
private dir;
|
|
39
|
+
constructor(memoryDir: string);
|
|
40
|
+
/** Create a new run manifest at start. Returns the runId. */
|
|
41
|
+
startRun(opts: {
|
|
42
|
+
runId: string;
|
|
43
|
+
sessionId?: string;
|
|
44
|
+
parentRunId?: string;
|
|
45
|
+
goal: string;
|
|
46
|
+
domain: string;
|
|
47
|
+
startUrl?: string;
|
|
48
|
+
}): string;
|
|
49
|
+
/** Update a run manifest (e.g., on completion or failure). */
|
|
50
|
+
updateRun(runId: string, updates: Partial<Omit<RunManifest, 'runId' | 'startedAt'>>): RunManifest | undefined;
|
|
51
|
+
/** Complete a run with final results. */
|
|
52
|
+
completeRun(runId: string, result: {
|
|
53
|
+
success: boolean;
|
|
54
|
+
finalUrl?: string;
|
|
55
|
+
summary?: string;
|
|
56
|
+
result?: string;
|
|
57
|
+
reason?: string;
|
|
58
|
+
turnCount: number;
|
|
59
|
+
artifactPaths?: string[];
|
|
60
|
+
}): RunManifest | undefined;
|
|
61
|
+
/** Get a single run by ID. */
|
|
62
|
+
getRun(runId: string): RunManifest | undefined;
|
|
63
|
+
/** List runs matching optional filters, newest first. */
|
|
64
|
+
listRuns(filters?: RunFilters): RunManifest[];
|
|
65
|
+
/** Build a resume scenario from a previous run. */
|
|
66
|
+
buildResumeScenario(runId: string, newGoal?: string): {
|
|
67
|
+
goal: string;
|
|
68
|
+
startUrl: string;
|
|
69
|
+
sessionId?: string;
|
|
70
|
+
parentRunId: string;
|
|
71
|
+
} | undefined;
|
|
72
|
+
/** Build a fork scenario — new sessionId, inherits startUrl from parent. */
|
|
73
|
+
buildForkScenario(runId: string, goal: string): {
|
|
74
|
+
goal: string;
|
|
75
|
+
startUrl: string;
|
|
76
|
+
sessionId: string;
|
|
77
|
+
parentRunId: string;
|
|
78
|
+
} | undefined;
|
|
79
|
+
/** Generate a unique run ID. */
|
|
80
|
+
static generateRunId(): string;
|
|
81
|
+
private manifestPath;
|
|
82
|
+
private write;
|
|
83
|
+
private ensureDir;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=run-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-registry.d.ts","sourceRoot":"","sources":["../../src/memory/run-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run Registry — orchestration-facing run manifest storage.
|
|
3
|
+
*
|
|
4
|
+
* Provides a structured API for external orchestrators (Foreman) to
|
|
5
|
+
* enumerate, inspect, resume, and fork browser agent runs.
|
|
6
|
+
*
|
|
7
|
+
* Separate from AppKnowledge: knowledge.json is the LLM-facing memory
|
|
8
|
+
* substrate, runs/*.json is the orchestration-facing substrate.
|
|
9
|
+
*/
|
|
10
|
+
import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'fs';
|
|
11
|
+
import { join } from 'path';
|
|
12
|
+
export class RunRegistry {
|
|
13
|
+
dir;
|
|
14
|
+
constructor(memoryDir) {
|
|
15
|
+
this.dir = join(memoryDir, 'agent-runs');
|
|
16
|
+
}
|
|
17
|
+
/** Create a new run manifest at start. Returns the runId. */
|
|
18
|
+
startRun(opts) {
|
|
19
|
+
this.ensureDir();
|
|
20
|
+
const manifest = {
|
|
21
|
+
runId: opts.runId,
|
|
22
|
+
sessionId: opts.sessionId,
|
|
23
|
+
parentRunId: opts.parentRunId,
|
|
24
|
+
status: 'running',
|
|
25
|
+
goal: opts.goal,
|
|
26
|
+
domain: opts.domain,
|
|
27
|
+
startUrl: opts.startUrl,
|
|
28
|
+
startedAt: new Date().toISOString(),
|
|
29
|
+
updatedAt: new Date().toISOString(),
|
|
30
|
+
artifactPaths: [],
|
|
31
|
+
turnCount: 0,
|
|
32
|
+
};
|
|
33
|
+
this.write(manifest);
|
|
34
|
+
return opts.runId;
|
|
35
|
+
}
|
|
36
|
+
/** Update a run manifest (e.g., on completion or failure). */
|
|
37
|
+
updateRun(runId, updates) {
|
|
38
|
+
const manifest = this.getRun(runId);
|
|
39
|
+
if (!manifest)
|
|
40
|
+
return undefined;
|
|
41
|
+
Object.assign(manifest, updates, { updatedAt: new Date().toISOString() });
|
|
42
|
+
this.write(manifest);
|
|
43
|
+
return manifest;
|
|
44
|
+
}
|
|
45
|
+
/** Complete a run with final results. */
|
|
46
|
+
completeRun(runId, result) {
|
|
47
|
+
return this.updateRun(runId, {
|
|
48
|
+
status: result.success ? 'completed' : 'failed',
|
|
49
|
+
success: result.success,
|
|
50
|
+
finalUrl: result.finalUrl,
|
|
51
|
+
summary: result.summary,
|
|
52
|
+
result: result.result,
|
|
53
|
+
reason: result.reason,
|
|
54
|
+
turnCount: result.turnCount,
|
|
55
|
+
artifactPaths: result.artifactPaths || [],
|
|
56
|
+
completedAt: new Date().toISOString(),
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
/** Get a single run by ID. */
|
|
60
|
+
getRun(runId) {
|
|
61
|
+
const path = this.manifestPath(runId);
|
|
62
|
+
if (!existsSync(path))
|
|
63
|
+
return undefined;
|
|
64
|
+
try {
|
|
65
|
+
return JSON.parse(readFileSync(path, 'utf-8'));
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/** List runs matching optional filters, newest first. */
|
|
72
|
+
listRuns(filters) {
|
|
73
|
+
if (!existsSync(this.dir))
|
|
74
|
+
return [];
|
|
75
|
+
const files = readdirSync(this.dir).filter(f => f.endsWith('.json'));
|
|
76
|
+
let manifests = [];
|
|
77
|
+
for (const file of files) {
|
|
78
|
+
try {
|
|
79
|
+
const m = JSON.parse(readFileSync(join(this.dir, file), 'utf-8'));
|
|
80
|
+
manifests.push(m);
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
// skip corrupted
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
if (filters?.domain) {
|
|
87
|
+
manifests = manifests.filter(m => m.domain === filters.domain);
|
|
88
|
+
}
|
|
89
|
+
if (filters?.sessionId) {
|
|
90
|
+
manifests = manifests.filter(m => m.sessionId === filters.sessionId);
|
|
91
|
+
}
|
|
92
|
+
if (filters?.status) {
|
|
93
|
+
manifests = manifests.filter(m => m.status === filters.status);
|
|
94
|
+
}
|
|
95
|
+
manifests.sort((a, b) => b.updatedAt.localeCompare(a.updatedAt));
|
|
96
|
+
if (filters?.limit && filters.limit > 0) {
|
|
97
|
+
manifests = manifests.slice(0, filters.limit);
|
|
98
|
+
}
|
|
99
|
+
return manifests;
|
|
100
|
+
}
|
|
101
|
+
/** Build a resume scenario from a previous run. */
|
|
102
|
+
buildResumeScenario(runId, newGoal) {
|
|
103
|
+
const manifest = this.getRun(runId);
|
|
104
|
+
if (!manifest)
|
|
105
|
+
return undefined;
|
|
106
|
+
return {
|
|
107
|
+
goal: newGoal || manifest.goal,
|
|
108
|
+
startUrl: manifest.finalUrl || manifest.startUrl || '',
|
|
109
|
+
sessionId: manifest.sessionId,
|
|
110
|
+
parentRunId: manifest.runId,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
/** Build a fork scenario — new sessionId, inherits startUrl from parent. */
|
|
114
|
+
buildForkScenario(runId, goal) {
|
|
115
|
+
const manifest = this.getRun(runId);
|
|
116
|
+
if (!manifest)
|
|
117
|
+
return undefined;
|
|
118
|
+
return {
|
|
119
|
+
goal,
|
|
120
|
+
startUrl: manifest.finalUrl || manifest.startUrl || '',
|
|
121
|
+
sessionId: `fork_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`,
|
|
122
|
+
parentRunId: manifest.runId,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
/** Generate a unique run ID. */
|
|
126
|
+
static generateRunId() {
|
|
127
|
+
return `run_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`;
|
|
128
|
+
}
|
|
129
|
+
manifestPath(runId) {
|
|
130
|
+
// Sanitize runId for filesystem safety
|
|
131
|
+
const safe = runId.replace(/[^a-zA-Z0-9_-]/g, '_');
|
|
132
|
+
return join(this.dir, `${safe}.json`);
|
|
133
|
+
}
|
|
134
|
+
write(manifest) {
|
|
135
|
+
this.ensureDir();
|
|
136
|
+
writeFileSync(this.manifestPath(manifest.runId), JSON.stringify(manifest, null, 2));
|
|
137
|
+
}
|
|
138
|
+
ensureDir() {
|
|
139
|
+
if (!existsSync(this.dir)) {
|
|
140
|
+
mkdirSync(this.dir, { recursive: true });
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=run-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-registry.js","sourceRoot":"","sources":["../../src/memory/run-registry.ts"],"names":[],"mappings":"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"}
|
package/dist/multi-actor.d.ts
CHANGED
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
import type { Browser, BrowserContext, BrowserContextOptions, Page } from 'playwright';
|
|
30
30
|
import { PlaywrightDriver } from './drivers/playwright.js';
|
|
31
31
|
import type { PlaywrightDriverOptions } from './drivers/playwright.js';
|
|
32
|
-
import {
|
|
32
|
+
import { BrowserAgent } from './runner.js';
|
|
33
33
|
import type { Scenario, AgentConfig, AgentResult, Turn } from './types.js';
|
|
34
34
|
import type { ProjectStore } from './memory/project-store.js';
|
|
35
35
|
export interface ActorConfig {
|
|
@@ -61,7 +61,7 @@ export declare class Actor {
|
|
|
61
61
|
private _driver;
|
|
62
62
|
private _runner;
|
|
63
63
|
private _results;
|
|
64
|
-
constructor(name: string, _context: BrowserContext, _page: Page, _driver: PlaywrightDriver, _runner:
|
|
64
|
+
constructor(name: string, _context: BrowserContext, _page: Page, _driver: PlaywrightDriver, _runner: BrowserAgent);
|
|
65
65
|
/** Run a scenario with this actor's agent. Results accumulate across calls. */
|
|
66
66
|
run(scenario: Scenario): Promise<AgentResult>;
|
|
67
67
|
/** Raw Playwright page for direct operations / assertions */
|
|
@@ -82,7 +82,7 @@ export declare class MultiActorSession {
|
|
|
82
82
|
/**
|
|
83
83
|
* Create a session with isolated browser contexts per actor.
|
|
84
84
|
*
|
|
85
|
-
* 1. Creates BrowserContext + Page + PlaywrightDriver +
|
|
85
|
+
* 1. Creates BrowserContext + Page + PlaywrightDriver + BrowserAgent per actor
|
|
86
86
|
* 2. Calls setup() hooks if provided
|
|
87
87
|
* 3. Returns session ready for orchestration
|
|
88
88
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-actor.d.ts","sourceRoot":"","sources":["../src/multi-actor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"multi-actor.d.ts","sourceRoot":"","sources":["../src/multi-actor.ts"],"names":[],"mappings":"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"}
|
package/dist/multi-actor.js
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
* ```
|
|
28
28
|
*/
|
|
29
29
|
import { PlaywrightDriver } from './drivers/playwright.js';
|
|
30
|
-
import {
|
|
30
|
+
import { BrowserAgent } from './runner.js';
|
|
31
31
|
// ── Actor ──
|
|
32
32
|
export class Actor {
|
|
33
33
|
name;
|
|
@@ -80,7 +80,7 @@ export class MultiActorSession {
|
|
|
80
80
|
/**
|
|
81
81
|
* Create a session with isolated browser contexts per actor.
|
|
82
82
|
*
|
|
83
|
-
* 1. Creates BrowserContext + Page + PlaywrightDriver +
|
|
83
|
+
* 1. Creates BrowserContext + Page + PlaywrightDriver + BrowserAgent per actor
|
|
84
84
|
* 2. Calls setup() hooks if provided
|
|
85
85
|
* 3. Returns session ready for orchestration
|
|
86
86
|
*/
|
|
@@ -115,7 +115,7 @@ export class MultiActorSession {
|
|
|
115
115
|
onTurn,
|
|
116
116
|
projectStore: config.projectStore,
|
|
117
117
|
};
|
|
118
|
-
const runner = new
|
|
118
|
+
const runner = new BrowserAgent(runnerOpts);
|
|
119
119
|
// Run actor setup hook (e.g., manual login flow)
|
|
120
120
|
if (actorCfg.setup) {
|
|
121
121
|
await actorCfg.setup(page);
|
package/dist/multi-actor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-actor.js","sourceRoot":"","sources":["../src/multi-actor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"multi-actor.js","sourceRoot":"","sources":["../src/multi-actor.ts"],"names":[],"mappings":"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"}
|
package/dist/runner/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Runner barrel — re-exports all public symbols from the runner submodules.
|
|
3
3
|
*/
|
|
4
|
-
export {
|
|
5
|
-
export type {
|
|
4
|
+
export { BrowserAgent, runBrowserAgent } from './runner.js';
|
|
5
|
+
export type { BrowserAgentOptions } from './runner.js';
|
|
6
6
|
export { withRetry } from './utils.js';
|
|
7
7
|
export { buildSearchResultsGuidance, rankSearchCandidates, buildVisibleLinkRecommendation, getVisibleLinkRecommendation, getRankedVisibleLinkCandidates, } from './search-guidance.js';
|
|
8
8
|
export { buildGoalVerificationClaim, collectSearchWorkflowEvidence, shouldAcceptSearchWorkflowCompletion, shouldAcceptScriptBackedCompletion, detectCompletionContentTypeMismatch, } from './goal-verification.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runner/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runner/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5D,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,8BAA8B,EAC9B,4BAA4B,EAC5B,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,oCAAoC,EACpC,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,iCAAiC,EACjC,yCAAyC,GAC1C,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,8BAA8B,EAC9B,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,kCAAkC,EAClC,yBAAyB,EACzB,6BAA6B,EAC7B,sCAAsC,EACtC,iCAAiC,EACjC,sCAAsC,GACvC,MAAM,gBAAgB,CAAC"}
|
package/dist/runner/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Runner barrel — re-exports all public symbols from the runner submodules.
|
|
3
3
|
*/
|
|
4
4
|
// Core runner
|
|
5
|
-
export {
|
|
5
|
+
export { BrowserAgent, runBrowserAgent } from './runner.js';
|
|
6
6
|
// Utilities
|
|
7
7
|
export { withRetry } from './utils.js';
|
|
8
8
|
// Search guidance
|
package/dist/runner/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runner/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc;AACd,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runner/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc;AACd,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG5D,YAAY;AACZ,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,kBAAkB;AAClB,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,8BAA8B,EAC9B,4BAA4B,EAC5B,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC;AAE9B,oBAAoB;AACpB,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,oCAAoC,EACpC,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,wBAAwB,CAAC;AAEhC,gBAAgB;AAChB,OAAO,EACL,iCAAiC,EACjC,yCAAyC,GAC1C,MAAM,oBAAoB,CAAC;AAE5B,QAAQ;AACR,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,8BAA8B,EAC9B,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,YAAY;AACZ,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,kCAAkC,EAClC,yBAAyB,EACzB,6BAA6B,EAC7B,sCAAsC,EACtC,iCAAiC,EACjC,sCAAsC,GACvC,MAAM,gBAAgB,CAAC"}
|
package/dist/runner/runner.d.ts
CHANGED
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
import type { Driver } from '../drivers/types.js';
|
|
13
13
|
import type { Scenario, AgentConfig, AgentResult, Turn } from '../types.js';
|
|
14
14
|
import type { ProjectStore } from '../memory/project-store.js';
|
|
15
|
-
|
|
15
|
+
import { RunRegistry } from '../memory/run-registry.js';
|
|
16
|
+
export interface BrowserAgentOptions {
|
|
16
17
|
driver: Driver;
|
|
17
18
|
config?: AgentConfig;
|
|
18
19
|
/** Called after each turn */
|
|
@@ -23,8 +24,10 @@ export interface RunnerOptions {
|
|
|
23
24
|
referenceTrajectory?: string;
|
|
24
25
|
/** Project memory store — enables knowledge + selector persistence */
|
|
25
26
|
projectStore?: ProjectStore;
|
|
27
|
+
/** Run registry for orchestration-facing manifests */
|
|
28
|
+
runRegistry?: RunRegistry;
|
|
26
29
|
}
|
|
27
|
-
export declare class
|
|
30
|
+
export declare class BrowserAgent {
|
|
28
31
|
private driver;
|
|
29
32
|
private brain;
|
|
30
33
|
private config;
|
|
@@ -32,13 +35,14 @@ export declare class AgentRunner {
|
|
|
32
35
|
private onPhaseTiming?;
|
|
33
36
|
private referenceTrajectory?;
|
|
34
37
|
private projectStore?;
|
|
38
|
+
private runRegistry?;
|
|
35
39
|
private knowledge?;
|
|
36
40
|
private selectorCache?;
|
|
37
41
|
private cachedPostState;
|
|
38
|
-
constructor(options:
|
|
42
|
+
constructor(options: BrowserAgentOptions);
|
|
39
43
|
run(scenario: Scenario): Promise<AgentResult>;
|
|
40
44
|
private selectFollowUpActions;
|
|
41
|
-
/** Persist knowledge
|
|
45
|
+
/** Persist knowledge, selector cache, and session history to disk */
|
|
42
46
|
private saveMemory;
|
|
43
47
|
/**
|
|
44
48
|
* Verify that an action had the expected effect.
|
|
@@ -63,5 +67,5 @@ export declare class AgentRunner {
|
|
|
63
67
|
private attachDecisionScreenshot;
|
|
64
68
|
}
|
|
65
69
|
/** Convenience function */
|
|
66
|
-
export declare function
|
|
70
|
+
export declare function runBrowserAgent(driver: Driver, scenario: Scenario, options?: Omit<BrowserAgentOptions, 'driver'>): Promise<AgentResult>;
|
|
67
71
|
//# sourceMappingURL=runner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAuC,MAAM,aAAa,CAAC;AAKjH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAuC,MAAM,aAAa,CAAC;AAKjH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAqB/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AA0CxD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC9B,wDAAwD;IACxD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACnG,wDAAwD;IACxD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sEAAsE;IACtE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,sDAAsD;IACtD,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAuB;IACtC,OAAO,CAAC,aAAa,CAAC,CAAqF;IAC3G,OAAO,CAAC,mBAAmB,CAAC,CAAS;IACrC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,SAAS,CAAC,CAAe;IACjC,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,eAAe,CAAwB;gBAEnC,OAAO,EAAE,mBAAmB;IAWlC,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC;IAssCnD,OAAO,CAAC,qBAAqB;IA2B7B,qEAAqE;IACrE,OAAO,CAAC,UAAU;IAclB;;;;;;;;;;;;OAYG;YACW,YAAY;YA2EZ,+BAA+B;YAgE/B,mCAAmC;YAwCnC,6BAA6B;YA4C7B,qCAAqC;YAqBrC,4BAA4B;YA4B5B,4BAA4B;YAkC5B,wBAAwB;CASvC;AAED,2BAA2B;AAC3B,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,GAC5C,OAAO,CAAC,WAAW,CAAC,CAGtB"}
|