- Add browser_cli/url_match.py with a canonical URL key for tab matching - Canonicalize scheme, host, default ports, www., trailing slash, query order - Support reuse modes none, exact, similar and origin via normalize_mode() - Pick the closest match when several tabs qualify, preferring identical URLs - Skip the reload when the reused tab already shows the requested page - Expose nav.reusable_tab() so callers can look up a tab without side effects - Accept reuse/reuse_domain/reuse_title in tabs.open(), not just nav.open() - Add --reuse-exact to nav open and nav open-wait; --reuse is now fuzzy - Default MCP tabs_open to reuse="similar" and return a reused flag - Tell MCP agents in the server instructions to reuse before opening - Document the reuse modes in README for MCP, CLI and Python API - Cover url_match, SDK reuse paths and MCP reuse behaviour with new tests - Bump package and extension version to 0.16.9 - Refresh uv.lock for the updated dependency set
50 lines
1.1 KiB
TOML
50 lines
1.1 KiB
TOML
[project]
|
|
name = "real-browser-cli"
|
|
version = "0.16.9"
|
|
description = "Control your real running browser from the terminal or Python SDK"
|
|
readme = "README.md"
|
|
license = { file = "LICENSE" }
|
|
authors = [{ name = "Daniel Dolezal" }]
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"click>=8",
|
|
"cryptography>=48",
|
|
"rich>=13",
|
|
"msgpack>=1",
|
|
"questionary>=2",
|
|
]
|
|
|
|
[project.urls]
|
|
Homepage = "https://git.yiprawr.dev/Automatisation/browser-cli"
|
|
Repository = "https://git.yiprawr.dev/Automatisation/browser-cli"
|
|
Issues = "https://git.yiprawr.dev/Automatisation/browser-cli/issues"
|
|
|
|
[project.optional-dependencies]
|
|
# Better/faster remote response compression than the stdlib zlib/gzip fallback.
|
|
fast = ["zstandard>=0.22"]
|
|
mcp = [
|
|
"mcp>=2,<3",
|
|
]
|
|
|
|
[project.scripts]
|
|
browser-cli = "browser_cli.cli:main"
|
|
browser-cli-mcp = "browser_cli.mcp.server:main"
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"pytest>=8",
|
|
"pytest-cov>=7.1.0",
|
|
"zstandard>=0.22",
|
|
]
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["browser_cli"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
log_level = "INFO"
|