Files
jakevin 987d9cba48 refactor(doctor): drop --no-live and --sessions flags + dead protocol (#1470)
Doctor's job is browser-bridge health diagnosis. The `--no-live` flag
let users skip the connectivity probe (= the core diagnostic), and
`--sessions` listed automation sessions (a separate concern not part of
health). Both flags accreted features that violated the command's
first-principles purpose.

Cleanup chain (removing dead code surfaced by the flag removal):
- `--no-live` / `--sessions` flags removed from `opencli doctor`
- `DoctorOptions.live` / `DoctorOptions.sessions` removed
- `DoctorReport.sessions` removed
- `[SKIP] Connectivity` render branch removed (always-live now)
- `listSessions()` removed (only consumer was doctor)
- `'sessions'` action removed from daemon-client protocol type
- `BrowserSessionInfo` type removed (no remaining consumers)
- extension `handleSessions` action handler removed (1.0.12)
- extension test "reports sessions per session" removed
- `OPENCLI_BROWSER_IDLE_TIMEOUT` test rewired to 'cookies' action

Verification:
- root typecheck + extension typecheck pass
- doctor.test.ts 17/17 pass
- extension/background.test.ts 49/49 pass
- typed-error-lint 189/189 baseline
- silent-column-drop 103/103 baseline
- build + extension build green
2026-05-11 13:10:06 +08:00
..
2026-05-03 23:14:37 +08:00
2026-05-03 23:14:37 +08:00
2026-05-03 23:14:37 +08:00
2026-05-03 23:14:37 +08:00

OpenCLI Browser Bridge Extension

The extension connects Chrome tabs to the local OpenCLI daemon. It uses Chrome extension APIs only as a transport and browser-control layer for explicit CLI commands.

Permission Notes

  • debugger: sends CDP commands to OpenCLI-controlled or bound tabs.
  • tabs / tabGroups: manages the dedicated OpenCLI automation container and reports selected tab metadata back to the CLI.
  • cookies: reads cookies for browser-backed adapters that need authenticated fetches.
  • downloads: surfaces download lifecycle to opencli browser wait download. The extension observes started / in-progress / completed / failed downloads so the CLI can wait for a file triggered by an automation command. OpenCLI filters by the command's filename/URL pattern and timeout, and does not modify, redirect, or persist browser download history.

Suggested Chrome Web Store justification for downloads:

This extension uses chrome.downloads to surface download lifecycle (started / in-progress / completed / failed) to the OpenCLI command-line tool, so agents can wait for downloads triggered during an automation workflow. The command filters by a user-provided filename or URL pattern and timeout. We do not modify, redirect, or persist user download history.