@jobshimo/browser-link 0.32.0 → 0.33.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.
@@ -19,28 +19,69 @@
19
19
  * minus the human gesture — accepted, like the port-squatting caveat.
20
20
  */
21
21
  /**
22
- * Backoff schedule, one entry per attempt: 1s, 2s, 4s, 8s — four attempts,
23
- * 15s of scheduled wait total (each attempt's own duration — debugger
24
- * attach, CDP enables, WS round trip — adds on top of the delays, so the
25
- * wall-clock window is longer). Sized for the observed failure (a primary
26
- * process restarting within seconds) and kept comfortably inside the MV3
27
- * service worker's ~30s idle grace: every timer fire touches chrome.* APIs,
28
- * which resets the idle clock, so the whole sequence normally runs without
29
- * the worker being torn down. If Chrome kills the worker anyway, the
30
- * persisted `pendingReconnect:*` state resumes the budget on the next wake
31
- * (see background.ts's resumePendingReconnects). Past the last entry the
32
- * budget is exhausted and the popup's Connect button is the fallback, as
33
- * before this feature existed.
22
+ * How long a dropped tab keeps being retried: 10 minutes. Measured in a real
23
+ * session, the primary bridge process died, the old 15s budget ran out while
24
+ * the agent was still diagnosing, and the tab stayed released until the
25
+ * human pressed Connect again. A retry against a dead loopback port is
26
+ * nearly free; giving up costs the whole session, so keep trying while the
27
+ * Chrome tab is still open. Past the window the popup's Connect button is
28
+ * the fallback, as before.
34
29
  */
35
- export const RECONNECT_DELAYS_MS = [1000, 2000, 4000, 8000];
30
+ export const RECONNECT_WINDOW_MS = 10 * 60_000;
31
+ /** Slowest pace of the backoff (the plateau after the ramp). */
32
+ export const RECONNECT_MAX_DELAY_MS = 30_000;
33
+ /** First, fast steps — sized for the common failure, a primary restarting
34
+ * within seconds — before settling onto the plateau. */
35
+ const RECONNECT_RAMP_MS = [1000, 2000, 4000, 8000, 15_000];
36
36
  /**
37
- * How long a persisted `pendingReconnect:*` entry stays resumable. A
38
- * service worker that wakes MINUTES after the drop should not surprise the
39
- * user with a reconnect long after they moved on — past this window the
40
- * entry is discarded and the popup's Connect button is the fallback.
41
- * Matches the temperament of WS_IDLE_SWEEP_MS (one minute).
37
+ * chrome.alarms' minimum delay (Chrome 120+). Used for the safety-net
38
+ * alarm that wakes a sleeping MV3 service worker (see background.ts).
42
39
  */
43
- export const RECONNECT_STATE_TTL_MS = 60_000;
40
+ export const ALARM_MIN_DELAY_MS = 30_000;
41
+ /** Capped exponential backoff: the `ramp` steps, then `capMs` repeated for
42
+ * as long as the cumulative scheduled wait stays within `windowMs`. */
43
+ export function buildReconnectDelays(opts = {}) {
44
+ const ramp = opts.ramp ?? RECONNECT_RAMP_MS;
45
+ const capMs = opts.capMs ?? RECONNECT_MAX_DELAY_MS;
46
+ const windowMs = opts.windowMs ?? RECONNECT_WINDOW_MS;
47
+ const delays = [];
48
+ let total = 0;
49
+ for (const d of ramp) {
50
+ if (total + d > windowMs)
51
+ return delays;
52
+ delays.push(d);
53
+ total += d;
54
+ }
55
+ while (total + capMs <= windowMs) {
56
+ delays.push(capMs);
57
+ total += capMs;
58
+ }
59
+ return delays;
60
+ }
61
+ /**
62
+ * Backoff schedule, one entry per attempt: 1s, 2s, 4s, 8s, 15s, then every
63
+ * 30s until the 10-minute window is spent (24 attempts, exactly 600s of
64
+ * scheduled wait; each attempt's own duration — debugger attach, CDP
65
+ * enables, WS round trip — adds on top). No jitter: it is a single local
66
+ * client talking to a single loopback port, so there is no herd to spread.
67
+ *
68
+ * MV3 durability: plain timers cover the fast ramp (each fire touches
69
+ * chrome.* APIs, which resets the worker's ~30s idle clock), but the 30s
70
+ * plateau lets Chrome tear the worker down between attempts. background.ts
71
+ * therefore mirrors every armed attempt into `pendingReconnect:*` storage
72
+ * AND a `chrome.alarms` safety net; the alarm wakes the worker, which
73
+ * resumes from storage (see resumePendingReconnects).
74
+ */
75
+ export const RECONNECT_DELAYS_MS = buildReconnectDelays();
76
+ /**
77
+ * How long a persisted `pendingReconnect:*` entry stays resumable. Each
78
+ * schedule refreshes `updatedAt`, so this only has to cover the longest
79
+ * gap between schedules; it is set to the whole retry window plus a minute
80
+ * of slack so the stored state always outlives the schedule it describes.
81
+ * Past it the entry is discarded and the popup's Connect button is the
82
+ * fallback.
83
+ */
84
+ export const RECONNECT_STATE_TTL_MS = RECONNECT_WINDOW_MS + 60_000;
44
85
  /** chrome.storage.session key prefix for per-tab reconnect state — sits
45
86
  * alongside the existing `prevTabId:*` keys (same area, same per-browser-
46
87
  * session lifetime, same per-Chrome-tab keying). */
