pi-agent-browser-native 0.2.48 → 0.2.50

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.
Files changed (189) hide show
  1. package/CHANGELOG.md +27 -1
  2. package/README.md +21 -11
  3. package/dist/extensions/agent-browser/index.js +808 -0
  4. package/dist/extensions/agent-browser/lib/argv-descriptor.js +71 -0
  5. package/dist/extensions/agent-browser/lib/argv-grammar.js +121 -0
  6. package/dist/extensions/agent-browser/lib/bash-guard.js +190 -0
  7. package/dist/extensions/agent-browser/lib/command-policy.js +85 -0
  8. package/dist/extensions/agent-browser/lib/command-taxonomy.js +302 -0
  9. package/dist/extensions/agent-browser/lib/config-policy.js +669 -0
  10. package/dist/extensions/agent-browser/lib/config.js +122 -0
  11. package/dist/extensions/agent-browser/lib/electron/cdp.js +51 -0
  12. package/dist/extensions/agent-browser/lib/electron/cleanup.js +212 -0
  13. package/dist/extensions/agent-browser/lib/electron/discovery.js +633 -0
  14. package/dist/extensions/agent-browser/lib/electron/launch.js +351 -0
  15. package/{extensions/agent-browser/lib/electron/text.ts → dist/extensions/agent-browser/lib/electron/text.js} +5 -5
  16. package/dist/extensions/agent-browser/lib/executable-path.js +20 -0
  17. package/dist/extensions/agent-browser/lib/fs-utils.js +18 -0
  18. package/dist/extensions/agent-browser/lib/input-modes/electron.js +165 -0
  19. package/dist/extensions/agent-browser/lib/input-modes/job.js +519 -0
  20. package/dist/extensions/agent-browser/lib/input-modes/lookups.js +440 -0
  21. package/dist/extensions/agent-browser/lib/input-modes/params.js +164 -0
  22. package/dist/extensions/agent-browser/lib/input-modes/semantic-action.js +119 -0
  23. package/dist/extensions/agent-browser/lib/input-modes/shared.js +42 -0
  24. package/dist/extensions/agent-browser/lib/input-modes/types.js +21 -0
  25. package/dist/extensions/agent-browser/lib/input-modes.js +10 -0
  26. package/dist/extensions/agent-browser/lib/json-schema.js +58 -0
  27. package/dist/extensions/agent-browser/lib/launch-scoped-flags.js +59 -0
  28. package/dist/extensions/agent-browser/lib/navigation-policy.js +83 -0
  29. package/dist/extensions/agent-browser/lib/orchestration/batch-stdin.js +62 -0
  30. package/dist/extensions/agent-browser/lib/orchestration/browser-run/artifact-paths.js +39 -0
  31. package/dist/extensions/agent-browser/lib/orchestration/browser-run/click-dispatch.js +276 -0
  32. package/dist/extensions/agent-browser/lib/orchestration/browser-run/diagnostics.js +909 -0
  33. package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result.js +443 -0
  34. package/dist/extensions/agent-browser/lib/orchestration/browser-run/index.js +47 -0
  35. package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/direct-anchor-download.js +141 -0
  36. package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/network-page-filter.js +108 -0
  37. package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/scroll-shims.js +112 -0
  38. package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/snapshot-filter.js +158 -0
  39. package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/wait-timeouts.js +54 -0
  40. package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare.js +762 -0
  41. package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output.js +491 -0
  42. package/dist/extensions/agent-browser/lib/orchestration/browser-run/prompt-guards.js +40 -0
  43. package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-artifacts.js +5 -0
  44. package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state.js +731 -0
  45. package/dist/extensions/agent-browser/lib/orchestration/browser-run/types.js +1 -0
  46. package/dist/extensions/agent-browser/lib/orchestration/electron-host/index.js +718 -0
  47. package/dist/extensions/agent-browser/lib/orchestration/input-plan.js +247 -0
  48. package/dist/extensions/agent-browser/lib/orchestration/output-file.js +68 -0
  49. package/{extensions/agent-browser/lib/parsing.ts → dist/extensions/agent-browser/lib/parsing.js} +12 -11
  50. package/dist/extensions/agent-browser/lib/pi-tool-rendering.js +241 -0
  51. package/dist/extensions/agent-browser/lib/playbook.js +121 -0
  52. package/dist/extensions/agent-browser/lib/process.js +363 -0
  53. package/dist/extensions/agent-browser/lib/prompt-policy.js +91 -0
  54. package/dist/extensions/agent-browser/lib/results/action-recommendations.js +220 -0
  55. package/dist/extensions/agent-browser/lib/results/artifact-manifest.js +111 -0
  56. package/{extensions/agent-browser/lib/results/artifact-state.ts → dist/extensions/agent-browser/lib/results/artifact-state.js} +4 -8
  57. package/dist/extensions/agent-browser/lib/results/categories.js +76 -0
  58. package/dist/extensions/agent-browser/lib/results/confirmation.js +63 -0
  59. package/dist/extensions/agent-browser/lib/results/contracts.js +8 -0
  60. package/dist/extensions/agent-browser/lib/results/editable-ref-evidence.js +74 -0
  61. package/dist/extensions/agent-browser/lib/results/envelope.js +166 -0
  62. package/dist/extensions/agent-browser/lib/results/network-routes.js +92 -0
  63. package/dist/extensions/agent-browser/lib/results/network.js +73 -0
  64. package/dist/extensions/agent-browser/lib/results/next-actions.js +72 -0
  65. package/dist/extensions/agent-browser/lib/results/presentation/artifacts.js +515 -0
  66. package/dist/extensions/agent-browser/lib/results/presentation/batch.js +397 -0
  67. package/dist/extensions/agent-browser/lib/results/presentation/browser-profile-recovery.js +55 -0
  68. package/dist/extensions/agent-browser/lib/results/presentation/common.js +46 -0
  69. package/dist/extensions/agent-browser/lib/results/presentation/content.js +24 -0
  70. package/dist/extensions/agent-browser/lib/results/presentation/diagnostics.js +956 -0
  71. package/dist/extensions/agent-browser/lib/results/presentation/errors.js +205 -0
  72. package/dist/extensions/agent-browser/lib/results/presentation/large-output.js +134 -0
  73. package/dist/extensions/agent-browser/lib/results/presentation/navigation.js +159 -0
  74. package/dist/extensions/agent-browser/lib/results/presentation/registry.js +216 -0
  75. package/dist/extensions/agent-browser/lib/results/presentation/semantic-action.js +104 -0
  76. package/dist/extensions/agent-browser/lib/results/presentation/skills.js +152 -0
  77. package/dist/extensions/agent-browser/lib/results/presentation.js +177 -0
  78. package/dist/extensions/agent-browser/lib/results/recovery-actions.js +107 -0
  79. package/dist/extensions/agent-browser/lib/results/recovery-next-actions.js +50 -0
  80. package/dist/extensions/agent-browser/lib/results/selector-recovery.js +225 -0
  81. package/{extensions/agent-browser/lib/results/shared.ts → dist/extensions/agent-browser/lib/results/shared.js} +0 -1
  82. package/dist/extensions/agent-browser/lib/results/snapshot-high-value-controls.js +208 -0
  83. package/dist/extensions/agent-browser/lib/results/snapshot-refs.js +78 -0
  84. package/dist/extensions/agent-browser/lib/results/snapshot-segments.js +331 -0
  85. package/dist/extensions/agent-browser/lib/results/snapshot-spill.js +40 -0
  86. package/dist/extensions/agent-browser/lib/results/snapshot.js +264 -0
  87. package/dist/extensions/agent-browser/lib/results/text.js +40 -0
  88. package/{extensions/agent-browser/lib/results.ts → dist/extensions/agent-browser/lib/results.js} +2 -32
  89. package/dist/extensions/agent-browser/lib/runtime.js +855 -0
  90. package/dist/extensions/agent-browser/lib/session-page-state.js +411 -0
  91. package/dist/extensions/agent-browser/lib/string-enum-schema.js +13 -0
  92. package/dist/extensions/agent-browser/lib/temp.js +498 -0
  93. package/dist/extensions/agent-browser/lib/web-search.js +562 -0
  94. package/docs/ARCHITECTURE.md +5 -5
  95. package/docs/COMMAND_REFERENCE.md +4 -4
  96. package/docs/RELEASE.md +22 -11
  97. package/docs/REQUIREMENTS.md +1 -1
  98. package/docs/SUPPORT_MATRIX.md +5 -4
  99. package/docs/TOOL_CONTRACT.md +1 -1
  100. package/package.json +9 -5
  101. package/scripts/config.mjs +14 -20
  102. package/scripts/doctor.mjs +8 -7
  103. package/extensions/agent-browser/index.ts +0 -961
  104. package/extensions/agent-browser/lib/argv-descriptor.ts +0 -90
  105. package/extensions/agent-browser/lib/argv-grammar.ts +0 -128
  106. package/extensions/agent-browser/lib/bash-guard.ts +0 -205
  107. package/extensions/agent-browser/lib/command-policy.ts +0 -71
  108. package/extensions/agent-browser/lib/command-taxonomy.ts +0 -336
  109. package/extensions/agent-browser/lib/config-policy.js +0 -690
  110. package/extensions/agent-browser/lib/config.ts +0 -211
  111. package/extensions/agent-browser/lib/electron/cdp.ts +0 -69
  112. package/extensions/agent-browser/lib/electron/cleanup.ts +0 -235
  113. package/extensions/agent-browser/lib/electron/discovery.ts +0 -710
  114. package/extensions/agent-browser/lib/electron/launch.ts +0 -499
  115. package/extensions/agent-browser/lib/executable-path.ts +0 -19
  116. package/extensions/agent-browser/lib/fs-utils.ts +0 -18
  117. package/extensions/agent-browser/lib/input-modes/electron.ts +0 -170
  118. package/extensions/agent-browser/lib/input-modes/job.ts +0 -527
  119. package/extensions/agent-browser/lib/input-modes/lookups.ts +0 -447
  120. package/extensions/agent-browser/lib/input-modes/params.ts +0 -205
  121. package/extensions/agent-browser/lib/input-modes/semantic-action.ts +0 -127
  122. package/extensions/agent-browser/lib/input-modes/shared.ts +0 -46
  123. package/extensions/agent-browser/lib/input-modes/types.ts +0 -225
  124. package/extensions/agent-browser/lib/input-modes.ts +0 -45
  125. package/extensions/agent-browser/lib/json-schema.ts +0 -73
  126. package/extensions/agent-browser/lib/launch-scoped-flags.ts +0 -67
  127. package/extensions/agent-browser/lib/navigation-policy.ts +0 -95
  128. package/extensions/agent-browser/lib/orchestration/batch-stdin.ts +0 -65
  129. package/extensions/agent-browser/lib/orchestration/browser-run/artifact-paths.ts +0 -44
  130. package/extensions/agent-browser/lib/orchestration/browser-run/click-dispatch.ts +0 -280
  131. package/extensions/agent-browser/lib/orchestration/browser-run/diagnostics.ts +0 -914
  132. package/extensions/agent-browser/lib/orchestration/browser-run/final-result.ts +0 -521
  133. package/extensions/agent-browser/lib/orchestration/browser-run/index.ts +0 -53
  134. package/extensions/agent-browser/lib/orchestration/browser-run/prepare/direct-anchor-download.ts +0 -158
  135. package/extensions/agent-browser/lib/orchestration/browser-run/prepare/network-page-filter.ts +0 -116
  136. package/extensions/agent-browser/lib/orchestration/browser-run/prepare/scroll-shims.ts +0 -147
  137. package/extensions/agent-browser/lib/orchestration/browser-run/prepare/snapshot-filter.ts +0 -183
  138. package/extensions/agent-browser/lib/orchestration/browser-run/prepare/wait-timeouts.ts +0 -58
  139. package/extensions/agent-browser/lib/orchestration/browser-run/prepare.ts +0 -847
  140. package/extensions/agent-browser/lib/orchestration/browser-run/process-output.ts +0 -559
  141. package/extensions/agent-browser/lib/orchestration/browser-run/prompt-guards.ts +0 -47
  142. package/extensions/agent-browser/lib/orchestration/browser-run/session-artifacts.ts +0 -8
  143. package/extensions/agent-browser/lib/orchestration/browser-run/session-state.ts +0 -868
  144. package/extensions/agent-browser/lib/orchestration/browser-run/types.ts +0 -565
  145. package/extensions/agent-browser/lib/orchestration/electron-host/index.ts +0 -855
  146. package/extensions/agent-browser/lib/orchestration/input-plan.ts +0 -375
  147. package/extensions/agent-browser/lib/orchestration/output-file.ts +0 -86
  148. package/extensions/agent-browser/lib/pi-tool-rendering.ts +0 -267
  149. package/extensions/agent-browser/lib/playbook.ts +0 -142
  150. package/extensions/agent-browser/lib/process.ts +0 -516
  151. package/extensions/agent-browser/lib/prompt-policy.ts +0 -105
  152. package/extensions/agent-browser/lib/results/action-recommendations.ts +0 -264
  153. package/extensions/agent-browser/lib/results/artifact-manifest.ts +0 -111
  154. package/extensions/agent-browser/lib/results/categories.ts +0 -106
  155. package/extensions/agent-browser/lib/results/confirmation.ts +0 -76
  156. package/extensions/agent-browser/lib/results/contracts.ts +0 -241
  157. package/extensions/agent-browser/lib/results/editable-ref-evidence.ts +0 -72
  158. package/extensions/agent-browser/lib/results/envelope.ts +0 -195
  159. package/extensions/agent-browser/lib/results/network-routes.ts +0 -83
  160. package/extensions/agent-browser/lib/results/network.ts +0 -78
  161. package/extensions/agent-browser/lib/results/next-actions.ts +0 -117
  162. package/extensions/agent-browser/lib/results/presentation/artifacts.ts +0 -588
  163. package/extensions/agent-browser/lib/results/presentation/batch.ts +0 -450
  164. package/extensions/agent-browser/lib/results/presentation/browser-profile-recovery.ts +0 -67
  165. package/extensions/agent-browser/lib/results/presentation/common.ts +0 -53
  166. package/extensions/agent-browser/lib/results/presentation/content.ts +0 -36
  167. package/extensions/agent-browser/lib/results/presentation/diagnostics.ts +0 -923
  168. package/extensions/agent-browser/lib/results/presentation/errors.ts +0 -227
  169. package/extensions/agent-browser/lib/results/presentation/large-output.ts +0 -182
  170. package/extensions/agent-browser/lib/results/presentation/navigation.ts +0 -184
  171. package/extensions/agent-browser/lib/results/presentation/registry.ts +0 -242
  172. package/extensions/agent-browser/lib/results/presentation/semantic-action.ts +0 -131
  173. package/extensions/agent-browser/lib/results/presentation/skills.ts +0 -143
  174. package/extensions/agent-browser/lib/results/presentation.ts +0 -257
  175. package/extensions/agent-browser/lib/results/recovery-actions.ts +0 -139
  176. package/extensions/agent-browser/lib/results/recovery-next-actions.ts +0 -71
  177. package/extensions/agent-browser/lib/results/selector-recovery.ts +0 -320
  178. package/extensions/agent-browser/lib/results/snapshot-high-value-controls.ts +0 -273
  179. package/extensions/agent-browser/lib/results/snapshot-refs.ts +0 -100
  180. package/extensions/agent-browser/lib/results/snapshot-segments.ts +0 -366
  181. package/extensions/agent-browser/lib/results/snapshot-spill.ts +0 -63
  182. package/extensions/agent-browser/lib/results/snapshot.ts +0 -329
  183. package/extensions/agent-browser/lib/results/text.ts +0 -40
  184. package/extensions/agent-browser/lib/runtime.ts +0 -988
  185. package/extensions/agent-browser/lib/session-page-state.ts +0 -512
  186. package/extensions/agent-browser/lib/string-enum-schema.ts +0 -20
  187. package/extensions/agent-browser/lib/temp.ts +0 -577
  188. package/extensions/agent-browser/lib/web-search.ts +0 -728
  189. /package/{extensions/agent-browser/lib/orchestration/browser-run.ts → dist/extensions/agent-browser/lib/orchestration/browser-run.js} +0 -0
