Browser driver
Skill oneworks-ai/app/packages/plugins/browser-driver/skills/browser-driver
One Works application monorepo for AI agents, plugins, desktop, web, CLI, and Relay.
npx -y skills add oneworks-ai/app --skill browser-driverAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 12 stars12 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Control the current OneWorks session's internal browser tabs with semantic snapshots, reliable element refs, screenshots, waits, and page-safe concurrent workflows.
SKILL.md
3.8 KB, as published. Nobody here has run it
OneWorks In-App Browser Control
Use this skill for websites shown in the OneWorks internal browser. It does not control external Chrome or native desktop applications.
Prefer execute_in_app_browser_workflow when one page has two or more deterministic steps. When independent work is ready for multiple pages, submit it once with execute_in_app_browser_workflows; pages run concurrently while each page remains serial. Use low-level tools only to inspect, recover from a changed page, or perform a single action.
- Use
in_app_browser_openwhen the requested page is not already open. It reuses the same URL by default; passopen_mode: "new-tab"only when the task needs a separate page instance. Pages open on the right by default; passplacement: "bottom"only when a wide horizontal panel better suits the task. Callin_app_browser_list_pagesonly when you need to discover existing pages. Usein_app_browser_show_pageto reveal an existing page when the user needs to see it; ordinary background operations should continue addressing the page directly bypage_idwithout changing the visible tab. - Call
in_app_browser_snapshotbefore referring to page elements. Keep itspage_idpaired with every returnedref; do not invent CSS selectors or coordinates. Every page operation requires an explicitpage_id, so never rely on an implicit active tab. - A ref can become stale after navigation or DOM updates. If a tool returns
TARGET_NOT_FOUND, take a new snapshot and continue with the new ref. - Prefer
in_app_browser_waitwith an expected text/ref over a fixed delay. Do not add shell sleeps. After an action, request only the cheapest state needed for the next decision; do not take both a snapshot and screenshot by default. - Workflows run serially against an explicit
page_id. Give every step a stablenode_id. Usemissing: "skip"only when absence is an expected exit condition; otherwise keep the defaultstop. Batch only independent page workflows; steps targeting the same page are deliberately queued. - For one to three single-workflow steps, results are returned inline. Longer workflows and all multi-page batches return
run_idand step IDs; callget_in_app_browser_workflow_stepsonly for the details needed. Tab management, history clearing, and paginated history reads remain explicit low-level calls and are not workflow steps. - Use
in_app_browser_get_navigation_statefor the cheap current index/loading/back-forward summary. Callin_app_browser_get_navigation_entriesonly when entry details are needed.in_app_browser_navigate_historyaccepts exactly one ofdirection,offset, orindex. - Treat returned
page.id/replacement_page_idfromin_app_browser_duplicate_pageorin_app_browser_move_pageas authoritative; those actions may recreate the webview. Do not keep usingprevious_page_id. Closing a page is terminal forclosed_page_id. - Before choosing a simulated device, call
in_app_browser_list_device_presets. Usein_app_browser_set_device_modefor the device toolbar and emulation,in_app_browser_set_page_zoomfor native page zoom, andin_app_browser_set_embedded_devtoolsonly when inspection is materially useful. Read the applied state within_app_browser_get_page_view_state. - Use
in_app_browser_screenshotonly when visual verification is material. The tool returns a local PNG path. Usein_app_browser_selectfor native HTML selects instead of simulating popup clicks and arrow keys.
The plugin intentionally does not expose arbitrary JavaScript, raw CDP, cookies, storage, saved passwords, or OneWorks application chrome.