@omniaibot/win-x64 1.6.5 → 1.6.7
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/bin/omnibot-windows-x64/81d243bd2c585b0f4821__mypyc.pyd +0 -0
- package/bin/omnibot-windows-x64/VERSION +1 -1
- package/bin/omnibot-windows-x64/_asyncio.pyd +0 -0
- package/bin/omnibot-windows-x64/_bz2.pyd +0 -0
- package/bin/omnibot-windows-x64/_cffi_backend.pyd +0 -0
- package/bin/omnibot-windows-x64/_ctypes.pyd +0 -0
- package/bin/omnibot-windows-x64/_decimal.pyd +0 -0
- package/bin/omnibot-windows-x64/_hashlib.pyd +0 -0
- package/bin/omnibot-windows-x64/_lzma.pyd +0 -0
- package/bin/omnibot-windows-x64/_multiprocessing.pyd +0 -0
- package/bin/omnibot-windows-x64/_overlapped.pyd +0 -0
- package/bin/omnibot-windows-x64/_queue.pyd +0 -0
- package/bin/omnibot-windows-x64/_socket.pyd +0 -0
- package/bin/omnibot-windows-x64/_ssl.pyd +0 -0
- package/bin/omnibot-windows-x64/_uuid.pyd +0 -0
- package/bin/omnibot-windows-x64/_wmi.pyd +0 -0
- package/bin/omnibot-windows-x64/certifi/cacert.pem +70 -0
- package/bin/omnibot-windows-x64/charset_normalizer/cd.pyd +0 -0
- package/bin/omnibot-windows-x64/charset_normalizer/md.pyd +0 -0
- package/bin/omnibot-windows-x64/cryptography/hazmat/bindings/_rust.pyd +0 -0
- package/bin/omnibot-windows-x64/libcrypto-3.dll +0 -0
- package/bin/omnibot-windows-x64/libffi-8.dll +0 -0
- package/bin/omnibot-windows-x64/libssl-3.dll +0 -0
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/SKILL.md +220 -261
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/anti-patterns.md +57 -57
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/command-reference.md +709 -755
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/css-only-dropdown-js.md +50 -50
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/debugging-and-evidence.md +129 -129
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/fallback-operations.md +177 -177
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/operation-patterns.md +432 -432
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/runtime-and-status.md +121 -121
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/session-and-tabs.md +164 -164
- package/bin/omnibot-windows-x64/omnibot/sop/tmwebdriver_sop.md +128 -128
- package/bin/omnibot-windows-x64/omnibot/sop/vue3_component_sop.md +163 -163
- package/bin/omnibot-windows-x64/omnibot-windows-x64.exe +0 -0
- package/bin/omnibot-windows-x64/pyexpat.pyd +0 -0
- package/bin/omnibot-windows-x64/python3.dll +0 -0
- package/bin/omnibot-windows-x64/python312.dll +0 -0
- package/bin/omnibot-windows-x64/select.pyd +0 -0
- package/bin/omnibot-windows-x64/unicodedata.pyd +0 -0
- package/bin/omnibot-windows-x64/vcruntime140.dll +0 -0
- package/bin/omnibot-windows-x64/vcruntime140_1.dll +0 -0
- package/package.json +1 -1
- package/bin/omnibot-windows-x64/libcrypto-3-x64.dll +0 -0
- package/bin/omnibot-windows-x64/libssl-3-x64.dll +0 -0
- package/bin/omnibot-windows-x64/python313.dll +0 -0
|
@@ -1,755 +1,709 @@
|
|
|
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
|
-
Rich text editor refs: if `snapshot -i` shows `@eN [richtext] "..." [contenteditable=true]` under `# DOM Rich Text Editors`, treat it as the article body editor. Use `fill @richtext` to replace the whole body (supports `\n\n` for paragraphs) and `type @richtext` to append. Do not fall back to `execute-js` first.
|
|
178
|
-
|
|
179
|
-
### dblclick
|
|
180
|
-
|
|
181
|
-
Purpose: Double-click an element by `@eN` ref or selector.
|
|
182
|
-
|
|
183
|
-
```bash
|
|
184
|
-
OMNIBOT_SESSION_TOKEN=editor omnibot dblclick --tab-id <TAB_ID> @e7
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
Preferred pattern: See `operation-patterns.md#click`.
|
|
188
|
-
Fallback relation: Prefer semantic or snapshot first; then selector.
|
|
189
|
-
|
|
190
|
-
### fill
|
|
191
|
-
|
|
192
|
-
Purpose: Replace an input value.
|
|
193
|
-
|
|
194
|
-
```bash
|
|
195
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot fill --tab-id <TAB_ID> @e2 "a@b.com"
|
|
196
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot fill "input[name=email]" "a@b.com" --tab-id <TAB_ID>
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
Preferred pattern: See `operation-patterns.md#fill`.
|
|
200
|
-
Fallback relation: Tier 2 with refs, Tier 3 with selector.
|
|
201
|
-
|
|
202
|
-
Rich text body editors (ProseMirror/Quill/Draft.js/Slate/Toutiao article body): if the target is an `@eN [richtext]` ref, `fill` writes through a dedicated contenteditable path that clears the previous body and dispatches `input`/`change` events. Split paragraphs with an empty line:
|
|
203
|
-
|
|
204
|
-
```bash
|
|
205
|
-
OMNIBOT_SESSION_TOKEN=editor omnibot fill --tab-id <TAB_ID> @eN "First paragraph.\n\nSecond paragraph."
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
Raw selector fallback is supported for selectors that look like a rich editor (e.g. `[contenteditable="true"]`, `.ProseMirror`, `.ql-editor`).
|
|
209
|
-
|
|
210
|
-
### type
|
|
211
|
-
|
|
212
|
-
Purpose: Type text into an element.
|
|
213
|
-
|
|
214
|
-
```bash
|
|
215
|
-
OMNIBOT_SESSION_TOKEN=search omnibot type --tab-id <TAB_ID> @e3 "omnibot"
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
Preferred pattern: See `operation-patterns.md#fill`.
|
|
219
|
-
Fallback relation: Use after fill is not appropriate or focus is needed.
|
|
220
|
-
|
|
221
|
-
For `@eN [richtext]` article body editors, `type` appends at the cursor position. Click the `@richtext` ref first to focus the editor.
|
|
222
|
-
|
|
223
|
-
### press
|
|
224
|
-
|
|
225
|
-
Purpose: Press a key in the target tab.
|
|
226
|
-
|
|
227
|
-
```bash
|
|
228
|
-
OMNIBOT_SESSION_TOKEN=search omnibot press Enter --tab-id <TAB_ID>
|
|
229
|
-
```
|
|
230
|
-
|
|
231
|
-
Preferred pattern: See `operation-patterns.md#fill` and `operation-patterns.md#wait`.
|
|
232
|
-
Fallback relation: Not a fallback by itself; verify after pressing.
|
|
233
|
-
|
|
234
|
-
### hover
|
|
235
|
-
|
|
236
|
-
Purpose: Hover an element by ref or selector.
|
|
237
|
-
|
|
238
|
-
```bash
|
|
239
|
-
OMNIBOT_SESSION_TOKEN=menu omnibot hover --tab-id <TAB_ID> @e5
|
|
240
|
-
```
|
|
241
|
-
|
|
242
|
-
Preferred pattern: Observe menu state, hover, then verify visible options.
|
|
243
|
-
Fallback relation: Use mouse move only if hover fails.
|
|
244
|
-
|
|
245
|
-
### focus
|
|
246
|
-
|
|
247
|
-
Purpose: Focus an element by selector.
|
|
248
|
-
|
|
249
|
-
```bash
|
|
250
|
-
OMNIBOT_SESSION_TOKEN=form omnibot focus "input[name=email]" --tab-id <TAB_ID>
|
|
251
|
-
```
|
|
252
|
-
|
|
253
|
-
Preferred pattern: See `operation-patterns.md#fill`.
|
|
254
|
-
Fallback relation: Selector tier before keyboard/type fallback.
|
|
255
|
-
|
|
256
|
-
### select
|
|
257
|
-
|
|
258
|
-
Purpose: Select an option in a dropdown.
|
|
259
|
-
|
|
260
|
-
```bash
|
|
261
|
-
OMNIBOT_SESSION_TOKEN=form omnibot select @e5 "US" --tab-id <TAB_ID>
|
|
262
|
-
```
|
|
263
|
-
|
|
264
|
-
Preferred pattern: See `operation-patterns.md#select--check`.
|
|
265
|
-
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`.
|
|
266
|
-
|
|
267
|
-
### check / uncheck
|
|
268
|
-
|
|
269
|
-
Purpose: Set checkbox state.
|
|
270
|
-
|
|
271
|
-
```bash
|
|
272
|
-
OMNIBOT_SESSION_TOKEN=form omnibot check @e6 --tab-id <TAB_ID>
|
|
273
|
-
OMNIBOT_SESSION_TOKEN=form omnibot uncheck @e6 --tab-id <TAB_ID>
|
|
274
|
-
```
|
|
275
|
-
|
|
276
|
-
Preferred pattern: See `operation-patterns.md#select--check`.
|
|
277
|
-
Fallback relation: Verify with `is checked` before and after.
|
|
278
|
-
|
|
279
|
-
### scroll / scrollintoview
|
|
280
|
-
|
|
281
|
-
Purpose: Scroll page or element.
|
|
282
|
-
|
|
283
|
-
```bash
|
|
284
|
-
OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --tab-id <TAB_ID>
|
|
285
|
-
OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --selector "#list" --tab-id <TAB_ID>
|
|
286
|
-
OMNIBOT_SESSION_TOKEN=read omnibot scrollintoview @e7 --tab-id <TAB_ID>
|
|
287
|
-
```
|
|
288
|
-
|
|
289
|
-
Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
|
|
290
|
-
Fallback relation: DOM or mouse scroll only after standard scroll fails.
|
|
291
|
-
|
|
292
|
-
### drag
|
|
293
|
-
|
|
294
|
-
Purpose: Drag from one element to another.
|
|
295
|
-
|
|
296
|
-
```bash
|
|
297
|
-
OMNIBOT_SESSION_TOKEN=board omnibot drag @e8 @e9 --tab-id <TAB_ID>
|
|
298
|
-
```
|
|
299
|
-
|
|
300
|
-
Preferred pattern: Observe source and target, drag, verify position/state.
|
|
301
|
-
Fallback relation: Mouse drag is Tier 5 if element drag fails.
|
|
302
|
-
|
|
303
|
-
### upload
|
|
304
|
-
|
|
305
|
-
Purpose: Attach a local file to an `<input type="file">` element via CDP (`DOM.setFileInputFiles`), with nodeId and JS `DataTransfer` fallbacks.
|
|
306
|
-
|
|
307
|
-
```bash
|
|
308
|
-
OMNIBOT_SESSION_TOKEN=form omnibot upload "input[type=file]" /path/to/file.png --tab-id <TAB_ID>
|
|
309
|
-
```
|
|
310
|
-
|
|
311
|
-
Preferred pattern: See `operation-patterns.md#upload`.
|
|
312
|
-
Fallback relation: The CLI falls back from CDP objectId → CDP nodeId → JS DataTransfer. Do not stack additional JavaScript fallbacks.
|
|
313
|
-
|
|
314
|
-
### keyboard / keydown / keyup
|
|
315
|
-
|
|
316
|
-
Purpose: Send keyboard text or key state to the target tab when element-specific `type` or `press` is insufficient.
|
|
317
|
-
|
|
318
|
-
```bash
|
|
319
|
-
OMNIBOT_SESSION_TOKEN=form omnibot keyboard type "hello" --tab-id <TAB_ID>
|
|
320
|
-
OMNIBOT_SESSION_TOKEN=form omnibot keyboard inserttext "hello" --tab-id <TAB_ID>
|
|
321
|
-
OMNIBOT_SESSION_TOKEN=form omnibot keydown Shift --tab-id <TAB_ID>
|
|
322
|
-
OMNIBOT_SESSION_TOKEN=form omnibot keyup Shift --tab-id <TAB_ID>
|
|
323
|
-
```
|
|
324
|
-
|
|
325
|
-
Preferred pattern: Prefer `fill`, `type`, and `press` first.
|
|
326
|
-
Fallback relation: Keyboard commands are a focused fallback before mouse or JavaScript.
|
|
327
|
-
|
|
328
|
-
## Semantic Find
|
|
329
|
-
|
|
330
|
-
Semantic find is Tier 1 for operating by meaning.
|
|
331
|
-
|
|
332
|
-
```bash
|
|
333
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot find role button --name "Submit" --action click --tab-id <TAB_ID>
|
|
334
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot find text "Sign in" --action click --tab-id <TAB_ID>
|
|
335
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot find label "Email" --action fill --action-value "a@b.com" --tab-id <TAB_ID>
|
|
336
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot find placeholder "Search" --action type --action-value "omnibot" --tab-id <TAB_ID>
|
|
337
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot find testid submit-button --action click --tab-id <TAB_ID>
|
|
338
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot find nth ".card" 2 --action click --tab-id <TAB_ID>
|
|
339
|
-
```
|
|
340
|
-
|
|
341
|
-
Text-node precision: `find text` walks the DOM text nodes and marks the nearest visible container of the matching text, not the first ancestor whose `textContent` happens to include the needle. The matched offset/length is stored on the element, so `--action click` positions the mouse at the end of the matched text. Inside a `contenteditable` body (ProseMirror/Quill/etc.), the selection is collapsed right after the matched text and the editor is focused, so a follow-up image insertion lands at the intended paragraph instead of the editor root.
|
|
342
|
-
|
|
343
|
-
Preferred pattern: See `operation-patterns.md#click` and `operation-patterns.md#fill`.
|
|
344
|
-
Fallback relation: Tier 1. Explain failure before using refs, selectors, DOM, mouse, JavaScript, or CDP.
|
|
345
|
-
|
|
346
|
-
## Fallback Actions
|
|
347
|
-
|
|
348
|
-
### mouse
|
|
349
|
-
|
|
350
|
-
Purpose: Coordinate-based mouse operations.
|
|
351
|
-
Usage tier: Tier 5 fallback only.
|
|
352
|
-
|
|
353
|
-
> **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.
|
|
354
|
-
|
|
355
|
-
```bash
|
|
356
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --tab-id <TAB_ID>
|
|
357
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --click-count 2 --tab-id <TAB_ID>
|
|
358
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot mouse move --x 50 --y 60 --tab-id <TAB_ID>
|
|
359
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot mouse scroll --x 100 --y 200 --dy 500 --tab-id <TAB_ID>
|
|
360
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot mouse drag --from-x 10 --from-y 20 --to-x 100 --to-y 200 --tab-id <TAB_ID>
|
|
361
|
-
```
|
|
362
|
-
|
|
363
|
-
`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:
|
|
364
|
-
|
|
365
|
-
```bash
|
|
366
|
-
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>
|
|
367
|
-
```
|
|
368
|
-
|
|
369
|
-
Use `--fast` for the old linear 4-event drag (stable, recommended for production):
|
|
370
|
-
|
|
371
|
-
```bash
|
|
372
|
-
omnibot mouse drag --from-x 0 --from-y 0 --to-x 100 --to-y 0 --fast --tab-id <TAB_ID>
|
|
373
|
-
```
|
|
374
|
-
|
|
375
|
-
Preferred pattern: See `fallback-operations.md#mouse-fallback`.
|
|
376
|
-
Fallback relation: After semantic, refs, selector, and DOM fail.
|
|
377
|
-
|
|
378
|
-
### verify
|
|
379
|
-
|
|
380
|
-
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.
|
|
381
|
-
|
|
382
|
-
> **Development status:** This command is experimental and in active development. It is not production-ready. Known limitations:
|
|
383
|
-
> - Only NetEase Yidun (网易易盾) is supported; other captcha providers are not detected.
|
|
384
|
-
> - DOM-based classification (`yidun_classes`) is best-effort and may report wrong types on newer widget versions.
|
|
385
|
-
> - 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.
|
|
386
|
-
> - Success/failure state detection (`state` field) from DOM classes is unreliable; always cross-check with a visual screenshot.
|
|
387
|
-
> - 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.
|
|
388
|
-
> - Do not rely on this command for automated captcha bypass in production workflows.
|
|
389
|
-
|
|
390
|
-
```bash
|
|
391
|
-
OMNIBOT_SESSION_TOKEN=verify omnibot verify inspect --tab-id <TAB_ID>
|
|
392
|
-
OMNIBOT_SESSION_TOKEN=verify omnibot verify inspect --tab-id <TAB_ID> --no-image
|
|
393
|
-
```
|
|
394
|
-
|
|
395
|
-
The agent workflow for slider captchas (experimental, not validated for production):
|
|
396
|
-
1. `verify inspect` → get type, coordinate_map, panel image
|
|
397
|
-
2. Vision model identifies the gap/target position in the image
|
|
398
|
-
3. Convert panel screenshot coordinates to viewport coordinates using `coordinate_map.panel_image_to_viewport_scale_x/y`
|
|
399
|
-
4. `mouse drag` from slider handle to target
|
|
400
|
-
5. `verify inspect` or `screenshot` to verify result
|
|
401
|
-
|
|
402
|
-
For click-sequence captchas (text/icon click):
|
|
403
|
-
1. `verify inspect` → get click area and image
|
|
404
|
-
2. Vision model identifies target coordinates in the image
|
|
405
|
-
3. Convert and execute `mouse click` for each target
|
|
406
|
-
|
|
407
|
-
Batch scoring harness for NetEase Yidun trial pages (test-only):
|
|
408
|
-
|
|
409
|
-
```bash
|
|
410
|
-
python3 tests/verify_workflow_matrix_test.py --iterations 50
|
|
411
|
-
python3 tests/verify_workflow_matrix_test.py --case jigsaw --iterations 50 --solver-command './solver.py'
|
|
412
|
-
```
|
|
413
|
-
|
|
414
|
-
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.
|
|
415
|
-
|
|
416
|
-
### dom
|
|
417
|
-
|
|
418
|
-
Purpose: Interact with visible DOM node ids returned by `dom visible`.
|
|
419
|
-
Usage tier: Tier 4 fallback only.
|
|
420
|
-
|
|
421
|
-
```bash
|
|
422
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot dom visible --tab-id <TAB_ID>
|
|
423
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot dom click n1 --tab-id <TAB_ID>
|
|
424
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot dom dblclick n1 --tab-id <TAB_ID>
|
|
425
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot dom scroll n1 --dy 800 --tab-id <TAB_ID>
|
|
426
|
-
```
|
|
427
|
-
|
|
428
|
-
Preferred pattern: See `fallback-operations.md#dom-fallback`.
|
|
429
|
-
Fallback relation: After selector failure and before mouse fallback.
|
|
430
|
-
|
|
431
|
-
### execute-js
|
|
432
|
-
|
|
433
|
-
Purpose: Run arbitrary JavaScript in the page.
|
|
434
|
-
Usage tier: Tier 6 fallback only. Do not use first.
|
|
435
|
-
|
|
436
|
-
```bash
|
|
437
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot execute-js "return location.href" --tab-id <TAB_ID>
|
|
438
|
-
OMNIBOT_SESSION_TOKEN=repair omnibot execute-js --file /tmp/repair.js --tab-id <TAB_ID>
|
|
439
|
-
```
|
|
440
|
-
|
|
441
|
-
Preferred pattern: See `fallback-operations.md#javascript-fallback`.
|
|
442
|
-
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`.
|
|
443
|
-
|
|
444
|
-
### cdp
|
|
445
|
-
|
|
446
|
-
Purpose: Send raw Chrome DevTools Protocol commands.
|
|
447
|
-
Usage tier: Tier 7 fallback and inspection only.
|
|
448
|
-
|
|
449
|
-
```bash
|
|
450
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp Runtime.evaluate '{"expression":"document.title"}' --tab-id <TAB_ID>
|
|
451
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp DOM.getDocument '{"depth":1}' --tab-id <TAB_ID>
|
|
452
|
-
```
|
|
453
|
-
|
|
454
|
-
Preferred pattern: See `fallback-operations.md#raw-cdp-fallback` and `debugging-and-evidence.md#cdp-inspection`.
|
|
455
|
-
Fallback relation: Last resort.
|
|
456
|
-
|
|
457
|
-
## Navigation & Tabs
|
|
458
|
-
|
|
459
|
-
### navigate / open / goto
|
|
460
|
-
|
|
461
|
-
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.
|
|
462
|
-
|
|
463
|
-
```bash
|
|
464
|
-
OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com
|
|
465
|
-
OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com --same-tab --tab-id <TAB_ID>
|
|
466
|
-
OMNIBOT_SESSION_TOKEN=research omnibot open https://example.com
|
|
467
|
-
OMNIBOT_SESSION_TOKEN=research omnibot goto https://example.com --tab-id <TAB_ID>
|
|
468
|
-
```
|
|
469
|
-
|
|
470
|
-
Preferred pattern: See `operation-patterns.md#navigation` and `session-and-tabs.md#tab-explicit`.
|
|
471
|
-
Fallback relation: Verify with `get url --tab-id <TAB_ID>` before continuing.
|
|
472
|
-
|
|
473
|
-
### close / back / forward / reload / pushstate
|
|
474
|
-
|
|
475
|
-
Purpose: Change tab lifecycle or history state.
|
|
476
|
-
|
|
477
|
-
```bash
|
|
478
|
-
OMNIBOT_SESSION_TOKEN=research omnibot close <TAB_ID>
|
|
479
|
-
OMNIBOT_SESSION_TOKEN=research omnibot back --tab-id <TAB_ID>
|
|
480
|
-
OMNIBOT_SESSION_TOKEN=research omnibot forward --tab-id <TAB_ID>
|
|
481
|
-
OMNIBOT_SESSION_TOKEN=research omnibot reload --tab-id <TAB_ID>
|
|
482
|
-
OMNIBOT_SESSION_TOKEN=research omnibot pushstate /dashboard --tab-id <TAB_ID>
|
|
483
|
-
```
|
|
484
|
-
|
|
485
|
-
Preferred pattern: See `operation-patterns.md#navigation`.
|
|
486
|
-
Fallback relation: Verify URL or page state after the action.
|
|
487
|
-
|
|
488
|
-
### tab
|
|
489
|
-
|
|
490
|
-
Purpose: Manage browser tabs.
|
|
491
|
-
|
|
492
|
-
```bash
|
|
493
|
-
OMNIBOT_SESSION_TOKEN=research omnibot tab list
|
|
494
|
-
OMNIBOT_SESSION_TOKEN=research omnibot tab new https://docs.example.com --label docs
|
|
495
|
-
OMNIBOT_SESSION_TOKEN=research omnibot tab close docs
|
|
496
|
-
```
|
|
497
|
-
|
|
498
|
-
Preferred pattern: See `session-and-tabs.md#tab-explicit`.
|
|
499
|
-
Removed: `tab switch` and `tab focus` are no longer available. Use explicit `--tab-id` on every page-state command.
|
|
500
|
-
|
|
501
|
-
### window / frame
|
|
502
|
-
|
|
503
|
-
Purpose: Manage windows and frames.
|
|
504
|
-
|
|
505
|
-
```bash
|
|
506
|
-
OMNIBOT_SESSION_TOKEN=research omnibot window new
|
|
507
|
-
OMNIBOT_SESSION_TOKEN=research omnibot frame main
|
|
508
|
-
```
|
|
509
|
-
|
|
510
|
-
## Waiting & Batch
|
|
511
|
-
|
|
512
|
-
### wait
|
|
513
|
-
|
|
514
|
-
Purpose: Wait for time, selector, text, URL, load state, or JavaScript condition.
|
|
515
|
-
|
|
516
|
-
```bash
|
|
517
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#ready" --tab-id <TAB_ID>
|
|
518
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#spinner" --state hidden --tab-id <TAB_ID>
|
|
519
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --text "Welcome" --tab-id <TAB_ID>
|
|
520
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --url "/dashboard" --tab-id <TAB_ID>
|
|
521
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load domcontentloaded --tab-id <TAB_ID>
|
|
522
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load networkidle --tab-id <TAB_ID>
|
|
523
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --fn "window.appReady === true" --tab-id <TAB_ID>
|
|
524
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot wait 500 --tab-id <TAB_ID>
|
|
525
|
-
```
|
|
526
|
-
|
|
527
|
-
Preferred pattern: See `operation-patterns.md#wait`.
|
|
528
|
-
Fallback relation: Prefer condition waits over shell sleep. Fixed-time waits like `wait 500` are diagnostic or last resort only.
|
|
529
|
-
|
|
530
|
-
### batch
|
|
531
|
-
|
|
532
|
-
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`.
|
|
533
|
-
|
|
534
|
-
```bash
|
|
535
|
-
OMNIBOT_SESSION_TOKEN=research omnibot batch '[{"cmd":"cdp","method":"Runtime.evaluate","params":{"expression":"document.title","returnByValue":true}}]' --tab-id <TAB_ID>
|
|
536
|
-
OMNIBOT_SESSION_TOKEN=research omnibot batch --file /tmp/omnibot-batch.json --tab-id <TAB_ID>
|
|
537
|
-
```
|
|
538
|
-
|
|
539
|
-
Preferred pattern: See `operation-patterns.md#batch`.
|
|
540
|
-
Fallback relation: Not a substitute for verification.
|
|
541
|
-
|
|
542
|
-
## Debugging
|
|
543
|
-
|
|
544
|
-
### screenshot
|
|
545
|
-
|
|
546
|
-
Purpose: Capture visual evidence from a browser tab.
|
|
547
|
-
|
|
548
|
-
```bash
|
|
549
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --tab-id <TAB_ID> -o /tmp/omni-shot.png
|
|
550
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --annotate --tab-id <TAB_ID> -o /tmp/omni-annotated.png
|
|
551
|
-
```
|
|
552
|
-
|
|
553
|
-
Preferred pattern: See `debugging-and-evidence.md#screenshot`.
|
|
554
|
-
Fallback relation: Evidence collection, not operation fallback.
|
|
555
|
-
|
|
556
|
-
### console
|
|
557
|
-
|
|
558
|
-
Purpose: Read or clear browser console evidence.
|
|
559
|
-
|
|
560
|
-
```bash
|
|
561
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console logs --tab-id <TAB_ID>
|
|
562
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console errors --tab-id <TAB_ID>
|
|
563
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console clear --tab-id <TAB_ID>
|
|
564
|
-
```
|
|
565
|
-
|
|
566
|
-
Preferred pattern: See `debugging-and-evidence.md#console`.
|
|
567
|
-
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.
|
|
568
|
-
|
|
569
|
-
### network
|
|
570
|
-
|
|
571
|
-
Purpose: Capture and inspect CDP Network events buffered by the Omnibot browser extension.
|
|
572
|
-
|
|
573
|
-
```bash
|
|
574
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network clear --tab-id <TAB_ID>
|
|
575
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network start --tab-id <TAB_ID>
|
|
576
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network stop --tab-id <TAB_ID>
|
|
577
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network logs --tab-id <TAB_ID>
|
|
578
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network summary --tab-id <TAB_ID>
|
|
579
|
-
```
|
|
580
|
-
|
|
581
|
-
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.
|
|
582
|
-
|
|
583
|
-
Preferred pattern: See `debugging-and-evidence.md#network-capture`.
|
|
584
|
-
Fallback relation: Evidence collection, not operation fallback.
|
|
585
|
-
|
|
586
|
-
## Browser Capabilities
|
|
587
|
-
|
|
588
|
-
### clipboard
|
|
589
|
-
|
|
590
|
-
Purpose: Read or write browser clipboard.
|
|
591
|
-
|
|
592
|
-
```bash
|
|
593
|
-
OMNIBOT_SESSION_TOKEN=research omnibot clipboard read --tab-id <TAB_ID>
|
|
594
|
-
OMNIBOT_SESSION_TOKEN=research omnibot clipboard write "text" --tab-id <TAB_ID>
|
|
595
|
-
```
|
|
596
|
-
|
|
597
|
-
Preferred pattern: See `operation-patterns.md#extraction`.
|
|
598
|
-
Fallback relation: Use only when clipboard is part of the browser task.
|
|
599
|
-
|
|
600
|
-
### viewport
|
|
601
|
-
|
|
602
|
-
Purpose: Read or set viewport size.
|
|
603
|
-
|
|
604
|
-
```bash
|
|
605
|
-
OMNIBOT_SESSION_TOKEN=visual omnibot viewport get --tab-id <TAB_ID>
|
|
606
|
-
OMNIBOT_SESSION_TOKEN=visual omnibot viewport set 1280 720 --tab-id <TAB_ID>
|
|
607
|
-
```
|
|
608
|
-
|
|
609
|
-
Preferred pattern: Set explicit viewport before visual verification if layout matters.
|
|
610
|
-
Fallback relation: Not a fallback command.
|
|
611
|
-
|
|
612
|
-
### assets
|
|
613
|
-
|
|
614
|
-
Purpose: List or export page resources.
|
|
615
|
-
|
|
616
|
-
```bash
|
|
617
|
-
OMNIBOT_SESSION_TOKEN=extract omnibot assets list --tab-id <TAB_ID>
|
|
618
|
-
OMNIBOT_SESSION_TOKEN=extract omnibot assets export -o /tmp/assets.zip --tab-id <TAB_ID>
|
|
619
|
-
```
|
|
620
|
-
|
|
621
|
-
Preferred pattern: See `operation-patterns.md#extraction`.
|
|
622
|
-
Fallback relation: Use after page content indicates assets are needed.
|
|
623
|
-
|
|
624
|
-
## Visibility & Sessions
|
|
625
|
-
|
|
626
|
-
### visibility
|
|
627
|
-
|
|
628
|
-
Purpose: Inspect or set automation browser visibility mode. `visibility launch` currently reports planned configuration only; it does not launch a browser.
|
|
629
|
-
|
|
630
|
-
```bash
|
|
631
|
-
omnibot visibility status
|
|
632
|
-
omnibot visibility set background
|
|
633
|
-
omnibot visibility set visible
|
|
634
|
-
omnibot visibility launch headless --user-data-dir /tmp/omnibot-headless
|
|
635
|
-
```
|
|
636
|
-
|
|
637
|
-
Preferred pattern: See `session-and-tabs.md#visibility`.
|
|
638
|
-
Fallback relation: Headless does not inherit existing user login state. Treat `visibility launch` status `planned` as not launched.
|
|
639
|
-
|
|
640
|
-
### browser
|
|
641
|
-
|
|
642
|
-
Purpose: Manage browser runtime ownership.
|
|
643
|
-
|
|
644
|
-
```bash
|
|
645
|
-
OMNIBOT_SESSION_TOKEN=research omnibot browser list
|
|
646
|
-
OMNIBOT_SESSION_TOKEN=research omnibot browser current
|
|
647
|
-
OMNIBOT_SESSION_TOKEN=research omnibot browser claim 123
|
|
648
|
-
OMNIBOT_SESSION_TOKEN=research omnibot browser release 123
|
|
649
|
-
```
|
|
650
|
-
|
|
651
|
-
Preferred pattern: See `session-and-tabs.md#browser-claimrelease`.
|
|
652
|
-
Fallback relation: Use in multi-browser or multi-runtime scenarios.
|
|
653
|
-
|
|
654
|
-
### session
|
|
655
|
-
|
|
656
|
-
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`.
|
|
657
|
-
|
|
658
|
-
```bash
|
|
659
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot session name "checkout"
|
|
660
|
-
OMNIBOT_SESSION_TOKEN=checkout omnibot session list
|
|
661
|
-
```
|
|
662
|
-
|
|
663
|
-
Preferred pattern: See `session-and-tabs.md#session-first`.
|
|
664
|
-
Fallback relation: Not a fallback command.
|
|
665
|
-
|
|
666
|
-
## Recording & Trace
|
|
667
|
-
|
|
668
|
-
### record / replay / trace
|
|
669
|
-
|
|
670
|
-
Purpose: Capture, replay, or trace workflows for evidence.
|
|
671
|
-
|
|
672
|
-
```bash
|
|
673
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record start
|
|
674
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record stop -o flow.json
|
|
675
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot replay flow.json
|
|
676
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace start
|
|
677
|
-
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace stop -o trace.zip
|
|
678
|
-
```
|
|
679
|
-
|
|
680
|
-
Preferred pattern: See `debugging-and-evidence.md#record-and-replay` and `debugging-and-evidence.md#trace`.
|
|
681
|
-
Fallback relation: Evidence collection, not operation fallback.
|
|
682
|
-
|
|
683
|
-
## Skills & License
|
|
684
|
-
|
|
685
|
-
### skills install / skills path
|
|
686
|
-
|
|
687
|
-
Purpose: Install packaged omnibot skills or show the packaged skills path.
|
|
688
|
-
|
|
689
|
-
```bash
|
|
690
|
-
omnibot skills install --agent hermes --profile nuwa
|
|
691
|
-
omnibot skills install --agent opencode
|
|
692
|
-
omnibot skills install --agent claude
|
|
693
|
-
omnibot skills install --agent codex
|
|
694
|
-
omnibot skills path
|
|
695
|
-
```
|
|
696
|
-
|
|
697
|
-
Preferred pattern: See `runtime-and-status.md#skills-path`.
|
|
698
|
-
Fallback relation: Not a fallback command.
|
|
699
|
-
|
|
700
|
-
### license status
|
|
701
|
-
|
|
702
|
-
Purpose: Inspect license status.
|
|
703
|
-
|
|
704
|
-
```bash
|
|
705
|
-
omnibot license status
|
|
706
|
-
```
|
|
707
|
-
|
|
708
|
-
Preferred pattern: See `runtime-and-status.md#startup-check`.
|
|
709
|
-
Fallback relation: Not a fallback command.
|
|
710
|
-
|
|
711
|
-
## Site Memory
|
|
712
|
-
|
|
713
|
-
### explore
|
|
714
|
-
|
|
715
|
-
Purpose: Explore one explicit site operation goal and generate reusable installable site skill under `~/.omnibot/skills/omnibot-<name>/`.
|
|
716
|
-
|
|
717
|
-
```bash
|
|
718
|
-
omnibot explore run https://www.xiaohongshu.com --name xhs --goal "发布图文笔记"
|
|
719
|
-
omnibot explore run https://x.com --goal "post a tweet"
|
|
720
|
-
omnibot explore list
|
|
721
|
-
omnibot explore show xhs
|
|
722
|
-
omnibot explore promote xhs --goal publish-note --version 2026-06-17T21-30-00Z
|
|
723
|
-
```
|
|
724
|
-
|
|
725
|
-
Rules:
|
|
726
|
-
|
|
727
|
-
- `--goal` is required for a new exploration.
|
|
728
|
-
- Same site and different goals are stored in the same site package.
|
|
729
|
-
- Same site and same goal create a new preserved version.
|
|
730
|
-
- Safe verified versions become active automatically.
|
|
731
|
-
- Dangerous verified versions remain candidates until promoted.
|
|
732
|
-
|
|
733
|
-
### skills list-sites
|
|
734
|
-
|
|
735
|
-
Purpose: List generated site skills available for installation.
|
|
736
|
-
|
|
737
|
-
```bash
|
|
738
|
-
omnibot skills list-sites
|
|
739
|
-
```
|
|
740
|
-
|
|
741
|
-
### skills install --site
|
|
742
|
-
|
|
743
|
-
Purpose: Install one generated site skill into an agent's skill directory.
|
|
744
|
-
|
|
745
|
-
```bash
|
|
746
|
-
omnibot skills install --agent opencode --site xhs
|
|
747
|
-
omnibot skills install --agent claude --site xhs
|
|
748
|
-
omnibot skills install --agent opencode --all-sites
|
|
749
|
-
```
|
|
750
|
-
|
|
751
|
-
Rules:
|
|
752
|
-
|
|
753
|
-
- `--site` installs one generated site skill by name.
|
|
754
|
-
- `--all-sites` installs all generated site skills.
|
|
755
|
-
- Without `--site` or `--all-sites`, only the official packaged omnibot skill is installed.
|
|
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
|
+
Rich text editor refs: if `snapshot -i` shows `@eN [richtext] "..." [contenteditable=true]` under `# DOM Rich Text Editors`, treat it as the article body editor. Use `fill @richtext` to replace the whole body (supports `\n\n` for paragraphs) and `type @richtext` to append. Do not fall back to `execute-js` first.
|
|
178
|
+
|
|
179
|
+
### dblclick
|
|
180
|
+
|
|
181
|
+
Purpose: Double-click an element by `@eN` ref or selector.
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
OMNIBOT_SESSION_TOKEN=editor omnibot dblclick --tab-id <TAB_ID> @e7
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
Preferred pattern: See `operation-patterns.md#click`.
|
|
188
|
+
Fallback relation: Prefer semantic or snapshot first; then selector.
|
|
189
|
+
|
|
190
|
+
### fill
|
|
191
|
+
|
|
192
|
+
Purpose: Replace an input value.
|
|
193
|
+
|
|
194
|
+
```bash
|
|
195
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot fill --tab-id <TAB_ID> @e2 "a@b.com"
|
|
196
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot fill "input[name=email]" "a@b.com" --tab-id <TAB_ID>
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
Preferred pattern: See `operation-patterns.md#fill`.
|
|
200
|
+
Fallback relation: Tier 2 with refs, Tier 3 with selector.
|
|
201
|
+
|
|
202
|
+
Rich text body editors (ProseMirror/Quill/Draft.js/Slate/Toutiao article body): if the target is an `@eN [richtext]` ref, `fill` writes through a dedicated contenteditable path that clears the previous body and dispatches `input`/`change` events. Split paragraphs with an empty line:
|
|
203
|
+
|
|
204
|
+
```bash
|
|
205
|
+
OMNIBOT_SESSION_TOKEN=editor omnibot fill --tab-id <TAB_ID> @eN "First paragraph.\n\nSecond paragraph."
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
Raw selector fallback is supported for selectors that look like a rich editor (e.g. `[contenteditable="true"]`, `.ProseMirror`, `.ql-editor`).
|
|
209
|
+
|
|
210
|
+
### type
|
|
211
|
+
|
|
212
|
+
Purpose: Type text into an element.
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
OMNIBOT_SESSION_TOKEN=search omnibot type --tab-id <TAB_ID> @e3 "omnibot"
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
Preferred pattern: See `operation-patterns.md#fill`.
|
|
219
|
+
Fallback relation: Use after fill is not appropriate or focus is needed.
|
|
220
|
+
|
|
221
|
+
For `@eN [richtext]` article body editors, `type` appends at the cursor position. Click the `@richtext` ref first to focus the editor.
|
|
222
|
+
|
|
223
|
+
### press
|
|
224
|
+
|
|
225
|
+
Purpose: Press a key in the target tab.
|
|
226
|
+
|
|
227
|
+
```bash
|
|
228
|
+
OMNIBOT_SESSION_TOKEN=search omnibot press Enter --tab-id <TAB_ID>
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
Preferred pattern: See `operation-patterns.md#fill` and `operation-patterns.md#wait`.
|
|
232
|
+
Fallback relation: Not a fallback by itself; verify after pressing.
|
|
233
|
+
|
|
234
|
+
### hover
|
|
235
|
+
|
|
236
|
+
Purpose: Hover an element by ref or selector.
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
OMNIBOT_SESSION_TOKEN=menu omnibot hover --tab-id <TAB_ID> @e5
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
Preferred pattern: Observe menu state, hover, then verify visible options.
|
|
243
|
+
Fallback relation: Use mouse move only if hover fails.
|
|
244
|
+
|
|
245
|
+
### focus
|
|
246
|
+
|
|
247
|
+
Purpose: Focus an element by selector.
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
OMNIBOT_SESSION_TOKEN=form omnibot focus "input[name=email]" --tab-id <TAB_ID>
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
Preferred pattern: See `operation-patterns.md#fill`.
|
|
254
|
+
Fallback relation: Selector tier before keyboard/type fallback.
|
|
255
|
+
|
|
256
|
+
### select
|
|
257
|
+
|
|
258
|
+
Purpose: Select an option in a dropdown.
|
|
259
|
+
|
|
260
|
+
```bash
|
|
261
|
+
OMNIBOT_SESSION_TOKEN=form omnibot select @e5 "US" --tab-id <TAB_ID>
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
Preferred pattern: See `operation-patterns.md#select--check`.
|
|
265
|
+
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`.
|
|
266
|
+
|
|
267
|
+
### check / uncheck
|
|
268
|
+
|
|
269
|
+
Purpose: Set checkbox state.
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
OMNIBOT_SESSION_TOKEN=form omnibot check @e6 --tab-id <TAB_ID>
|
|
273
|
+
OMNIBOT_SESSION_TOKEN=form omnibot uncheck @e6 --tab-id <TAB_ID>
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
Preferred pattern: See `operation-patterns.md#select--check`.
|
|
277
|
+
Fallback relation: Verify with `is checked` before and after.
|
|
278
|
+
|
|
279
|
+
### scroll / scrollintoview
|
|
280
|
+
|
|
281
|
+
Purpose: Scroll page or element.
|
|
282
|
+
|
|
283
|
+
```bash
|
|
284
|
+
OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --tab-id <TAB_ID>
|
|
285
|
+
OMNIBOT_SESSION_TOKEN=read omnibot scroll down 500 --selector "#list" --tab-id <TAB_ID>
|
|
286
|
+
OMNIBOT_SESSION_TOKEN=read omnibot scrollintoview @e7 --tab-id <TAB_ID>
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
Preferred pattern: See `operation-patterns.md#read` and `operation-patterns.md#extraction`.
|
|
290
|
+
Fallback relation: DOM or mouse scroll only after standard scroll fails.
|
|
291
|
+
|
|
292
|
+
### drag
|
|
293
|
+
|
|
294
|
+
Purpose: Drag from one element to another.
|
|
295
|
+
|
|
296
|
+
```bash
|
|
297
|
+
OMNIBOT_SESSION_TOKEN=board omnibot drag @e8 @e9 --tab-id <TAB_ID>
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
Preferred pattern: Observe source and target, drag, verify position/state.
|
|
301
|
+
Fallback relation: Mouse drag is Tier 5 if element drag fails.
|
|
302
|
+
|
|
303
|
+
### upload
|
|
304
|
+
|
|
305
|
+
Purpose: Attach a local file to an `<input type="file">` element via CDP (`DOM.setFileInputFiles`), with nodeId and JS `DataTransfer` fallbacks.
|
|
306
|
+
|
|
307
|
+
```bash
|
|
308
|
+
OMNIBOT_SESSION_TOKEN=form omnibot upload "input[type=file]" /path/to/file.png --tab-id <TAB_ID>
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
Preferred pattern: See `operation-patterns.md#upload`.
|
|
312
|
+
Fallback relation: The CLI falls back from CDP objectId → CDP nodeId → JS DataTransfer. Do not stack additional JavaScript fallbacks.
|
|
313
|
+
|
|
314
|
+
### keyboard / keydown / keyup
|
|
315
|
+
|
|
316
|
+
Purpose: Send keyboard text or key state to the target tab when element-specific `type` or `press` is insufficient.
|
|
317
|
+
|
|
318
|
+
```bash
|
|
319
|
+
OMNIBOT_SESSION_TOKEN=form omnibot keyboard type "hello" --tab-id <TAB_ID>
|
|
320
|
+
OMNIBOT_SESSION_TOKEN=form omnibot keyboard inserttext "hello" --tab-id <TAB_ID>
|
|
321
|
+
OMNIBOT_SESSION_TOKEN=form omnibot keydown Shift --tab-id <TAB_ID>
|
|
322
|
+
OMNIBOT_SESSION_TOKEN=form omnibot keyup Shift --tab-id <TAB_ID>
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
Preferred pattern: Prefer `fill`, `type`, and `press` first.
|
|
326
|
+
Fallback relation: Keyboard commands are a focused fallback before mouse or JavaScript.
|
|
327
|
+
|
|
328
|
+
## Semantic Find
|
|
329
|
+
|
|
330
|
+
Semantic find is Tier 1 for operating by meaning.
|
|
331
|
+
|
|
332
|
+
```bash
|
|
333
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot find role button --name "Submit" --action click --tab-id <TAB_ID>
|
|
334
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot find text "Sign in" --action click --tab-id <TAB_ID>
|
|
335
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot find label "Email" --action fill --action-value "a@b.com" --tab-id <TAB_ID>
|
|
336
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot find placeholder "Search" --action type --action-value "omnibot" --tab-id <TAB_ID>
|
|
337
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot find testid submit-button --action click --tab-id <TAB_ID>
|
|
338
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot find nth ".card" 2 --action click --tab-id <TAB_ID>
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
Text-node precision: `find text` walks the DOM text nodes and marks the nearest visible container of the matching text, not the first ancestor whose `textContent` happens to include the needle. The matched offset/length is stored on the element, so `--action click` positions the mouse at the end of the matched text. Inside a `contenteditable` body (ProseMirror/Quill/etc.), the selection is collapsed right after the matched text and the editor is focused, so a follow-up image insertion lands at the intended paragraph instead of the editor root.
|
|
342
|
+
|
|
343
|
+
Preferred pattern: See `operation-patterns.md#click` and `operation-patterns.md#fill`.
|
|
344
|
+
Fallback relation: Tier 1. Explain failure before using refs, selectors, DOM, mouse, JavaScript, or CDP.
|
|
345
|
+
|
|
346
|
+
## Fallback Actions
|
|
347
|
+
|
|
348
|
+
### mouse
|
|
349
|
+
|
|
350
|
+
Purpose: Coordinate-based mouse operations.
|
|
351
|
+
Usage tier: Tier 5 fallback only.
|
|
352
|
+
|
|
353
|
+
> **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.
|
|
354
|
+
|
|
355
|
+
```bash
|
|
356
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --tab-id <TAB_ID>
|
|
357
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot mouse click --x 100 --y 200 --click-count 2 --tab-id <TAB_ID>
|
|
358
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot mouse move --x 50 --y 60 --tab-id <TAB_ID>
|
|
359
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot mouse scroll --x 100 --y 200 --dy 500 --tab-id <TAB_ID>
|
|
360
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot mouse drag --from-x 10 --from-y 20 --to-x 100 --to-y 200 --tab-id <TAB_ID>
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
`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:
|
|
364
|
+
|
|
365
|
+
```bash
|
|
366
|
+
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>
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
Use `--fast` for the old linear 4-event drag (stable, recommended for production):
|
|
370
|
+
|
|
371
|
+
```bash
|
|
372
|
+
omnibot mouse drag --from-x 0 --from-y 0 --to-x 100 --to-y 0 --fast --tab-id <TAB_ID>
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
Preferred pattern: See `fallback-operations.md#mouse-fallback`.
|
|
376
|
+
Fallback relation: After semantic, refs, selector, and DOM fail.
|
|
377
|
+
|
|
378
|
+
### verify
|
|
379
|
+
|
|
380
|
+
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.
|
|
381
|
+
|
|
382
|
+
> **Development status:** This command is experimental and in active development. It is not production-ready. Known limitations:
|
|
383
|
+
> - Only NetEase Yidun (网易易盾) is supported; other captcha providers are not detected.
|
|
384
|
+
> - DOM-based classification (`yidun_classes`) is best-effort and may report wrong types on newer widget versions.
|
|
385
|
+
> - 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.
|
|
386
|
+
> - Success/failure state detection (`state` field) from DOM classes is unreliable; always cross-check with a visual screenshot.
|
|
387
|
+
> - 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.
|
|
388
|
+
> - Do not rely on this command for automated captcha bypass in production workflows.
|
|
389
|
+
|
|
390
|
+
```bash
|
|
391
|
+
OMNIBOT_SESSION_TOKEN=verify omnibot verify inspect --tab-id <TAB_ID>
|
|
392
|
+
OMNIBOT_SESSION_TOKEN=verify omnibot verify inspect --tab-id <TAB_ID> --no-image
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
The agent workflow for slider captchas (experimental, not validated for production):
|
|
396
|
+
1. `verify inspect` → get type, coordinate_map, panel image
|
|
397
|
+
2. Vision model identifies the gap/target position in the image
|
|
398
|
+
3. Convert panel screenshot coordinates to viewport coordinates using `coordinate_map.panel_image_to_viewport_scale_x/y`
|
|
399
|
+
4. `mouse drag` from slider handle to target
|
|
400
|
+
5. `verify inspect` or `screenshot` to verify result
|
|
401
|
+
|
|
402
|
+
For click-sequence captchas (text/icon click):
|
|
403
|
+
1. `verify inspect` → get click area and image
|
|
404
|
+
2. Vision model identifies target coordinates in the image
|
|
405
|
+
3. Convert and execute `mouse click` for each target
|
|
406
|
+
|
|
407
|
+
Batch scoring harness for NetEase Yidun trial pages (test-only):
|
|
408
|
+
|
|
409
|
+
```bash
|
|
410
|
+
python3 tests/verify_workflow_matrix_test.py --iterations 50
|
|
411
|
+
python3 tests/verify_workflow_matrix_test.py --case jigsaw --iterations 50 --solver-command './solver.py'
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
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.
|
|
415
|
+
|
|
416
|
+
### dom
|
|
417
|
+
|
|
418
|
+
Purpose: Interact with visible DOM node ids returned by `dom visible`.
|
|
419
|
+
Usage tier: Tier 4 fallback only.
|
|
420
|
+
|
|
421
|
+
```bash
|
|
422
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot dom visible --tab-id <TAB_ID>
|
|
423
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot dom click n1 --tab-id <TAB_ID>
|
|
424
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot dom dblclick n1 --tab-id <TAB_ID>
|
|
425
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot dom scroll n1 --dy 800 --tab-id <TAB_ID>
|
|
426
|
+
```
|
|
427
|
+
|
|
428
|
+
Preferred pattern: See `fallback-operations.md#dom-fallback`.
|
|
429
|
+
Fallback relation: After selector failure and before mouse fallback.
|
|
430
|
+
|
|
431
|
+
### execute-js
|
|
432
|
+
|
|
433
|
+
Purpose: Run arbitrary JavaScript in the page.
|
|
434
|
+
Usage tier: Tier 6 fallback only. Do not use first.
|
|
435
|
+
|
|
436
|
+
```bash
|
|
437
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot execute-js "return location.href" --tab-id <TAB_ID>
|
|
438
|
+
OMNIBOT_SESSION_TOKEN=repair omnibot execute-js --file /tmp/repair.js --tab-id <TAB_ID>
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
Preferred pattern: See `fallback-operations.md#javascript-fallback`.
|
|
442
|
+
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`.
|
|
443
|
+
|
|
444
|
+
### cdp
|
|
445
|
+
|
|
446
|
+
Purpose: Send raw Chrome DevTools Protocol commands.
|
|
447
|
+
Usage tier: Tier 7 fallback and inspection only.
|
|
448
|
+
|
|
449
|
+
```bash
|
|
450
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp Runtime.evaluate '{"expression":"document.title"}' --tab-id <TAB_ID>
|
|
451
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot cdp DOM.getDocument '{"depth":1}' --tab-id <TAB_ID>
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
Preferred pattern: See `fallback-operations.md#raw-cdp-fallback` and `debugging-and-evidence.md#cdp-inspection`.
|
|
455
|
+
Fallback relation: Last resort.
|
|
456
|
+
|
|
457
|
+
## Navigation & Tabs
|
|
458
|
+
|
|
459
|
+
### navigate / open / goto
|
|
460
|
+
|
|
461
|
+
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.
|
|
462
|
+
|
|
463
|
+
```bash
|
|
464
|
+
OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com
|
|
465
|
+
OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com --same-tab --tab-id <TAB_ID>
|
|
466
|
+
OMNIBOT_SESSION_TOKEN=research omnibot open https://example.com
|
|
467
|
+
OMNIBOT_SESSION_TOKEN=research omnibot goto https://example.com --tab-id <TAB_ID>
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
Preferred pattern: See `operation-patterns.md#navigation` and `session-and-tabs.md#tab-explicit`.
|
|
471
|
+
Fallback relation: Verify with `get url --tab-id <TAB_ID>` before continuing.
|
|
472
|
+
|
|
473
|
+
### close / back / forward / reload / pushstate
|
|
474
|
+
|
|
475
|
+
Purpose: Change tab lifecycle or history state.
|
|
476
|
+
|
|
477
|
+
```bash
|
|
478
|
+
OMNIBOT_SESSION_TOKEN=research omnibot close <TAB_ID>
|
|
479
|
+
OMNIBOT_SESSION_TOKEN=research omnibot back --tab-id <TAB_ID>
|
|
480
|
+
OMNIBOT_SESSION_TOKEN=research omnibot forward --tab-id <TAB_ID>
|
|
481
|
+
OMNIBOT_SESSION_TOKEN=research omnibot reload --tab-id <TAB_ID>
|
|
482
|
+
OMNIBOT_SESSION_TOKEN=research omnibot pushstate /dashboard --tab-id <TAB_ID>
|
|
483
|
+
```
|
|
484
|
+
|
|
485
|
+
Preferred pattern: See `operation-patterns.md#navigation`.
|
|
486
|
+
Fallback relation: Verify URL or page state after the action.
|
|
487
|
+
|
|
488
|
+
### tab
|
|
489
|
+
|
|
490
|
+
Purpose: Manage browser tabs.
|
|
491
|
+
|
|
492
|
+
```bash
|
|
493
|
+
OMNIBOT_SESSION_TOKEN=research omnibot tab list
|
|
494
|
+
OMNIBOT_SESSION_TOKEN=research omnibot tab new https://docs.example.com --label docs
|
|
495
|
+
OMNIBOT_SESSION_TOKEN=research omnibot tab close docs
|
|
496
|
+
```
|
|
497
|
+
|
|
498
|
+
Preferred pattern: See `session-and-tabs.md#tab-explicit`.
|
|
499
|
+
Removed: `tab switch` and `tab focus` are no longer available. Use explicit `--tab-id` on every page-state command.
|
|
500
|
+
|
|
501
|
+
### window / frame
|
|
502
|
+
|
|
503
|
+
Purpose: Manage windows and frames.
|
|
504
|
+
|
|
505
|
+
```bash
|
|
506
|
+
OMNIBOT_SESSION_TOKEN=research omnibot window new
|
|
507
|
+
OMNIBOT_SESSION_TOKEN=research omnibot frame main
|
|
508
|
+
```
|
|
509
|
+
|
|
510
|
+
## Waiting & Batch
|
|
511
|
+
|
|
512
|
+
### wait
|
|
513
|
+
|
|
514
|
+
Purpose: Wait for time, selector, text, URL, load state, or JavaScript condition.
|
|
515
|
+
|
|
516
|
+
```bash
|
|
517
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#ready" --tab-id <TAB_ID>
|
|
518
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait "#spinner" --state hidden --tab-id <TAB_ID>
|
|
519
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --text "Welcome" --tab-id <TAB_ID>
|
|
520
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --url "/dashboard" --tab-id <TAB_ID>
|
|
521
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load domcontentloaded --tab-id <TAB_ID>
|
|
522
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --load networkidle --tab-id <TAB_ID>
|
|
523
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait --fn "window.appReady === true" --tab-id <TAB_ID>
|
|
524
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot wait 500 --tab-id <TAB_ID>
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
Preferred pattern: See `operation-patterns.md#wait`.
|
|
528
|
+
Fallback relation: Prefer condition waits over shell sleep. Fixed-time waits like `wait 500` are diagnostic or last resort only.
|
|
529
|
+
|
|
530
|
+
### batch
|
|
531
|
+
|
|
532
|
+
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`.
|
|
533
|
+
|
|
534
|
+
```bash
|
|
535
|
+
OMNIBOT_SESSION_TOKEN=research omnibot batch '[{"cmd":"cdp","method":"Runtime.evaluate","params":{"expression":"document.title","returnByValue":true}}]' --tab-id <TAB_ID>
|
|
536
|
+
OMNIBOT_SESSION_TOKEN=research omnibot batch --file /tmp/omnibot-batch.json --tab-id <TAB_ID>
|
|
537
|
+
```
|
|
538
|
+
|
|
539
|
+
Preferred pattern: See `operation-patterns.md#batch`.
|
|
540
|
+
Fallback relation: Not a substitute for verification.
|
|
541
|
+
|
|
542
|
+
## Debugging
|
|
543
|
+
|
|
544
|
+
### screenshot
|
|
545
|
+
|
|
546
|
+
Purpose: Capture visual evidence from a browser tab.
|
|
547
|
+
|
|
548
|
+
```bash
|
|
549
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --tab-id <TAB_ID> -o /tmp/omni-shot.png
|
|
550
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot screenshot --annotate --tab-id <TAB_ID> -o /tmp/omni-annotated.png
|
|
551
|
+
```
|
|
552
|
+
|
|
553
|
+
Preferred pattern: See `debugging-and-evidence.md#screenshot`.
|
|
554
|
+
Fallback relation: Evidence collection, not operation fallback.
|
|
555
|
+
|
|
556
|
+
### console
|
|
557
|
+
|
|
558
|
+
Purpose: Read or clear browser console evidence.
|
|
559
|
+
|
|
560
|
+
```bash
|
|
561
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console logs --tab-id <TAB_ID>
|
|
562
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console errors --tab-id <TAB_ID>
|
|
563
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot console clear --tab-id <TAB_ID>
|
|
564
|
+
```
|
|
565
|
+
|
|
566
|
+
Preferred pattern: See `debugging-and-evidence.md#console`.
|
|
567
|
+
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.
|
|
568
|
+
|
|
569
|
+
### network
|
|
570
|
+
|
|
571
|
+
Purpose: Capture and inspect CDP Network events buffered by the Omnibot browser extension.
|
|
572
|
+
|
|
573
|
+
```bash
|
|
574
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network clear --tab-id <TAB_ID>
|
|
575
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network start --tab-id <TAB_ID>
|
|
576
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network stop --tab-id <TAB_ID>
|
|
577
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network logs --tab-id <TAB_ID>
|
|
578
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot network summary --tab-id <TAB_ID>
|
|
579
|
+
```
|
|
580
|
+
|
|
581
|
+
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.
|
|
582
|
+
|
|
583
|
+
Preferred pattern: See `debugging-and-evidence.md#network-capture`.
|
|
584
|
+
Fallback relation: Evidence collection, not operation fallback.
|
|
585
|
+
|
|
586
|
+
## Browser Capabilities
|
|
587
|
+
|
|
588
|
+
### clipboard
|
|
589
|
+
|
|
590
|
+
Purpose: Read or write browser clipboard.
|
|
591
|
+
|
|
592
|
+
```bash
|
|
593
|
+
OMNIBOT_SESSION_TOKEN=research omnibot clipboard read --tab-id <TAB_ID>
|
|
594
|
+
OMNIBOT_SESSION_TOKEN=research omnibot clipboard write "text" --tab-id <TAB_ID>
|
|
595
|
+
```
|
|
596
|
+
|
|
597
|
+
Preferred pattern: See `operation-patterns.md#extraction`.
|
|
598
|
+
Fallback relation: Use only when clipboard is part of the browser task.
|
|
599
|
+
|
|
600
|
+
### viewport
|
|
601
|
+
|
|
602
|
+
Purpose: Read or set viewport size.
|
|
603
|
+
|
|
604
|
+
```bash
|
|
605
|
+
OMNIBOT_SESSION_TOKEN=visual omnibot viewport get --tab-id <TAB_ID>
|
|
606
|
+
OMNIBOT_SESSION_TOKEN=visual omnibot viewport set 1280 720 --tab-id <TAB_ID>
|
|
607
|
+
```
|
|
608
|
+
|
|
609
|
+
Preferred pattern: Set explicit viewport before visual verification if layout matters.
|
|
610
|
+
Fallback relation: Not a fallback command.
|
|
611
|
+
|
|
612
|
+
### assets
|
|
613
|
+
|
|
614
|
+
Purpose: List or export page resources.
|
|
615
|
+
|
|
616
|
+
```bash
|
|
617
|
+
OMNIBOT_SESSION_TOKEN=extract omnibot assets list --tab-id <TAB_ID>
|
|
618
|
+
OMNIBOT_SESSION_TOKEN=extract omnibot assets export -o /tmp/assets.zip --tab-id <TAB_ID>
|
|
619
|
+
```
|
|
620
|
+
|
|
621
|
+
Preferred pattern: See `operation-patterns.md#extraction`.
|
|
622
|
+
Fallback relation: Use after page content indicates assets are needed.
|
|
623
|
+
|
|
624
|
+
## Visibility & Sessions
|
|
625
|
+
|
|
626
|
+
### visibility
|
|
627
|
+
|
|
628
|
+
Purpose: Inspect or set automation browser visibility mode. `visibility launch` currently reports planned configuration only; it does not launch a browser.
|
|
629
|
+
|
|
630
|
+
```bash
|
|
631
|
+
omnibot visibility status
|
|
632
|
+
omnibot visibility set background
|
|
633
|
+
omnibot visibility set visible
|
|
634
|
+
omnibot visibility launch headless --user-data-dir /tmp/omnibot-headless
|
|
635
|
+
```
|
|
636
|
+
|
|
637
|
+
Preferred pattern: See `session-and-tabs.md#visibility`.
|
|
638
|
+
Fallback relation: Headless does not inherit existing user login state. Treat `visibility launch` status `planned` as not launched.
|
|
639
|
+
|
|
640
|
+
### browser
|
|
641
|
+
|
|
642
|
+
Purpose: Manage browser runtime ownership.
|
|
643
|
+
|
|
644
|
+
```bash
|
|
645
|
+
OMNIBOT_SESSION_TOKEN=research omnibot browser list
|
|
646
|
+
OMNIBOT_SESSION_TOKEN=research omnibot browser current
|
|
647
|
+
OMNIBOT_SESSION_TOKEN=research omnibot browser claim 123
|
|
648
|
+
OMNIBOT_SESSION_TOKEN=research omnibot browser release 123
|
|
649
|
+
```
|
|
650
|
+
|
|
651
|
+
Preferred pattern: See `session-and-tabs.md#browser-claimrelease`.
|
|
652
|
+
Fallback relation: Use in multi-browser or multi-runtime scenarios.
|
|
653
|
+
|
|
654
|
+
### session
|
|
655
|
+
|
|
656
|
+
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`.
|
|
657
|
+
|
|
658
|
+
```bash
|
|
659
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot session name "checkout"
|
|
660
|
+
OMNIBOT_SESSION_TOKEN=checkout omnibot session list
|
|
661
|
+
```
|
|
662
|
+
|
|
663
|
+
Preferred pattern: See `session-and-tabs.md#session-first`.
|
|
664
|
+
Fallback relation: Not a fallback command.
|
|
665
|
+
|
|
666
|
+
## Recording & Trace
|
|
667
|
+
|
|
668
|
+
### record / replay / trace
|
|
669
|
+
|
|
670
|
+
Purpose: Capture, replay, or trace workflows for evidence.
|
|
671
|
+
|
|
672
|
+
```bash
|
|
673
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record start
|
|
674
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot record stop -o flow.json
|
|
675
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot replay flow.json
|
|
676
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace start
|
|
677
|
+
OMNIBOT_SESSION_TOKEN=debug-checkout omnibot trace stop -o trace.zip
|
|
678
|
+
```
|
|
679
|
+
|
|
680
|
+
Preferred pattern: See `debugging-and-evidence.md#record-and-replay` and `debugging-and-evidence.md#trace`.
|
|
681
|
+
Fallback relation: Evidence collection, not operation fallback.
|
|
682
|
+
|
|
683
|
+
## Skills & License
|
|
684
|
+
|
|
685
|
+
### skills install / skills path
|
|
686
|
+
|
|
687
|
+
Purpose: Install packaged omnibot skills or show the packaged skills path.
|
|
688
|
+
|
|
689
|
+
```bash
|
|
690
|
+
omnibot skills install --agent hermes --profile nuwa
|
|
691
|
+
omnibot skills install --agent opencode
|
|
692
|
+
omnibot skills install --agent claude
|
|
693
|
+
omnibot skills install --agent codex
|
|
694
|
+
omnibot skills path
|
|
695
|
+
```
|
|
696
|
+
|
|
697
|
+
Preferred pattern: See `runtime-and-status.md#skills-path`.
|
|
698
|
+
Fallback relation: Not a fallback command.
|
|
699
|
+
|
|
700
|
+
### license status
|
|
701
|
+
|
|
702
|
+
Purpose: Inspect license status.
|
|
703
|
+
|
|
704
|
+
```bash
|
|
705
|
+
omnibot license status
|
|
706
|
+
```
|
|
707
|
+
|
|
708
|
+
Preferred pattern: See `runtime-and-status.md#startup-check`.
|
|
709
|
+
Fallback relation: Not a fallback command.
|