Peter Steinberger
2e0f6d5304
fix: recover browser routing and Discord voice context
2026-07-13 23:38:56 +01:00
Peter Steinberger
26210c1600
refactor: remove browser and codex dead exports ( #105867 )
...
* refactor(browser): collapse Playwright export paths
* refactor(browser): remove dead plugin exports
* refactor(codex): remove dead app-server exports
* refactor(codex): remove remaining dead exports
* test(codex): use canonical private-type owners
* test(browser): isolate proxy startup state
* test(browser): remove stale chrome imports
* refactor(codex): privatize remaining helpers
* chore(deadcode): refresh export baseline after rebase
* refactor(browser): finish canonical helper ownership
* refactor: fix dead-export cleanup gates
* refactor(codex): keep runtime facades LOC-neutral
* chore(ci): refresh TypeScript LOC baseline
* chore(deadcode): refresh ratchets after rebase
* chore(ci): refresh LOC baseline after main advance
* chore(deadcode): align ratchets with latest main
2026-07-12 22:23:11 -07:00
Peter Steinberger
81941f2d68
test: enable noUncheckedIndexedAccess for extension tests ( #105343 )
2026-07-12 12:48:22 +01:00
Peter Steinberger
1a8d9d5f15
fix(browser): allow host-local profile administration ( #104616 )
2026-07-11 11:28:58 -07:00
Peter Steinberger
ea2b558e5e
fix(browser): prevent stale profile resurrection ( #104601 )
...
* fix(browser): serialize profile lifecycle
* refactor(browser): tighten lifecycle cleanup
* chore(browser): keep release note in PR
* test(browser): keep temp fixtures inside plugin
* test(browser): use preferred temp root
2026-07-11 11:06:07 -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
qingminlong
4f1f7c6fb0
fix(nodes): resolve Unicode browser node names when configured by display name ( #103548 )
...
* fix-nodes-unicode-browser-node-names
* fix(nodes): preserve compact browser node selectors
* fix(nodes): normalize unicode node names canonically
* fix(nodes): scope compact browser selectors
* fix(nodes): preserve meaningful unicode marks
* chore: leave changelog updates to release automation
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-10 23:32:28 +01:00
Peter Steinberger
3c048ef052
fix(browser): preserve no-display launch diagnostics ( #102946 )
...
* fix(browser): preserve no-display launch diagnostics
* chore: keep changelog release-owned
2026-07-09 16:26:18 +01:00
Vincent Koc
06a0148072
chore(deadcode): remove inert browser relay hook
2026-06-22 02:50:55 +08:00
Peter Steinberger
6868cde4d4
docs: document large extension sources
2026-06-04 21:40:44 -04:00
Peter Steinberger
f750029c72
docs: document browser support modules
2026-06-04 07:58:03 -04:00
Peter Steinberger
b653d94918
chore(lint): enable no-useless-assignment
2026-05-31 22:40:48 +01:00
Peter Steinberger
069ea7942d
fix(browser): cap proxy request timeouts
2026-05-30 04:39:55 -04:00
Peter Steinberger
83154d8470
test: guard browser gateway mock calls
2026-05-12 01:38:09 +01:00
Shakker
9b72e7cfa6
test: tighten browser control state assertion
2026-05-11 10:57:40 +01:00
Peter Steinberger
389a8be4a2
test: tighten browser request profile assertions
2026-05-11 02:58:14 +01:00
Shakker
077a1f2065
test: tighten browser request timeout assertion
2026-05-10 22:38:07 +01:00
Peter Steinberger
827b0de0ce
refactor: reduce plugin sdk surface
2026-05-10 12:37:10 +01:00
Peter Steinberger
297665197b
test: tighten browser request timeout assertion
2026-05-09 05:38:42 +01:00
Peter Steinberger
cf772079c6
fix(browser): share control runtime state
2026-04-30 15:35:42 +01:00
Peter Steinberger
af7f651db3
refactor(plugin-sdk): retire reserved helper exports
2026-04-28 05:21:57 +01:00
Peter Steinberger
8599fdda4a
test: keep extension mocks on sdk seams
2026-04-27 22:55:09 +01:00
Peter Steinberger
9090457da7
test(plugin-sdk): use narrow config runtime mocks
2026-04-27 15:14:02 +01:00
Peter Steinberger
7f3f108521
refactor(config): migrate plugin config access
2026-04-27 12:35:58 +01:00
Peter Steinberger
1a47660518
feat(browser): add qa web runtime support
2026-04-12 19:41:06 -07:00
Peter Steinberger
1868f301ed
refactor: dedupe browser trimmed readers
2026-04-08 00:09:41 +01:00
Peter Steinberger
cb28d8d6b8
refactor: dedupe browser and memory lowercase helpers
2026-04-07 13:44:41 +01:00
Peter Steinberger
3584d28141
refactor: harden plugin metadata and browser sdk seams
2026-04-05 23:35:02 +01:00
Peter Steinberger
13bc70397a
test: trim test partial mocks
2026-04-03 19:10:56 +01:00
Shakker
a5b23f17fb
perf: split browser config sdk support
2026-04-03 16:39:47 +01:00
Peter Steinberger
1efef8205c
fix: stabilize extensions surface test gate
2026-03-30 07:47:58 +09:00
Peter Steinberger
8861cdbb6f
refactor(plugin-sdk): untangle extension test seams
2026-03-29 23:43:53 +01:00
Peter Steinberger
c720fa83bb
fix(browser): narrow browser support facades
2026-03-27 23:20:24 +00:00
Peter Steinberger
9a7ceceffa
refactor: move browser tests into plugin
2026-03-26 23:26:37 +00:00
Peter Steinberger
197510f693
refactor: add browser plugin runtime package
2026-03-26 22:20:39 +00:00