smooth-operator-mcp 3.0.6 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -27,11 +27,24 @@ Or straight from GitHub:
27
27
  npm install -g github:Gitshop77/Smooth-Operator && smooth-operator install opencode
28
28
  ~~~
29
29
 
30
- The wizard asks exactly 3 focused questions: browser profile ownership, browser display, and the Chromium executable. Run `smooth-operator install` with no harness to pick one interactively (TTY only; piped/CI runs print usage and exit). `--yes` applies the recommended defaults, so give it a target: `smooth-operator install opencode --yes`. Personal Chrome mode launches a dedicated debugging profile on `9222` and derives `browserUrl` automatically. Managed mode owns one private persistent profile; connected mode launches and attaches to a dedicated debugging profile and does not claim ownership of an operator's daily browser.
30
+ The wizard asks exactly three focused questions: browser profile ownership,
31
+ browser display, and the Chromium executable. Run `smooth-operator install`
32
+ without a harness to choose one interactively (TTY only; piped and CI runs
33
+ print usage and exit). `--yes` applies the recommended defaults, so give it a
34
+ target: `smooth-operator install opencode --yes`. Personal Chrome mode launches
35
+ a dedicated debugging profile on port `9222` and derives `browserUrl`
36
+ automatically. Managed mode owns one private persistent profile; connected mode
37
+ launches and attaches to a dedicated debugging profile and does not claim
38
+ ownership of an operator's daily browser.
31
39
 
32
- Requires Node 22.23.2+ and an installed Chromium-based browser. Profile at `~/.smooth-operator/browser` — sign in once.
40
+ SmoothOperator requires Node.js 22.23.2 or newer and an installed
41
+ Chromium-based browser. The default managed profile is
42
+ `~/.smooth-operator/browser`; sign in once and reuse that private profile.
33
43
 
34
- Verify: `smooth-operator --help` and `server_health` / `browser_doctor` appear after restart.
44
+ Verify: `smooth-operator --help` and `server_health` / `browser_doctor` appear after restart. `server_health` reports `ok` when the runtime is ready, `degraded` when browser recovery is required or its managed profile lease is not held, and `shutting_down` during teardown; an idle lazy browser is healthy.
45
+
46
+ For a local release check, run `npm run verify`; it covers lint, type safety,
47
+ tests, dead-code analysis, and the package smoke test.
35
48
 
36
49
  ## What it does
37
50
 
@@ -53,11 +66,19 @@ Ask: *“Scrape pricing into a table”*, *“Fill this form with ~/resume.pdf
53
66
 
54
67
  ## How to use
55
68
 
56
- Talk to your harness normally. It can call `browser_navigate` → `browser_snapshot``browser_click` and the rest of the MCP surface as needed. For a challenge, `browser_solve_challenge` returns fresh bounded visual/state evidence and an attempt budget; the connected AI keeps using ordinary browser actions and calls it again until the final classification is clear or the budget is exhausted. Human handoff remains available only as an explicit final option.
69
+ Talk to your harness normally. The preferred loop is `browser_navigate`/`browser_snapshot` → one mutation verify. Element actions accept exactly one current `target`, `ref` (`e5`/`ref:e5`), CSS `selector`, or zero-based `index`; refresh these after navigation or DOM changes. Set `includeSnapshot: true` on a mutation to combine the mutation and its trailing verification snapshot. `browser_batch` is useful for short independent sequences; its `timeoutMs` is a whole-batch deadline (120 seconds by default, 600 seconds maximum).
70
+
71
+ Prefer canonical tools such as `browser_tabs`, `browser_snapshot`, `browser_input`, `browser_back`, `browser_close`, and `browser_extract`. Browser-use compatibility aliases remain available and are labeled as aliases in `tools/list`. Deterministic stale-reference, frame, dialog, element, and browser-recovery errors include a compact recovery tool suggestion.
72
+
73
+ For a challenge, `browser_solve_challenge` returns fresh bounded visual and
74
+ state evidence with an attempt budget. The connected AI uses ordinary browser
75
+ actions and calls it again until a fresh classification reports the challenge
76
+ absent or the automation budget is exhausted. Human handoff remains available
77
+ only as an explicit final option.
57
78
 
58
79
  Browser identity remains native, page JavaScript is available by default, and
59
80
  behavioral timing is off for fast deterministic input. Set the explicit
60
- environment flags to change those choices. See `docs/STEALTH-GUIDE.md` for
81
+ environment flags to change those choices. See the [browser compatibility guide](docs/STEALTH-GUIDE.md) for
61
82
  details and responsible use.
62
83
 
63
84
  For the fastest supported operation, keep behavioral timing off with
@@ -80,29 +101,6 @@ evaluation remains an explicit page capability.
80
101
  - Reliable — private profiles, stale-reference recovery, reconnect handling, and structured errors
81
102
  - Flexible — stdio by default, Streamable HTTP when you need it, plus connect and disabled modes
82
103
 
83
- ## Benchmarks
84
-
85
- Compared with [Browser Use MCP](https://github.com/browser-use/browser-use) · [![Browser Use GitHub stars](https://img.shields.io/github/stars/browser-use/browser-use?style=social)](https://github.com/browser-use/browser-use)
86
-
87
- Tested: 26 August 2026
88
-
89
- | Benchmark | Metric | SmoothOperator | Browser Use MCP |
90
- | --- | --- | ---: | ---: |
91
- | Live Web (8 sites, 32 episodes) | URL success | **32/32** | 23/32 |
92
- | Live Web | Page-text quality | **26/32** | 21/32 |
93
- | Live Web | Combined success | **26/32** | 18/32 |
94
- | Live Web | Task latency mean / p95 | **1,358 / 2,957 ms** | 4,604 / 30,780 ms |
95
- | Live Web | Navigation p95 | **2,130 ms** | 4,320 ms |
96
- | Live Web | Click p95 | 920 ms | **142 ms** |
97
- | Live Web | MCP call p95 | **943 ms** | 2,095 ms |
98
- | Live Web | Trace errors | **0** | 10 |
99
- | MiniWoB++ 0.14.3 (125 tasks) | Reward = 1 | **124/125** | 89/125 |
100
- | MiniWoB++ | Attempts | **125** | 125 |
101
- | MiniWoB++ | MCP errors | **0** | 29 |
102
- | MiniWoB++ | Transport errors | **0** | **0** |
103
- | MiniWoB++ | Timeouts | **0** | **0** |
104
- | Browser Use benchmark | Muse Spark 1.2 · score | **64% · 100 tasks** | 12% · 60 tasks |
105
-
106
- *Task counts and scoring rules differ; comparison is directional.*
107
-
108
- [View the Browser Use benchmark](https://github.com/browser-use/benchmark)
104
+ For HTTP deployments, the configured MCP path also has a bounded readiness
105
+ endpoint at `<path>/healthz` (normally `/mcp/healthz`), subject to the same
106
+ HTTP authentication policy as the MCP endpoint.