@omniaibot/win-x64 1.6.8 → 1.6.11
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
1.6.
|
|
1
|
+
1.6.11
|
|
@@ -57,9 +57,15 @@ omnibot --version
|
|
|
57
57
|
If the current workspace contains `pyproject.toml` and the global command is not the workspace version, run the test commands as `uv run omnibot ...` (or use the workspace `.venv/bin/omnibot`) so the agent exercises the code under test. Do not infer command support from memory or from a different packaged version; run the relevant subcommand `--help` after selecting the runtime.
|
|
58
58
|
|
|
59
59
|
For a source-checkout test, make this concrete before the first browser action:
|
|
60
|
+
define the command prefix once:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
export OMNIBOT="uv run omnibot --no-start"
|
|
64
|
+
```
|
|
65
|
+
|
|
60
66
|
stop any existing daemon, start the workspace daemon with
|
|
61
67
|
`uv run python -m omnibot --api-port 18764 --ws-port 18765 daemon run`, and
|
|
62
|
-
invoke every subsequent CLI command as
|
|
68
|
+
invoke every subsequent CLI command as `$OMNIBOT ...` (or the
|
|
63
69
|
workspace `.venv/bin/omnibot --no-start ...`). Never use bare `omnibot` in that
|
|
64
70
|
workflow, because it can auto-start the globally installed packaged daemon and
|
|
65
71
|
silently test different code.
|
|
@@ -71,6 +77,16 @@ Before any page-state operation, choose the narrowest native command that expres
|
|
|
71
77
|
| Intent | Native command path | Do not start with |
|
|
72
78
|
| --- | --- | --- |
|
|
73
79
|
| Current page identity | `get title`, `get url`, then `snapshot -i` or `read` if needed | `execute-js "return document.title/location.href"` |
|
|
80
|
+
| Browser history | `browser history [text]` (also `history search [text]`) | reading browser history through page JavaScript |
|
|
81
|
+
| Bookmarks | `browser bookmarks` (also `bookmarks tree`) | reading the browser bookmark tree |
|
|
82
|
+
| Downloads | `browser downloads [terms]` (also `downloads search [terms]`, `downloads open <id>`) | inspecting/opening browser downloads |
|
|
83
|
+
| Recently closed | `browser recently-closed` | reading recently closed tabs/windows |
|
|
84
|
+
| Top sites | `browser top-sites` | reading browser frequent/top sites |
|
|
85
|
+
| Installed extensions | `browser extensions` | listing extension name, ID, enabled state, type, and version (read-only) |
|
|
86
|
+
| Content settings | `browser content-settings [TYPE] [URL]` | reading site permission state, default `automaticDownloads` (read-only) |
|
|
87
|
+
| Mouse visual state | `browser mouse-visual-state --tab-id <TAB_ID>` | verifying the extension cursor overlay and asset load state (read-only diagnostic) |
|
|
88
|
+
| Notifications | `browser notify <title> [message]` | showing a browser notification |
|
|
89
|
+
| Tab groups | `tab group <TAB_ID> [NAME]`, `tab group-info <TAB_ID>`, `tab ungroup <TAB_ID>` | grouping and inspecting browser tabs |
|
|
74
90
|
| Page text/content | `read --screens N`, `get text`, `get html`, `get attr`, `get count` | `execute-js "document.body.innerText"` |
|
|
75
91
|
| Iframe context | `frame <iframe-id/name/title/src>`, then `snapshot`/page-state commands | Assuming host selectors reach child frames |
|
|
76
92
|
| Click | `find ... --action click` -> `snapshot -i` + `click @eN` -> `click selector` -> `dom click` -> `mouse click` | `document.querySelector(...).click()` |
|
|
@@ -82,6 +98,14 @@ If you are about to write `document.querySelector`, `document.body.innerText`, `
|
|
|
82
98
|
|
|
83
99
|
Text entry rule: when the user asks to enter, type, fill, or replace text, use `fill` or `type`. `keyboard` and `press` dispatch key events for shortcuts and key semantics; they are not text insertion commands and must not be substituted for text entry.
|
|
84
100
|
|
|
101
|
+
Form commit rule: after `fill`, `type`, `select`, `check`, `uncheck`, or `upload`, verify the control itself with `get value`, `get attr`, or `is` before judging the workflow. Many pages keep a separate saved/rendered status that does not change until a visible `Save`, `Apply`, `Submit`, or equivalent control is activated. If such a commit control exists and the task expects business-state verification, observe it, activate it with a native command, then verify the resulting status. Do not report a form action as failed merely because an unrelated status element is still stale, and do not report it as complete without verifying both the control value and any required commit result.
|
|
102
|
+
|
|
103
|
+
Form terminal-timeout rule: keep form workflows as short observe → one control action → one verification steps. If a terminal call times out after `fill`, `select`, `check`, or `Save`, query the browser state first; do not repeat the action blindly because the browser may already have applied it. Continue from the first unverified control and finish with one commit click plus one final status read.
|
|
104
|
+
|
|
105
|
+
Mutation retry rule: issue at most one mutating browser command (`fill`, `type`, `select`, `check`, `uncheck`, `click`, `dblclick`, `drag`, `upload`, or `navigate`) per agent request. If its terminal output is empty, delayed, or times out, the next request must be read-only (`get`, `is`, `snapshot`, `read`, `tabs`, or `wait`) to determine whether the mutation already happened. Never replay the mutation merely because the tool response was missing; duplicate fills can append text and duplicate clicks can change business state.
|
|
106
|
+
|
|
107
|
+
Drag performance rule: selector-based `drag` may take longer than a terminal tool's short default timeout because it dispatches a human-like event sequence. For agent workflows where exact trajectory is not required, prefer `snapshot -i` plus coordinate `mouse drag --fast` after verifying source/target boxes; then verify the target state. If semantic `drag` is required, allow a longer command timeout and do not retry blindly while the first drag may still be running.
|
|
108
|
+
|
|
85
109
|
Clipboard rule: both `clipboard read` and `clipboard write` require the explicit
|
|
86
110
|
`--tab-id <TAB_ID>` on every invocation, even though the clipboard is shared by
|
|
87
111
|
the browser extension. If no tab id is known, discover a safe target tab first;
|
|
@@ -144,6 +168,7 @@ Targeting categories:
|
|
|
144
168
|
Navigation safety invariant:
|
|
145
169
|
|
|
146
170
|
- When the task says "open", "open a new tab", or "create a test page", use `open <URL>` or `tab new <URL>` and use the returned tab id. Do not substitute `goto`, plain `navigate`, or the currently active tab.
|
|
171
|
+
- `navigate <URL>` also opens a new tab by default; `navigate <URL> --new-tab` is an explicit equivalent accepted for agent compatibility. Use `navigate <URL> --same-tab --tab-id <TAB_ID>` only for deliberate same-tab reuse.
|
|
147
172
|
- Use `goto --tab-id <TAB_ID>` or `navigate --same-tab --tab-id <TAB_ID>` only when the task explicitly asks to reuse an existing tab.
|
|
148
173
|
- After creating a tab, verify `get url --tab-id <TAB_ID>` before any clipboard, upload, form, or other page-state operation. This prevents a failed or misinterpreted tab-creation result from mutating a user-owned page.
|
|
149
174
|
- Tool-created tabs are temporary workflow resources and may be auto-closed by cleanup after inactivity. Complete the intended tab workflow in the same token/context, keep the returned tab id, and do not assume it will still exist after a long model pause or a separate one-shot agent process. If a later close reports `not found`, re-list tabs before retrying; the cleanup may already have closed it.
|
|
@@ -351,6 +351,13 @@ Fallback relation: Tier 1. Explain failure before using refs, selectors, DOM, mo
|
|
|
351
351
|
### mouse
|
|
352
352
|
|
|
353
353
|
Purpose: Coordinate-based mouse operations.
|
|
354
|
+
|
|
355
|
+
All coordinate mouse operations are mirrored in the connected extension's
|
|
356
|
+
visible page: a cursor, movement trail, pressed state, drag path, and click
|
|
357
|
+
wave are shown at the same viewport coordinates as the dispatched input. The
|
|
358
|
+
visual layer is best-effort and never changes whether the underlying action
|
|
359
|
+
succeeds. It is recreated after a page reload when the last mouse position is
|
|
360
|
+
known.
|
|
354
361
|
Usage tier: Tier 5 fallback only.
|
|
355
362
|
|
|
356
363
|
> **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.
|
|
Binary file
|