@@ -1,565 +0,0 @@
1
- import type { ChildProcess } from "node:child_process";
2
-
3
- import type { AgentToolResult } from "@earendil-works/pi-coding-agent";
4
- import type { ElectronCleanupResult, ElectronLaunchStatus } from "../../electron/cleanup.js";
5
- import type { ElectronCdpTarget, ElectronLaunchRecord, ElectronLaunchSuccess } from "../../electron/launch.js";
6
- import type {
7
- AgentBrowserNetworkSourceLookupAnalysis,
8
- AgentBrowserQaPresetAnalysis,
9
- AgentBrowserSourceLookupAnalysis,
10
- CompiledAgentBrowserElectron,
11
- CompiledAgentBrowserJob,
12
- CompiledAgentBrowserNetworkSourceLookup,
13
- CompiledAgentBrowserQaPreset,
14
- CompiledAgentBrowserSemanticAction,
15
- CompiledAgentBrowserSourceLookup,
16
- } from "../../input-modes.js";
17
- import type { runAgentBrowserProcess } from "../../process.js";
18
- import type { AgentBrowserEnvelope, AgentBrowserNextAction, buildAgentBrowserResultCategoryDetails, buildToolPresentation } from "../../results.js";
19
- import type { NetworkRouteRecord, SessionArtifactManifest } from "../../results/contracts.js";
20
- import type { RichInputRecoveryDiagnostic, VisibleRefFallbackDiagnostic } from "../../results/selector-recovery.js";
21
- import type { SessionPageState, SessionRefSnapshot, SessionRefSnapshotInvalidation, SessionTabTarget } from "../../session-page-state.js";
22
- import type { buildExecutionPlan, CompatibilityWorkaround, OpenResultTabCorrection } from "../../runtime.js";
23
- import type { AllowedDomainsPolicy } from "../../navigation-policy.js";
24
- import type { PromptPolicy } from "../../prompt-policy.js";
25
- import type { AgentBrowserExecuteParams, ResolvedAgentBrowserValidInput } from "../input-plan.js";
26
- import type { BatchCommandStep } from "../batch-stdin.js";
27
-
28
- export type AgentBrowserToolResult = AgentToolResult<unknown> & { isError?: boolean };
29
- export type AgentBrowserProcessResult = Awaited<ReturnType<typeof runAgentBrowserProcess>>;
30
- export type AgentBrowserExecutionPlan = ReturnType<typeof buildExecutionPlan>;
31
- export type AgentBrowserToolPresentation = Awaited<ReturnType<typeof buildToolPresentation>>;
32
- export type AgentBrowserResultCategoryDetails = ReturnType<typeof buildAgentBrowserResultCategoryDetails>;
33
-
34
- export type TraceOwner = "profiler" | "trace";
35
- export type PinnedBatchUnwrapMode = "single-command" | "user-batch";
36
- export type { BatchCommandStep } from "../batch-stdin.js";
37
-
38
- export interface BrowserRunContext {
39
- cwd: string;
40
- sessionDir?: string;
41
- sessionManager: {
42
- getSessionDir?: () => string;
43
- getSessionId: () => string | undefined;
44
- };
45
- }
46
-
47
- export interface BrowserRunInputFields {
48
- compiledElectron?: CompiledAgentBrowserElectron;
49
- compiledJob?: CompiledAgentBrowserJob;
50
- compiledNetworkSourceLookup?: CompiledAgentBrowserNetworkSourceLookup;
51
- compiledQaPreset?: CompiledAgentBrowserQaPreset;
52
- compiledSemanticAction?: CompiledAgentBrowserSemanticAction;
53
- compiledSourceLookup?: CompiledAgentBrowserSourceLookup;
54
- redactedArgs: string[];
55
- redactedCompiledElectron?: CompiledAgentBrowserElectron;
56
- redactedCompiledJob?: CompiledAgentBrowserJob;
57
- redactedCompiledNetworkSourceLookup?: CompiledAgentBrowserNetworkSourceLookup;
58
- redactedCompiledQaPreset?: CompiledAgentBrowserQaPreset;
59
- redactedCompiledSemanticAction?: CompiledAgentBrowserSemanticAction;
60
- redactedCompiledSourceLookup?: CompiledAgentBrowserSourceLookup;
61
- toolArgs: string[];
62
- toolStdin?: string;
63
- }
64
-
65
- export interface BrowserRunState {
66
- allowedDomainsBySession: Map<string, AllowedDomainsPolicy>;
67
- artifactManifest?: SessionArtifactManifest;
68
- closedManagedSessionNames: Set<string>;
69
- electronChildProcesses: Map<string, ChildProcess>;
70
- electronLaunchRecords: Map<string, ElectronLaunchRecord>;
71
- ephemeralSessionSeed: string;
72
- freshSessionOrdinal: number;
73
- managedSessionActive: boolean;
74
- managedSessionBaseName: string;
75
- managedSessionCwd: string;
76
- managedSessionName: string;
77
- networkRoutesBySession: Map<string, NetworkRouteRecord[]>;
78
- sessionPageState: SessionPageState;
79
- traceOwners: Map<string, TraceOwner>;
80
- }
81
-
82
- export interface BrowserRunStatePatch {
83
- allowedDomainsBySession?: Map<string, AllowedDomainsPolicy>;
84
- artifactManifest?: SessionArtifactManifest;
85
- freshSessionOrdinal?: number;
86
- managedSessionActive?: boolean;
87
- managedSessionCwd?: string;
88
- managedSessionName?: string;
89
- networkRoutesBySession?: Map<string, NetworkRouteRecord[]>;
90
- }
91
-
92
- export interface BrowserRunOptions {
93
- ctx: BrowserRunContext;
94
- cwd: string;
95
- electronPostCommandStatusSettleMs: number;
96
- electronProfileIsolationDetails: unknown;
97
- implicitSessionCloseTimeoutMs: number;
98
- implicitSessionIdleTimeoutMs: string;
99
- input: ResolvedAgentBrowserValidInput;
100
- onUpdate?: (result: AgentToolResult<unknown>) => void;
101
- params: AgentBrowserExecuteParams;
102
- promptPolicy: PromptPolicy;
103
- sessionPageStateUpdate: ReturnType<SessionPageState["beginUpdate"]>;
104
- signal?: AbortSignal;
105
- state: BrowserRunState;
106
- }
107
-
108
- export interface SemanticActionVisibleRefResolution {
109
- args: string[];
110
- snapshot: SessionRefSnapshot;
111
- }
112
-
113
- export interface NavigationSummary {
114
- title?: string;
115
- url?: string;
116
- }
117
-
118
- export interface OverlayBlockerCandidate {
119
- args: string[];
120
- name?: string;
121
- reason: string;
122
- ref: string;
123
- role?: string;
124
- }
125
-
126
- export interface OverlayBlockerDiagnostic {
127
- candidates: OverlayBlockerCandidate[];
128
- snapshot: SessionRefSnapshot;
129
- summary: string;
130
- }
131
-
132
- export type ClickDispatchProbeTarget =
133
- | {
134
- kind: "selector";
135
- selector: string;
136
- }
137
- | {
138
- kind: "xpath";
139
- selector: string;
140
- }
141
- | {
142
- duplicateIndex?: number;
143
- kind: "accessible";
144
- name: string;
145
- refId: string;
146
- role: string;
147
- };
148
-
149
- export interface ClickDispatchProbe {
150
- marker: string;
151
- target: ClickDispatchProbeTarget;
152
- }
153
-
154
- export interface ClickDispatchScrollContainerDiagnostic {
155
- selector?: string;
156
- summary: string;
157
- targetOutsideContainer?: boolean;
158
- targetOutsideViewport?: boolean;
159
- }
160
-
161
- export interface ClickDispatchDiagnostic {
162
- nativeEventCount: number;
163
- reason: "native-click-produced-no-target-dom-event";
164
- scrollContainer?: ClickDispatchScrollContainerDiagnostic;
165
- status: "no-native-event-observed";
166
- summary: string;
167
- target: ClickDispatchProbeTarget;
168
- }
169
-
170
- export interface SelectorTextVisibilityCandidate {
171
- index: number;
172
- role?: string;
173
- tagName: string;
174
- textPreview?: string;
175
- }
176
-
177
- export interface SelectorTextVisibilityDiagnostic {
178
- firstMatchVisible?: boolean;
179
- firstVisibleTextPreview?: string;
180
- matchCount: number;
181
- selector: string;
182
- summary: string;
183
- visibleCandidates?: SelectorTextVisibilityCandidate[];
184
- visibleCount: number;
185
- }
186
-
187
- export interface ElectronBroadGetTextScopeDiagnostic {
188
- electronContext: {
189
- launchId?: string;
190
- sessionName?: string;
191
- url?: string;
192
- };
193
- selector: string;
194
- summary: string;
195
- }
196
-
197
- export interface QaAttachedTarget {
198
- error?: string;
199
- sessionName: string;
200
- title?: string;
201
- url?: string;
202
- }
203
-
204
- export interface QaAttachedPreconditionFailure {
205
- error: string;
206
- nextActions: AgentBrowserNextAction[];
207
- }
208
-
209
- export interface TimeoutArtifactEvidence {
210
- absolutePath: string;
211
- exists: boolean;
212
- path: string;
213
- sizeBytes?: number;
214
- state: "missing" | "verified";
215
- stepIndex: number;
216
- }
217
-
218
- export type TimeoutProgressStepStatus = "completed" | "failed" | "pending" | "unknown";
219
-
220
- export interface TimeoutProgressStep {
221
- args: string[];
222
- generatedFrom?: string;
223
- index: number;
224
- reason?: string;
225
- retry?: { args: string[] };
226
- status: TimeoutProgressStepStatus;
227
- }
228
-
229
- export interface TimeoutPartialProgress {
230
- artifacts: TimeoutArtifactEvidence[];
231
- currentPage?: {
232
- source?: "live" | "planned";
233
- title?: string;
234
- url?: string;
235
- };
236
- liveUrlRecovered?: boolean;
237
- openedButPostOpenTimedOut?: boolean;
238
- retryStep?: TimeoutProgressStep;
239
- steps?: TimeoutProgressStep[];
240
- summary: string;
241
- }
242
-
243
- export interface EvalStdinHint {
244
- reason: string;
245
- suggestion: string;
246
- }
247
-
248
- export interface EvalResultWarning {
249
- reason: string;
250
- suggestion: string;
251
- }
252
-
253
- export interface ArtifactCleanupGuidance {
254
- explicitArtifactPaths: string[];
255
- note: string;
256
- owner: "host-file-tools";
257
- summary: string;
258
- }
259
-
260
- export interface ManagedSessionOutcome {
261
- activeAfter: boolean;
262
- activeBefore: boolean;
263
- attemptedSessionName?: string;
264
- currentSessionName: string;
265
- previousSessionName: string;
266
- replacedSessionName?: string;
267
- sessionMode: "auto" | "fresh";
268
- status: "abandoned" | "closed" | "created" | "preserved" | "replaced" | "unchanged";
269
- succeeded: boolean;
270
- summary: string;
271
- }
272
-
273
- export interface ScrollPositionSnapshot {
274
- containerCount: number;
275
- containers: Array<{ id: string; scrollLeft: number; scrollTop: number }>;
276
- innerHeight: number;
277
- innerWidth: number;
278
- scrollHeight: number;
279
- scrollWidth: number;
280
- scrollX: number;
281
- scrollY: number;
282
- }
283
-
284
- export interface ScrollNoopDiagnostic {
285
- after: ScrollPositionSnapshot;
286
- before: ScrollPositionSnapshot;
287
- message: string;
288
- reason: "no-observed-scroll-position-change";
289
- recommendations: string[];
290
- }
291
-
292
- export interface ComboboxFocusDiagnostic {
293
- activeElement: {
294
- expanded?: string;
295
- hasPopup?: string;
296
- name?: string;
297
- role?: string;
298
- tagName?: string;
299
- };
300
- message: string;
301
- reason: "focused-combobox-without-visible-options";
302
- recommendations: string[];
303
- visibleListboxCount: number;
304
- visibleOptionCount: number;
305
- }
306
-
307
- export interface RecordingDependencyWarning {
308
- command: "record start" | "record restart";
309
- dependency: "ffmpeg";
310
- message: string;
311
- reason: "ffmpeg-missing-for-recording";
312
- recommendations: string[];
313
- }
314
-
315
- export interface ScreenshotPathRequest {
316
- absolutePath: string;
317
- path: string;
318
- }
319
-
320
- export interface PreparedAgentBrowserArgs {
321
- args: string[];
322
- batchScreenshotPathRequests?: Array<ScreenshotPathRequest | undefined>;
323
- screenshotPathRequest?: ScreenshotPathRequest;
324
- stdin?: string;
325
- }
326
-
327
- export interface ScreenshotArtifactRequest extends ScreenshotPathRequest {
328
- status?: "missing" | "repaired-from-temp" | "saved" | "upstream-temp-only";
329
- tempPath?: string;
330
- }
331
-
332
- export interface PinnedBatchPlan {
333
- includeNavigationSummary: boolean;
334
- steps: BatchCommandStep[];
335
- unwrapMode: PinnedBatchUnwrapMode;
336
- }
337
-
338
- export interface StaleRefPreflight {
339
- message: string;
340
- refIds: string[];
341
- snapshot?: SessionRefSnapshot;
342
- snapshotInvalidation?: SessionRefSnapshotInvalidation;
343
- }
344
-
345
- export interface AboutBlankSessionMismatch {
346
- activeUrl: "about:blank";
347
- recoveryApplied: boolean;
348
- recoveryHint: string;
349
- targetTitle?: string;
350
- targetUrl: string;
351
- }
352
-
353
- export interface ElectronHandoffSummary {
354
- error?: string;
355
- handoff: "connect" | "snapshot" | "tabs";
356
- refSnapshot?: SessionRefSnapshot;
357
- snapshot?: unknown;
358
- snapshotRetryCount?: number;
359
- tabs?: unknown;
360
- }
361
-
362
- export interface ElectronManagedSessionTarget {
363
- error?: string;
364
- sessionName: string;
365
- title?: string;
366
- url?: string;
367
- }
368
-
369
- export type ElectronSessionMismatchReason =
370
- | "launch-session-not-current"
371
- | "managed-session-about-blank-while-launch-target-live"
372
- | "managed-session-target-not-in-launch-status";
373
-
374
- export interface ElectronSessionMismatch {
375
- launchId: string;
376
- liveTarget?: ElectronCdpTarget;
377
- managedSession: ElectronManagedSessionTarget;
378
- nextActionIds: string[];
379
- reason: ElectronSessionMismatchReason;
380
- sessionName?: string;
381
- statusTargets: ElectronCdpTarget[];
382
- summary: string;
383
- }
384
-
385
- export type ElectronPostCommandHealthReason = "about-blank-no-live-target" | "debug-port-dead" | "process-dead";
386
-
387
- export interface ElectronPostCommandHealthDiagnostic {
388
- appName: string;
389
- command?: string;
390
- launchId: string;
391
- nextActionIds: string[];
392
- reason: ElectronPostCommandHealthReason;
393
- sessionName?: string;
394
- status: ElectronLaunchStatus;
395
- summary: string;
396
- target?: SessionTabTarget;
397
- }
398
-
399
- export interface FillVerificationDiagnostic {
400
- actual?: string;
401
- expected: string;
402
- method: "text" | "value";
403
- nextActionIds: string[];
404
- reason: "contenteditable-fill-mismatch" | "value-fill-mismatch";
405
- selector: string;
406
- status: "mismatch";
407
- summary: string;
408
- }
409
-
410
- export interface ElectronRefFreshnessDiagnostic {
411
- command?: string;
412
- launchId: string;
413
- nextActionIds: string[];
414
- sessionName?: string;
415
- summary: string;
416
- }
417
-
418
- export interface PreparedBrowserRun {
419
- batchScreenshotArtifactRequests?: Array<ScreenshotArtifactRequest | undefined>;
420
- commandTokens: string[];
421
- compiledElectron?: CompiledAgentBrowserElectron;
422
- compiledJob?: CompiledAgentBrowserJob;
423
- compiledNetworkSourceLookup?: CompiledAgentBrowserNetworkSourceLookup;
424
- compiledQaPreset?: CompiledAgentBrowserQaPreset;
425
- compiledSemanticAction?: CompiledAgentBrowserSemanticAction;
426
- compiledSourceLookup?: CompiledAgentBrowserSourceLookup;
427
- compatibilityWorkaround?: CompatibilityWorkaround;
428
- electronFailedConnectCleanup?: ElectronCleanupResult;
429
- electronHandoff?: ElectronHandoffSummary;
430
- electronLaunch?: ElectronLaunchSuccess;
431
- exactSensitiveValues: string[];
432
- executionPlan: AgentBrowserExecutionPlan;
433
- includePinnedNavigationSummary: boolean;
434
- clickDispatchProbe?: ClickDispatchProbe;
435
- pinnedBatchUnwrapMode?: PinnedBatchUnwrapMode;
436
- preparedArgs: PreparedAgentBrowserArgs;
437
- priorRefSnapshotState?: SessionRefSnapshot;
438
- priorSessionTabTarget?: SessionTabTarget;
439
- processArgs: string[];
440
- processStdin?: string;
441
- processTimeoutMs?: number;
442
- redactedArgs: string[];
443
- redactedCompiledElectron?: CompiledAgentBrowserElectron;
444
- redactedCompiledJob?: CompiledAgentBrowserJob;
445
- redactedCompiledNetworkSourceLookup?: CompiledAgentBrowserNetworkSourceLookup;
446
- redactedCompiledQaPreset?: CompiledAgentBrowserQaPreset;
447
- redactedCompiledSemanticAction?: CompiledAgentBrowserSemanticAction;
448
- redactedCompiledSourceLookup?: CompiledAgentBrowserSourceLookup;
449
- redactedEffectiveArgs: string[];
450
- redactedProcessArgs: string[];
451
- redactedRecoveryHint?: ReturnType<typeof import("../../runtime.js").buildExecutionPlan>["recoveryHint"];
452
- resolvedSemanticActionRefSnapshot?: SessionRefSnapshot;
453
- runtimeToolArgs: string[];
454
- runtimeToolStdin?: string;
455
- screenshotArtifactRequest?: ScreenshotArtifactRequest;
456
- scrollPositionBefore?: ScrollPositionSnapshot;
457
- sessionMode: "auto" | "fresh";
458
- sessionTabCorrection?: OpenResultTabCorrection;
459
- sessionTabPinningReason?: string;
460
- shouldProbeScrollNoop: boolean;
461
- statePatch: BrowserRunStatePatch;
462
- userRequestedJson: boolean;
463
- }
464
-
465
- export type PrepareBrowserRunResult =
466
- | { kind: "early-result"; result: AgentBrowserToolResult; statePatch?: BrowserRunStatePatch }
467
- | { kind: "ready"; prepared: PreparedBrowserRun };
468
-
469
- export interface ProcessBrowserOutputInput extends BrowserRunOptions {
470
- prepared: PreparedBrowserRun;
471
- processResult: AgentBrowserProcessResult;
472
- }
473
-
474
- export interface BrowserProcessOutputResult {
475
- result: AgentBrowserToolResult;
476
- statePatch: BrowserRunStatePatch;
477
- }
478
-
479
- export interface ParseFailureOutput {
480
- artifactManifest?: SessionArtifactManifest;
481
- artifactRetentionSummary?: string;
482
- fullOutputPath?: string;
483
- fullOutputUnavailable?: string;
484
- }
485
-
486
- export interface FinalRecoveryState {
487
- categoryDetails: AgentBrowserResultCategoryDetails;
488
- currentRefSnapshot?: SessionRefSnapshot;
489
- currentRefSnapshotInvalidation?: SessionRefSnapshotInvalidation;
490
- noActivePageSnapshotFailure: boolean;
491
- richInputRecoveryDiagnostic?: RichInputRecoveryDiagnostic;
492
- visibleRefFallbackDiagnostic?: VisibleRefFallbackDiagnostic;
493
- visibleRefFallbackSessionName?: string;
494
- }
495
-
496
- export interface FinalResultInput {
497
- aboutBlankSessionMismatch?: AboutBlankSessionMismatch;
498
- artifactCleanup?: ArtifactCleanupGuidance;
499
- categoryDetails: AgentBrowserResultCategoryDetails;
500
- clickDispatchDiagnostic?: ClickDispatchDiagnostic;
501
- commandTokens: string[];
502
- comboboxFocusDiagnostic?: ComboboxFocusDiagnostic;
503
- compiledNetworkSourceLookup?: CompiledAgentBrowserNetworkSourceLookup;
504
- compiledSemanticAction?: CompiledAgentBrowserSemanticAction;
505
- compatibilityWorkaround?: CompatibilityWorkaround;
506
- currentRefSnapshot?: SessionRefSnapshot;
507
- currentRefSnapshotInvalidation?: SessionRefSnapshotInvalidation;
508
- currentSessionTabTarget?: SessionTabTarget;
509
- electronBroadGetTextScopeDiagnostics: ElectronBroadGetTextScopeDiagnostic[];
510
- electronFailedConnectCleanup?: ElectronCleanupResult;
511
- electronHandoff?: ElectronHandoffSummary;
512
- electronLaunch?: ElectronLaunchSuccess;
513
- electronLaunchRecord?: ElectronLaunchRecord;
514
- electronLaunchRecords: Map<string, ElectronLaunchRecord>;
515
- electronPostCommandHealth?: ElectronPostCommandHealthDiagnostic;
516
- electronProfileIsolationDetails: unknown;
517
- electronRefFreshnessDiagnostic?: ElectronRefFreshnessDiagnostic;
518
- electronSessionMismatch?: ElectronSessionMismatch;
519
- errorText?: string;
520
- evalStdinHint?: EvalStdinHint;
521
- evalResultWarning?: EvalResultWarning;
522
- exactSensitiveValues: string[];
523
- executionPlan: AgentBrowserExecutionPlan;
524
- fillVerificationDiagnostic?: FillVerificationDiagnostic;
525
- inspectionText?: string;
526
- managedSessionOutcome?: ManagedSessionOutcome;
527
- navigationSummary?: NavigationSummary;
528
- networkSourceLookup?: AgentBrowserNetworkSourceLookupAnalysis;
529
- noActivePageSnapshotFailure: boolean;
530
- openResultTabCorrection?: OpenResultTabCorrection;
531
- overlayBlockerDiagnostic?: OverlayBlockerDiagnostic;
532
- parseError?: string;
533
- parseFailureOutput: ParseFailureOutput;
534
- parseSucceeded: boolean;
535
- plainTextInspection: boolean;
536
- presentation: AgentBrowserToolPresentation;
537
- presentationEnvelope?: AgentBrowserEnvelope;
538
- priorSessionTabTarget?: SessionTabTarget;
539
- processResult: AgentBrowserProcessResult;
540
- qaAttachedTarget?: QaAttachedTarget;
541
- qaPreset?: AgentBrowserQaPresetAnalysis;
542
- recordingDependencyWarning?: RecordingDependencyWarning;
543
- redactedArgs: string[];
544
- redactedCompiledElectron?: CompiledAgentBrowserElectron;
545
- redactedCompiledJob?: CompiledAgentBrowserJob;
546
- redactedCompiledNetworkSourceLookup?: CompiledAgentBrowserNetworkSourceLookup;
547
- redactedCompiledQaPreset?: CompiledAgentBrowserQaPreset;
548
- redactedCompiledSemanticAction?: CompiledAgentBrowserSemanticAction;
549
- redactedCompiledSourceLookup?: CompiledAgentBrowserSourceLookup;
550
- redactedContent: AgentBrowserToolResult["content"];
551
- redactedProcessArgs: string[];
552
- redactedRecoveryHint?: AgentBrowserExecutionPlan["recoveryHint"];
553
- resultArtifactManifest?: SessionArtifactManifest;
554
- richInputRecoveryDiagnostic?: RichInputRecoveryDiagnostic;
555
- scrollNoopDiagnostic?: ScrollNoopDiagnostic;
556
- selectorTextVisibilityDiagnostics: SelectorTextVisibilityDiagnostic[];
557
- sessionMode: "auto" | "fresh";
558
- sessionTabCorrection?: OpenResultTabCorrection;
559
- sourceLookup?: AgentBrowserSourceLookupAnalysis;
560
- succeeded: boolean;
561
- timeoutPartialProgress?: TimeoutPartialProgress;
562
- userRequestedJson: boolean;
563
- visibleRefFallbackDiagnostic?: VisibleRefFallbackDiagnostic;
564
- visibleRefFallbackSessionName?: string;
565
- }