@omniaibot/win-x64 1.6.2 → 1.6.3

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 (41) hide show
  1. package/bin/omnibot-windows-x64/VERSION +1 -1
  2. package/bin/omnibot-windows-x64/_asyncio.pyd +0 -0
  3. package/bin/omnibot-windows-x64/_bz2.pyd +0 -0
  4. package/bin/omnibot-windows-x64/_ctypes.pyd +0 -0
  5. package/bin/omnibot-windows-x64/_decimal.pyd +0 -0
  6. package/bin/omnibot-windows-x64/_hashlib.pyd +0 -0
  7. package/bin/omnibot-windows-x64/_lzma.pyd +0 -0
  8. package/bin/omnibot-windows-x64/_multiprocessing.pyd +0 -0
  9. package/bin/omnibot-windows-x64/_overlapped.pyd +0 -0
  10. package/bin/omnibot-windows-x64/_queue.pyd +0 -0
  11. package/bin/omnibot-windows-x64/_socket.pyd +0 -0
  12. package/bin/omnibot-windows-x64/_ssl.pyd +0 -0
  13. package/bin/omnibot-windows-x64/_uuid.pyd +0 -0
  14. package/bin/omnibot-windows-x64/_wmi.pyd +0 -0
  15. package/bin/omnibot-windows-x64/certifi/cacert.pem +0 -70
  16. package/bin/omnibot-windows-x64/cryptography/hazmat/bindings/_rust.pyd +0 -0
  17. package/bin/omnibot-windows-x64/libcrypto-3-x64.dll +0 -0
  18. package/bin/omnibot-windows-x64/libffi-8.dll +0 -0
  19. package/bin/omnibot-windows-x64/libssl-3-x64.dll +0 -0
  20. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/SKILL.md +249 -196
  21. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/anti-patterns.md +49 -37
  22. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/command-reference.md +741 -620
  23. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/css-only-dropdown-js.md +50 -50
  24. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/debugging-and-evidence.md +129 -97
  25. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/fallback-operations.md +175 -171
  26. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/operation-patterns.md +396 -384
  27. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/runtime-and-status.md +121 -111
  28. package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/session-and-tabs.md +164 -164
  29. package/bin/omnibot-windows-x64/omnibot/sop/tmwebdriver_sop.md +128 -128
  30. package/bin/omnibot-windows-x64/omnibot/sop/vue3_component_sop.md +163 -163
  31. package/bin/omnibot-windows-x64/omnibot-windows-x64.exe +0 -0
  32. package/bin/omnibot-windows-x64/pyexpat.pyd +0 -0
  33. package/bin/omnibot-windows-x64/python3.dll +0 -0
  34. package/bin/omnibot-windows-x64/python312.dll +0 -0
  35. package/bin/omnibot-windows-x64/select.pyd +0 -0
  36. package/bin/omnibot-windows-x64/unicodedata.pyd +0 -0
  37. package/bin/omnibot-windows-x64/vcruntime140.dll +0 -0
  38. package/bin/omnibot-windows-x64/vcruntime140_1.dll +0 -0
  39. package/package.json +1 -1
  40. package/bin/omnibot-windows-x64/libcrypto-3.dll +0 -0
  41. package/bin/omnibot-windows-x64/libssl-3.dll +0 -0
