@kritchoff/agent-browser 0.9.12 → 0.9.14

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/index.d.ts CHANGED
@@ -5,6 +5,12 @@ export interface AgentOptions {
5
5
  */
6
6
  dist?: boolean;
7
7
  }
8
+ /**
9
+ * WootzAgent SDK
10
+ *
11
+ * A high-level, Playwright-compatible API for controlling the WootzApp Android Agent.
12
+ * Handles environment lifecycle (VDI snapshots, fast resets) and browser automation.
13
+ */
8
14
  export declare class WootzAgent {
9
15
  private options;
10
16
  constructor(options?: AgentOptions);
@@ -21,14 +27,52 @@ export declare class WootzAgent {
21
27
  /**
22
28
  * Fast Reset (~15s).
23
29
  * Restarts the Android framework and browser to a clean state.
24
- * Does NOT restart the Docker container.
25
30
  */
26
31
  reset(): Promise<void>;
32
+ navigate(url: string, waitUntil?: 'load' | 'domcontentloaded' | 'networkidle'): Promise<string>;
33
+ click(selector: string): Promise<string>;
34
+ doubleClick(selector: string): Promise<string>;
35
+ type(selector: string, text: string, delay?: number): Promise<string>;
36
+ fill(selector: string, value: string): Promise<string>;
37
+ check(selector: string): Promise<string>;
38
+ uncheck(selector: string): Promise<string>;
39
+ hover(selector: string): Promise<string>;
40
+ focus(selector: string): Promise<string>;
41
+ press(key: string, selector?: string): Promise<string>;
42
+ selectOption(selector: string, value: string | string[]): Promise<string>;
43
+ /**
44
+ * Get an accessibility snapshot (AXTree) of the current page.
45
+ */
46
+ snapshot(): Promise<string>;
47
+ innerText(selector: string): Promise<string>;
48
+ innerHTML(selector: string): Promise<string>;
49
+ getAttribute(selector: string, attribute: string): Promise<string>;
50
+ inputValue(selector: string): Promise<string>;
51
+ isVisible(selector: string): Promise<boolean>;
52
+ isEnabled(selector: string): Promise<boolean>;
53
+ isChecked(selector: string): Promise<boolean>;
54
+ waitForSelector(selector: string, state?: 'attached' | 'detached' | 'visible' | 'hidden', timeout?: number): Promise<string>;
55
+ waitForTimeout(ms: number): Promise<string>;
56
+ waitForLoadState(state?: 'load' | 'domcontentloaded' | 'networkidle'): Promise<string>;
57
+ reload(): Promise<string>;
58
+ goBack(): Promise<string>;
59
+ goForward(): Promise<string>;
60
+ getByRole(role: string, name?: string, exact?: boolean): Promise<string>;
61
+ getByText(text: string, exact?: boolean): Promise<string>;
62
+ getByPlaceholder(placeholder: string, exact?: boolean): Promise<string>;
63
+ getByTestId(testId: string): Promise<string>;
64
+ screenshot(path?: string): Promise<string>;
65
+ scroll(x: number, y: number): Promise<string>;
66
+ evaluate(script: string): Promise<string>;
67
+ newTab(url?: string): Promise<string>;
68
+ switchTab(index: number): Promise<string>;
69
+ closeTab(index?: number): Promise<string>;
70
+ listTabs(): Promise<string>;
27
71
  /**
28
72
  * Execute an arbitrary agent command CLI-style.
29
- * e.g. agent.command('open', 'https://google.com')
73
+ * Returns the command output as a string.
30
74
  */
31
- command(...args: string[]): Promise<void>;
75
+ command(...args: string[]): Promise<string>;
32
76
  private runSdkCommand;
33
77
  }
34
78
  export default WootzAgent;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAe;gBAElB,OAAO,GAAE,YAAiB;IAOtC;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAS3B;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;OAGG;IACG,OAAO,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,OAAO,CAAC,aAAa;CAsBtB;AAGD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -2,16 +2,22 @@ import { spawn } from 'child_process';
2
2
  import path from 'path';
3
3
  import { fileURLToPath } from 'url';
4
4
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
- // If running from dist/, go up one level to find sdk.sh in root
6
5
  const SDK_SCRIPT = path.resolve(__dirname, '../sdk.sh');
6
+ /**
7
+ * WootzAgent SDK
8
+ *
9
+ * A high-level, Playwright-compatible API for controlling the WootzApp Android Agent.
10
+ * Handles environment lifecycle (VDI snapshots, fast resets) and browser automation.
11
+ */
7
12
  export class WootzAgent {
8
13
  options;
9
14
  constructor(options = {}) {
10
15
  this.options = {
11
- dist: true, // Default to distribution mode for end users
16
+ dist: true,
12
17
  ...options,
13
18
  };
14
19
  }
20
+ // --- Lifecycle Management ---
15
21
  /**
16
22
  * Start the Agent Environment.
17
23
  * - First run: Cold boot (~60s), creates baseline snapshot.
@@ -39,31 +45,183 @@ export class WootzAgent {
39
45
  /**
40
46
  * Fast Reset (~15s).
41
47
  * Restarts the Android framework and browser to a clean state.
42
- * Does NOT restart the Docker container.
43
48
  */
44
49
  async reset() {
45
50
  await this.runSdkCommand(['reset']);
46
51
  }
52
+ // --- Core Browser Actions ---
53
+ async navigate(url, waitUntil = 'load') {
54
+ return await this.command('navigate', url, `--waitUntil=${waitUntil}`);
55
+ }
56
+ async click(selector) {
57
+ return await this.command('click', selector);
58
+ }
59
+ async doubleClick(selector) {
60
+ return await this.command('dblclick', selector);
61
+ }
62
+ async type(selector, text, delay) {
63
+ const args = ['type', selector, text];
64
+ if (delay)
65
+ args.push(`--delay=${delay}`);
66
+ return await this.command(...args);
67
+ }
68
+ async fill(selector, value) {
69
+ return await this.command('fill', selector, value);
70
+ }
71
+ async check(selector) {
72
+ return await this.command('check', selector);
73
+ }
74
+ async uncheck(selector) {
75
+ return await this.command('uncheck', selector);
76
+ }
77
+ async hover(selector) {
78
+ return await this.command('hover', selector);
79
+ }
80
+ async focus(selector) {
81
+ return await this.command('focus', selector);
82
+ }
83
+ async press(key, selector) {
84
+ if (selector)
85
+ return await this.command('press', selector, key);
86
+ return await this.command('press', key);
87
+ }
88
+ async selectOption(selector, value) {
89
+ const val = Array.isArray(value) ? value.join(',') : value;
90
+ return await this.command('select', selector, val);
91
+ }
92
+ // --- Introspection & State ---
93
+ /**
94
+ * Get an accessibility snapshot (AXTree) of the current page.
95
+ */
96
+ async snapshot() {
97
+ return await this.command('snapshot');
98
+ }
99
+ async innerText(selector) {
100
+ return await this.command('innertext', selector);
101
+ }
102
+ async innerHTML(selector) {
103
+ return await this.command('innerhtml', selector);
104
+ }
105
+ async getAttribute(selector, attribute) {
106
+ return await this.command('getattribute', selector, attribute);
107
+ }
108
+ async inputValue(selector) {
109
+ return await this.command('inputvalue', selector);
110
+ }
111
+ async isVisible(selector) {
112
+ const out = await this.command('isvisible', selector);
113
+ return out.includes('true');
114
+ }
115
+ async isEnabled(selector) {
116
+ const out = await this.command('isenabled', selector);
117
+ return out.includes('true');
118
+ }
119
+ async isChecked(selector) {
120
+ const out = await this.command('ischecked', selector);
121
+ return out.includes('true');
122
+ }
123
+ // --- Waiting & Navigation ---
124
+ async waitForSelector(selector, state = 'visible', timeout) {
125
+ const args = ['wait', selector, `--state=${state}`];
126
+ if (timeout)
127
+ args.push(`--timeout=${timeout}`);
128
+ return await this.command(...args);
129
+ }
130
+ async waitForTimeout(ms) {
131
+ return await this.command('wait', ms.toString());
132
+ }
133
+ async waitForLoadState(state = 'load') {
134
+ return await this.command('wait', `--state=${state}`);
135
+ }
136
+ async reload() {
137
+ return await this.command('reload');
138
+ }
139
+ async goBack() {
140
+ return await this.command('back');
141
+ }
142
+ async goForward() {
143
+ return await this.command('forward');
144
+ }
145
+ // --- Semantic Locators ---
146
+ async getByRole(role, name, exact = false) {
147
+ const args = ['getbyrole', role];
148
+ if (name)
149
+ args.push(`--name="${name}"`);
150
+ if (exact)
151
+ args.push('--exact');
152
+ return await this.command(...args);
153
+ }
154
+ async getByText(text, exact = false) {
155
+ const args = ['getbytext', text];
156
+ if (exact)
157
+ args.push('--exact');
158
+ return await this.command(...args);
159
+ }
160
+ async getByPlaceholder(placeholder, exact = false) {
161
+ const args = ['getbyplaceholder', placeholder];
162
+ if (exact)
163
+ args.push('--exact');
164
+ return await this.command(...args);
165
+ }
166
+ async getByTestId(testId) {
167
+ return await this.command('getbytestid', testId);
168
+ }
169
+ // --- Utilities ---
170
+ async screenshot(path) {
171
+ return await this.command('screenshot', path || '');
172
+ }
173
+ async scroll(x, y) {
174
+ return await this.command('scroll', x.toString(), y.toString());
175
+ }
176
+ async evaluate(script) {
177
+ return await this.command('evaluate', script);
178
+ }
179
+ // --- Tab Management ---
180
+ async newTab(url) {
181
+ const args = ['tab_new'];
182
+ if (url)
183
+ args.push(url);
184
+ return await this.command(...args);
185
+ }
186
+ async switchTab(index) {
187
+ return await this.command('tab_switch', index.toString());
188
+ }
189
+ async closeTab(index) {
190
+ const args = ['tab_close'];
191
+ if (index !== undefined)
192
+ args.push(index.toString());
193
+ return await this.command(...args);
194
+ }
195
+ async listTabs() {
196
+ return await this.command('tab_list');
197
+ }
198
+ // --- Generic Execution ---
47
199
  /**
48
200
  * Execute an arbitrary agent command CLI-style.
49
- * e.g. agent.command('open', 'https://google.com')
201
+ * Returns the command output as a string.
50
202
  */
51
203
  async command(...args) {
52
- await this.runSdkCommand(['agent', ...args]);
204
+ return await this.runSdkCommand(['agent', ...args]);
53
205
  }
54
206
  runSdkCommand(args) {
55
207
  return new Promise((resolve, reject) => {
56
- console.log(`[WootzAgent] Running: sdk.sh ${args.join(' ')}`);
57
208
  const child = spawn(SDK_SCRIPT, args, {
58
- stdio: 'inherit', // Pipe output to parent process
59
- shell: true, // Use shell for script execution
209
+ stdio: ['inherit', 'pipe', 'inherit'], // Capture stdout, inherit stderr for logs
210
+ shell: true,
211
+ });
212
+ let output = '';
213
+ child.stdout?.on('data', (data) => {
214
+ const str = data.toString();
215
+ output += str;
216
+ // Stream output to terminal for observability
217
+ process.stdout.write(str);
60
218
  });
61
219
  child.on('error', (err) => {
62
220
  reject(new Error(`Failed to start SDK script: ${err.message}`));
63
221
  });
64
222
  child.on('close', (code) => {
65
223
  if (code === 0) {
66
- resolve();
224
+ resolve(output.trim());
67
225
  }
68
226
  else {
69
227
  reject(new Error(`SDK script exited with code ${code}`));
@@ -72,6 +230,5 @@ export class WootzAgent {
72
230
  });
73
231
  }
74
232
  }
75
- // Default export for ease of use
76
233
  export default WootzAgent;
77
234
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,gEAAgE;AAChE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AAUxD,MAAM,OAAO,UAAU;IACb,OAAO,CAAe;IAE9B,YAAY,UAAwB,EAAE;QACpC,IAAI,CAAC,OAAO,GAAG;YACb,IAAI,EAAE,IAAI,EAAE,6CAA6C;YACzD,GAAG,OAAO;SACX,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,GAAG,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,GAAG,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClB,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,GAAG,IAAc;QAC7B,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAEO,aAAa,CAAC,IAAc;QAClC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAE9D,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE;gBACpC,KAAK,EAAE,SAAS,EAAE,gCAAgC;gBAClD,KAAK,EAAE,IAAI,EAAO,iCAAiC;aACpD,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACxB,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED,iCAAiC;AACjC,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kritchoff/agent-browser",
3
- "version": "0.9.12",
3
+ "version": "0.9.14",
4
4
  "description": "Headless browser automation CLI for AI agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",