@@ -76,6 +117,13 @@ export function reconnectDelayMs(attempt, delays = RECONNECT_DELAYS_MS) {
76
117
  export function isInvoluntaryClose(ctx) {
77
118
  return ctx.tracked && ctx.registered && !ctx.wasClean;
78
119
  }
120
+ /** Remaining wait for a resumed attempt, or `undefined` when the entry has
121
+ * no `dueAt` (the scheduler then uses the attempt's regular delay). */
122
+ export function resumeDelayMs(state, now) {
123
+ if (state.dueAt === undefined)
124
+ return undefined;
125
+ return Math.max(0, state.dueAt - now);
126
+ }
79
127
  /** Runtime shape guard for a stored `pendingReconnect:*` value — storage
80
128
  * contents are untrusted (corruption, future shape changes), so malformed
81
129
  * entries are rejected here and discarded by the caller. */
@@ -87,7 +135,10 @@ export function parseStoredReconnectState(value) {
87
135
  return null;
88
136
  if (typeof s.updatedAt !== 'number' || !Number.isFinite(s.updatedAt))
89
137
  return null;
90
- return { attempt: s.attempt, updatedAt: s.updatedAt };
138
+ const dueAt = typeof s.dueAt === 'number' && Number.isFinite(s.dueAt) ? s.dueAt : undefined;
139
+ return dueAt === undefined
140
+ ? { attempt: s.attempt, updatedAt: s.updatedAt }
141
+ : { attempt: s.attempt, updatedAt: s.updatedAt, dueAt };
91
142
  }
92
143
  /** Whether a persisted reconnect entry is still worth resuming. A negative
93
144
  * age (clock went backwards) counts as stale — the fallback is just the
@@ -96,6 +147,32 @@ export function isReconnectStateFresh(updatedAt, now) {
96
147
  const age = now - updatedAt;
97
148
  return age >= 0 && age < RECONNECT_STATE_TTL_MS;
98
149
  }
150
+ /**
151
+ * Decide, from a snapshot of `chrome.storage.session`, which persisted
152
+ * reconnect cycles to resume. Pure so the race with a concurrent cancel is
153
+ * unit-testable: `cancelledSince(tabId)` must answer "was this tab cancelled
154
+ * (disconnect / manual Connect / tab removal) after the snapshot read began?".
155
+ * Such a tab is neither resumed NOR discarded — the canceller already cleared
156
+ * storage, and a fresh cycle scheduled since then must not be wiped.
157
+ */
158
+ export function planResume(stored, now, ctx) {
159
+ const plan = { resume: [], discard: [] };
160
+ for (const [key, value] of Object.entries(stored)) {
161
+ const tabId = tabIdFromReconnectKey(key);
162
+ if (tabId === null)
163
+ continue;
164
+ if (ctx.cancelledSince(tabId))
165
+ continue;
166
+ const state = parseStoredReconnectState(value);
167
+ if (state && isReconnectStateFresh(state.updatedAt, now) && !ctx.isLive(tabId)) {
168
+ plan.resume.push({ tabId, attempt: state.attempt, delayMs: resumeDelayMs(state, now) });
169
+ }
170
+ else {
171
+ plan.discard.push(tabId);
172
+ }
173
+ }
174
+ return plan;
175
+ }
99
176
  export function createReconnectScheduler(options) {
100
177
  const delays = options.delaysMs ?? RECONNECT_DELAYS_MS;
101
178
  const setTimer = options.setTimer ?? ((fn, delayMs) => setTimeout(fn, delayMs));
@@ -104,23 +181,26 @@ export function createReconnectScheduler(options) {
104
181
  clearTimeout(handle);
105
182
  });
106
183
  const pending = new Map();
184
+ let cancelSeq = 0;
185
+ const cancelledAt = new Map();
107
186
  const notify = (tabId, state) => {
108
187
  options.onStateChange?.(tabId, state);
109
188
  };
110
- function arm(tabId, entry, attempt) {
111
- const delayMs = reconnectDelayMs(attempt, delays);
112
- if (delayMs === undefined) {
189
+ function arm(tabId, entry, attempt, delayOverrideMs) {
190
+ const stepMs = reconnectDelayMs(attempt, delays);
191
+ if (stepMs === undefined) {
113
192
  // Budget exhausted — end the cycle cleanly. The popup's Connect
114
193
  // button remains the fallback, exactly as before this feature.
115
194
  pending.delete(tabId);
116
195
  notify(tabId, null);
117
196
  return false;
118
197
  }
198
+ const delayMs = delayOverrideMs ?? stepMs;
119
199
  entry.attempt = attempt;
120
200
  entry.timer = setTimer(() => {
121
201
  void fire(tabId, entry);
122
202
  }, delayMs);
123
- notify(tabId, { attempt });
203
+ notify(tabId, { attempt, delayMs });
124
204
  return true;
125
205
  }
126
206
  async function fire(tabId, entry) {
@@ -144,22 +224,27 @@ export function createReconnectScheduler(options) {
144
224
  notify(tabId, null);
145
225
  }
146
226
  return {
147
- schedule(tabId, startAttempt = 0) {
227
+ schedule(tabId, startAttempt = 0, firstDelayMs) {
148
228
  if (pending.has(tabId))
149
229
  return false;
150
230
  const entry = { attempt: startAttempt, timer: undefined };
151
231
  pending.set(tabId, entry);
152
- return arm(tabId, entry, startAttempt);
232
+ return arm(tabId, entry, startAttempt, firstDelayMs);
153
233
  },
154
234
  cancel(tabId) {
235
+ cancelledAt.set(tabId, ++cancelSeq);
155
236
  const entry = pending.get(tabId);
156
- if (!entry)
157
- return false;
158
- if (entry.timer !== undefined)
237
+ if (entry?.timer !== undefined)
159
238
  clearTimer(entry.timer);
160
239
  pending.delete(tabId);
161
240
  notify(tabId, null);
162
- return true;
241
+ return entry !== undefined;
242
+ },
243
+ epoch() {
244
+ return cancelSeq;
245
+ },
246
+ wasCancelledSince(tabId, epoch) {
247
+ return (cancelledAt.get(tabId) ?? 0) > epoch;
163
248
  },
164
249
  isPending(tabId) {
165
250
  return pending.has(tabId);
@@ -1 +1 @@
1
- {"version":3,"file":"reconnect-policy.js","sourceRoot":"","sources":["../src/reconnect-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconnect-policy.js","sourceRoot":"","sources":["../src/reconnect-policy.ts"],"names":[],"mappings":"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"}
@@ -66,7 +66,7 @@ const EXPECT_GOTCHA = 'Settle proves QUIET, not EFFECT: a click whose handler ne
66
66
  export const BROWSER_TOOL_DEFINITIONS = [
67
67
  {
68
68
  name: 'browser.list_tabs',
69
- description: "List Chrome tabs currently reachable by browser-link. A tab is normally connected only after the user clicks Connect in the extension popup. Each entry includes tab_id, url, title, claimed_by (null when free, or { agent_id, pid, binary, label?, claimed_at, last_activity_at } when another agent owns it), claimed_by_me (true when YOU hold the claim), an optional map field ({ app_key, entries, flows }) present ONLY when the persistent UI map already has data for that tab's origin, and — only when the user has enabled AND granted cdp-direct mode (off by default, see the cdp-direct docs) — additional tab_id values starting with cdp: carrying transport: 'cdp', reached without the extension.",
69
+ description: "List Chrome tabs currently reachable by browser-link. A tab is normally connected only after the user clicks Connect in the extension popup. Each entry includes tab_id, url, title, claimed_by (null when free, or { agent_id, pid, binary, label?, claimed_at, last_activity_at } when another agent owns it), claimed_by_me (true when YOU hold the claim), an optional map field ({ app_key, entries, flows }) present ONLY when the persistent UI map already has data for that tab's origin, and — only when the user has enabled AND granted cdp-direct mode (off by default, see the cdp-direct docs) — additional tab_id values starting with cdp: carrying transport: 'cdp', reached without the extension. The first content block is always the bare JSON array ([] when empty). When NO tab is reachable a SECOND text block starting with hint: follows it; the hint says whether nothing was ever connected to this bridge, tabs were connected and dropped (how many, which ids/origins, how long ago), the bridge restarted recently, or browser.reset wiped it — and whether to wait for the extension's auto-reconnect or ask the user to press Connect.",
70
70
  inputSchema: { type: 'object', properties: {}, additionalProperties: false },
71
71
  doc: {
72
72
  purpose: 'List the Chrome tabs the user has explicitly connected through the browser-link extension popup, plus any cdp-direct tabs when that optional mode is enabled and granted.',
@@ -77,7 +77,8 @@ export const BROWSER_TOOL_DEFINITIONS = [
77
77
  ],
78
78
  gotchas: [
79
79
  'Returns only tabs the user has connected manually, plus cdp-direct tabs when that optional mode is enabled and granted (off by default — see cdp-direct docs). If the list is empty, ask the user to open the extension popup.',
80
- 'After a primary restart ("primary just closed" errors), the extension auto-reconnects dropped tabs with four backoff attempts (1s/2s/4s/8s delays, plus per-attempt connect time), keeping the same tab_id when the new primary can honour it (tab-renamed in browser.events otherwise) — so a briefly-empty list right after such an error deserves a short wait and one retry before asking the user to re-press Connect. An explicit disconnect or browser.reset never auto-reconnects.',
80
+ 'An EMPTY result ([] in the first content block) is followed by a second text block "hint: ...": READ it before acting — it distinguishes never-connected, dropped-and-probably-reconnecting, recently-restarted-bridge and post-reset, and says whether to wait or ask the user.',
81
+ 'After a primary restart ("primary just closed" errors), the extension keeps auto-reconnecting dropped tabs for up to 10 minutes (1s/2s/4s/8s/15s delays, then every 30s, plus per-attempt connect time), keeping the same tab_id when the new primary can honour it (tab-renamed in browser.events otherwise) — so an empty list within that window deserves waiting and retrying (the hint says so) before asking the user to re-press Connect. An explicit disconnect, a closed tab or browser.reset never auto-reconnects.',
81
82
  'When an entry carries a map field, call browser.map.recall BEFORE snapshotting that tab — the persistent map already has selectors, gotchas, or flow recipes for it, and re-discovering them via a fresh snapshot/find wastes a round trip.',
82
83
  "A tab_id starting with cdp: (transport: 'cdp') works with every tool except browser.drag/console/network/network_body/canvas_screenshot/dialog_respond/set_permission/wait_for_tab and browser.download's selector mode in v1 — those (and a browser.flow drag step) return a clear error naming the extension transport as the fallback.",
83
84
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"browser-definitions.js","sourceRoot":"","sources":["../../src/tools/browser-definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-definitions.js","sourceRoot":"","sources":["../../src/tools/browser-definitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { BridgeEvent } from '../bridge/events.js';
2
+ /**
3
+ * How long the extension keeps auto-reconnecting a tab after an involuntary
4
+ * drop. MUST stay in step with `RECONNECT_WINDOW_MS` in the extension's
5
+ * `reconnect-policy.ts` (the two packages cannot import each other); it
6
+ * only shapes the wording of a hint, so drift degrades advice, not behaviour.
7
+ */
8
+ export declare const EXTENSION_RECONNECT_WINDOW_MS: number;
9
+ /**
10
+ * Explain an EMPTY `browser.list_tabs` from the bridge event log, so the agent
11
+ * can tell "nothing was ever connected" from "tabs dropped, the extension is
12
+ * probably reconnecting" from "the bridge just restarted" instead of guessing.
13
+ * Origins only (never full URLs — paths and queries can carry secrets).
14
+ */
15
+ export declare function buildEmptyTabsHint(events: readonly BridgeEvent[], now: number): string;
@@ -0,0 +1,115 @@
1
+ /**
2
+ * How long the extension keeps auto-reconnecting a tab after an involuntary
3
+ * drop. MUST stay in step with `RECONNECT_WINDOW_MS` in the extension's
4
+ * `reconnect-policy.ts` (the two packages cannot import each other); it
5
+ * only shapes the wording of a hint, so drift degrades advice, not behaviour.
6
+ */
7
+ export const EXTENSION_RECONNECT_WINDOW_MS = 10 * 60_000;
8
+ /** The 600s of scheduled waits are only the sum of the delays: each attempt's
9
+ * own connect time adds on top, so keep advising "wait" a minute past it. */
10
+ const RECONNECT_SLACK_MS = 60_000;
11
+ const MAX_LISTED_TABS = 5;
12
+ function originOf(url) {
13
+ if (typeof url !== 'string')
14
+ return null;
15
+ try {
16
+ return new URL(url).origin;
17
+ }
18
+ catch {
19
+ return null;
20
+ }
21
+ }
22
+ function ago(ms) {
23
+ const s = Math.max(0, Math.round(ms / 1000));
24
+ if (s < 90)
25
+ return `${s}s ago`;
26
+ return `${Math.round(s / 60)}min ago`;
27
+ }
28
+ /**
29
+ * Replay the bridge event log into the set of tabs that were connected and
30
+ * then dropped (and have not come back). Renames move a tab to its new id.
31
+ */
32
+ function droppedTabs(events) {
33
+ const known = new Map();
34
+ for (const e of events) {
35
+ const atMs = Date.parse(e.at);
36
+ if (e.kind === 'tab-registered' && typeof e.data.tabId === 'string') {
37
+ known.set(e.data.tabId, { origin: originOf(e.data.url), droppedAtMs: null, clean: false });
38
+ }
39
+ else if (e.kind === 'tab-renamed' && typeof e.data.current === 'string') {
40
+ if (typeof e.data.previous === 'string')
41
+ known.delete(e.data.previous);
42
+ known.set(e.data.current, {
43
+ origin: originOf(e.data.url),
44
+ droppedAtMs: null,
45
+ clean: false,
46
+ });
47
+ }
48
+ else if (e.kind === 'tab-disconnected' && typeof e.data.tabId === 'string') {
49
+ const at = Number.isFinite(atMs) ? atMs : null;
50
+ const clean = e.data.clean === true;
51
+ const t = known.get(e.data.tabId);
52
+ if (t) {
53
+ t.droppedAtMs = at;
54
+ t.clean = clean;
55
+ }
56
+ else
57
+ known.set(e.data.tabId, { origin: null, droppedAtMs: at, clean });
58
+ }
59
+ }
60
+ const out = [];
61
+ for (const [tabId, t] of known) {
62
+ if (t.droppedAtMs !== null) {
63
+ out.push({ tabId, origin: t.origin, droppedAtMs: t.droppedAtMs, clean: t.clean });
64
+ }
65
+ }
66
+ return out;
67
+ }
68
+ /**
69
+ * Explain an EMPTY `browser.list_tabs` from the bridge event log, so the agent
70
+ * can tell "nothing was ever connected" from "tabs dropped, the extension is
71
+ * probably reconnecting" from "the bridge just restarted" instead of guessing.
72
+ * Origins only (never full URLs — paths and queries can carry secrets).
73
+ */
74
+ export function buildEmptyTabsHint(events, now) {
75
+ const dropped = droppedTabs(events);
76
+ const lastElected = [...events].reverse().find((e) => e.kind === 'primary-elected');
77
+ const electedAtMs = lastElected ? Date.parse(lastElected.at) : Number.NaN;
78
+ if (dropped.length > 0) {
79
+ const describe = (tabs) => {
80
+ const listed = tabs
81
+ .slice(0, MAX_LISTED_TABS)
82
+ .map((t) => (t.origin ? `${t.tabId} (${t.origin})` : t.tabId))
83
+ .join(', ');
84
+ return tabs.length > MAX_LISTED_TABS
85
+ ? `${listed}, and ${tabs.length - MAX_LISTED_TABS} more`
86
+ : listed;
87
+ };
88
+ const lastDropMs = Math.max(...dropped.map((t) => t.droppedAtMs));
89
+ const head = `${dropped.length} tab(s) were connected and dropped (last ${ago(now - lastDropMs)}).`;
90
+ // Only an UNCLEAN drop is something the extension retries.
91
+ const unclean = dropped.filter((t) => !t.clean);
92
+ const clean = dropped.filter((t) => t.clean);
93
+ const lastUncleanMs = unclean.length > 0 ? Math.max(...unclean.map((t) => t.droppedAtMs)) : 0;
94
+ const cleanNote = clean.length > 0
95
+ ? ` ${describe(clean)}: the user disconnected or closed these (clean close); the extension does not auto-reconnect them, so ask the user to press Connect in the extension popup.`
96
+ : '';
97
+ if (unclean.length > 0 &&
98
+ now - lastUncleanMs < EXTENSION_RECONNECT_WINDOW_MS + RECONNECT_SLACK_MS) {
99
+ return `${head} Dropped uncleanly: ${describe(unclean)}. The extension auto-reconnects those for up to 10 minutes after a drop, so wait for reconnect and call browser.list_tabs again (browser.events shows tab-registered / tab-renamed when they return); if they do not come back, ask the user to press Connect in the extension popup.${cleanNote}`;
100
+ }
101
+ if (unclean.length > 0) {
102
+ return `${head} ${describe(unclean)} dropped uncleanly, but that is past the extension's 10-minute auto-reconnect window: ask the user to press Connect in the extension popup on each tab.${cleanNote}`;
103
+ }
104
+ return `${head}${cleanNote}`;
105
+ }
106
+ if (lastElected?.data.reason === 'reset') {
107
+ return 'No tabs are connected: browser.reset closed every tab connection and the extension does NOT auto-reconnect after a reset. Ask the user to press Connect in the extension popup.';
108
+ }
109
+ const sinceStart = Number.isFinite(electedAtMs) ? now - electedAtMs : Number.POSITIVE_INFINITY;
110
+ if (sinceStart < EXTENSION_RECONNECT_WINDOW_MS) {
111
+ return `No tab has connected to this bridge yet; it started ${ago(sinceStart)}. If the previous bridge process just died, the extension may still be reconnecting tabs it had connected: wait a little and call browser.list_tabs again, then ask the user to press Connect in the extension popup.`;
112
+ }
113
+ return 'No tab has connected to this bridge since it started. Tabs only appear once the user clicks Connect: ask them to press Connect in the extension popup.';
114
+ }
115
+ //# sourceMappingURL=empty-tabs-hint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty-tabs-hint.js","sourceRoot":"","sources":["../../src/tools/empty-tabs-hint.ts"],"names":[],"mappings":"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"}
@@ -27,5 +27,12 @@ export declare function toolResponse(data: unknown): ToolResponse;
27
27
  * `toolResponse`.
28
28
  */
29
29
  export declare function imageToolResponse(data: unknown): ToolResponse;
30
+ /**
31
+ * Same payload as `toolResponse`, plus a SECOND text block `hint: <text>`.
32
+ * The first block stays byte-for-byte what a plain response would be, so
33
+ * clients that parse it (a bare JSON array for `browser.list_tabs`) are
34
+ * unaffected; the hint is purely additive for readers of the extra block.
35
+ */
36
+ export declare function hintToolResponse(data: unknown, hint: string): ToolResponse;
30
37
  export declare function toolError(message: string): ToolResponse;
31
38
  export declare function requireTabId(args: unknown): string;
@@ -33,6 +33,16 @@ export function imageToolResponse(data) {
33
33
  ],
34
34
  };
35
35
  }
36
+ /**
37
+ * Same payload as `toolResponse`, plus a SECOND text block `hint: <text>`.
38
+ * The first block stays byte-for-byte what a plain response would be, so
39
+ * clients that parse it (a bare JSON array for `browser.list_tabs`) are
40
+ * unaffected; the hint is purely additive for readers of the extra block.
41
+ */
42
+ export function hintToolResponse(data, hint) {
43
+ const base = toolResponse(data);
44
+ return { content: [...base.content, { type: 'text', text: `hint: ${hint}` }] };
45
+ }
36
46
  export function toolError(message) {
37
47
  return {
38
48
  content: [{ type: 'text', text: `Error: ${message}` }],
@@ -1 +1 @@
1
- {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/tools/responses.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAYH,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;aACtE;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAa;IAC7C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,IAA+B,CAAC;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC;IACrE,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;YACrD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;SACzC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,OAAO,EAAE,EAAE,CAAC;QACtD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,MAAM,EAAE,GAAI,IAAwC,EAAE,MAAM,CAAC;IAC7D,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC5C,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/tools/responses.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAYH,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;aACtE;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAa;IAC7C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,IAA+B,CAAC;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC;IACrE,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;YACrD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;SACzC;KACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAa,EAAE,IAAY;IAC1D,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,OAAO,EAAE,EAAE,CAAC;QACtD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,MAAM,EAAE,GAAI,IAAwC,EAAE,MAAM,CAAC;IAC7D,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC5C,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -35,7 +35,10 @@ end-to-end, persist UI structure (NEVER domain data) with
35
35
  (\`{ app_key, entries, flows }\`), call \`browser.map.recall\` BEFORE
36
36
  snapshotting — the map already has selectors, gotchas or flow recipes
37
37
  for that origin, so recall first instead of rediscovering them from
38
- scratch.
38
+ scratch. When list_tabs is empty ([]) a second text block "hint: ..."
39
+ follows the result — read it: it says whether to wait for the extension's
40
+ auto-reconnect (up to 10 minutes after a drop) or ask the user to press
41
+ Connect.
39
42
 
40
43
  ## Sharing tabs with other agents (multi-agent mode)
41
44
 
@@ -1 +1 @@
1
- {"version":3,"file":"server-instructions.js","sourceRoot":"","sources":["../../src/tools/server-instructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvD;;sDAEsD;AACtD,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EA+N4D,CAAC;AAE9E;;mEAEmE;AACnE,SAAS,UAAU,CAAC,GAAmB;IACrC,IAAI,CAAC,GAAG,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC;IAC3D,MAAM,KAAK,GAAa,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC;IACjF,KAAK,MAAM,CAAC,IAAI,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;iEAEiE;AACjE,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAqB,CAAC,GAAG,wBAAwB,EAAE,GAAG,oBAAoB,CAAC,CAAC;IACrF,MAAM,QAAQ,GAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;IACtD,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;8DAC8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,EAAE,CAAC"}
1
+ {"version":3,"file":"server-instructions.js","sourceRoot":"","sources":["../../src/tools/server-instructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGvD;;sDAEsD;AACtD,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAkO4D,CAAC;AAE9E;;mEAEmE;AACnE,SAAS,UAAU,CAAC,GAAmB;IACrC,IAAI,CAAC,GAAG,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC;IAC3D,MAAM,KAAK,GAAa,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC;IACjF,KAAK,MAAM,CAAC,IAAI,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;iEAEiE;AACjE,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAqB,CAAC,GAAG,wBAAwB,EAAE,GAAG,oBAAoB,CAAC,CAAC;IACrF,MAAM,QAAQ,GAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;IACtD,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;8DAC8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobshimo/browser-link",
3
- "version": "0.32.0",
3
+ "version": "0.33.0",
4
4
  "description": "MCP server that bridges Claude Code, OpenCode, GitHub Copilot CLI and other MCP clients to a Chrome tab. Per-tool permissions, multi-agent mode (multiple MCP clients sharing one bridge), persistent UI map across sessions.",
5
5
  "keywords": [
6
6
  "mcp",