@@ -1,620 +1,741 @@
1
- # Omnibot Command Reference
2
-
3
- This is a lookup table, not a behavior guide. Choose behavior from `operation-patterns.md`, use `session-and-tabs.md` for targeting, and use `fallback-operations.md` before dropping to lower tiers.
4
-
5
- Unless marked as discovery, runtime, or tab creation, page-state examples assume `OMNIBOT_SESSION_TOKEN=<workflow>` and `--tab-id <TAB_ID>`.
6
-
7
- ## Runtime & Status
8
-
9
- ### doctor
10
-
11
- Purpose: Check daemon and browser extension health.
12
-
13
- ```bash
14
- omnibot doctor
15
- ```
16
-
17
- Preferred pattern: See `runtime-and-status.md#startup-check`.
18
- Fallback relation: Not a fallback command.
19
-
20
- ### status
21
-
22
- Purpose: Show daemon status only (lighter than `doctor`).
23
-
24
- ```bash
25
- omnibot status
26
- ```
27
-
28
- Preferred pattern: See `runtime-and-status.md#daemon-lifecycle`.
29
- Fallback relation: Not a fallback command.
30
-
31
- ### start
32
-
33
- Purpose: Start the daemon in the background.
34
-
35
- ```bash
36
- omnibot start
37
- ```
38
-
39
- Equivalent to: `omnibot daemon start`
40
-
41
- ### stop
42
-
43
- Purpose: Stop the running daemon.
44
-
45
- ```bash
46
- omnibot stop
47
- ```
48
-
49
- Equivalent to: `omnibot daemon stop`
50
-
51
- ### run
52
-
53
- Purpose: Run the daemon in the foreground.
54
-
55
- ```bash
56
- omnibot run
57
- ```
58
-
59
- Equivalent to: `omnibot daemon run`
60
-
61
- ### tabs
62
-
63
- Purpose: List connected browser tabs and discover tab ids.
64
-
65
- ```bash
66
- omnibot tabs
67
- ```
68
-
69
- Preferred pattern: See `session-and-tabs.md#tab-explicit`.
70
- Fallback relation: Not a fallback command.
71
-
72
- ### license status
73
-
74
- Purpose: Check license state.
75
-
76
- ```bash
77
- omnibot license status
78
- ```
79
-
80
- Preferred pattern: See `runtime-and-status.md#startup-check`.
81
- Fallback relation: Not a fallback command.
82
-
83
- ## Reading
84
-
85
- ### read
86
-
87
- Purpose: Read clean rendered page text/Markdown from an existing tab or a temporary URL tab.
88
-
89
- ```bash
90
- OMNIBOT_SESSION_TOKEN=research omnibot read --screens 5 --tab-id <TAB_ID>
91
- OMNIBOT_SESSION_TOKEN=research omnibot read --screens 5 --timeout 120 --tab-id <TAB_ID>
92
- OMNIBOT_SESSION_TOKEN=research omnibot read --screens 3 https://example.com/article
93
- OMNIBOT_SESSION_TOKEN=research omnibot read --json --screens 5 --tab-id <TAB_ID>
94
- ```
95
-
96
- Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
97
- Fallback relation: Prefer for page content. Use `snapshot -i` when the next step is action planning, and `get`/`is`/`wait` for narrow state verification.
98
-
99
- ### snapshot -i
100
-
101
- Purpose: Read accessibility tree and produce actionable `@eN` refs.
102
-
103
- ```bash
104
- OMNIBOT_SESSION_TOKEN=checkout omnibot snapshot -i --tab-id <TAB_ID>
105
- OMNIBOT_SESSION_TOKEN=checkout omnibot snapshot -i -c -d 4 --tab-id <TAB_ID>
106
- OMNIBOT_SESSION_TOKEN=checkout omnibot snapshot -i -s "#main" -u --tab-id <TAB_ID>
107
- ```
108
-
109
- Preferred pattern: See `operation-patterns.md#click`, `operation-patterns.md#fill`, and `session-and-tabs.md#ref-scope`.
110
- Fallback relation: Tier 2 after semantic find.
111
-
112
- ### get
113
-
114
- Purpose: Read one value or element state without dumping the page.
115
-
116
- ```bash
117
- OMNIBOT_SESSION_TOKEN=research omnibot get title --tab-id <TAB_ID>
118
- OMNIBOT_SESSION_TOKEN=research omnibot get url --tab-id <TAB_ID>
119
- OMNIBOT_SESSION_TOKEN=research omnibot get text "#main" --tab-id <TAB_ID>
120
- OMNIBOT_SESSION_TOKEN=research omnibot get html "#main" --tab-id <TAB_ID>
121
- OMNIBOT_SESSION_TOKEN=research omnibot get value "input[name=email]" --tab-id <TAB_ID>
122
- OMNIBOT_SESSION_TOKEN=research omnibot get attr "a.login" href --tab-id <TAB_ID>
123
- OMNIBOT_SESSION_TOKEN=research omnibot get count ".item" --tab-id <TAB_ID>
124
- OMNIBOT_SESSION_TOKEN=research omnibot get box "#submit" --tab-id <TAB_ID>
125
- OMNIBOT_SESSION_TOKEN=research omnibot get styles "#submit" --tab-id <TAB_ID>
126
- ```
127
-
128
- Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
129
- Fallback relation: Selector tier for reading; escalate only if unavailable.
130
-
131
- ### is
132
-
133
- Purpose: Check element state.
134
-
135
- ```bash
136
- OMNIBOT_SESSION_TOKEN=checkout omnibot is visible "#submit" --tab-id <TAB_ID>
137
- OMNIBOT_SESSION_TOKEN=checkout omnibot is enabled "#submit" --tab-id <TAB_ID>
138
- OMNIBOT_SESSION_TOKEN=checkout omnibot is checked "#agree" --tab-id <TAB_ID>
139
- ```
140
-
141
- Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#select--check`.
142
- Fallback relation: Prefer before visual or JavaScript checks.
143
-
144
- ## Actions
145
-
146
- ### click
147
-
148
- Purpose: Click an element by `@eN` ref or selector.
149
-
150
- ```bash
151
- OMNIBOT_SESSION_TOKEN=checkout omnibot click --tab-id <TAB_ID> @e4
152
- OMNIBOT_SESSION_TOKEN=checkout omnibot click --tab-id <TAB_ID> @e4 --new-tab
153
- OMNIBOT_SESSION_TOKEN=checkout omnibot click "button[type=submit]" --tab-id <TAB_ID>
154
- ```
155
-
156
- Preferred pattern: See `operation-patterns.md#click`.
157
- Fallback relation: Tier 2 with refs, Tier 3 with selector.
158
-
159
- ### dblclick
160
-
161
- Purpose: Double-click an element by `@eN` ref or selector.
162
-
163
- ```bash
164
- OMNIBOT_SESSION_TOKEN=editor omnibot dblclick --tab-id <TAB_ID> @e7
165
- ```
166
-
167
- Preferred pattern: See `operation-patterns.md#click`.
168
- Fallback relation: Prefer semantic or snapshot first; then selector.
169
-
170
- ### fill
171
-
172
- Purpose: Replace an input value.
173
-
174
- ```bash
175
- OMNIBOT_SESSION_TOKEN=checkout omnibot fill --tab-id <TAB_ID> @e2 "a@b.com"
176
- OMNIBOT_SESSION_TOKEN=checkout omnibot fill "input[name=email]" "a@b.com" --tab-id <TAB_ID>
177
- ```
178
-
179
- Preferred pattern: See `operation-patterns.md#fill`.
180
- Fallback relation: Tier 2 with refs, Tier 3 with selector.
181
-
182
- ### type
183
-
184
- Purpose: Type text into an element.
185
-
186
- ```bash
187
- OMNIBOT_SESSION_TOKEN=search omnibot type --tab-id <TAB_ID> @e3 "omnibot"
188
- ```
189
-
190
- Preferred pattern: See `operation-patterns.md#fill`.
191
- Fallback relation: Use after fill is not appropriate or focus is needed.
192
-
193
- ### press
194
-
195
- Purpose: Press a key in the target tab.
196
-
197
- ```bash
198
- OMNIBOT_SESSION_TOKEN=search omnibot press Enter --tab-id <TAB_ID>
199
- ```
200
-
201
- Preferred pattern: See `operation-patterns.md#fill` and `operation-patterns.md#wait`.
202
- Fallback relation: Not a fallback by itself; verify after pressing.
203
-
204
- ### hover
205
-
206
- Purpose: Hover an element by ref or selector.
207
-
208
- ```bash
209
- OMNIBOT_SESSION_TOKEN=menu omnibot hover --tab-id <TAB_ID> @e5
210
- ```
211
-
212
- Preferred pattern: Observe menu state, hover, then verify visible options.
213
- Fallback relation: Use mouse move only if hover fails.
214
-
215
- ### focus
216
-
217
- Purpose: Focus an element by selector.
218
-
219
- ```bash
220
- OMNIBOT_SESSION_TOKEN=form omnibot focus "input[name=email]" --tab-id <TAB_ID>
221
- ```
222
-
223
- Preferred pattern: See `operation-patterns.md#fill`.
224
- Fallback relation: Selector tier before keyboard/type fallback.
225
-
226
- ### select
227
-
228
- Purpose: Select an option in a dropdown.
229
-
230
- ```bash
231
- OMNIBOT_SESSION_TOKEN=form omnibot select @e5 "US" --tab-id <TAB_ID>
232
- ```
233
-
234
- Preferred pattern: See `operation-patterns.md#select--check`.
235
- Fallback relation: Prefer refs/selectors before JavaScript value changes. For CSS-only dropdowns whose options are absent from `snapshot -i`, see `fallback-operations.md#css-only-dropdown-javascript-fallback`.
236
-
237
- ### check / uncheck
238
-
239
- Purpose: Set checkbox state.
240
-
241
- ```bash
242
- OMNIBOT_SESSION_TOKEN=form omnibot check @e6 --tab-id <TAB_ID>
243
- OMNIBOT_SESSION_TOKEN=form omnibot uncheck @e6 --tab-id <TAB_ID>
244
- ```
245
-
246
- Preferred pattern: See `operation-patterns.md#select--check`.
247
- Fallback relation: Verify with `is checked` before and after.
248
-
249
- ### scroll / scrollintoview
250
-
251
- Purpose: Scroll page or element.
252
-
253
- ```bash
254
- OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --tab-id <TAB_ID>
255
- OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --selector "#list" --tab-id <TAB_ID>
256
- OMNIBOT_SESSION_TOKEN=read omnibot scrollintoview @e7 --tab-id <TAB_ID>
257
- ```
258
-
259
- Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
260
- Fallback relation: DOM or mouse scroll only after standard scroll fails.
261
-
262
- ### drag
263
-
264
- Purpose: Drag from one element to another.
265
-
266
- ```bash
267
- OMNIBOT_SESSION_TOKEN=board omnibot drag @e8 @e9 --tab-id <TAB_ID>
268
- ```
269
-
270
- Preferred pattern: Observe source and target, drag, verify position/state.
271
- Fallback relation: Mouse drag is Tier 5 if element drag fails.
272
-
273
- ### upload
274
-
275
- Purpose: Reserved command for local file upload. Native upload is currently unavailable in the extension transport.
276
-
277
- ```bash
278
- # Do not use in agent workflows until file chooser support is implemented.
279
- ```
280
-
281
- Preferred pattern: See `operation-patterns.md#upload`.
282
- Fallback relation: Do not treat JavaScript as a normal upload fallback.
283
-
284
- ### keyboard / keydown / keyup
285
-
286
- Purpose: Send keyboard text or key state to the target tab when element-specific `type` or `press` is insufficient.
287
-
288
- ```bash
289
- OMNIBOT_SESSION_TOKEN=form omnibot keyboard type "hello" --tab-id <TAB_ID>
290
- OMNIBOT_SESSION_TOKEN=form omnibot keyboard inserttext "hello" --tab-id <TAB_ID>
291
- OMNIBOT_SESSION_TOKEN=form omnibot keydown Shift --tab-id <TAB_ID>
292
- OMNIBOT_SESSION_TOKEN=form omnibot keyup Shift --tab-id <TAB_ID>
293
- ```
294
-
295
- Preferred pattern: Prefer `fill`, `type`, and `press` first.
296
- Fallback relation: Keyboard commands are a focused fallback before mouse or JavaScript.
297
-
298
- ## Semantic Find
299
-
300
- Semantic find is Tier 1 for operating by meaning.
301
-
302
- ```bash
303
- OMNIBOT_SESSION_TOKEN=checkout omnibot find role button --name "Submit" --action click --tab-id <TAB_ID>
304
- OMNIBOT_SESSION_TOKEN=checkout omnibot find text "Sign in" --action click --tab-id <TAB_ID>
305
- OMNIBOT_SESSION_TOKEN=checkout omnibot find label "Email" --action fill --action-value "a@b.com" --tab-id <TAB_ID>
306
- OMNIBOT_SESSION_TOKEN=checkout omnibot find placeholder "Search" --action type --action-value "omnibot" --tab-id <TAB_ID>
307
- OMNIBOT_SESSION_TOKEN=checkout omnibot find testid submit-button --action click --tab-id <TAB_ID>
308
- OMNIBOT_SESSION_TOKEN=checkout omnibot find nth ".card" 2 --action click --tab-id <TAB_ID>
309
- ```
310
-
311
- Preferred pattern: See `operation-patterns.md#click` and `operation-patterns.md#fill`.
312
- Fallback relation: Tier 1. Explain failure before using refs, selectors, DOM, mouse, JavaScript, or CDP.
313
-
314
- ## Fallback Actions
315
-
316
- ### mouse
317
-
318
- Purpose: Coordinate-based mouse operations.
319
- Usage tier: Tier 5 fallback only.
320
-
321
- ```bash
322
- OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --tab-id <TAB_ID>
323
- OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --click-count 2 --tab-id <TAB_ID>
324
- OMNIBOT_SESSION_TOKEN=repair omnibot mouse move --x 50 --y 60 --tab-id <TAB_ID>
325
- OMNIBOT_SESSION_TOKEN=repair omnibot mouse scroll --x 100 --y 200 --dy 500 --tab-id <TAB_ID>
326
- OMNIBOT_SESSION_TOKEN=repair omnibot mouse drag --from-x 10 --from-y 20 --to-x 100 --to-y 200 --tab-id <TAB_ID>
327
- ```
328
-
329
- Preferred pattern: See `fallback-operations.md#mouse-fallback`.
330
- Fallback relation: After semantic, refs, selector, and DOM fail.
331
-
332
- ### dom
333
-
334
- Purpose: Interact with visible DOM node ids returned by `dom visible`.
335
- Usage tier: Tier 4 fallback only.
336
-
337
- ```bash
338
- OMNIBOT_SESSION_TOKEN=repair omnibot dom visible --tab-id <TAB_ID>
339
- OMNIBOT_SESSION_TOKEN=repair omnibot dom click n1 --tab-id <TAB_ID>
340
- OMNIBOT_SESSION_TOKEN=repair omnibot dom dblclick n1 --tab-id <TAB_ID>
341
- OMNIBOT_SESSION_TOKEN=repair omnibot dom scroll n1 --dy 800 --tab-id <TAB_ID>
342
- ```
343
-
344
- Preferred pattern: See `fallback-operations.md#dom-fallback`.
345
- Fallback relation: After selector failure and before mouse fallback.
346
-
347
- ### execute-js
348
-
349
- Purpose: Run arbitrary JavaScript in the page.
350
- Usage tier: Tier 6 fallback only. Do not use first.
351
-
352
- ```bash
353
- OMNIBOT_SESSION_TOKEN=repair omnibot execute-js "return location.href" --tab-id <TAB_ID>
354
- OMNIBOT_SESSION_TOKEN=repair omnibot execute-js --file /tmp/repair.js --tab-id <TAB_ID>
355
- ```
356
-
357
- Preferred pattern: See `fallback-operations.md#javascript-fallback`.
358
- Fallback relation: After semantic, refs, selector, DOM, and mouse are insufficient. Valid examples include CSS-only dropdowns where the trigger exists but option refs are absent from `snapshot -i`.
359
-
360
- ### cdp
361
-
362
- Purpose: Send raw Chrome DevTools Protocol commands.
363
- Usage tier: Tier 7 fallback and inspection only.
364
-
365
- ```bash
366
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp Runtime.evaluate '{"expression":"document.title"}' --tab-id <TAB_ID>
367
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp DOM.getDocument '{"depth":1}' --tab-id <TAB_ID>
368
- ```
369
-
370
- Preferred pattern: See `fallback-operations.md#raw-cdp-fallback` and `debugging-and-evidence.md#cdp-inspection`.
371
- Fallback relation: Last resort.
372
-
373
- ## Navigation & Tabs
374
-
375
- ### navigate / open / goto
376
-
377
- Purpose: Navigate or open pages. New-tab forms return a tab id. Same-tab navigation requires an explicit target tab id. There is no CLI current-tab state.
378
-
379
- ```bash
380
- OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com
381
- OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com --same-tab --tab-id <TAB_ID>
382
- OMNIBOT_SESSION_TOKEN=research omnibot open https://example.com
383
- OMNIBOT_SESSION_TOKEN=research omnibot goto https://example.com --tab-id <TAB_ID>
384
- ```
385
-
386
- Preferred pattern: See `operation-patterns.md#navigation` and `session-and-tabs.md#tab-explicit`.
387
- Fallback relation: Verify with `get url --tab-id <TAB_ID>` before continuing.
388
-
389
- ### close / back / forward / reload / pushstate
390
-
391
- Purpose: Change tab lifecycle or history state.
392
-
393
- ```bash
394
- OMNIBOT_SESSION_TOKEN=research omnibot close <TAB_ID>
395
- OMNIBOT_SESSION_TOKEN=research omnibot back --tab-id <TAB_ID>
396
- OMNIBOT_SESSION_TOKEN=research omnibot forward --tab-id <TAB_ID>
397
- OMNIBOT_SESSION_TOKEN=research omnibot reload --tab-id <TAB_ID>
398
- OMNIBOT_SESSION_TOKEN=research omnibot pushstate /dashboard --tab-id <TAB_ID>
399
- ```
400
-
401
- Preferred pattern: See `operation-patterns.md#navigation`.
402
- Fallback relation: Verify URL or page state after the action.
403
-
404
- ### tab
405
-
406
- Purpose: Manage browser tabs.
407
-
408
- ```bash
409
- OMNIBOT_SESSION_TOKEN=research omnibot tab list
410
- OMNIBOT_SESSION_TOKEN=research omnibot tab new https://docs.example.com --label docs
411
- OMNIBOT_SESSION_TOKEN=research omnibot tab close docs
412
- ```
413
-
414
- Preferred pattern: See `session-and-tabs.md#tab-explicit`.
415
- Removed: `tab switch` and `tab focus` are no longer available. Use explicit `--tab-id` on every page-state command.
416
-
417
- ### window / frame
418
-
419
- Purpose: Manage windows and frames.
420
-
421
- ```bash
422
- OMNIBOT_SESSION_TOKEN=research omnibot window new
423
- OMNIBOT_SESSION_TOKEN=research omnibot frame main
424
- ```
425
-
426
- ## Waiting & Batch
427
-
428
- ### wait
429
-
430
- Purpose: Wait for time, selector, text, URL, load state, or JavaScript condition.
431
-
432
- ```bash
433
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#ready" --tab-id <TAB_ID>
434
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#spinner" --state hidden --tab-id <TAB_ID>
435
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait --text "Welcome" --tab-id <TAB_ID>
436
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait --url "/dashboard" --tab-id <TAB_ID>
437
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load domcontentloaded --tab-id <TAB_ID>
438
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load networkidle --tab-id <TAB_ID>
439
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait --fn "window.appReady === true" --tab-id <TAB_ID>
440
- OMNIBOT_SESSION_TOKEN=checkout omnibot wait 500 --tab-id <TAB_ID>
441
- ```
442
-
443
- Preferred pattern: See `operation-patterns.md#wait`.
444
- Fallback relation: Prefer condition waits over shell sleep. Fixed-time waits like `wait 500` are diagnostic or last resort only.
445
-
446
- ### batch
447
-
448
- Purpose: Send short extension/CDP command arrays as JSON or from a file. Batch is not a wrapper for normal CLI commands such as `snapshot` or `click`.
449
-
450
- ```bash
451
- OMNIBOT_SESSION_TOKEN=research omnibot batch '[{"cmd":"cdp","method":"Runtime.evaluate","params":{"expression":"document.title","returnByValue":true}}]' --tab-id <TAB_ID>
452
- OMNIBOT_SESSION_TOKEN=research omnibot batch --file /tmp/omnibot-batch.json --tab-id <TAB_ID>
453
- ```
454
-
455
- Preferred pattern: See `operation-patterns.md#batch`.
456
- Fallback relation: Not a substitute for verification.
457
-
458
- ## Debugging
459
-
460
- ### screenshot
461
-
462
- Purpose: Capture visual evidence from a browser tab.
463
-
464
- ```bash
465
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --tab-id <TAB_ID> -o /tmp/omni-shot.png
466
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --annotate --tab-id <TAB_ID> -o /tmp/omni-annotated.png
467
- ```
468
-
469
- Preferred pattern: See `debugging-and-evidence.md#screenshot`.
470
- Fallback relation: Evidence collection, not operation fallback.
471
-
472
- ### console
473
-
474
- Purpose: Read or clear browser console evidence.
475
-
476
- ```bash
477
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console logs --tab-id <TAB_ID>
478
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console errors --tab-id <TAB_ID>
479
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console clear --tab-id <TAB_ID>
480
- ```
481
-
482
- Preferred pattern: See `debugging-and-evidence.md#console`.
483
- Fallback relation: Evidence collection, not operation fallback. `console errors` currently uses the console log collection path; verify level filtering in output before treating it as error-only evidence.
484
-
485
- ### network
486
-
487
- Purpose: Read browser network evidence.
488
-
489
- ```bash
490
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network logs --tab-id <TAB_ID>
491
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network summary --tab-id <TAB_ID>
492
- ```
493
-
494
- Preferred pattern: See `debugging-and-evidence.md#network`.
495
- Fallback relation: Evidence collection, not operation fallback.
496
-
497
- ## Browser Capabilities
498
-
499
- ### clipboard
500
-
501
- Purpose: Read or write browser clipboard.
502
-
503
- ```bash
504
- OMNIBOT_SESSION_TOKEN=research omnibot clipboard read --tab-id <TAB_ID>
505
- OMNIBOT_SESSION_TOKEN=research omnibot clipboard write "text" --tab-id <TAB_ID>
506
- ```
507
-
508
- Preferred pattern: See `operation-patterns.md#extraction`.
509
- Fallback relation: Use only when clipboard is part of the browser task.
510
-
511
- ### viewport
512
-
513
- Purpose: Read or set viewport size.
514
-
515
- ```bash
516
- OMNIBOT_SESSION_TOKEN=visual omnibot viewport get --tab-id <TAB_ID>
517
- OMNIBOT_SESSION_TOKEN=visual omnibot viewport set 1280 720 --tab-id <TAB_ID>
518
- ```
519
-
520
- Preferred pattern: Set explicit viewport before visual verification if layout matters.
521
- Fallback relation: Not a fallback command.
522
-
523
- ### assets
524
-
525
- Purpose: List or export page resources.
526
-
527
- ```bash
528
- OMNIBOT_SESSION_TOKEN=extract omnibot assets list --tab-id <TAB_ID>
529
- OMNIBOT_SESSION_TOKEN=extract omnibot assets export -o /tmp/assets.zip --tab-id <TAB_ID>
530
- ```
531
-
532
- Preferred pattern: See `operation-patterns.md#extraction`.
533
- Fallback relation: Use after page content indicates assets are needed.
534
-
535
- ## Visibility & Sessions
536
-
537
- ### visibility
538
-
539
- Purpose: Inspect or set automation browser visibility mode. `visibility launch` currently reports planned configuration only; it does not launch a browser.
540
-
541
- ```bash
542
- omnibot visibility status
543
- omnibot visibility set background
544
- omnibot visibility set visible
545
- omnibot visibility launch headless --user-data-dir /tmp/omnibot-headless
546
- ```
547
-
548
- Preferred pattern: See `session-and-tabs.md#visibility`.
549
- Fallback relation: Headless does not inherit existing user login state. Treat `visibility launch` status `planned` as not launched.
550
-
551
- ### browser
552
-
553
- Purpose: Manage browser runtime ownership.
554
-
555
- ```bash
556
- OMNIBOT_SESSION_TOKEN=research omnibot browser list
557
- OMNIBOT_SESSION_TOKEN=research omnibot browser current
558
- OMNIBOT_SESSION_TOKEN=research omnibot browser claim 123
559
- OMNIBOT_SESSION_TOKEN=research omnibot browser release 123
560
- ```
561
-
562
- Preferred pattern: See `session-and-tabs.md#browser-claimrelease`.
563
- Fallback relation: Use in multi-browser or multi-runtime scenarios.
564
-
565
- ### session
566
-
567
- Purpose: Name or list Omnibot workflow context state for the current `OMNIBOT_SESSION_TOKEN`. This does not switch tabs, preserve login, or replace `--tab-id`.
568
-
569
- ```bash
570
- OMNIBOT_SESSION_TOKEN=checkout omnibot session name "checkout"
571
- OMNIBOT_SESSION_TOKEN=checkout omnibot session list
572
- ```
573
-
574
- Preferred pattern: See `session-and-tabs.md#session-first`.
575
- Fallback relation: Not a fallback command.
576
-
577
- ## Recording & Trace
578
-
579
- ### record / replay / trace
580
-
581
- Purpose: Capture, replay, or trace workflows for evidence.
582
-
583
- ```bash
584
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record start
585
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record stop -o flow.json
586
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot replay flow.json
587
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace start
588
- OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace stop -o trace.zip
589
- ```
590
-
591
- Preferred pattern: See `debugging-and-evidence.md#record-and-replay` and `debugging-and-evidence.md#trace`.
592
- Fallback relation: Evidence collection, not operation fallback.
593
-
594
- ## Skills & License
595
-
596
- ### skills install / skills path
597
-
598
- Purpose: Install packaged omnibot skills or show the packaged skills path.
599
-
600
- ```bash
601
- omnibot skills install --agent hermes --profile nuwa
602
- omnibot skills install --agent opencode
603
- omnibot skills install --agent claude
604
- omnibot skills install --agent codex
605
- omnibot skills path
606
- ```
607
-
608
- Preferred pattern: See `runtime-and-status.md#skills-path`.
609
- Fallback relation: Not a fallback command.
610
-
611
- ### license status
612
-
613
- Purpose: Inspect license status.
614
-
615
- ```bash
616
- omnibot license status
617
- ```
618
-
619
- Preferred pattern: See `runtime-and-status.md#startup-check`.
620
- Fallback relation: Not a fallback command.
1
+ # Omnibot Command Reference
2
+
3
+ This is a lookup table, not a behavior guide. Choose behavior from `operation-patterns.md`, use `session-and-tabs.md` for targeting, and use `fallback-operations.md` before dropping to lower tiers.
4
+
5
+ Unless marked as discovery, runtime, or tab creation, page-state examples assume `OMNIBOT_SESSION_TOKEN=<workflow>` and `--tab-id <TAB_ID>`.
6
+
7
+ ## Runtime & Status
8
+
9
+ ### doctor
10
+
11
+ Purpose: Check daemon and browser extension health.
12
+
13
+ ```bash
14
+ omnibot doctor
15
+ ```
16
+
17
+ Preferred pattern: See `runtime-and-status.md#startup-check`.
18
+ Fallback relation: Not a fallback command.
19
+
20
+ ### status
21
+
22
+ Purpose: Show daemon status only (lighter than `doctor`).
23
+
24
+ ```bash
25
+ omnibot status
26
+ ```
27
+
28
+ Preferred pattern: See `runtime-and-status.md#daemon-lifecycle`.
29
+ Fallback relation: Not a fallback command.
30
+
31
+ ### start
32
+
33
+ Purpose: Start the daemon in the background.
34
+
35
+ ```bash
36
+ omnibot start
37
+ ```
38
+
39
+ Equivalent to: `omnibot daemon start`
40
+
41
+ ### stop
42
+
43
+ Purpose: Stop the running daemon.
44
+
45
+ ```bash
46
+ omnibot stop
47
+ ```
48
+
49
+ Equivalent to: `omnibot daemon stop`
50
+
51
+ ### run
52
+
53
+ Purpose: Run the daemon in the foreground.
54
+
55
+ ```bash
56
+ omnibot run
57
+ ```
58
+
59
+ Equivalent to: `omnibot daemon run`
60
+
61
+ ### tabs
62
+
63
+ Purpose: List connected browser tabs and discover tab ids.
64
+
65
+ ```bash
66
+ omnibot tabs
67
+ ```
68
+
69
+ Preferred pattern: See `session-and-tabs.md#tab-explicit`.
70
+ Fallback relation: Not a fallback command.
71
+
72
+ ### license status
73
+
74
+ Purpose: Check license state.
75
+
76
+ ```bash
77
+ omnibot license status
78
+ ```
79
+
80
+ Preferred pattern: See `runtime-and-status.md#startup-check`.
81
+ Fallback relation: Not a fallback command.
82
+
83
+ ### version
84
+
85
+ Purpose: Print the installed omnibot CLI version. No daemon or extension access required.
86
+
87
+ ```bash
88
+ omnibot version
89
+ omnibot --version
90
+ omnibot -V
91
+ ```
92
+
93
+ Output: a single line in the form `omnibot <version>` (for example `omnibot 1.6.3`).
94
+ Preferred pattern: See `runtime-and-status.md#version`.
95
+ Fallback relation: Not a fallback command.
96
+
97
+ ## Reading
98
+
99
+ ### read
100
+
101
+ Purpose: Read clean rendered page text/Markdown from an existing tab or a temporary URL tab.
102
+
103
+ ```bash
104
+ OMNIBOT_SESSION_TOKEN=research omnibot read --screens 5 --tab-id <TAB_ID>
105
+ OMNIBOT_SESSION_TOKEN=research omnibot read --screens 5 --timeout 120 --tab-id <TAB_ID>
106
+ OMNIBOT_SESSION_TOKEN=research omnibot read --screens 3 https://example.com/article
107
+ OMNIBOT_SESSION_TOKEN=research omnibot read --json --screens 5 --tab-id <TAB_ID>
108
+ ```
109
+
110
+ Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
111
+ Fallback relation: Prefer for page content. Use `snapshot -i` when the next step is action planning, and `get`/`is`/`wait` for narrow state verification.
112
+
113
+ ### snapshot -i
114
+
115
+ Purpose: Read accessibility tree and produce actionable `@eN` refs.
116
+
117
+ For visible custom comboboxes, `snapshot -i` may auto-probe options and append `[option]` refs under DOM Popup Controls. These refs remain actionable after the dropdown closes because they carry `openerSelector` internally.
118
+
119
+ ```bash
120
+ OMNIBOT_SESSION_TOKEN=checkout omnibot snapshot -i --tab-id <TAB_ID>
121
+ OMNIBOT_SESSION_TOKEN=checkout omnibot snapshot -i -c -d 4 --tab-id <TAB_ID>
122
+ OMNIBOT_SESSION_TOKEN=checkout omnibot snapshot -i -s "#main" -u --tab-id <TAB_ID>
123
+ ```
124
+
125
+ Preferred pattern: See `operation-patterns.md#click`, `operation-patterns.md#fill`, and `session-and-tabs.md#ref-scope`.
126
+ Fallback relation: Tier 2 after semantic find.
127
+
128
+ ### get
129
+
130
+ Purpose: Read one value or element state without dumping the page.
131
+
132
+ ```bash
133
+ OMNIBOT_SESSION_TOKEN=research omnibot get title --tab-id <TAB_ID>
134
+ OMNIBOT_SESSION_TOKEN=research omnibot get url --tab-id <TAB_ID>
135
+ OMNIBOT_SESSION_TOKEN=research omnibot get text "#main" --tab-id <TAB_ID>
136
+ OMNIBOT_SESSION_TOKEN=research omnibot get html "#main" --tab-id <TAB_ID>
137
+ OMNIBOT_SESSION_TOKEN=research omnibot get value "input[name=email]" --tab-id <TAB_ID>
138
+ OMNIBOT_SESSION_TOKEN=research omnibot get attr "a.login" href --tab-id <TAB_ID>
139
+ OMNIBOT_SESSION_TOKEN=research omnibot get count ".item" --tab-id <TAB_ID>
140
+ OMNIBOT_SESSION_TOKEN=research omnibot get box "#submit" --tab-id <TAB_ID>
141
+ OMNIBOT_SESSION_TOKEN=research omnibot get styles "#submit" --tab-id <TAB_ID>
142
+ ```
143
+
144
+ Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
145
+ Fallback relation: Selector tier for reading; escalate only if unavailable.
146
+
147
+ ### is
148
+
149
+ Purpose: Check element state.
150
+
151
+ ```bash
152
+ OMNIBOT_SESSION_TOKEN=checkout omnibot is visible "#submit" --tab-id <TAB_ID>
153
+ OMNIBOT_SESSION_TOKEN=checkout omnibot is enabled "#submit" --tab-id <TAB_ID>
154
+ OMNIBOT_SESSION_TOKEN=checkout omnibot is checked "#agree" --tab-id <TAB_ID>
155
+ ```
156
+
157
+ Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#select--check`.
158
+ Fallback relation: Prefer before visual or JavaScript checks.
159
+
160
+ ## Actions
161
+
162
+ ### click
163
+
164
+ Purpose: Click an element by `@eN` ref or selector.
165
+
166
+ ```bash
167
+ OMNIBOT_SESSION_TOKEN=checkout omnibot click --tab-id <TAB_ID> @e4
168
+ OMNIBOT_SESSION_TOKEN=checkout omnibot click --tab-id <TAB_ID> @e4 --new-tab
169
+ OMNIBOT_SESSION_TOKEN=checkout omnibot click "button[type=submit]" --tab-id <TAB_ID>
170
+ ```
171
+
172
+ Preferred pattern: See `operation-patterns.md#click`.
173
+ Fallback relation: Tier 2 with refs, Tier 3 with selector.
174
+
175
+ Combobox option refs: if `snapshot -i` shows `@eN [option] "OpenAI Chat"`, prefer `click @eN` over JavaScript fallback. Omnibot will reopen the owning combobox when needed.
176
+
177
+ ### dblclick
178
+
179
+ Purpose: Double-click an element by `@eN` ref or selector.
180
+
181
+ ```bash
182
+ OMNIBOT_SESSION_TOKEN=editor omnibot dblclick --tab-id <TAB_ID> @e7
183
+ ```
184
+
185
+ Preferred pattern: See `operation-patterns.md#click`.
186
+ Fallback relation: Prefer semantic or snapshot first; then selector.
187
+
188
+ ### fill
189
+
190
+ Purpose: Replace an input value.
191
+
192
+ ```bash
193
+ OMNIBOT_SESSION_TOKEN=checkout omnibot fill --tab-id <TAB_ID> @e2 "a@b.com"
194
+ OMNIBOT_SESSION_TOKEN=checkout omnibot fill "input[name=email]" "a@b.com" --tab-id <TAB_ID>
195
+ ```
196
+
197
+ Preferred pattern: See `operation-patterns.md#fill`.
198
+ Fallback relation: Tier 2 with refs, Tier 3 with selector.
199
+
200
+ ### type
201
+
202
+ Purpose: Type text into an element.
203
+
204
+ ```bash
205
+ OMNIBOT_SESSION_TOKEN=search omnibot type --tab-id <TAB_ID> @e3 "omnibot"
206
+ ```
207
+
208
+ Preferred pattern: See `operation-patterns.md#fill`.
209
+ Fallback relation: Use after fill is not appropriate or focus is needed.
210
+
211
+ ### press
212
+
213
+ Purpose: Press a key in the target tab.
214
+
215
+ ```bash
216
+ OMNIBOT_SESSION_TOKEN=search omnibot press Enter --tab-id <TAB_ID>
217
+ ```
218
+
219
+ Preferred pattern: See `operation-patterns.md#fill` and `operation-patterns.md#wait`.
220
+ Fallback relation: Not a fallback by itself; verify after pressing.
221
+
222
+ ### hover
223
+
224
+ Purpose: Hover an element by ref or selector.
225
+
226
+ ```bash
227
+ OMNIBOT_SESSION_TOKEN=menu omnibot hover --tab-id <TAB_ID> @e5
228
+ ```
229
+
230
+ Preferred pattern: Observe menu state, hover, then verify visible options.
231
+ Fallback relation: Use mouse move only if hover fails.
232
+
233
+ ### focus
234
+
235
+ Purpose: Focus an element by selector.
236
+
237
+ ```bash
238
+ OMNIBOT_SESSION_TOKEN=form omnibot focus "input[name=email]" --tab-id <TAB_ID>
239
+ ```
240
+
241
+ Preferred pattern: See `operation-patterns.md#fill`.
242
+ Fallback relation: Selector tier before keyboard/type fallback.
243
+
244
+ ### select
245
+
246
+ Purpose: Select an option in a dropdown.
247
+
248
+ ```bash
249
+ OMNIBOT_SESSION_TOKEN=form omnibot select @e5 "US" --tab-id <TAB_ID>
250
+ ```
251
+
252
+ Preferred pattern: See `operation-patterns.md#select--check`.
253
+ Fallback relation: Prefer refs/selectors before JavaScript value changes. For custom comboboxes, first check whether `snapshot -i` exposes auto-probed option refs and click `@option`. For CSS-only dropdowns whose options are still absent or whose refs fail verification, see `fallback-operations.md#css-only-dropdown-javascript-fallback`.
254
+
255
+ ### check / uncheck
256
+
257
+ Purpose: Set checkbox state.
258
+
259
+ ```bash
260
+ OMNIBOT_SESSION_TOKEN=form omnibot check @e6 --tab-id <TAB_ID>
261
+ OMNIBOT_SESSION_TOKEN=form omnibot uncheck @e6 --tab-id <TAB_ID>
262
+ ```
263
+
264
+ Preferred pattern: See `operation-patterns.md#select--check`.
265
+ Fallback relation: Verify with `is checked` before and after.
266
+
267
+ ### scroll / scrollintoview
268
+
269
+ Purpose: Scroll page or element.
270
+
271
+ ```bash
272
+ OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --tab-id <TAB_ID>
273
+ OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --selector "#list" --tab-id <TAB_ID>
274
+ OMNIBOT_SESSION_TOKEN=read omnibot scrollintoview @e7 --tab-id <TAB_ID>
275
+ ```
276
+
277
+ Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
278
+ Fallback relation: DOM or mouse scroll only after standard scroll fails.
279
+
280
+ ### drag
281
+
282
+ Purpose: Drag from one element to another.
283
+
284
+ ```bash
285
+ OMNIBOT_SESSION_TOKEN=board omnibot drag @e8 @e9 --tab-id <TAB_ID>
286
+ ```
287
+
288
+ Preferred pattern: Observe source and target, drag, verify position/state.
289
+ Fallback relation: Mouse drag is Tier 5 if element drag fails.
290
+
291
+ ### upload
292
+
293
+ Purpose: Reserved command for local file upload. Native upload is currently unavailable in the extension transport.
294
+
295
+ ```bash
296
+ # Do not use in agent workflows until file chooser support is implemented.
297
+ ```
298
+
299
+ Preferred pattern: See `operation-patterns.md#upload`.
300
+ Fallback relation: Do not treat JavaScript as a normal upload fallback.
301
+
302
+ ### keyboard / keydown / keyup
303
+
304
+ Purpose: Send keyboard text or key state to the target tab when element-specific `type` or `press` is insufficient.
305
+
306
+ ```bash
307
+ OMNIBOT_SESSION_TOKEN=form omnibot keyboard type "hello" --tab-id <TAB_ID>
308
+ OMNIBOT_SESSION_TOKEN=form omnibot keyboard inserttext "hello" --tab-id <TAB_ID>
309
+ OMNIBOT_SESSION_TOKEN=form omnibot keydown Shift --tab-id <TAB_ID>
310
+ OMNIBOT_SESSION_TOKEN=form omnibot keyup Shift --tab-id <TAB_ID>
311
+ ```
312
+
313
+ Preferred pattern: Prefer `fill`, `type`, and `press` first.
314
+ Fallback relation: Keyboard commands are a focused fallback before mouse or JavaScript.
315
+
316
+ ## Semantic Find
317
+
318
+ Semantic find is Tier 1 for operating by meaning.
319
+
320
+ ```bash
321
+ OMNIBOT_SESSION_TOKEN=checkout omnibot find role button --name "Submit" --action click --tab-id <TAB_ID>
322
+ OMNIBOT_SESSION_TOKEN=checkout omnibot find text "Sign in" --action click --tab-id <TAB_ID>
323
+ OMNIBOT_SESSION_TOKEN=checkout omnibot find label "Email" --action fill --action-value "a@b.com" --tab-id <TAB_ID>
324
+ OMNIBOT_SESSION_TOKEN=checkout omnibot find placeholder "Search" --action type --action-value "omnibot" --tab-id <TAB_ID>
325
+ OMNIBOT_SESSION_TOKEN=checkout omnibot find testid submit-button --action click --tab-id <TAB_ID>
326
+ OMNIBOT_SESSION_TOKEN=checkout omnibot find nth ".card" 2 --action click --tab-id <TAB_ID>
327
+ ```
328
+
329
+ Preferred pattern: See `operation-patterns.md#click` and `operation-patterns.md#fill`.
330
+ Fallback relation: Tier 1. Explain failure before using refs, selectors, DOM, mouse, JavaScript, or CDP.
331
+
332
+ ## Fallback Actions
333
+
334
+ ### mouse
335
+
336
+ Purpose: Coordinate-based mouse operations.
337
+ Usage tier: Tier 5 fallback only.
338
+
339
+ > **Development status:** The realistic trajectory mode (`mouse drag` without `--fast`) is experimental and has not been validated in production workflows. The trajectory parameters, step count, and timing are still being tuned. Use `--fast` for stable linear drags until the realistic mode is proven.
340
+
341
+ ```bash
342
+ OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --tab-id <TAB_ID>
343
+ OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --click-count 2 --tab-id <TAB_ID>
344
+ OMNIBOT_SESSION_TOKEN=repair omnibot mouse move --x 50 --y 60 --tab-id <TAB_ID>
345
+ OMNIBOT_SESSION_TOKEN=repair omnibot mouse scroll --x 100 --y 200 --dy 500 --tab-id <TAB_ID>
346
+ OMNIBOT_SESSION_TOKEN=repair omnibot mouse drag --from-x 10 --from-y 20 --to-x 100 --to-y 200 --tab-id <TAB_ID>
347
+ ```
348
+
349
+ `mouse drag` uses a realistic multi-step trajectory by default (70-110 interpolated points with easing, jitter, overshoot, and short random pauses). **This mode is experimental and not yet production-ready.** Optional tuning flags:
350
+
351
+ ```bash
352
+ omnibot mouse drag --from-x 633 --from-y 733 --to-x 706 --to-y 733 --duration-ms 700 --steps 90 --jitter 1 --overshoot 2 --tab-id <TAB_ID>
353
+ ```
354
+
355
+ Use `--fast` for the old linear 4-event drag (stable, recommended for production):
356
+
357
+ ```bash
358
+ omnibot mouse drag --from-x 0 --from-y 0 --to-x 100 --to-y 0 --fast --tab-id <TAB_ID>
359
+ ```
360
+
361
+ Preferred pattern: See `fallback-operations.md#mouse-fallback`.
362
+ Fallback relation: After semantic, refs, selector, and DOM fail.
363
+
364
+ ### verify
365
+
366
+ Purpose: Inspect human-verification (captcha) widgets. Returns structured metadata (provider, type, action type, element boxes, coordinate mapping, and an optional panel screenshot) for an agent to solve. Does not solve captchas itself.
367
+
368
+ > **Development status:** This command is experimental and in active development. It is not production-ready. Known limitations:
369
+ > - Only NetEase Yidun (网易易盾) is supported; other captcha providers are not detected.
370
+ > - DOM-based classification (`yidun_classes`) is best-effort and may report wrong types on newer widget versions.
371
+ > - The `coordinate_map` panel-image-to-viewport scale assumes `Page.captureScreenshot` returns DPR-scaled device pixels; this has not been validated across all DPR and viewport combinations.
372
+ > - Success/failure state detection (`state` field) from DOM classes is unreliable; always cross-check with a visual screenshot.
373
+ > - There is no built-in captcha solver. External vision-model-based solving (e.g. via `--solver-command`) has shown insufficient accuracy for production-grade captcha solving on jigsaw-type captchas.
374
+ > - Do not rely on this command for automated captcha bypass in production workflows.
375
+
376
+ ```bash
377
+ OMNIBOT_SESSION_TOKEN=verify omnibot verify inspect --tab-id <TAB_ID>
378
+ OMNIBOT_SESSION_TOKEN=verify omnibot verify inspect --tab-id <TAB_ID> --no-image
379
+ ```
380
+
381
+ The agent workflow for slider captchas (experimental, not validated for production):
382
+ 1. `verify inspect` → get type, coordinate_map, panel image
383
+ 2. Vision model identifies the gap/target position in the image
384
+ 3. Convert panel screenshot coordinates to viewport coordinates using `coordinate_map.panel_image_to_viewport_scale_x/y`
385
+ 4. `mouse drag` from slider handle to target
386
+ 5. `verify inspect` or `screenshot` to verify result
387
+
388
+ For click-sequence captchas (text/icon click):
389
+ 1. `verify inspect` get click area and image
390
+ 2. Vision model identifies target coordinates in the image
391
+ 3. Convert and execute `mouse click` for each target
392
+
393
+ Batch scoring harness for NetEase Yidun trial pages (test-only):
394
+
395
+ ```bash
396
+ python3 tests/verify_workflow_matrix_test.py --iterations 50
397
+ python3 tests/verify_workflow_matrix_test.py --case jigsaw --iterations 50 --solver-command './solver.py'
398
+ ```
399
+
400
+ Without `--solver-command`, the harness performs inspect-only sampling and saves panel images. With a solver command, it executes returned `drag` / `click` actions and writes JSON/TXT score reports.
401
+
402
+ ### dom
403
+
404
+ Purpose: Interact with visible DOM node ids returned by `dom visible`.
405
+ Usage tier: Tier 4 fallback only.
406
+
407
+ ```bash
408
+ OMNIBOT_SESSION_TOKEN=repair omnibot dom visible --tab-id <TAB_ID>
409
+ OMNIBOT_SESSION_TOKEN=repair omnibot dom click n1 --tab-id <TAB_ID>
410
+ OMNIBOT_SESSION_TOKEN=repair omnibot dom dblclick n1 --tab-id <TAB_ID>
411
+ OMNIBOT_SESSION_TOKEN=repair omnibot dom scroll n1 --dy 800 --tab-id <TAB_ID>
412
+ ```
413
+
414
+ Preferred pattern: See `fallback-operations.md#dom-fallback`.
415
+ Fallback relation: After selector failure and before mouse fallback.
416
+
417
+ ### execute-js
418
+
419
+ Purpose: Run arbitrary JavaScript in the page.
420
+ Usage tier: Tier 6 fallback only. Do not use first.
421
+
422
+ ```bash
423
+ OMNIBOT_SESSION_TOKEN=repair omnibot execute-js "return location.href" --tab-id <TAB_ID>
424
+ OMNIBOT_SESSION_TOKEN=repair omnibot execute-js --file /tmp/repair.js --tab-id <TAB_ID>
425
+ ```
426
+
427
+ Preferred pattern: See `fallback-operations.md#javascript-fallback`.
428
+ Fallback relation: After semantic, refs, selector, DOM, and mouse are insufficient. Valid examples include CSS-only dropdowns where the trigger exists but option refs are absent from `snapshot -i`.
429
+
430
+ ### cdp
431
+
432
+ Purpose: Send raw Chrome DevTools Protocol commands.
433
+ Usage tier: Tier 7 fallback and inspection only.
434
+
435
+ ```bash
436
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp Runtime.evaluate '{"expression":"document.title"}' --tab-id <TAB_ID>
437
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp DOM.getDocument '{"depth":1}' --tab-id <TAB_ID>
438
+ ```
439
+
440
+ Preferred pattern: See `fallback-operations.md#raw-cdp-fallback` and `debugging-and-evidence.md#cdp-inspection`.
441
+ Fallback relation: Last resort.
442
+
443
+ ## Navigation & Tabs
444
+
445
+ ### navigate / open / goto
446
+
447
+ Purpose: Navigate or open pages. New-tab forms return a tab id. Same-tab navigation requires an explicit target tab id. There is no CLI current-tab state.
448
+
449
+ ```bash
450
+ OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com
451
+ OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com --same-tab --tab-id <TAB_ID>
452
+ OMNIBOT_SESSION_TOKEN=research omnibot open https://example.com
453
+ OMNIBOT_SESSION_TOKEN=research omnibot goto https://example.com --tab-id <TAB_ID>
454
+ ```
455
+
456
+ Preferred pattern: See `operation-patterns.md#navigation` and `session-and-tabs.md#tab-explicit`.
457
+ Fallback relation: Verify with `get url --tab-id <TAB_ID>` before continuing.
458
+
459
+ ### close / back / forward / reload / pushstate
460
+
461
+ Purpose: Change tab lifecycle or history state.
462
+
463
+ ```bash
464
+ OMNIBOT_SESSION_TOKEN=research omnibot close <TAB_ID>
465
+ OMNIBOT_SESSION_TOKEN=research omnibot back --tab-id <TAB_ID>
466
+ OMNIBOT_SESSION_TOKEN=research omnibot forward --tab-id <TAB_ID>
467
+ OMNIBOT_SESSION_TOKEN=research omnibot reload --tab-id <TAB_ID>
468
+ OMNIBOT_SESSION_TOKEN=research omnibot pushstate /dashboard --tab-id <TAB_ID>
469
+ ```
470
+
471
+ Preferred pattern: See `operation-patterns.md#navigation`.
472
+ Fallback relation: Verify URL or page state after the action.
473
+
474
+ ### tab
475
+
476
+ Purpose: Manage browser tabs.
477
+
478
+ ```bash
479
+ OMNIBOT_SESSION_TOKEN=research omnibot tab list
480
+ OMNIBOT_SESSION_TOKEN=research omnibot tab new https://docs.example.com --label docs
481
+ OMNIBOT_SESSION_TOKEN=research omnibot tab close docs
482
+ ```
483
+
484
+ Preferred pattern: See `session-and-tabs.md#tab-explicit`.
485
+ Removed: `tab switch` and `tab focus` are no longer available. Use explicit `--tab-id` on every page-state command.
486
+
487
+ ### window / frame
488
+
489
+ Purpose: Manage windows and frames.
490
+
491
+ ```bash
492
+ OMNIBOT_SESSION_TOKEN=research omnibot window new
493
+ OMNIBOT_SESSION_TOKEN=research omnibot frame main
494
+ ```
495
+
496
+ ## Waiting & Batch
497
+
498
+ ### wait
499
+
500
+ Purpose: Wait for time, selector, text, URL, load state, or JavaScript condition.
501
+
502
+ ```bash
503
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#ready" --tab-id <TAB_ID>
504
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#spinner" --state hidden --tab-id <TAB_ID>
505
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait --text "Welcome" --tab-id <TAB_ID>
506
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait --url "/dashboard" --tab-id <TAB_ID>
507
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load domcontentloaded --tab-id <TAB_ID>
508
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load networkidle --tab-id <TAB_ID>
509
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait --fn "window.appReady === true" --tab-id <TAB_ID>
510
+ OMNIBOT_SESSION_TOKEN=checkout omnibot wait 500 --tab-id <TAB_ID>
511
+ ```
512
+
513
+ Preferred pattern: See `operation-patterns.md#wait`.
514
+ Fallback relation: Prefer condition waits over shell sleep. Fixed-time waits like `wait 500` are diagnostic or last resort only.
515
+
516
+ ### batch
517
+
518
+ Purpose: Send short extension/CDP command arrays as JSON or from a file. Batch is not a wrapper for normal CLI commands such as `snapshot` or `click`.
519
+
520
+ ```bash
521
+ OMNIBOT_SESSION_TOKEN=research omnibot batch '[{"cmd":"cdp","method":"Runtime.evaluate","params":{"expression":"document.title","returnByValue":true}}]' --tab-id <TAB_ID>
522
+ OMNIBOT_SESSION_TOKEN=research omnibot batch --file /tmp/omnibot-batch.json --tab-id <TAB_ID>
523
+ ```
524
+
525
+ Preferred pattern: See `operation-patterns.md#batch`.
526
+ Fallback relation: Not a substitute for verification.
527
+
528
+ ## Debugging
529
+
530
+ ### screenshot
531
+
532
+ Purpose: Capture visual evidence from a browser tab.
533
+
534
+ ```bash
535
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --tab-id <TAB_ID> -o /tmp/omni-shot.png
536
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --annotate --tab-id <TAB_ID> -o /tmp/omni-annotated.png
537
+ ```
538
+
539
+ Preferred pattern: See `debugging-and-evidence.md#screenshot`.
540
+ Fallback relation: Evidence collection, not operation fallback.
541
+
542
+ ### console
543
+
544
+ Purpose: Read or clear browser console evidence.
545
+
546
+ ```bash
547
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console logs --tab-id <TAB_ID>
548
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console errors --tab-id <TAB_ID>
549
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console clear --tab-id <TAB_ID>
550
+ ```
551
+
552
+ Preferred pattern: See `debugging-and-evidence.md#console`.
553
+ Fallback relation: Evidence collection, not operation fallback. `console errors` currently uses the console log collection path; verify level filtering in output before treating it as error-only evidence.
554
+
555
+ ### network
556
+
557
+ Purpose: Capture and inspect CDP Network events buffered by the Omnibot browser extension.
558
+
559
+ ```bash
560
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network clear --tab-id <TAB_ID>
561
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network start --tab-id <TAB_ID>
562
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network stop --tab-id <TAB_ID>
563
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network logs --tab-id <TAB_ID>
564
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network summary --tab-id <TAB_ID>
565
+ ```
566
+
567
+ Raw `cdp Network.enable` is not a substitute for `network start` because raw `cdp` does not by itself expose a persistent event log to the agent.
568
+
569
+ Preferred pattern: See `debugging-and-evidence.md#network-capture`.
570
+ Fallback relation: Evidence collection, not operation fallback.
571
+
572
+ ## Browser Capabilities
573
+
574
+ ### clipboard
575
+
576
+ Purpose: Read or write browser clipboard.
577
+
578
+ ```bash
579
+ OMNIBOT_SESSION_TOKEN=research omnibot clipboard read --tab-id <TAB_ID>
580
+ OMNIBOT_SESSION_TOKEN=research omnibot clipboard write "text" --tab-id <TAB_ID>
581
+ ```
582
+
583
+ Preferred pattern: See `operation-patterns.md#extraction`.
584
+ Fallback relation: Use only when clipboard is part of the browser task.
585
+
586
+ ### viewport
587
+
588
+ Purpose: Read or set viewport size.
589
+
590
+ ```bash
591
+ OMNIBOT_SESSION_TOKEN=visual omnibot viewport get --tab-id <TAB_ID>
592
+ OMNIBOT_SESSION_TOKEN=visual omnibot viewport set 1280 720 --tab-id <TAB_ID>
593
+ ```
594
+
595
+ Preferred pattern: Set explicit viewport before visual verification if layout matters.
596
+ Fallback relation: Not a fallback command.
597
+
598
+ ### assets
599
+
600
+ Purpose: List or export page resources.
601
+
602
+ ```bash
603
+ OMNIBOT_SESSION_TOKEN=extract omnibot assets list --tab-id <TAB_ID>
604
+ OMNIBOT_SESSION_TOKEN=extract omnibot assets export -o /tmp/assets.zip --tab-id <TAB_ID>
605
+ ```
606
+
607
+ Preferred pattern: See `operation-patterns.md#extraction`.
608
+ Fallback relation: Use after page content indicates assets are needed.
609
+
610
+ ## Visibility & Sessions
611
+
612
+ ### visibility
613
+
614
+ Purpose: Inspect or set automation browser visibility mode. `visibility launch` currently reports planned configuration only; it does not launch a browser.
615
+
616
+ ```bash
617
+ omnibot visibility status
618
+ omnibot visibility set background
619
+ omnibot visibility set visible
620
+ omnibot visibility launch headless --user-data-dir /tmp/omnibot-headless
621
+ ```
622
+
623
+ Preferred pattern: See `session-and-tabs.md#visibility`.
624
+ Fallback relation: Headless does not inherit existing user login state. Treat `visibility launch` status `planned` as not launched.
625
+
626
+ ### browser
627
+
628
+ Purpose: Manage browser runtime ownership.
629
+
630
+ ```bash
631
+ OMNIBOT_SESSION_TOKEN=research omnibot browser list
632
+ OMNIBOT_SESSION_TOKEN=research omnibot browser current
633
+ OMNIBOT_SESSION_TOKEN=research omnibot browser claim 123
634
+ OMNIBOT_SESSION_TOKEN=research omnibot browser release 123
635
+ ```
636
+
637
+ Preferred pattern: See `session-and-tabs.md#browser-claimrelease`.
638
+ Fallback relation: Use in multi-browser or multi-runtime scenarios.
639
+
640
+ ### session
641
+
642
+ Purpose: Name or list Omnibot workflow context state for the current `OMNIBOT_SESSION_TOKEN`. This does not switch tabs, preserve login, or replace `--tab-id`.
643
+
644
+ ```bash
645
+ OMNIBOT_SESSION_TOKEN=checkout omnibot session name "checkout"
646
+ OMNIBOT_SESSION_TOKEN=checkout omnibot session list
647
+ ```
648
+
649
+ Preferred pattern: See `session-and-tabs.md#session-first`.
650
+ Fallback relation: Not a fallback command.
651
+
652
+ ## Recording & Trace
653
+
654
+ ### record / replay / trace
655
+
656
+ Purpose: Capture, replay, or trace workflows for evidence.
657
+
658
+ ```bash
659
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record start
660
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record stop -o flow.json
661
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot replay flow.json
662
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace start
663
+ OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace stop -o trace.zip
664
+ ```
665
+
666
+ Preferred pattern: See `debugging-and-evidence.md#record-and-replay` and `debugging-and-evidence.md#trace`.
667
+ Fallback relation: Evidence collection, not operation fallback.
668
+
669
+ ## Skills & License
670
+
671
+ ### skills install / skills path
672
+
673
+ Purpose: Install packaged omnibot skills or show the packaged skills path.
674
+
675
+ ```bash
676
+ omnibot skills install --agent hermes --profile nuwa
677
+ omnibot skills install --agent opencode
678
+ omnibot skills install --agent claude
679
+ omnibot skills install --agent codex
680
+ omnibot skills path
681
+ ```
682
+
683
+ Preferred pattern: See `runtime-and-status.md#skills-path`.
684
+ Fallback relation: Not a fallback command.
685
+
686
+ ### license status
687
+
688
+ Purpose: Inspect license status.
689
+
690
+ ```bash
691
+ omnibot license status
692
+ ```
693
+
694
+ Preferred pattern: See `runtime-and-status.md#startup-check`.
695
+ Fallback relation: Not a fallback command.
696
+
697
+ ## Site Memory
698
+
699
+ ### explore
700
+
701
+ Purpose: Explore one explicit site operation goal and generate reusable installable site skill under `~/.omnibot/skills/omnibot-<name>/`.
702
+
703
+ ```bash
704
+ omnibot explore run https://www.xiaohongshu.com --name xhs --goal "发布图文笔记"
705
+ omnibot explore run https://x.com --goal "post a tweet"
706
+ omnibot explore list
707
+ omnibot explore show xhs
708
+ omnibot explore promote xhs --goal publish-note --version 2026-06-17T21-30-00Z
709
+ ```
710
+
711
+ Rules:
712
+
713
+ - `--goal` is required for a new exploration.
714
+ - Same site and different goals are stored in the same site package.
715
+ - Same site and same goal create a new preserved version.
716
+ - Safe verified versions become active automatically.
717
+ - Dangerous verified versions remain candidates until promoted.
718
+
719
+ ### skills list-sites
720
+
721
+ Purpose: List generated site skills available for installation.
722
+
723
+ ```bash
724
+ omnibot skills list-sites
725
+ ```
726
+
727
+ ### skills install --site
728
+
729
+ Purpose: Install one generated site skill into an agent's skill directory.
730
+
731
+ ```bash
732
+ omnibot skills install --agent opencode --site xhs
733
+ omnibot skills install --agent claude --site xhs
734
+ omnibot skills install --agent opencode --all-sites
735
+ ```
736
+
737
+ Rules:
738
+
739
+ - `--site` installs one generated site skill by name.
740
+ - `--all-sites` installs all generated site skills.
741
+ - Without `--site` or `--all-sites`, only the official packaged omnibot skill is installed.