Release binaries / Build macOS ARM64 (push) Has been cancelled
Release binaries / Build macOS x64 (push) Has been cancelled
Release binaries / Build Linux ARM64 (push) Has been cancelled
Release binaries / Build Linux musl ARM64 (push) Has been cancelled
Release binaries / Build Linux musl x64 (push) Has been cancelled
Release binaries / Build Linux x64 (push) Has been cancelled
Release binaries / Build Windows x64 (push) Has been cancelled
Release binaries / Attach binaries to GitHub Release (push) Has been cancelled
Move multi-agent isolation from blunt daemon-side filtering to relay-side group scoping, so a session can adopt new tabs again (follow-popup, OAuth results, cross-session adopt-by-targetId) without ever seeing the user's or another agent's tabs. Relay (relay.rs): track client->group (announced via new local ABRelay.setGroup, or the first createTarget's agentGroup) and target->group (created tabs tagged from the createTarget reply; an explicit attachToTarget tags the target into the adopter's group = #21; a pop-up inherits its opener's group via openerTargetId). Target.getTargets returns ONLY the requesting client's group; a client that never announced a group (older daemon) gets the full list — fully backward-compatible. +5 unit tests. Daemon (browser.rs): announce_group() on connect sets relay_scoped. Adoption in discover/resync/adopt_newly_opened is re-enabled ONLY when relay_scoped; without it (launch / real CDP / older relay that didn't answer the announce) the daemon keeps strict daemon-side isolation. So this can't regress the 125/125 isolation. Extension (ab-connect 0.4.10): synthesized Target.attachedToTarget targetInfo now carries openerTargetId (pop-ups inherit opener's group) and abGroup (the tab-group title, so the relay re-attributes existing tabs after ITS own restart, since createTarget tagging won't re-run). tabScopeHints(). Back-compat verified live: new daemon + OLD relay -> announce fails -> relay_scoped=false -> strict fallback, open/eval/url all work. The new extension (publish to CWS, strip manifest key) activates follow-popup; relay+daemon ship now. 861 tests pass.
73 lines
1.9 KiB
TOML
73 lines
1.9 KiB
TOML
[package]
|
|
name = "chrome-use"
|
|
version = "1.5.22"
|
|
edition = "2021"
|
|
description = "Fast browser automation CLI for AI agents"
|
|
license = "Apache-2.0"
|
|
repository = "https://github.com/leeguooooo/chrome-use"
|
|
homepage = "https://github.com/leeguooooo/chrome-use"
|
|
readme = "../README.md"
|
|
keywords = ["browser", "automation", "ai", "cdp", "chrome"]
|
|
categories = ["command-line-utilities", "web-programming"]
|
|
|
|
[[bin]]
|
|
name = "chrome-use"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
regex-lite = "0.1"
|
|
dirs = "5.0"
|
|
include_dir = "0.7"
|
|
base64 = "0.22"
|
|
getrandom = "0.2"
|
|
tokio = { version = "1", features = ["rt-multi-thread", "macros", "net", "io-util", "io-std", "time", "sync", "signal", "process"] }
|
|
tokio-tungstenite = { version = "0.24", features = ["rustls-tls-webpki-roots"] }
|
|
futures-util = "0.3"
|
|
url = "2"
|
|
uuid = { version = "1", features = ["v4"] }
|
|
image = "0.25"
|
|
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls-webpki-roots", "stream"] }
|
|
sha2 = "0.10"
|
|
aes-gcm = "0.10"
|
|
async-trait = "0.1"
|
|
socket2 = "0.6"
|
|
similar = "2"
|
|
zip = { version = "8.2.0", default-features = false, features = ["deflate"] }
|
|
time = { version = "0.3", features = ["formatting"] }
|
|
hmac = "0.12"
|
|
hex = "0.4"
|
|
aes = "0.8"
|
|
cbc = "0.1"
|
|
pbkdf2 = { version = "0.12", default-features = false, features = ["hmac"] }
|
|
sha1 = "0.10"
|
|
chrono = "0.4"
|
|
urlencoding = "2"
|
|
rust-embed = "8"
|
|
serde_yaml = "0.9"
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
libc = "0.2"
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
windows-sys = { version = "0.52", features = ["Win32_System_Threading", "Win32_Foundation"] }
|
|
|
|
[dev-dependencies]
|
|
tempfile = "3"
|
|
|
|
[build-dependencies]
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = true
|
|
codegen-units = 1
|
|
strip = true
|
|
|
|
[profile.ci]
|
|
inherits = "release"
|
|
lto = "thin"
|
|
codegen-units = 16
|