@phnx-labs/agents-cli 1.22.40 → 1.22.42
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/CHANGELOG.md +36 -0
- package/README.md +14 -3
- package/dist/bin/agents +0 -0
- package/dist/bootstrap.js +0 -1
- package/dist/cli/command-registry.d.ts +2 -0
- package/dist/cli/command-registry.js +5 -2
- package/dist/commands/accounts.d.ts +29 -0
- package/dist/commands/accounts.js +220 -29
- package/dist/commands/alias.js +1 -1
- package/dist/commands/auth.d.ts +9 -0
- package/dist/commands/auth.js +104 -0
- package/dist/commands/browser-sessions-picker.js +42 -62
- package/dist/commands/browser.d.ts +15 -0
- package/dist/commands/browser.js +145 -78
- package/dist/commands/computer-actions.d.ts +1 -1
- package/dist/commands/computer-actions.js +1 -1
- package/dist/commands/computer-sessions-picker.js +32 -55
- package/dist/commands/computer.d.ts +1 -1
- package/dist/commands/computer.js +2 -2
- package/dist/commands/doctor.d.ts +1 -1
- package/dist/commands/doctor.js +3 -3
- package/dist/commands/feed.js +4 -12
- package/dist/commands/hooks.js +1 -1
- package/dist/commands/import.js +1 -1
- package/dist/commands/insights.js +163 -85
- package/dist/commands/inspect.js +2 -2
- package/dist/commands/mine.js +1 -1
- package/dist/commands/org.d.ts +6 -0
- package/dist/commands/org.js +174 -0
- package/dist/commands/packages.js +1 -1
- package/dist/commands/prune.js +1 -1
- package/dist/commands/routines.js +1 -1
- package/dist/commands/run-account-picker.d.ts +19 -0
- package/dist/commands/run-account-picker.js +81 -0
- package/dist/commands/secrets.js +87 -97
- package/dist/commands/sessions-picker-factory.d.ts +40 -0
- package/dist/commands/sessions-picker-factory.js +67 -0
- package/dist/commands/sessions-picker.d.ts +1 -0
- package/dist/commands/sessions-picker.js +27 -5
- package/dist/commands/sessions-share.d.ts +25 -0
- package/dist/commands/sessions-share.js +166 -0
- package/dist/commands/sessions.js +2 -0
- package/dist/commands/setup-browser.js +5 -5
- package/dist/commands/setup-mine.js +1 -1
- package/dist/commands/setup-preferences.js +4 -4
- package/dist/commands/setup.js +5 -3
- package/dist/commands/sync.js +1 -1
- package/dist/commands/versions.js +1 -1
- package/dist/commands/view.js +1 -1
- package/dist/commands/webhook.js +14 -9
- package/dist/lib/account-capabilities.d.ts +10 -0
- package/dist/lib/account-capabilities.js +34 -0
- package/dist/lib/agent-spec/agents.d.ts +584 -0
- package/dist/lib/agent-spec/agents.js +3127 -0
- package/dist/lib/agent-spec/provider.js +1 -1
- package/dist/lib/agents.d.ts +2 -584
- package/dist/lib/agents.js +2 -3127
- package/dist/lib/browser/cdp.js +4 -0
- package/dist/lib/browser/chrome.js +12 -1
- package/dist/lib/browser/drivers/local.d.ts +8 -2
- package/dist/lib/browser/drivers/local.js +8 -2
- package/dist/lib/browser/drivers/ssh.d.ts +8 -2
- package/dist/lib/browser/drivers/ssh.js +11 -4
- package/dist/lib/browser/hygiene.d.ts +1 -1
- package/dist/lib/browser/hygiene.js +5 -1
- package/dist/lib/browser/profiles.d.ts +77 -4
- package/dist/lib/browser/profiles.js +121 -12
- package/dist/lib/browser/runtime-state.d.ts +11 -5
- package/dist/lib/browser/runtime-state.js +13 -9
- package/dist/lib/browser/service.d.ts +91 -30
- package/dist/lib/browser/service.js +342 -207
- package/dist/lib/browser/types.d.ts +96 -4
- package/dist/lib/browser/types.js +51 -0
- package/dist/lib/catchup.js +1 -1
- package/dist/lib/computer/actions.d.ts +1 -1
- package/dist/lib/computer/actions.js +1 -1
- package/dist/lib/{computer-rpc.js → computer/computer-rpc.js} +5 -5
- package/dist/lib/computer/dispatch.d.ts +1 -1
- package/dist/lib/computer/download.d.ts +1 -1
- package/dist/lib/computer/download.js +3 -3
- package/dist/lib/{ssh-tunnel.d.ts → computer/ssh-tunnel.d.ts} +1 -1
- package/dist/lib/{ssh-tunnel.js → computer/ssh-tunnel.js} +12 -12
- package/dist/lib/daemon/daemon.js +1 -1
- package/dist/lib/{runner.d.ts → daemon/runner.d.ts} +10 -10
- package/dist/lib/{runner.js → daemon/runner.js} +59 -118
- package/dist/lib/daemon-webhooks.d.ts +3 -1
- package/dist/lib/daemon-webhooks.js +12 -7
- package/dist/lib/device-config.js +1 -1
- package/dist/lib/devices/doctor-findings.d.ts +1 -1
- package/dist/lib/devices/doctor-findings.js +3 -3
- package/dist/lib/devices/fleet-inventory.js +1 -1
- package/dist/lib/devices/harness-inventory.js +1 -1
- package/dist/lib/devices/registry.js +4 -22
- package/dist/lib/doctor-diff.d.ts +1 -1
- package/dist/lib/doctor-diff.js +1 -1
- package/dist/lib/drift.js +1 -1
- package/dist/lib/entitlement.d.ts +31 -0
- package/dist/lib/entitlement.js +137 -0
- package/dist/lib/exec.js +39 -202
- package/dist/lib/feed/feed.js +2 -8
- package/dist/lib/fs-atomic.d.ts +7 -0
- package/dist/lib/fs-atomic.js +9 -0
- package/dist/lib/harness/adapter.d.ts +160 -0
- package/dist/lib/harness/adapter.js +47 -0
- package/dist/lib/harness/adapters/claude.d.ts +2 -0
- package/dist/lib/harness/adapters/claude.js +110 -0
- package/dist/lib/harness/adapters/codex.d.ts +2 -0
- package/dist/lib/harness/adapters/codex.js +83 -0
- package/dist/lib/harness/adapters/copilot.d.ts +2 -0
- package/dist/lib/harness/adapters/copilot.js +23 -0
- package/dist/lib/harness/adapters/cursor.d.ts +2 -0
- package/dist/lib/harness/adapters/cursor.js +38 -0
- package/dist/lib/harness/adapters/droid.d.ts +2 -0
- package/dist/lib/harness/adapters/droid.js +17 -0
- package/dist/lib/harness/adapters/grok.d.ts +2 -0
- package/dist/lib/harness/adapters/grok.js +14 -0
- package/dist/lib/harness/adapters/kimi.d.ts +2 -0
- package/dist/lib/harness/adapters/kimi.js +49 -0
- package/dist/lib/harness/adapters/muse.d.ts +2 -0
- package/dist/lib/harness/adapters/muse.js +44 -0
- package/dist/lib/harness/adapters/opencode.d.ts +2 -0
- package/dist/lib/harness/adapters/opencode.js +14 -0
- package/dist/lib/harness/exec-config-version.d.ts +8 -0
- package/dist/lib/harness/exec-config-version.js +22 -0
- package/dist/lib/harness/index.d.ts +1 -0
- package/dist/lib/harness/index.js +34 -0
- package/dist/lib/{hooks.d.ts → hooks/install.d.ts} +1 -1
- package/dist/lib/{hooks.js → hooks/install.js} +11 -11
- package/dist/lib/import.js +1 -1
- package/dist/lib/installations/index.d.ts +4 -4
- package/dist/lib/installations/index.js +3 -4
- package/dist/lib/installations/migrate.js +6 -6
- package/dist/lib/{shims.d.ts → installations/shims.d.ts} +2 -2
- package/dist/lib/{shims.js → installations/shims.js} +12 -114
- package/dist/lib/installations/store.d.ts +141 -3
- package/dist/lib/installations/store.js +475 -5
- package/dist/lib/installations/versions.d.ts +1 -126
- package/dist/lib/installations/versions.js +5 -465
- package/dist/lib/isolation-boundary-report.d.ts +1 -1
- package/dist/lib/isolation-boundary-report.js +1 -1
- package/dist/lib/mailbox-gc.js +2 -3
- package/dist/lib/menubar/MenubarHelper.app/Contents/CodeResources +0 -0
- package/dist/lib/menubar/MenubarHelper.app/Contents/MacOS/MenubarHelper +0 -0
- package/dist/lib/monitors/dispatch.d.ts +1 -1
- package/dist/lib/monitors/dispatch.js +2 -2
- package/dist/lib/monitors/state.d.ts +1 -1
- package/dist/lib/observe-aliases.d.ts +2 -2
- package/dist/lib/observe-aliases.js +2 -11
- package/dist/lib/plugins/plugins.js +1 -1
- package/dist/lib/plugins/skills.js +1 -1
- package/dist/lib/prix-account.d.ts +158 -0
- package/dist/lib/prix-account.js +214 -0
- package/dist/lib/project-key.js +7 -0
- package/dist/lib/project-launch.js +1 -1
- package/dist/lib/refresh.js +2 -2
- package/dist/lib/resource-inventory.d.ts +1 -1
- package/dist/lib/resource-inventory.js +1 -1
- package/dist/lib/rules/rules.js +1 -1
- package/dist/lib/scheduling/routines.js +1 -1
- package/dist/lib/secrets/Agents CLI.app/Contents/CodeResources +0 -0
- package/dist/lib/secrets/Agents CLI.app/Contents/MacOS/Agents CLI +0 -0
- package/dist/lib/secrets/bundles.d.ts +1 -1
- package/dist/lib/secrets/bundles.js +1 -1
- package/dist/lib/secrets/headless.d.ts +16 -0
- package/dist/lib/secrets/headless.js +21 -0
- package/dist/lib/secrets/remote.d.ts +9 -7
- package/dist/lib/secrets/remote.js +18 -9
- package/dist/lib/self-heal/checks/hook-runtime.js +1 -1
- package/dist/lib/self-heal/checks/path.js +1 -1
- package/dist/lib/self-heal/checks/shadowing.js +1 -1
- package/dist/lib/self-heal/checks/shims.js +1 -1
- package/dist/lib/session/discover.d.ts +39 -0
- package/dist/lib/session/discover.js +3 -3
- package/dist/lib/session/parse.js +24 -42
- package/dist/lib/session/recovery.js +1 -1
- package/dist/lib/session/share-html.d.ts +55 -0
- package/dist/lib/session/share-html.js +319 -0
- package/dist/lib/settings-manifest.d.ts +2 -0
- package/dist/lib/settings-manifest.js +81 -3
- package/dist/lib/share/publish.d.ts +38 -0
- package/dist/lib/share/publish.js +81 -8
- package/dist/lib/staleness/prune.d.ts +1 -1
- package/dist/lib/staleness/prune.js +1 -1
- package/dist/lib/staleness/writers/hooks.js +1 -1
- package/dist/lib/startup/command-registry.d.ts +2 -1
- package/dist/lib/startup/command-registry.js +5 -3
- package/dist/lib/teams/agents.js +2 -19
- package/dist/lib/teams/parsers.js +20 -26
- package/dist/lib/teams/registry.js +2 -21
- package/dist/lib/triggers/handlers.d.ts +37 -2
- package/dist/lib/triggers/handlers.js +57 -6
- package/dist/lib/triggers/webhook.d.ts +80 -6
- package/dist/lib/triggers/webhook.js +128 -4
- package/dist/lib/types.d.ts +1 -1
- package/dist/lib/uninstall.js +1 -1
- package/dist/lib/version.d.ts +9 -2
- package/dist/lib/version.js +11 -9
- package/dist/lib/wrap.d.ts +33 -0
- package/dist/lib/wrap.js +70 -0
- package/package.json +1 -1
- /package/dist/lib/{computer-rpc.d.ts → computer/computer-rpc.d.ts} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CDPClient } from './cdp.js';
|
|
2
2
|
import { type ResolvedDomainSkill } from './domain-skills.js';
|
|
3
|
-
import { type Task, type TabInfo, type ProfileStatus, type HistoricalTask, type ReapResult } from './types.js';
|
|
3
|
+
import { type Task, type TabInfo, type ProfileStatus, type BrowserType, type HistoricalTask, type ReapResult, type ProfileName, type ConnectionKey } from './types.js';
|
|
4
4
|
import { type ReapOptions } from './hygiene.js';
|
|
5
5
|
import { type RefOpts, type RefNode } from './refs.js';
|
|
6
6
|
import type { TargetFilter } from './types.js';
|
|
@@ -50,22 +50,25 @@ interface ProfileConnection {
|
|
|
50
50
|
port: number;
|
|
51
51
|
pid: number;
|
|
52
52
|
electron?: boolean;
|
|
53
|
-
/** Raw `url:<v>` / `title:<v>` filter copied from the profile config. */
|
|
54
|
-
targetFilter?: string;
|
|
55
53
|
/**
|
|
56
|
-
* The
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
54
|
+
* The profile's declared browser family. Load-bearing for Arc: Arc answers
|
|
55
|
+
* `Browser.getVersion` but exposes zero CDP page targets and CRASHES on
|
|
56
|
+
* `Target.createTarget` (verified live, PR #2778), so any tab-creating path
|
|
57
|
+
* must refuse rather than crash the user's Arc. See `createPageTarget`.
|
|
60
58
|
*/
|
|
61
|
-
|
|
59
|
+
browserType?: BrowserType;
|
|
60
|
+
/** Raw `url:<v>` / `title:<v>` filter copied from the profile config. */
|
|
61
|
+
targetFilter?: string;
|
|
62
62
|
/**
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
63
|
+
* The runtime key this connection is registered under in `this.connections`
|
|
64
|
+
* (`<profile>@<endpoint>`, plus `.<fork>` for an Electron fork; a bare name
|
|
65
|
+
* for a legacy pre-composite dir). Also keys the profile's runtime dir, so
|
|
66
|
+
* downloads and session captures land under `.cache/browser/<key>/`.
|
|
66
67
|
*/
|
|
67
|
-
|
|
68
|
-
|
|
68
|
+
key?: ConnectionKey;
|
|
69
|
+
/** The bare, user-facing profile name this connection belongs to. */
|
|
70
|
+
profile?: ProfileName;
|
|
71
|
+
forkedFrom?: ConnectionKey;
|
|
69
72
|
tasks: Map<string, Task>;
|
|
70
73
|
windowId?: string;
|
|
71
74
|
targetCache?: {
|
|
@@ -83,18 +86,20 @@ interface ProfileConnection {
|
|
|
83
86
|
}
|
|
84
87
|
/** Join error lines so callers get a next command, not a dead-end message. */
|
|
85
88
|
export declare function actionable(...lines: string[]): string;
|
|
89
|
+
/**
|
|
90
|
+
* Arc answers `Browser.getVersion` (so a connection succeeds) but exposes zero
|
|
91
|
+
* CDP page targets via every discovery method and CRASHES when a new tab is
|
|
92
|
+
* requested via `Target.createTarget` (verified live, PR #2778). It is therefore
|
|
93
|
+
* not drivable. This is the single clear, actionable error every tab-creating
|
|
94
|
+
* path throws instead of crashing the user's Arc window.
|
|
95
|
+
*/
|
|
96
|
+
export declare function arcNotDrivableError(profileName?: string): Error;
|
|
86
97
|
/** Derive a human label from an explicit title or a navigated URL. */
|
|
87
98
|
export declare function deriveTaskLabel(opts: {
|
|
88
99
|
title?: string;
|
|
89
100
|
url?: string;
|
|
90
101
|
existing?: string;
|
|
91
102
|
}): string;
|
|
92
|
-
/**
|
|
93
|
-
* True when `key` is the bare profile name or one of its composite endpoint
|
|
94
|
-
* keys (`name@endpoint`). Used by status/stop so `comet-local` matches
|
|
95
|
-
* `comet-local@endpoint-0`.
|
|
96
|
-
*/
|
|
97
|
-
export declare function connectionKeyMatchesProfile(key: string, profileName: string): boolean;
|
|
98
103
|
type TargetInfo = {
|
|
99
104
|
targetId: string;
|
|
100
105
|
url?: string;
|
|
@@ -127,6 +132,12 @@ export declare function resolveTaskIdentity(forwarded: {
|
|
|
127
132
|
};
|
|
128
133
|
export declare class BrowserService {
|
|
129
134
|
private static readonly SOURCE_PREFIX;
|
|
135
|
+
/**
|
|
136
|
+
* Live browsers, keyed by {@link ConnectionKey} — NOT by profile name. The
|
|
137
|
+
* branded key type is what makes `connections.get(someProfileName)` (the
|
|
138
|
+
* RUSH-2709 miss that made `status --profile <name>` return empty for a
|
|
139
|
+
* running `<name>@endpoint-0`) fail to compile.
|
|
140
|
+
*/
|
|
130
141
|
private connections;
|
|
131
142
|
private forkingProfiles;
|
|
132
143
|
private consoleLogs;
|
|
@@ -157,7 +168,10 @@ export declare class BrowserService {
|
|
|
157
168
|
name: string;
|
|
158
169
|
tabId?: string;
|
|
159
170
|
windowId?: string;
|
|
160
|
-
profile
|
|
171
|
+
/** BARE profile name — what the caller asked for, never the runtime key. */
|
|
172
|
+
profile: ProfileName;
|
|
173
|
+
/** Runtime key the task actually landed on (`<profile>@<endpoint>`). */
|
|
174
|
+
key: ConnectionKey;
|
|
161
175
|
skill?: ResolvedDomainSkill;
|
|
162
176
|
}>;
|
|
163
177
|
/**
|
|
@@ -192,6 +206,25 @@ export declare class BrowserService {
|
|
|
192
206
|
* page that has since redirected elsewhere simply does not match, and the
|
|
193
207
|
* caller opens a tab as before.
|
|
194
208
|
*/
|
|
209
|
+
/** Is this CDP target already registered to any task on the connection? */
|
|
210
|
+
private targetIsClaimed;
|
|
211
|
+
/**
|
|
212
|
+
* The CDP targets a task may CLOSE — its own tabs minus any it merely
|
|
213
|
+
* borrowed. A borrowed tab existed before the task did (see `Task.borrowedTabs`),
|
|
214
|
+
* so closing it would remove something the task never opened.
|
|
215
|
+
*/
|
|
216
|
+
private closeableTargetIds;
|
|
217
|
+
/**
|
|
218
|
+
* A page target that `navigate` may take over on a browser which cannot create
|
|
219
|
+
* tabs (Arc). Deliberately narrow: only a tab ALREADY showing the requested URL
|
|
220
|
+
* -- re-showing that document there is what the caller asked for -- or an empty
|
|
221
|
+
* new-tab page. A target any task already owns is left alone. Note the honest
|
|
222
|
+
* limit: reusing a matching tab still RELOADS it, discarding scroll position and
|
|
223
|
+
* unsaved form state. Arc cannot open a tab at all, so some intrusion is
|
|
224
|
+
* unavoidable to show the document; a reload is the smallest one, and the tab is
|
|
225
|
+
* borrowed rather than owned so it is never closed.
|
|
226
|
+
*/
|
|
227
|
+
private pickReusableTargetWithoutCreate;
|
|
195
228
|
private adoptTabShowing;
|
|
196
229
|
/**
|
|
197
230
|
* Every live task across every connected profile — the reaper's input
|
|
@@ -199,7 +232,7 @@ export declare class BrowserService {
|
|
|
199
232
|
* daemon's live state, so callers only read it and act through `stop`.
|
|
200
233
|
*/
|
|
201
234
|
listTasks(): Array<{
|
|
202
|
-
profile:
|
|
235
|
+
profile: ConnectionKey;
|
|
203
236
|
task: Task;
|
|
204
237
|
}>;
|
|
205
238
|
/**
|
|
@@ -216,13 +249,13 @@ export declare class BrowserService {
|
|
|
216
249
|
ok: boolean;
|
|
217
250
|
profile?: string;
|
|
218
251
|
}>;
|
|
219
|
-
stopProfile(
|
|
220
|
-
navigate(taskId: string, url: string,
|
|
252
|
+
stopProfile(profileRef: ProfileName | ConnectionKey): Promise<void>;
|
|
253
|
+
navigate(taskId: string, url: string, profileRef?: ProfileName | ConnectionKey): Promise<{
|
|
221
254
|
tabId: string;
|
|
222
255
|
url: string;
|
|
223
256
|
created: boolean;
|
|
224
257
|
}>;
|
|
225
|
-
tabAdd(taskId: string, url: string,
|
|
258
|
+
tabAdd(taskId: string, url: string, profileRef?: ProfileName | ConnectionKey): Promise<{
|
|
226
259
|
tabId: string;
|
|
227
260
|
url: string;
|
|
228
261
|
}>;
|
|
@@ -238,7 +271,7 @@ export declare class BrowserService {
|
|
|
238
271
|
private resolveTabHint;
|
|
239
272
|
private resolveCurrentTab;
|
|
240
273
|
private getCdpTargetId;
|
|
241
|
-
tabs(taskId?: string,
|
|
274
|
+
tabs(taskId?: string, profileRef?: ProfileName | ConnectionKey): Promise<TabInfo[]>;
|
|
242
275
|
tabClose(taskId: string, tabHint?: string): Promise<void>;
|
|
243
276
|
evaluate(taskId: string, tabHint: string | undefined, expression: string): Promise<unknown>;
|
|
244
277
|
screenshot(taskId: string, tabHint?: string, outputPath?: string, quality?: 'compressed' | 'raw'): Promise<{
|
|
@@ -320,7 +353,25 @@ export declare class BrowserService {
|
|
|
320
353
|
stageUpload(source: string): {
|
|
321
354
|
path: string;
|
|
322
355
|
};
|
|
323
|
-
|
|
356
|
+
/**
|
|
357
|
+
* Status for one profile (bare name) or every live profile.
|
|
358
|
+
*
|
|
359
|
+
* `profileName` is a {@link ProfileName} — a BARE name, never a runtime key.
|
|
360
|
+
* Every candidate is selected by the one rule ({@link keyBelongsToProfile}),
|
|
361
|
+
* and a scoped query that finds no live connection falls through to disk, so
|
|
362
|
+
* `status --profile comet-local` reports the LIVE `comet-local@endpoint-0`
|
|
363
|
+
* instead of the empty list it used to return (RUSH-2709).
|
|
364
|
+
*/
|
|
365
|
+
status(profileRef?: ProfileName | ConnectionKey): Promise<ProfileStatus[]>;
|
|
366
|
+
/**
|
|
367
|
+
* Rebuild a profile's status from its runtime dirs when no live connection is
|
|
368
|
+
* registered — a daemon that never connected this profile, or a browser
|
|
369
|
+
* started by an earlier daemon.
|
|
370
|
+
*
|
|
371
|
+
* Takes a BARE profile name and walks every runtime key that belongs to it
|
|
372
|
+
* ({@link listProfileCacheDirs}), including the legacy pre-composite dir named
|
|
373
|
+
* exactly the profile.
|
|
374
|
+
*/
|
|
324
375
|
private reconcileFromDisk;
|
|
325
376
|
private profileStatusFromDisk;
|
|
326
377
|
setViewport(taskId: string, width: number, height: number, options?: {
|
|
@@ -385,13 +436,22 @@ export declare class BrowserService {
|
|
|
385
436
|
* already resolved the endpoint and built the `effectiveProfile` with
|
|
386
437
|
* the per-endpoint binary/targetFilter overrides applied; we just use it.
|
|
387
438
|
*
|
|
388
|
-
* `
|
|
389
|
-
* so per-endpoint pid/port files don't collide when the same app
|
|
390
|
-
* locally and remotely at the same time.
|
|
439
|
+
* `key` is the runtime key (`<profile>@<endpoint>`) and is what every on-disk
|
|
440
|
+
* lookup uses, so per-endpoint pid/port files don't collide when the same app
|
|
441
|
+
* runs locally and remotely at the same time. It is a SEPARATE argument
|
|
442
|
+
* because `effectiveProfile.name` stays the bare, user-facing name (RUSH-2709).
|
|
391
443
|
*/
|
|
392
444
|
private connectProfile;
|
|
393
445
|
private connectEndpoint;
|
|
394
446
|
private enableDomains;
|
|
447
|
+
/**
|
|
448
|
+
* The single path that opens a new CDP page/window target. It exists so the
|
|
449
|
+
* Arc guard lives in exactly one place: `Target.createTarget` crashes Arc
|
|
450
|
+
* (verified, PR #2778), so an Arc connection throws a clear, actionable error
|
|
451
|
+
* here instead of every call site re-checking. Every drivable Chromium-family
|
|
452
|
+
* browser goes straight through.
|
|
453
|
+
*/
|
|
454
|
+
private createPageTarget;
|
|
395
455
|
private getOrCreateWindow;
|
|
396
456
|
private hasTaskNamed;
|
|
397
457
|
/** Map key for a task on a connection (tasks are keyed by `name`). */
|
|
@@ -420,7 +480,7 @@ export declare class BrowserService {
|
|
|
420
480
|
}): Promise<{
|
|
421
481
|
conn: ProfileConnection;
|
|
422
482
|
task: Task;
|
|
423
|
-
|
|
483
|
+
key: ConnectionKey;
|
|
424
484
|
created: boolean;
|
|
425
485
|
} | null>;
|
|
426
486
|
private listTasksForCaller;
|
|
@@ -468,6 +528,7 @@ export declare class BrowserService {
|
|
|
468
528
|
*/
|
|
469
529
|
private rehydrateTaskFromDisk;
|
|
470
530
|
private getTabsForTask;
|
|
531
|
+
/** Live status for ONE registered connection, addressed by its runtime key. */
|
|
471
532
|
private getProfileStatus;
|
|
472
533
|
private getTarget;
|
|
473
534
|
private getSessionId;
|