@omniaibot/win-x64 1.1.0 → 1.1.6
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/VERSION +1 -1
- package/bin/omnibot-windows-x64/omnibot/SKILL.md +189 -0
- package/bin/omnibot-windows-x64/omnibot/references/anti-patterns.md +37 -0
- package/bin/omnibot-windows-x64/omnibot/references/command-reference.md +605 -0
- package/bin/omnibot-windows-x64/omnibot/references/debugging-and-evidence.md +95 -0
- package/bin/omnibot-windows-x64/omnibot/references/fallback-operations.md +216 -0
- package/bin/omnibot-windows-x64/omnibot/references/operation-patterns.md +385 -0
- package/bin/omnibot-windows-x64/omnibot/references/runtime-and-status.md +111 -0
- package/bin/omnibot-windows-x64/omnibot/references/session-and-tabs.md +164 -0
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/SKILL.md +19 -3
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/anti-patterns.md +12 -4
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/command-reference.md +54 -28
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/debugging-and-evidence.md +1 -1
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/fallback-operations.md +60 -1
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/operation-patterns.md +37 -21
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/runtime-and-status.md +22 -0
- package/bin/omnibot-windows-x64/omnibot/skills/omnibot/references/session-and-tabs.md +44 -28
- package/bin/omnibot-windows-x64/omnibot-windows-x64.exe +0 -0
- package/package.json +2 -2
|
@@ -6,24 +6,25 @@ Use this file to choose behavior by task. Every page-state workflow must set `OM
|
|
|
6
6
|
|
|
7
7
|
### When to use
|
|
8
8
|
|
|
9
|
-
Use Read when the agent needs
|
|
9
|
+
Use Read when the agent needs clean rendered page content: article text, search results, feed items, long pages, lazy-loaded text, or a human-readable summary source.
|
|
10
|
+
|
|
11
|
+
Use targeted state commands when the agent needs one value, visibility, enabled/checked state, layout box, or computed styles. Use `snapshot -i` when the agent needs current visible UI structure for deciding the next action.
|
|
10
12
|
|
|
11
13
|
### Preferred sequence
|
|
12
14
|
|
|
13
|
-
1. `
|
|
14
|
-
2. `
|
|
15
|
-
3. `
|
|
16
|
-
4. `
|
|
17
|
-
5. `
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
1. `read --tab-id <TAB_ID>` for clean page text on an existing tab.
|
|
16
|
+
2. `read --screens N --tab-id <TAB_ID>` for longer or lazy-loaded pages.
|
|
17
|
+
3. `read <URL>` when opening a temporary tab only for reading that URL.
|
|
18
|
+
4. `get title/url/text/html/value/attr/count/box/styles` for narrow evidence.
|
|
19
|
+
5. `is visible/enabled/checked` for boolean state.
|
|
20
|
+
5. `snapshot -i` when actionable refs are needed.
|
|
21
|
+
6. `dom visible` or `execute-js` fallback only after standard reads cannot access the state.
|
|
20
22
|
|
|
21
23
|
### Example
|
|
22
24
|
|
|
23
25
|
```bash
|
|
24
|
-
OMNIBOT_SESSION_TOKEN=research omnibot
|
|
25
|
-
OMNIBOT_SESSION_TOKEN=research omnibot
|
|
26
|
-
OMNIBOT_SESSION_TOKEN=research omnibot get text "#main" --tab-id <TAB_ID>
|
|
26
|
+
OMNIBOT_SESSION_TOKEN=research omnibot read --screens 5 --tab-id <TAB_ID>
|
|
27
|
+
OMNIBOT_SESSION_TOKEN=research omnibot read --screens 3 https://example.com/article
|
|
27
28
|
```
|
|
28
29
|
|
|
29
30
|
### Verification
|
|
@@ -31,13 +32,14 @@ OMNIBOT_SESSION_TOKEN=research omnibot get text "#main" --tab-id <TAB_ID>
|
|
|
31
32
|
Use the narrowest read that proves the claim:
|
|
32
33
|
|
|
33
34
|
```bash
|
|
35
|
+
OMNIBOT_SESSION_TOKEN=research omnibot get title --tab-id <TAB_ID>
|
|
34
36
|
OMNIBOT_SESSION_TOKEN=research omnibot is visible "#main" --tab-id <TAB_ID>
|
|
35
37
|
OMNIBOT_SESSION_TOKEN=research omnibot get count ".result" --tab-id <TAB_ID>
|
|
36
38
|
```
|
|
37
39
|
|
|
38
40
|
### Fallback entry point
|
|
39
41
|
|
|
40
|
-
If targeted reads
|
|
42
|
+
If `read` or targeted reads omit needed runtime state, go to `fallback-operations.md#fallback-tier-model`. Start with DOM fallback before JavaScript.
|
|
41
43
|
|
|
42
44
|
## Click
|
|
43
45
|
|
|
@@ -158,9 +160,23 @@ OMNIBOT_SESSION_TOKEN=form omnibot is checked "#agree" --tab-id <TAB_ID>
|
|
|
158
160
|
|
|
159
161
|
For checkboxes, verify boolean state. For selects, verify value or dependent page state.
|
|
160
162
|
|
|
163
|
+
### CSS-only dropdowns and custom menus
|
|
164
|
+
|
|
165
|
+
Some dropdowns, hover menus, tooltips, and custom selects are CSS-only widgets. The visible trigger may be accessible, while the option nodes are hidden `<div>` elements without `role`, accessible name, or stable refs.
|
|
166
|
+
|
|
167
|
+
Use this evidence path before JavaScript:
|
|
168
|
+
|
|
169
|
+
1. Try semantic `find` or a normal `select`/`click` against the trigger.
|
|
170
|
+
2. Verify whether the selected label, result order, or dependent state changed.
|
|
171
|
+
3. Run `snapshot -i` after opening the control.
|
|
172
|
+
4. If the trigger clicked but options are absent from the accessibility tree, do not keep retrying `find` or stale refs.
|
|
173
|
+
5. Escalate to `fallback-operations.md#css-only-dropdown-javascript-fallback` for an atomic open-then-select script.
|
|
174
|
+
|
|
175
|
+
`snapshot -i` not showing an option does not prove the DOM node is missing. It may only prove the widget is not exposed through the accessibility tree.
|
|
176
|
+
|
|
161
177
|
### Fallback entry point
|
|
162
178
|
|
|
163
|
-
If native select/check fails, use `fallback-operations.md#selector-fallback
|
|
179
|
+
If native select/check fails, use `fallback-operations.md#selector-fallback`. Use JavaScript only if events must be synthesized or if evidence shows a CSS-only multi-step widget cannot be completed through semantic, snapshot, selector, DOM, or mouse tiers.
|
|
164
180
|
|
|
165
181
|
## Navigation
|
|
166
182
|
|
|
@@ -221,7 +237,7 @@ OMNIBOT_SESSION_TOKEN=research omnibot snapshot -i --tab-id <TAB_ID>
|
|
|
221
237
|
|
|
222
238
|
### Fallback entry point
|
|
223
239
|
|
|
224
|
-
|
|
240
|
+
Same-tab navigation must include `--tab-id <TAB_ID>`. If the target tab id is unknown, run `omnibot tabs` first and choose the intended tab explicitly.
|
|
225
241
|
|
|
226
242
|
## Wait
|
|
227
243
|
|
|
@@ -258,7 +274,7 @@ OMNIBOT_SESSION_TOKEN=checkout omnibot wait --fn "window.appReady === true" --ta
|
|
|
258
274
|
|
|
259
275
|
### Verification
|
|
260
276
|
|
|
261
|
-
After waiting, read the final condition with `get`, `is`, `
|
|
277
|
+
After waiting, read the final condition with `get`, `is`, `wait`, or `snapshot`.
|
|
262
278
|
|
|
263
279
|
### Fallback entry point
|
|
264
280
|
|
|
@@ -273,8 +289,8 @@ Use Extraction for retrieving page text, HTML fragments, links, counts, assets,
|
|
|
273
289
|
### Preferred sequence
|
|
274
290
|
|
|
275
291
|
1. `get text/html/attr/count` for targeted extraction.
|
|
276
|
-
2. `
|
|
277
|
-
3. `
|
|
292
|
+
2. `read --screens N` for clean page text, long pages, or lazy-loaded content.
|
|
293
|
+
3. `snapshot -i` for structured page observation before action planning.
|
|
278
294
|
4. `assets list/export` for resources.
|
|
279
295
|
5. `clipboard read` only when clipboard content is part of the task.
|
|
280
296
|
|
|
@@ -289,17 +305,17 @@ OMNIBOT_SESSION_TOKEN=extract omnibot get count ".result" --tab-id <TAB_ID>
|
|
|
289
305
|
Long page example:
|
|
290
306
|
|
|
291
307
|
```bash
|
|
292
|
-
OMNIBOT_SESSION_TOKEN=extract omnibot
|
|
308
|
+
OMNIBOT_SESSION_TOKEN=extract omnibot read --screens 5 --tab-id <TAB_ID>
|
|
293
309
|
OMNIBOT_SESSION_TOKEN=extract omnibot assets list --tab-id <TAB_ID>
|
|
294
310
|
```
|
|
295
311
|
|
|
296
312
|
### Verification
|
|
297
313
|
|
|
298
|
-
Verify extraction completeness with
|
|
314
|
+
Verify extraction completeness with expected markers in `read`, element counts, or targeted reads for known selectors.
|
|
299
315
|
|
|
300
316
|
### Fallback entry point
|
|
301
317
|
|
|
302
|
-
If content exists only in runtime objects, use `fallback-operations.md#javascript-fallback` after explaining why `
|
|
318
|
+
If content exists only in runtime objects, use `fallback-operations.md#javascript-fallback` after explaining why `read`, `snapshot`, and `get` could not access it.
|
|
303
319
|
|
|
304
320
|
## Upload
|
|
305
321
|
|
|
@@ -349,7 +365,7 @@ Use Batch for short, known-safe command chains where the target tab and verifica
|
|
|
349
365
|
### Example
|
|
350
366
|
|
|
351
367
|
```bash
|
|
352
|
-
OMNIBOT_SESSION_TOKEN=research omnibot batch '[{"cmd":"
|
|
368
|
+
OMNIBOT_SESSION_TOKEN=research omnibot batch '[{"cmd":"snapshot","interactive":true}]' --tab-id <TAB_ID>
|
|
353
369
|
OMNIBOT_SESSION_TOKEN=research omnibot snapshot -i --tab-id <TAB_ID>
|
|
354
370
|
```
|
|
355
371
|
|
|
@@ -8,6 +8,7 @@ Run this sequence before diagnosing browser failures:
|
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
10
|
omnibot doctor
|
|
11
|
+
omnibot status
|
|
11
12
|
omnibot tabs
|
|
12
13
|
omnibot visibility status
|
|
13
14
|
omnibot browser current
|
|
@@ -17,6 +18,7 @@ omnibot license status
|
|
|
17
18
|
Interpretation:
|
|
18
19
|
|
|
19
20
|
- `doctor` checks daemon and extension health.
|
|
21
|
+
- `status` checks daemon status only (lighter than `doctor`).
|
|
20
22
|
- `tabs` proves connected tabs are visible and provides tab ids.
|
|
21
23
|
- `visibility status` shows whether automation is visible, background, dedicated-profile, or headless.
|
|
22
24
|
- `browser current` shows current browser runtime ownership.
|
|
@@ -24,6 +26,26 @@ Interpretation:
|
|
|
24
26
|
|
|
25
27
|
If the extension is not connected, open Chrome or Edge with the omnibot extension loaded and keep an HTTP/HTTPS page open.
|
|
26
28
|
|
|
29
|
+
## Daemon Lifecycle
|
|
30
|
+
|
|
31
|
+
Top-level shortcuts:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
omnibot status # Show daemon status
|
|
35
|
+
omnibot start # Start the daemon
|
|
36
|
+
omnibot stop # Stop the daemon
|
|
37
|
+
omnibot run # Run daemon in foreground
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Full form (also supported):
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
omnibot daemon run
|
|
44
|
+
omnibot daemon start
|
|
45
|
+
omnibot daemon stop
|
|
46
|
+
omnibot daemon status
|
|
47
|
+
```
|
|
48
|
+
|
|
27
49
|
## doctor
|
|
28
50
|
|
|
29
51
|
```bash
|
|
@@ -25,6 +25,47 @@ OMNIBOT_SESSION_TOKEN=checkout omnibot get url --tab-id <TAB_ID>
|
|
|
25
25
|
|
|
26
26
|
Do not rely on default tab, active tab, current tab, or previous targeting state.
|
|
27
27
|
|
|
28
|
+
## Explicit Targeting Model
|
|
29
|
+
|
|
30
|
+
Page-state commands never infer a target tab. Always pass `--tab-id <TAB_ID>` for commands that read or mutate page state.
|
|
31
|
+
|
|
32
|
+
Transport selection is internal. Omnibot may use any connected extension WebSocket to deliver extension-level commands, but that transport tab is never the page target.
|
|
33
|
+
|
|
34
|
+
Do not use the first returned tab, `tabs[0]`, browser active tab, newest tab, or prior command state as a target.
|
|
35
|
+
|
|
36
|
+
## Transport Is Not Target
|
|
37
|
+
|
|
38
|
+
Omnibot can send extension commands through any connected extension WebSocket tab. That transport tab is not the page target. The target is only the tab id passed in the command, for example `--tab-id edge-client:123`.
|
|
39
|
+
|
|
40
|
+
Safe sequence:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
OMNIBOT_SESSION_TOKEN=research omnibot navigate https://example.com
|
|
44
|
+
OMNIBOT_SESSION_TOKEN=research omnibot snapshot -i --tab-id edge-client:123
|
|
45
|
+
OMNIBOT_SESSION_TOKEN=research omnibot click --tab-id edge-client:123 @e4
|
|
46
|
+
OMNIBOT_SESSION_TOKEN=research omnibot wait --text "Saved" --tab-id edge-client:123
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Unsafe sequence:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
OMNIBOT_SESSION_TOKEN=research omnibot tabs
|
|
53
|
+
OMNIBOT_SESSION_TOKEN=research omnibot snapshot -i
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
The unsafe sequence has no target. Do not infer target from first tab, active tab, or prior operation.
|
|
57
|
+
|
|
58
|
+
## Safe Browser Test Cleanup
|
|
59
|
+
|
|
60
|
+
Browser integration tests must only close tabs they created:
|
|
61
|
+
|
|
62
|
+
1. Record the list of existing tabs before creating fixtures.
|
|
63
|
+
2. Create a unique fixture tab per case.
|
|
64
|
+
3. Store the returned full tab id.
|
|
65
|
+
4. Pass that id to every page-state command.
|
|
66
|
+
5. Close only stored fixture ids in cleanup.
|
|
67
|
+
6. Verify user tabs remain present after the test.
|
|
68
|
+
|
|
28
69
|
## Why Both
|
|
29
70
|
|
|
30
71
|
- Session = workflow isolation.
|
|
@@ -80,36 +121,11 @@ OMNIBOT_SESSION_TOKEN=research omnibot get url --tab-id <TAB_ID>
|
|
|
80
121
|
OMNIBOT_SESSION_TOKEN=research omnibot snapshot -i --tab-id <TAB_ID>
|
|
81
122
|
```
|
|
82
123
|
|
|
83
|
-
##
|
|
84
|
-
|
|
85
|
-
`switch-tab` is only for casual single-step usage.
|
|
124
|
+
## No Implicit Targeting
|
|
86
125
|
|
|
87
|
-
|
|
126
|
+
Omnibot does not provide a workflow-level current tab command. Every command that reads or changes page state must receive `--tab-id <TAB_ID>` in that command invocation.
|
|
88
127
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
OMNIBOT_SESSION_TOKEN=research omnibot switch-tab 123
|
|
93
|
-
OMNIBOT_SESSION_TOKEN=research omnibot click @e4
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
Good:
|
|
97
|
-
|
|
98
|
-
```bash
|
|
99
|
-
OMNIBOT_SESSION_TOKEN=research omnibot click --tab-id 123 @e4
|
|
100
|
-
OMNIBOT_SESSION_TOKEN=research omnibot snapshot -i --tab-id 123
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
## focus-tab
|
|
104
|
-
|
|
105
|
-
Use `focus-tab` only when the user needs to see the browser UI.
|
|
106
|
-
|
|
107
|
-
It is not a reliable targeting primitive for agent workflows.
|
|
108
|
-
|
|
109
|
-
```bash
|
|
110
|
-
OMNIBOT_SESSION_TOKEN=demo omnibot focus-tab 123
|
|
111
|
-
OMNIBOT_SESSION_TOKEN=demo omnibot snapshot -i --tab-id 123
|
|
112
|
-
```
|
|
128
|
+
This prevents stale target state and cross-agent tab confusion.
|
|
113
129
|
|
|
114
130
|
## browser claim/release
|
|
115
131
|
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omniaibot/win-x64",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.6",
|
|
4
4
|
"description": "omnibot executable for Windows x64",
|
|
5
5
|
"os": [
|
|
6
6
|
"win32"
|
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
"bin/"
|
|
16
16
|
],
|
|
17
17
|
"keywords": [
|
|
18
|
-
"mcp",
|
|
19
18
|
"browser",
|
|
20
19
|
"automation",
|
|
20
|
+
"agent",
|
|
21
21
|
"omnibot"
|
|
22
22
|
],
|
|
23
23
|
"author": "Unagi-cq",
|