FMLS
b88eeddeed
feat(browser): add openclaw browser batch CLI subcommand ( #111457 )
...
* feat(browser): add `openclaw browser batch` CLI subcommand
Expose the existing `act:batch` runtime through a dedicated CLI subcommand so
users and scripts can run nested act requests in one call without going through
the agent tool.
- `--actions <json>` for inline JSON, `--actions-file <path>` for file input,
`--actions-file -` for stdin (1MB cap to bound a runaway pipe)
- `--continue` sets `stopOnError=false`; default keeps the runtime fail-fast
(stop on first error) behavior, matching the existing batch contract
- `--target-id` forwards to the batch body
- Outer request timeout uses `resolveBrowserActExecutionBudgetMs` so the batch
budget covers nested actions
- Docs (`docs/tools/browser-control.md` + bundled `browser-automation` skill)
document the batch CLI, ref lifecycle, targetId conflict handling, and error
summary format
Co-authored-by: Cursor <cursoragent@cursor.com >
* fix(browser): fail batch CLI on action errors
* fix(browser): keep batch stdin reader private
* docs(browser): refresh batch heading map
* test(browser): assert batch JSON via runtime mock
---------
Co-authored-by: Cursor <cursoragent@cursor.com >
Co-authored-by: Mason Huang <masonxhuang@icloud.com >
Co-authored-by: Mason Huang <masonxhuang@proton.me >
2026-07-24 11:33:45 +08:00
Peter Steinberger
783a5d21cf
refactor(config): purge numeric tuning knobs behind built-in defaults ( #111382 )
2026-07-19 07:35:45 -07:00
soldforaloss
5459a94763
docs(browser): clarify JSON flag placement ( #103155 )
...
* docs(browser): clarify JSON flag placement
* docs(browser): align JSON flag examples
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-12 06:58:40 +01:00
Ho Lim
8a4463eef1
feat(browser): support evaluate timeouts for existing sessions ( #103181 )
...
* fix(browser): honor evaluate timeout for existing sessions
Signed-off-by: Ho Lim <subhoya@gmail.com >
* docs(browser): align existing-session evaluate timeouts
---------
Signed-off-by: Ho Lim <subhoya@gmail.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-11 15:23:52 -07:00
Vincent Koc
597888680c
feat(browser): expose managed graphics diagnostics ( #104291 )
...
* feat(browser): expose managed Chrome graphics diagnostics
* feat(browser): surface graphics facts in doctor
* docs(browser): explain managed graphics diagnostics
* fix(browser): remove unused graphics type import
* fix(browser): keep graphics facts sorting immutable
* fix(browser): bind graphics facts to owned process
* fix(browser): classify disabled graphics as software
* fix(browser): detect Windows software renderers
* fix(browser): classify disabled renderer sentinel
2026-07-11 15:41:16 +08:00
Peter Steinberger
9f53f8a256
feat(macos): import local browser login ( #104177 )
...
* feat(macos): import local browser login
* chore: leave release notes to release workflow
* chore(macos): refresh native i18n inventory
* chore(macos): refresh native i18n inventory
* chore(macos): refresh native i18n inventory
* chore: sync release summary executable bit
* chore(macos): refresh native i18n inventory
* style(macos): wrap browser import result
* chore(macos): refresh native i18n inventory
* chore(macos): refresh native i18n inventory
2026-07-10 22:14:36 -07:00
Peter Steinberger
2a12c9916a
feat(browser): import Chrome-family system-profile cookies into managed profiles ( #104057 )
...
* feat(browser): import Chrome-family system-profile cookies into managed profiles
Import cookies from a real Chrome/Brave/Edge/Chromium system profile (macOS)
into a fresh OpenClaw-managed browser profile so the agent can browse as the
signed-in user. Reads the source Cookies DB via a coherent VACUUM INTO snapshot,
decrypts v10 AES-128-CBC values with the Safe Storage Keychain key (one Touch ID
consent), maps rows to Playwright cookies (FILETIME expiry, SameSite, M124+
domain-hash prefix strip, CHIPS skipped), and best-effort injects them via
addCookies into a mock-keychain profile so they persist without further prompts.
Decrypted values are never logged or returned.
Exposed as agent tool action=importprofile, CLI system-profiles/import-profile,
and POST /profiles/import; action=profiles surfaces importable systemProfiles.
Listing and import are pinned host-local at every surface (gateway, browser
tool, node proxy) since they read the local Keychain and Chrome profiles.
Malformed domain filters fail closed via a shared validator. Gated by
browser.allowSystemProfileImport (default on). Imports cookies only.
* fix(browser): satisfy CI lint (OpenClaw temp dir, Unicode control-char class)
Use resolvePreferredOpenClawTmpDir() instead of os.tmpdir() for the cookie DB
snapshot (messaging/channel runtime tmpdir guard), and match control characters
via the Unicode \p{Cc} class instead of a literal control-char range so the
CLI table sanitizer passes the no-control-regex lint.
2026-07-10 19:15:52 -07:00
Peter Steinberger
f7d7148cf0
docs: rewrite published docs grounded in current source ( #100142 )
...
Source-grounded rewrite of 529 published docs pages with per-unit information-loss verification: 1,713 factual corrections cited to src/**, generated surfaces regenerated, frontmatter titles preserved for i18n, release notes pages untouched. All docs gates green.
Closes #100141
2026-07-05 00:32:47 -04:00
ZengWen-DT
2983edd5a2
docs(browser): clarify networkidle session support ( #94020 )
...
Clarify that `networkidle` is supported for managed and raw-CDP browser sessions but rejected for existing-session mode.
Fixes #80587 .
Co-authored-by: ZengWen-DT <ceng.wen@xydigit.com >
2026-06-19 11:53:07 +01:00
clawsweeper[bot]
24e729fc4e
feat(browser): extend --labels overlay to full-page and element captures ( #92834 )
...
Summary:
- The replacement PR extends Browser plugin labeled screenshots to honor Playwright full-page/ref/element scope, returns annotation bounding boxes, and updates docs, tests, and skill guidance.
- PR surface: Source +415, Tests +550, Docs +24. Total +989 across 12 files.
- Reproducibility: yes. Current main source shows the labeled Playwright helper ignores fullPage/ref/element and omits annotations, and the source PR supplies live before/after commands for the Browser plugin path.
Automerge notes:
- PR branch already contained follow-up commit before automerge: docs(browser): correct raw-CDP labels caveat in automation skill
- PR branch already contained follow-up commit before automerge: fix(browser): preserve labelsSkipped semantics for off-viewport refs
- PR branch already contained follow-up commit before automerge: docs(browser): scope labels docs by driver
- PR branch already contained follow-up commit before automerge: docs(browser): fix labels annotation indent and document scope fix
- PR branch already contained follow-up commit before automerge: docs(browser): indent annotations box schema under --labels bullet
- PR branch already contained follow-up commit before automerge: docs(browser): indent labels annotation schema
Validation:
- ClawSweeper review passed for head 70aca6c506 .
- Required merge gates passed before the squash merge.
Prepared head SHA: 70aca6c506
Review: https://github.com/openclaw/openclaw/pull/92834#issuecomment-4700431344
Co-authored-by: FMLS <kfliuyang@gmail.com >
Co-authored-by: Cursor <cursoragent@cursor.com >
Co-authored-by: Mason Huang <masonxhuang@tencent.com >
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: hxy91819
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com >
2026-06-14 02:21:23 +00:00
lifuyue
ac21e89c13
Support existing-session browser CDP endpoints ( #91736 )
...
* Support existing-session browser CDP endpoints
* Fix browser existing-session test fixture type
---------
Co-authored-by: OpenAI Codex <codex@openai.com >
2026-06-10 10:44:35 -04:00
Vincent Koc
b0998f7d15
fix(browser): accept statement evaluate bodies
2026-06-09 05:07:44 +09:00
FMLS
3a88142ddd
fix(browser): document stable tab references ( #88393 )
...
Summary:
- The branch documents friendly browser tab references across docs, the browser skill, CLI help, and tool schema descriptions, and adds tests for target reference resolution and tab alias behavior.
- PR surface: Source +24, Tests +328, Docs +9. Total +361 across 21 files.
- Reproducibility: yes. for the documentation mismatch by source inspection: current main supports friendly ta ... schema/help surfaces still emphasize raw CDP target ids. Runtime behavior itself is not a new failing path.
Automerge notes:
- PR branch already contained follow-up commit before automerge: refactor(browser): share tab reference CLI help
Validation:
- ClawSweeper review passed for head 118af80b0b .
- Required merge gates passed before the squash merge.
Prepared head SHA: 118af80b0b
Review: https://github.com/openclaw/openclaw/pull/88393#issuecomment-4583558133
Co-authored-by: FMLS <kfliuyang@gmail.com >
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: hxy91819
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com >
2026-05-31 12:09:50 +00:00
Zee Zheng
8be581cbf8
fix(browser): allow inbound media uploads
...
Allow the browser upload tool to resolve OpenClaw-managed inbound media refs such as `media://inbound/<id>` and sandbox-relative `media/inbound/<id>` while preserving the existing upload-root path contract.
Keep upload-root files ahead of sandbox-relative inbound fallback, reject nested absolute inbound media files, and validate raw `media://` paths before URL normalization so traversal-shaped refs cannot resolve to direct media ids.
Verification:
- `OPENCLAW_VITEST_MAX_WORKERS=1 node scripts/run-vitest.mjs extensions/browser/src/browser/paths.test.ts --reporter=verbose`
- `OPENCLAW_VITEST_MAX_WORKERS=1 node scripts/run-vitest.mjs extensions/browser/src/browser/paths.test.ts --reporter=dot`
- `OPENCLAW_HEAVY_CHECK_LOCK_SCOPE=worktree node scripts/run-tsgo.mjs -p test/tsconfig/tsconfig.extensions.test.json --incremental --tsBuildInfoFile .artifacts/tsgo-cache/extensions-test.tsbuildinfo`
- `pnpm lint --threads=8`
- `.agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main`
- `git diff --check`
- GitHub PR checks on be08e6c8a8 : dependency-guard, check-lint, check-test-types, check-additional-extension-bundled, checks-fast-contracts-plugins-a, checks-fast-contracts-plugins-b all passed.
Fixes #83544 .
Co-authored-by: Zee Zheng <zheng.zuo0@gmail.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-30 23:49:07 +01:00
clawsweeper[bot]
fa814eb9ed
feat(browser): add evaluate timeout CLI option ( #83696 )
...
Summary:
- The branch adds `openclaw browser evaluate --timeout-ms`, forwards it to the evaluate body and request timeo ... ents and tests it, adds a changelog entry, and includes a config.patch no-op shortcut from the repair pass.
- Reproducibility: not applicable. this is a feature PR rather than a bug report. Source inspection shows current main lacks the CLI flag while the branch wires it into an already-supported evaluate `timeoutMs` payload.
Automerge notes:
- PR branch already contained follow-up commit before automerge: feat(browser): add evaluate timeout CLI option
Validation:
- ClawSweeper review passed for head 0d81d3d93e .
- Required merge gates passed before the squash merge.
Prepared head SHA: 0d81d3d93e
Review: https://github.com/openclaw/openclaw/pull/83696#issuecomment-4479900502
Co-authored-by: fred <fengruifree@gmail.com >
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com >
2026-05-18 17:30:33 +00:00
Peter Steinberger
7afac6015f
feat(browser): surface observed dialogs ( #83099 )
2026-05-18 00:05:29 +01:00
Peter Steinberger
f97cc58760
fix(browser): auto-start configured browser plugin
2026-04-27 09:37:10 +01:00
Peter Steinberger
ed1ac2fc44
feat(browser): add CDP role snapshot fallback
2026-04-26 04:40:26 +01:00
Peter Steinberger
e6ee4d6e68
fix(browser): preserve tabs across target swaps
2026-04-26 01:21:59 +01:00
Peter Steinberger
c52ec520c7
feat(browser): add one-shot headless start override
2026-04-25 11:42:03 +01:00
Peter Steinberger
9b48e4c0b6
fix(browser): fall back to headless on Linux without display
2026-04-25 11:13:42 +01:00
Peter Steinberger
41ed7fa535
fix(browser): manage isolated downloads
...
Co-authored-by: Pearce Kieser <5055971+Pearcekieser@users.noreply.github.com >
2026-04-25 10:09:13 +01:00
Peter Steinberger
5376a4a5d6
fix(browser): default act timeout budget
...
Co-authored-by: Andy Lin <andyylin@users.noreply.github.com >
2026-04-25 08:11:48 +01:00
Peter Steinberger
209d50b52c
feat(browser): add coordinate click action
...
Co-authored-by: Daniel Lutts <daniellutts@10-19-94-204.dynapool.wireless.nyu.edu >
2026-04-25 07:31:33 +01:00
Peter Steinberger
30aa1f890a
feat(browser): expose doctor diagnostics to agents
...
Co-authored-by: Sean Coley <github@seancoley.me >
2026-04-25 01:15:31 +01:00
Peter Steinberger
60e7b692cc
docs(browser): document inspection diagnostics
2026-04-25 00:56:35 +01:00
Peter Steinberger
82020bd787
feat(browser): prefer suggested tab targets
2026-04-25 00:35:26 +01:00
Peter Steinberger
dea05aae6b
docs(browser): explain automation skill and tab handles
2026-04-25 00:24:33 +01:00
Vincent Koc
627c19c5cb
docs: add Related sections to remaining CLI, gateway API, and help pages
2026-04-23 20:41:35 -07:00
Vincent Koc
2777b089b5
docs: normalize frontmatter titles to sentence case
2026-04-23 13:15:17 -07:00
Mason Huang
7eecfa411d
fix(browser): unblock loopback CDP readiness under strict SSRF defaults ( #66354 )
...
Merged via squash.
Prepared head SHA: d9030ff2f0
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com >
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com >
Reviewed-by: @hxy91819
2026-04-14 16:30:43 +08:00
Peter Steinberger
8efb0801a0
docs: refresh browser existing-session limit refs
2026-04-04 20:26:30 +01:00
Peter Steinberger
29f062770d
docs: refresh browser stop cleanup refs
2026-04-04 12:02:10 +01:00
Peter Steinberger
0bc9f0b5ba
docs: refresh browser screenshot route refs
2026-04-04 11:58:46 +01:00
Peter Steinberger
53d3fbcef6
docs: refresh browser existing session docs
2026-04-04 11:51:07 +01:00
Peter Steinberger
53e2554281
docs: expand browser cli reference
2026-04-04 08:17:19 +01:00
Peter Steinberger
e0f0a1aa1f
docs: clarify browser allowlist troubleshooting
2026-03-29 22:19:22 +09:00
Radek Sienkiewicz
7deb543624
Browser: support non-Chrome existing-session profiles via userDataDir ( #48170 )
...
Merged via squash.
Prepared head SHA: e490035a24
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Reviewed-by: @velvet-shark
2026-03-16 14:21:22 +01:00
Vincent Koc
476d948732
!refactor(browser): remove Chrome extension path and add MCP doctor migration ( #47893 )
...
* Browser: replace extension path with Chrome MCP
* Browser: clarify relay stub and doctor checks
* Docs: mark browser MCP migration as breaking
* Browser: reject unsupported profile drivers
* Browser: accept clawd alias on profile create
* Doctor: narrow legacy browser driver migration
2026-03-15 23:56:08 -07:00
Peter Steinberger
b6d1d0d72d
fix(browser): prefer user profile over chrome relay
2026-03-14 04:15:34 +00:00
Seb Slight
abcaa8c7a9
Docs: add nav titles across docs ( #5689 )
2026-01-31 15:04:03 -06:00
cpojer
8cab78abbc
chore: Run pnpm format:fix.
2026-01-31 21:13:13 +09:00
Peter Steinberger
9a7160786a
refactor: rename to openclaw
2026-01-30 03:16:21 +01:00
Peter Steinberger
6d16a658e5
refactor: rename clawdbot to moltbot with legacy compat
2026-01-27 12:21:02 +00:00
Peter Steinberger
83460df96f
chore: update molt.bot domains
2026-01-27 12:21:01 +00:00
Peter Steinberger
e7fdccce39
refactor: route browser control via gateway/node
2026-01-27 03:24:54 +00:00
Peter Steinberger
4275ed68a2
fix(browser): default to chrome extension takeover
2026-01-15 09:02:42 +00:00
Peter Steinberger
75d2785d20
fix(browser): make extension relay zero-config
2026-01-15 09:02:42 +00:00
Peter Steinberger
3c22fab679
docs(cli): add dedicated browser command page
2026-01-15 05:30:03 +00:00