@sideboard-ai/core 0.1.264 → 0.1.267
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/dist/{abletime-6AOJI2YZ.js → abletime-4ZSDI4YP.js} +9 -6
- package/dist/{abletime-U75ZGDIX.js → abletime-JNQAHLHH.js} +7 -4
- package/dist/{abletime-oauth-TA2YDCYX.js → abletime-oauth-4RXZH2KU.js} +3 -3
- package/dist/{abletime-oauth-LOAHGG4X.js → abletime-oauth-DCEIINYT.js} +5 -5
- package/dist/{abletime-rest-CTA5WV26.js → abletime-rest-KVBJFVFD.js} +3 -3
- package/dist/{abletime-rest-YZPFM6IY.js → abletime-rest-VN6PZ6P2.js} +5 -5
- package/dist/agents/cursor-runner.js +7 -5
- package/dist/{agents-3TUMFSMH.js → agents-G3JTULM2.js} +7 -5
- package/dist/{agents-6FWDRVA2.js → agents-XRXJCAWJ.js} +11 -10
- package/dist/{app-settings-RKFFUIFQ.js → app-settings-L5HGYXWJ.js} +1 -3
- package/dist/{app-settings-MVZPM6WW.js → app-settings-RAC4PSSP.js} +3 -5
- package/dist/{caffeinate-hold-UAGLSGMM.js → caffeinate-hold-7JM5H5P3.js} +2 -2
- package/dist/{chunk-F5MFNUAA.js → chunk-27Z4MEQ5.js} +1 -1
- package/dist/{chunk-EK3KVT7I.js → chunk-2XIRV7FS.js} +53 -1254
- package/dist/{chunk-3H7O27X2.js → chunk-3VBS6MES.js} +39 -1017
- package/dist/chunk-4ECDIKAS.js +2273 -0
- package/dist/{chunk-H547WSSZ.js → chunk-4RZRHTSZ.js} +1 -1
- package/dist/{chunk-QN5DL2QO.js → chunk-5DZUWGKV.js} +1 -1
- package/dist/chunk-5N4Q46SG.js +392 -0
- package/dist/{chunk-YKYEHDMX.js → chunk-AGXZAMOF.js} +5 -5
- package/dist/{chunk-RKPBIB2U.js → chunk-DB7MVDYS.js} +33 -7
- package/dist/{chunk-BOMSJUXW.js → chunk-DBFAFI5A.js} +5 -5
- package/dist/chunk-FAGK33E2.js +994 -0
- package/dist/{chunk-A5SAYFJ4.js → chunk-FIBZEFKA.js} +4 -390
- package/dist/{chunk-5PK53SAP.js → chunk-GONPMH36.js} +5 -5
- package/dist/{chunk-L5WGAIL2.js → chunk-GZXKUUJO.js} +35 -9
- package/dist/{chunk-Z2LGMV6C.js → chunk-H5XL4KUS.js} +21 -0
- package/dist/{chunk-T3AYRQJZ.js → chunk-HSRN2CSL.js} +473 -2487
- package/dist/{chunk-TJ673EZT.js → chunk-JANCPF7Z.js} +2 -2
- package/dist/chunk-KZ2CDZBZ.js +828 -0
- package/dist/{chunk-6YY7XPPL.js → chunk-L6CYOON4.js} +5 -5
- package/dist/{chunk-6YOXQVJ7.js → chunk-LAIBYKZS.js} +3 -3
- package/dist/{chunk-4ALDX5IO.js → chunk-NWE3NOWQ.js} +3 -3
- package/dist/{chunk-36FOBJBF.js → chunk-OIENQEGG.js} +63 -38
- package/dist/{chunk-2QUQH2SZ.js → chunk-PAH7KDL2.js} +68 -24
- package/dist/{chunk-XAISOBBG.js → chunk-TQRSVE7D.js} +1 -1
- package/dist/chunk-UKSJO36E.js +1224 -0
- package/dist/{chunk-CEMNIGQH.js → chunk-UN5Q7POQ.js} +1 -1
- package/dist/{chunk-5ZPT5YAV.js → chunk-USBZ7PH4.js} +1 -1
- package/dist/chunk-UXI52MLJ.js +826 -0
- package/dist/chunk-X7RP3TQB.js +2385 -0
- package/dist/{chunk-QX6QUZVD.js → chunk-ZSGSVFWD.js} +424 -2611
- package/dist/conductor-MLM5NGTP.js +104 -0
- package/dist/conductor-NRKTEN5X.js +105 -0
- package/dist/{connected-teams-7CENZDWU.js → connected-teams-JIUOSZ6C.js} +2 -2
- package/dist/{coordinator-prompt-J7DKHOCH.js → coordinator-prompt-4GHKCVRH.js} +7 -7
- package/dist/{coordinator-prompt-HZCQZ6C5.js → coordinator-prompt-BKRQDZFT.js} +3 -3
- package/dist/{cursor-recover-FALSNEZN.js → cursor-recover-MB3T2K5T.js} +2 -2
- package/dist/{global-workspace-TI26K25J.js → global-workspace-EEWJOMED.js} +9 -3
- package/dist/{global-workspace-6LDUZ2NF.js → global-workspace-EWFL4HPW.js} +13 -7
- package/dist/index.cjs +3918 -2592
- package/dist/index.d.cts +363 -68
- package/dist/index.d.ts +363 -68
- package/dist/index.js +4181 -3462
- package/dist/{managed-accounts-4BLTJKAN.js → managed-accounts-46A4KRUE.js} +2 -2
- package/dist/mcp/run-stdio.cjs +1894 -2012
- package/dist/mcp/run-stdio.js +719 -1445
- package/dist/{orchestrator-5YU46YNS.js → orchestrator-6ZQ2CYS4.js} +9 -6
- package/dist/{orchestrator-4JSG7BWC.js → orchestrator-MA3MHYIM.js} +15 -13
- package/dist/{paths-IUR3ABNG.js → paths-HYT5WOOX.js} +1 -1
- package/dist/{thread-store-FJ5CDX2M.js → thread-store-B3ZM4QEZ.js} +3 -3
- package/dist/{workspaces-QJ3XIPUJ.js → workspaces-F33Z4CEY.js} +3 -3
- package/dist/{workspaces-WOQHJFRQ.js → workspaces-SLP24Z3S.js} +7 -7
- package/dist/{worktree-6U2FA5LO.js → worktree-ACW23KJ5.js} +6 -6
- package/dist/{worktree-KQA4ON2G.js → worktree-C7RPVHZ7.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-CEOTK5GZ.js +0 -479
- package/dist/chunk-K7B25HO4.js +0 -477
package/dist/index.d.ts
CHANGED
|
@@ -1077,12 +1077,14 @@ interface IntegrationsSettings {
|
|
|
1077
1077
|
/** When true, desktop/CLI listen for Slack DMs and @mentions via Socket Mode. */
|
|
1078
1078
|
slackListenEnabled?: boolean;
|
|
1079
1079
|
/**
|
|
1080
|
-
* Stable per-Mac id
|
|
1080
|
+
* Stable per-Mac id on the relay (Personal vs Work can both stay online).
|
|
1081
1081
|
* Generated once; do not copy between machines.
|
|
1082
1082
|
*/
|
|
1083
1083
|
slackDeviceId?: string;
|
|
1084
1084
|
/** Human label for this Mac destination, e.g. Personal / Work. */
|
|
1085
1085
|
slackDeviceLabel?: string;
|
|
1086
|
+
/** Secret that proves this Mac to the phone relay. Vaulted. */
|
|
1087
|
+
remoteHostSecret?: string;
|
|
1086
1088
|
/**
|
|
1087
1089
|
* How agents and Sideboard git helpers authenticate GitHub.
|
|
1088
1090
|
* Omitted = {@link getGithubGitAuthMode} default (`auto`).
|
|
@@ -1275,6 +1277,8 @@ interface AdvancedAppSettings {
|
|
|
1275
1277
|
* Audio bytes live under app data `sounds/agent-done.<ext>`.
|
|
1276
1278
|
*/
|
|
1277
1279
|
agentDoneCustomSoundName?: string;
|
|
1280
|
+
readAloudRate?: number;
|
|
1281
|
+
readAloudVoiceURI?: string;
|
|
1278
1282
|
}
|
|
1279
1283
|
interface AppSettings {
|
|
1280
1284
|
/** Environment variables injected into agent / hook processes (and process.env). */
|
|
@@ -1302,7 +1306,7 @@ interface AppSettings {
|
|
|
1302
1306
|
accounts: ManagedAccountsState;
|
|
1303
1307
|
}
|
|
1304
1308
|
/** Integrations fields safe to send to the renderer (no token values). */
|
|
1305
|
-
type PublicIntegrationsSettings = Omit<IntegrationsSettings, 'linearApiKey' | 'linearAccessToken' | 'linearRefreshToken' | 'linearClientSecret' | 'slackClientSecret' | 'slackAppToken' | 'githubPat' | 'abletimeAccessToken' | 'abletimeRefreshToken' | 'vercelToken' | 'supabaseAccessToken' | 'posthogPersonalApiKey' | 'sentryAuthToken'> & {
|
|
1309
|
+
type PublicIntegrationsSettings = Omit<IntegrationsSettings, 'linearApiKey' | 'linearAccessToken' | 'linearRefreshToken' | 'linearClientSecret' | 'slackClientSecret' | 'slackAppToken' | 'remoteHostSecret' | 'githubPat' | 'abletimeAccessToken' | 'abletimeRefreshToken' | 'vercelToken' | 'supabaseAccessToken' | 'posthogPersonalApiKey' | 'sentryAuthToken'> & {
|
|
1306
1310
|
/** True when Linear is connected (OAuth or API key). */
|
|
1307
1311
|
hasLinearApiKey: boolean;
|
|
1308
1312
|
hasLinearOAuth: boolean;
|
|
@@ -1368,6 +1372,7 @@ declare function updateIntegrationsSettings(patch: {
|
|
|
1368
1372
|
slackListenEnabled?: boolean | null;
|
|
1369
1373
|
slackDeviceId?: string | null;
|
|
1370
1374
|
slackDeviceLabel?: string | null;
|
|
1375
|
+
remoteHostSecret?: string | null;
|
|
1371
1376
|
githubGitAuthMode?: GithubGitAuthMode | null;
|
|
1372
1377
|
githubPat?: string | null;
|
|
1373
1378
|
abletimeAccessToken?: string | null;
|
|
@@ -1523,14 +1528,6 @@ declare function getLinearApiKey(settings?: AppSettings): string | null;
|
|
|
1523
1528
|
declare function brightsyCloudConnectEnabled(settings?: AppSettings): boolean;
|
|
1524
1529
|
/** Slack Socket Mode inbound (Settings → Remote → Slack). Default off. */
|
|
1525
1530
|
declare function slackListenEnabled(settings?: AppSettings): boolean;
|
|
1526
|
-
/**
|
|
1527
|
-
* Stable per-Mac identity for the Slack relay so Personal and Work can both
|
|
1528
|
-
* stay online as separate destinations.
|
|
1529
|
-
*/
|
|
1530
|
-
declare function ensureSlackDeviceIdentity(settings?: AppSettings): {
|
|
1531
|
-
deviceId: string;
|
|
1532
|
-
deviceLabel: string;
|
|
1533
|
-
};
|
|
1534
1531
|
/**
|
|
1535
1532
|
* App-level token for Slack Socket Mode (`xapp-…`).
|
|
1536
1533
|
* Env `SIDEBOARD_SLACK_APP_TOKEN` wins over settings.
|
|
@@ -1601,6 +1598,37 @@ declare function applyAppEnvironment(target?: NodeJS.ProcessEnv, settings?: AppS
|
|
|
1601
1598
|
declare function childEnvWithAppSettings(extra?: Record<string, string | undefined>): NodeJS.ProcessEnv;
|
|
1602
1599
|
declare function harnessEnvKey(harness: HarnessId): string | null;
|
|
1603
1600
|
|
|
1601
|
+
/** Web Speech API `utterance.rate` for chat Read Aloud. */
|
|
1602
|
+
declare const READ_ALOUD_RATE_MIN = 0.5;
|
|
1603
|
+
declare const READ_ALOUD_RATE_MAX = 3;
|
|
1604
|
+
declare const READ_ALOUD_RATE_DEFAULT = 1;
|
|
1605
|
+
declare function clampReadAloudRate(value: unknown): number;
|
|
1606
|
+
declare function sanitizeReadAloudVoiceURI(value: unknown): string | undefined;
|
|
1607
|
+
type ReadAloudSettingsFields = {
|
|
1608
|
+
readAloudRate?: number;
|
|
1609
|
+
readAloudVoiceURI?: string;
|
|
1610
|
+
};
|
|
1611
|
+
declare function copyReadAloudFromUnknown(source: Record<string, unknown>, out: ReadAloudSettingsFields): void;
|
|
1612
|
+
declare function patchReadAloudSettings(patch: {
|
|
1613
|
+
readAloudRate?: number;
|
|
1614
|
+
readAloudVoiceURI?: string | null;
|
|
1615
|
+
}, advanced: ReadAloudSettingsFields): void;
|
|
1616
|
+
|
|
1617
|
+
/**
|
|
1618
|
+
* Stable per-Mac identity on the relay so Personal and Work can both
|
|
1619
|
+
* stay online as separate destinations. Phone remote uses the same id.
|
|
1620
|
+
*/
|
|
1621
|
+
declare function ensureSlackDeviceIdentity(settings?: AppSettings): {
|
|
1622
|
+
deviceId: string;
|
|
1623
|
+
deviceLabel: string;
|
|
1624
|
+
};
|
|
1625
|
+
/** Mac identity plus the secret the phone relay uses to recognize this machine. */
|
|
1626
|
+
declare function ensureRemoteHostCredentials(settings?: AppSettings): {
|
|
1627
|
+
deviceId: string;
|
|
1628
|
+
deviceLabel: string;
|
|
1629
|
+
hostSecret: string;
|
|
1630
|
+
};
|
|
1631
|
+
|
|
1604
1632
|
/** Max size for an imported agent-done sound (5 MiB). */
|
|
1605
1633
|
declare const AGENT_DONE_CUSTOM_SOUND_MAX_BYTES: number;
|
|
1606
1634
|
declare const AGENT_DONE_CUSTOM_SOUND_EXTENSIONS: string[];
|
|
@@ -1924,6 +1952,10 @@ declare function findSlackCoordinator(teamId: string, userId: string): Thread |
|
|
|
1924
1952
|
declare function ensureSlackCoordinator(teamId: string, userId: string, agent: AgentKind, opts?: {
|
|
1925
1953
|
forceNew?: boolean;
|
|
1926
1954
|
}): Thread;
|
|
1955
|
+
/** One Global chat for the phone paired to this Mac. */
|
|
1956
|
+
declare function remoteCoordinatorSourceRef(deviceId: string): string;
|
|
1957
|
+
declare function findRemoteCoordinator(deviceId: string): Thread | undefined;
|
|
1958
|
+
declare function ensureRemoteCoordinator(deviceId: string, agent: AgentKind): Thread;
|
|
1927
1959
|
/** Find or create the singleton Brightsy cloud coordinator under Global. */
|
|
1928
1960
|
declare function ensureCloudCoordinator(agent: AgentKind): Thread;
|
|
1929
1961
|
|
|
@@ -2491,6 +2523,42 @@ declare function getGitHubStatus(): Promise<GitHubStatus>;
|
|
|
2491
2523
|
/** Open interactive `gh auth login` in a terminal-friendly way (caller may spawn UI). */
|
|
2492
2524
|
declare function refreshGitHubAuth(): Promise<GitHubStatus>;
|
|
2493
2525
|
|
|
2526
|
+
/** Listed on get_issue / get_task. Download with the matching vendor tool. */
|
|
2527
|
+
interface IssueVendorAttachment {
|
|
2528
|
+
id: string;
|
|
2529
|
+
name: string;
|
|
2530
|
+
url: string;
|
|
2531
|
+
contentType?: string;
|
|
2532
|
+
sourceType?: string;
|
|
2533
|
+
}
|
|
2534
|
+
interface DownloadedIssueAttachment {
|
|
2535
|
+
name: string;
|
|
2536
|
+
/** Worktree-relative path under `.context/attachments/`. */
|
|
2537
|
+
path: string;
|
|
2538
|
+
bytes: number;
|
|
2539
|
+
contentType?: string;
|
|
2540
|
+
}
|
|
2541
|
+
|
|
2542
|
+
interface LinearIssueAttachment {
|
|
2543
|
+
id: string;
|
|
2544
|
+
title: string;
|
|
2545
|
+
url: string;
|
|
2546
|
+
subtitle?: string;
|
|
2547
|
+
sourceType?: string;
|
|
2548
|
+
}
|
|
2549
|
+
/**
|
|
2550
|
+
* Download a Linear file attachment into `.context/attachments/` using Account
|
|
2551
|
+
* Linear OAuth / API key. Pass the attachment uuid or upload URL from
|
|
2552
|
+
* `linear_get_issue`.
|
|
2553
|
+
*/
|
|
2554
|
+
declare function downloadLinearAttachment(input: {
|
|
2555
|
+
id: string;
|
|
2556
|
+
name?: string;
|
|
2557
|
+
}, opts?: {
|
|
2558
|
+
apiKey?: string | null;
|
|
2559
|
+
destPath?: string | null;
|
|
2560
|
+
}): Promise<DownloadedIssueAttachment>;
|
|
2561
|
+
|
|
2494
2562
|
interface LinearWorkflowState {
|
|
2495
2563
|
id: string;
|
|
2496
2564
|
name: string;
|
|
@@ -2540,12 +2608,6 @@ interface LinearIssueComment {
|
|
|
2540
2608
|
name: string;
|
|
2541
2609
|
};
|
|
2542
2610
|
}
|
|
2543
|
-
interface LinearIssueAttachment {
|
|
2544
|
-
id: string;
|
|
2545
|
-
title: string;
|
|
2546
|
-
url: string;
|
|
2547
|
-
subtitle?: string;
|
|
2548
|
-
}
|
|
2549
2611
|
interface LinearIssue {
|
|
2550
2612
|
id: string;
|
|
2551
2613
|
identifier: string;
|
|
@@ -2785,6 +2847,18 @@ declare function startLinearOAuth(opts?: {
|
|
|
2785
2847
|
/** Revoke OAuth tokens (best-effort) and clear Linear credentials including API key. */
|
|
2786
2848
|
declare function disconnectLinear(): Promise<AppSettings>;
|
|
2787
2849
|
|
|
2850
|
+
/**
|
|
2851
|
+
* Download a GitHub issue file (user-attachments / githubusercontent) using
|
|
2852
|
+
* Account `gh` into `.context/attachments/`. Pass the URL from
|
|
2853
|
+
* `github_get_issue` attachments.
|
|
2854
|
+
*/
|
|
2855
|
+
declare function downloadGitHubIssueAttachment(input: {
|
|
2856
|
+
url: string;
|
|
2857
|
+
name?: string;
|
|
2858
|
+
}, opts?: {
|
|
2859
|
+
repoPath?: string | null;
|
|
2860
|
+
}): Promise<DownloadedIssueAttachment>;
|
|
2861
|
+
|
|
2788
2862
|
interface GitHubIssueComment {
|
|
2789
2863
|
id?: string;
|
|
2790
2864
|
body: string;
|
|
@@ -2803,6 +2877,7 @@ interface GitHubIssue {
|
|
|
2803
2877
|
labels: string[];
|
|
2804
2878
|
assignees: string[];
|
|
2805
2879
|
comments: GitHubIssueComment[];
|
|
2880
|
+
attachments: IssueVendorAttachment[];
|
|
2806
2881
|
}
|
|
2807
2882
|
declare function parseGitHubIssueNumber(id: string): number;
|
|
2808
2883
|
declare function resolveGitHubIssueRepo(repoPath?: string | null): Promise<{
|
|
@@ -2868,6 +2943,19 @@ declare function createGitHubIssue(input: {
|
|
|
2868
2943
|
repoPath?: string | null;
|
|
2869
2944
|
}): Promise<GitHubIssue>;
|
|
2870
2945
|
|
|
2946
|
+
/**
|
|
2947
|
+
* Download an AbleTime task file into `.context/attachments/` using the Account
|
|
2948
|
+
* token. Pass the attachment id or URL from `abletime_get_task`.
|
|
2949
|
+
*/
|
|
2950
|
+
declare function downloadAbleTimeAttachment(input: {
|
|
2951
|
+
id: string;
|
|
2952
|
+
name?: string;
|
|
2953
|
+
}, opts?: {
|
|
2954
|
+
token?: string | null;
|
|
2955
|
+
host?: string | null;
|
|
2956
|
+
destPath?: string | null;
|
|
2957
|
+
}): Promise<DownloadedIssueAttachment>;
|
|
2958
|
+
|
|
2871
2959
|
interface AbleTimeComment {
|
|
2872
2960
|
id?: string;
|
|
2873
2961
|
body: string;
|
|
@@ -2890,6 +2978,7 @@ interface AbleTimeTask {
|
|
|
2890
2978
|
};
|
|
2891
2979
|
labels: string[];
|
|
2892
2980
|
comments: AbleTimeComment[];
|
|
2981
|
+
attachments: IssueVendorAttachment[];
|
|
2893
2982
|
createdAt?: string;
|
|
2894
2983
|
updatedAt?: string;
|
|
2895
2984
|
}
|
|
@@ -4304,6 +4393,45 @@ interface RepoSetupInfo {
|
|
|
4304
4393
|
/** Setup panel state for a thread worktree (falls back to main repo config). */
|
|
4305
4394
|
declare function getRepoSetupInfo(worktreePath: string, repoPath?: string | null): RepoSetupInfo;
|
|
4306
4395
|
|
|
4396
|
+
declare const PORT_RANGE_SIZE = 10;
|
|
4397
|
+
type PortReservation = {
|
|
4398
|
+
port: number;
|
|
4399
|
+
/** Stop holding the port so a child can bind it. Idempotent. */
|
|
4400
|
+
release: () => Promise<void>;
|
|
4401
|
+
};
|
|
4402
|
+
/**
|
|
4403
|
+
* Bind an ephemeral port and keep the socket open until `release()`.
|
|
4404
|
+
* Closing then rebinding races other worktrees / agents (TOCTOU) — especially
|
|
4405
|
+
* with Vite `strictPort: true`, which fails Start instead of falling back.
|
|
4406
|
+
*/
|
|
4407
|
+
declare function reservePort(): Promise<PortReservation>;
|
|
4408
|
+
/** @deprecated Prefer reservePort — releasing immediately reopens the race. */
|
|
4409
|
+
declare function allocatePort(): Promise<number>;
|
|
4410
|
+
declare function tryReservePort(port: number): Promise<PortReservation | null>;
|
|
4411
|
+
/** Reserve every port or none. */
|
|
4412
|
+
declare function tryReservePorts(ports: number[]): Promise<PortReservation[] | null>;
|
|
4413
|
+
type ReservePortRangeOpts = {
|
|
4414
|
+
/** Reuse this worktree's last assignment when still free (or reclaimable). */
|
|
4415
|
+
preferred?: number[];
|
|
4416
|
+
/** When preferred ports are busy, kill leftovers whose cwd is this worktree. */
|
|
4417
|
+
worktreePath?: string;
|
|
4418
|
+
/**
|
|
4419
|
+
* Ports saved for other run scripts in this worktree. Never bind or kill
|
|
4420
|
+
* them — desktop and mobile (or any pair) stay up together.
|
|
4421
|
+
*/
|
|
4422
|
+
avoid?: number[];
|
|
4423
|
+
};
|
|
4424
|
+
/**
|
|
4425
|
+
* Hold a block of ports (Conductor: CONDUCTOR_PORT … +9) until release.
|
|
4426
|
+
* Callers must `release()` immediately before spawning the child that binds them.
|
|
4427
|
+
* When `preferred` is set, reuse those ports — reclaim a leftover Dev instance
|
|
4428
|
+
* on them instead of allocating a new range. SIDEBOARD_PORT is preferred[0];
|
|
4429
|
+
* a sibling holding a later slot must not force a new block.
|
|
4430
|
+
*/
|
|
4431
|
+
declare function reservePortRange(size?: number, opts?: ReservePortRangeOpts): Promise<PortReservation[]>;
|
|
4432
|
+
/** Allocate a contiguous block, releasing holds immediately (legacy / tests). */
|
|
4433
|
+
declare function allocatePortRange(size?: number): Promise<number[]>;
|
|
4434
|
+
|
|
4307
4435
|
/** Per-worktree sticky Dev ports (gitignored scratch). */
|
|
4308
4436
|
declare const RUN_PORTS_REL = ".context/.sideboard/run-ports.json";
|
|
4309
4437
|
declare function worktreeRunPortsPath(worktreePath: string): string;
|
|
@@ -4321,7 +4449,6 @@ type SetupRunResult = {
|
|
|
4321
4449
|
|
|
4322
4450
|
type ConductorSettings = RepoSettings;
|
|
4323
4451
|
|
|
4324
|
-
declare const PORT_RANGE_SIZE = 10;
|
|
4325
4452
|
/**
|
|
4326
4453
|
* Read `.worktreeinclude` patterns (one per line; `#` comments; blank skipped).
|
|
4327
4454
|
* Conductor: repo-root file listing gitignored files to copy into each worktree.
|
|
@@ -4415,38 +4542,6 @@ declare function listRunScripts(worktreePath: string, repoPath?: string | null):
|
|
|
4415
4542
|
declare function getDefaultRunScript(worktreePath: string, repoPath?: string | null): RunScript | null;
|
|
4416
4543
|
declare function getRunScript(worktreePath: string, repoPath: string | null | undefined, name?: string | null): RunScript | null;
|
|
4417
4544
|
declare function getRunMode(worktreePath: string, repoPath?: string | null): 'concurrent' | 'nonconcurrent';
|
|
4418
|
-
type PortReservation = {
|
|
4419
|
-
port: number;
|
|
4420
|
-
/** Stop holding the port so a child can bind it. Idempotent. */
|
|
4421
|
-
release: () => Promise<void>;
|
|
4422
|
-
};
|
|
4423
|
-
/**
|
|
4424
|
-
* Bind an ephemeral port and keep the socket open until `release()`.
|
|
4425
|
-
* Closing then rebinding races other worktrees / agents (TOCTOU) — especially
|
|
4426
|
-
* with Vite `strictPort: true`, which fails Start instead of falling back.
|
|
4427
|
-
*/
|
|
4428
|
-
declare function reservePort(): Promise<PortReservation>;
|
|
4429
|
-
/** @deprecated Prefer reservePort — releasing immediately reopens the race. */
|
|
4430
|
-
declare function allocatePort(): Promise<number>;
|
|
4431
|
-
declare function tryReservePort(port: number): Promise<PortReservation | null>;
|
|
4432
|
-
/** Reserve every port or none. */
|
|
4433
|
-
declare function tryReservePorts(ports: number[]): Promise<PortReservation[] | null>;
|
|
4434
|
-
type ReservePortRangeOpts = {
|
|
4435
|
-
/** Reuse this worktree's last assignment when still free (or reclaimable). */
|
|
4436
|
-
preferred?: number[];
|
|
4437
|
-
/** When preferred ports are busy, kill leftovers whose cwd is this worktree. */
|
|
4438
|
-
worktreePath?: string;
|
|
4439
|
-
};
|
|
4440
|
-
/**
|
|
4441
|
-
* Hold a block of ports (Conductor: CONDUCTOR_PORT … +9) until release.
|
|
4442
|
-
* Callers must `release()` immediately before spawning the child that binds them.
|
|
4443
|
-
* When `preferred` is set, reuse those ports — reclaim a leftover Dev instance
|
|
4444
|
-
* on them instead of allocating a new range. SIDEBOARD_PORT is preferred[0];
|
|
4445
|
-
* a sibling holding a later slot must not force a new block.
|
|
4446
|
-
*/
|
|
4447
|
-
declare function reservePortRange(size?: number, opts?: ReservePortRangeOpts): Promise<PortReservation[]>;
|
|
4448
|
-
/** Allocate a contiguous block, releasing holds immediately (legacy / tests). */
|
|
4449
|
-
declare function allocatePortRange(size?: number): Promise<number[]>;
|
|
4450
4545
|
interface DevServerHandle {
|
|
4451
4546
|
pid: number | undefined;
|
|
4452
4547
|
port: number;
|
|
@@ -5803,11 +5898,11 @@ declare const SIDEBOARD_MCP_PROFILE_ENV = "SIDEBOARD_MCP_PROFILE";
|
|
|
5803
5898
|
/** Full worktree MCP catalog. `worktreeMcpToolNames` drops Agent RPC pilots when native. */
|
|
5804
5899
|
declare const WORKTREE_MCP_TOOLS: readonly ["present_artifact", "ask_user", "present_plan", "present_schema", "present_files", "wait_for_job", "stop_job", "list_run_scripts", "run_dev_script", "stop_dev_script", "get_run_log", "notify_orchestrator", "get_viewer_context", "update_viewer_context", "list_schedules", "create_schedule", "update_schedule", "delete_schedule", "run_schedule"];
|
|
5805
5900
|
/** GitHub Issues via Account `gh` — always registered on worktree + orchestration. */
|
|
5806
|
-
declare const WORKTREE_GITHUB_MCP_TOOLS: readonly ["github_search_issues", "github_get_issue", "github_comment", "github_update_issue", "github_create_issue"];
|
|
5901
|
+
declare const WORKTREE_GITHUB_MCP_TOOLS: readonly ["github_search_issues", "github_get_issue", "github_download_attachment", "github_comment", "github_update_issue", "github_create_issue"];
|
|
5807
5902
|
/** Account Linear tools registered when Linear is connected. */
|
|
5808
|
-
declare const WORKTREE_LINEAR_MCP_TOOLS: readonly ["linear_list_teams", "linear_search_issues", "linear_get_issue", "linear_create_issue", "linear_update_issue", "linear_comment"];
|
|
5903
|
+
declare const WORKTREE_LINEAR_MCP_TOOLS: readonly ["linear_list_teams", "linear_search_issues", "linear_get_issue", "linear_download_attachment", "linear_create_issue", "linear_update_issue", "linear_comment"];
|
|
5809
5904
|
/** Account AbleTime tools registered when AbleTime is connected. */
|
|
5810
|
-
declare const WORKTREE_ABLETIME_MCP_TOOLS: readonly ["abletime_orientation", "abletime_list_projects", "abletime_list_tasks", "abletime_search_tasks", "abletime_get_task", "abletime_comment", "abletime_update_task", "abletime_create_task", "abletime_ensure_task"];
|
|
5905
|
+
declare const WORKTREE_ABLETIME_MCP_TOOLS: readonly ["abletime_orientation", "abletime_list_projects", "abletime_list_tasks", "abletime_search_tasks", "abletime_get_task", "abletime_download_attachment", "abletime_comment", "abletime_update_task", "abletime_create_task", "abletime_ensure_task"];
|
|
5811
5906
|
declare function sideboardMcpProfile(env?: NodeJS.ProcessEnv): SideboardMcpProfile;
|
|
5812
5907
|
|
|
5813
5908
|
type NotifyOrchestratorReason = 'input-required' | 'blocked';
|
|
@@ -6454,13 +6549,13 @@ declare function disconnectSlackWorkspace(teamId: string): SlackWorkspaceInfo[];
|
|
|
6454
6549
|
/** Add or update a workspace from a pasted bot (`xoxb-`) or user (`xoxp-`) token. */
|
|
6455
6550
|
declare function connectSlackToken(rawToken: string): Promise<SlackWorkspaceInfo>;
|
|
6456
6551
|
|
|
6457
|
-
/** Live status of the
|
|
6458
|
-
interface
|
|
6459
|
-
enabled: boolean;
|
|
6552
|
+
/** Live status of the phone remote (hosted relay). */
|
|
6553
|
+
interface RemoteHostStatus {
|
|
6460
6554
|
running: boolean;
|
|
6461
|
-
|
|
6462
|
-
|
|
6463
|
-
|
|
6555
|
+
connected: boolean;
|
|
6556
|
+
deviceLabel: string | null;
|
|
6557
|
+
phoneConnected: boolean;
|
|
6558
|
+
pairingCode: string | null;
|
|
6464
6559
|
lastError: string | null;
|
|
6465
6560
|
lastLog: string | null;
|
|
6466
6561
|
}
|
|
@@ -6479,6 +6574,18 @@ interface SlackListenStatus {
|
|
|
6479
6574
|
lastError: string | null;
|
|
6480
6575
|
lastLog: string | null;
|
|
6481
6576
|
}
|
|
6577
|
+
|
|
6578
|
+
/** Live status of the Brightsy cloud connect daemon in the desktop app. */
|
|
6579
|
+
interface CloudConnectStatus {
|
|
6580
|
+
enabled: boolean;
|
|
6581
|
+
running: boolean;
|
|
6582
|
+
agent: BrightsyCloudConnectAgent;
|
|
6583
|
+
endpoint: string | null;
|
|
6584
|
+
workspaces: Workspace[];
|
|
6585
|
+
lastError: string | null;
|
|
6586
|
+
lastLog: string | null;
|
|
6587
|
+
}
|
|
6588
|
+
|
|
6482
6589
|
/** Open-worktree cube targets (Finder, Cursor, VS Code, …). */
|
|
6483
6590
|
type WorktreeOpenerId = 'finder' | 'cursor' | 'code' | 'xcode' | 'terminal' | 'datagrip';
|
|
6484
6591
|
/** Installed third-party (and Finder) apps the worktree cube can open. */
|
|
@@ -6670,6 +6777,10 @@ interface IpcApi {
|
|
|
6670
6777
|
}>;
|
|
6671
6778
|
/** Sideboard Slack listen (DMs + @mentions → Global orchestrator). */
|
|
6672
6779
|
getSlackListenStatus(): Promise<SlackListenStatus>;
|
|
6780
|
+
/** Phone remote: this Mac registered on the relay. */
|
|
6781
|
+
getRemoteStatus(): Promise<RemoteHostStatus>;
|
|
6782
|
+
/** Ask the relay for a short pairing code the phone can enter. */
|
|
6783
|
+
requestRemotePairingCode(): Promise<RemoteHostStatus>;
|
|
6673
6784
|
setSlackListen(opts: {
|
|
6674
6785
|
enabled: boolean;
|
|
6675
6786
|
}): Promise<SlackListenStatus>;
|
|
@@ -7026,6 +7137,27 @@ interface IpcApi {
|
|
|
7026
7137
|
* When `threadRef` is set, files are staged into the worktree (same as drop).
|
|
7027
7138
|
*/
|
|
7028
7139
|
pickFiles(threadRef?: string | null): Promise<ThreadAttachment[]>;
|
|
7140
|
+
/** Prompt macOS for microphone access (dictation). Non-darwin is always true. */
|
|
7141
|
+
askMicrophoneAccess(): Promise<boolean>;
|
|
7142
|
+
/** Transcribe a held dictation clip (PCM WAV, base64). macOS Speech framework. */
|
|
7143
|
+
transcribeDictation(wavBase64: string, locale?: string): Promise<string>;
|
|
7144
|
+
/** Start a live macOS Speech session; partials arrive on onLiveDictationTranscript. */
|
|
7145
|
+
startLiveDictation(locale?: string): Promise<void>;
|
|
7146
|
+
/** Push 16 kHz mono PCM16 (base64) into the live dictation helper. */
|
|
7147
|
+
pushLiveDictationAudio(pcm16Base64: string): void;
|
|
7148
|
+
/** Close the live dictation FIFO and wait for the last transcript. */
|
|
7149
|
+
stopLiveDictation(): Promise<void>;
|
|
7150
|
+
onLiveDictationTranscript(listener: (payload: {
|
|
7151
|
+
text: string;
|
|
7152
|
+
isFinal: boolean;
|
|
7153
|
+
}) => void): () => void;
|
|
7154
|
+
onLiveDictationError(listener: (payload: {
|
|
7155
|
+
message: string;
|
|
7156
|
+
}) => void): () => void;
|
|
7157
|
+
/** Packaged Sideboard.app vs Dev Electron — Privacy lists different names. */
|
|
7158
|
+
getDictationPrivacyHelp(): Promise<{
|
|
7159
|
+
packaged: boolean;
|
|
7160
|
+
}>;
|
|
7029
7161
|
/** Build composer attachments from absolute paths without a worktree (create modal). */
|
|
7030
7162
|
attachmentsFromPaths(absolutePaths: string[]): Promise<ThreadAttachment[]>;
|
|
7031
7163
|
/** Build composer attachments from in-memory file buffers (create modal drop fallback). */
|
|
@@ -7415,11 +7547,11 @@ declare function userMcpNamesToDisable(opts: {
|
|
|
7415
7547
|
names: Iterable<string>;
|
|
7416
7548
|
}): string[];
|
|
7417
7549
|
|
|
7418
|
-
/** Public WebSocket URL for the hosted
|
|
7550
|
+
/** Public WebSocket URL for Slack desktops on the hosted relay (path included). */
|
|
7419
7551
|
declare const BAKED_SLACK_RELAY_URL = "wss://relay.sideboard.cloud/slack/desktop";
|
|
7420
7552
|
declare function hasBakedSlackOAuth(): boolean;
|
|
7421
7553
|
/**
|
|
7422
|
-
*
|
|
7554
|
+
* WebSocket URL for this Mac's Slack desktop session on the relay.
|
|
7423
7555
|
* Override with SIDEBOARD_SLACK_RELAY_URL for local relay testing.
|
|
7424
7556
|
*/
|
|
7425
7557
|
declare function slackRelayUrl(): string;
|
|
@@ -7460,6 +7592,14 @@ interface SlackWebSocket {
|
|
|
7460
7592
|
}) => void): void;
|
|
7461
7593
|
}
|
|
7462
7594
|
type SlackWebSocketCtor = new (url: string) => SlackWebSocket;
|
|
7595
|
+
type SlackLifecycleEvent = {
|
|
7596
|
+
kind: 'app_home_opened';
|
|
7597
|
+
teamId: string;
|
|
7598
|
+
userId: string;
|
|
7599
|
+
} | {
|
|
7600
|
+
kind: 'app_uninstalled';
|
|
7601
|
+
teamId: string;
|
|
7602
|
+
};
|
|
7463
7603
|
interface SlackInboundMessage {
|
|
7464
7604
|
teamId: string;
|
|
7465
7605
|
channelId: string;
|
|
@@ -7474,6 +7614,8 @@ interface SlackSocketModeOptions {
|
|
|
7474
7614
|
signal?: AbortSignal;
|
|
7475
7615
|
onLog?: (line: string) => void;
|
|
7476
7616
|
onEvent: (msg: SlackInboundMessage) => void | Promise<void>;
|
|
7617
|
+
/** App Home / uninstall — not forwarded to a Mac as a chat turn. */
|
|
7618
|
+
onLifecycle?: (event: SlackLifecycleEvent) => void | Promise<void>;
|
|
7477
7619
|
fetchImpl?: typeof fetch;
|
|
7478
7620
|
WebSocketImpl?: SlackWebSocketCtor;
|
|
7479
7621
|
}
|
|
@@ -7554,6 +7696,144 @@ declare function resolveSlackListenMode(opts?: {
|
|
|
7554
7696
|
workspaceCount?: number;
|
|
7555
7697
|
}): 'relay' | null;
|
|
7556
7698
|
|
|
7699
|
+
interface RemoteSocket {
|
|
7700
|
+
send(data: string): void;
|
|
7701
|
+
close(code?: number, reason?: string): void;
|
|
7702
|
+
}
|
|
7703
|
+
/**
|
|
7704
|
+
* In-memory phone ↔ Mac registry. One active phone socket per Mac.
|
|
7705
|
+
* A phone may hold session tokens for several Macs and attaches to one at a time.
|
|
7706
|
+
* Host secrets and session tokens survive that Mac reconnecting in this process.
|
|
7707
|
+
* A relay restart drops them — the phone pairs again.
|
|
7708
|
+
*/
|
|
7709
|
+
declare class RemoteHub {
|
|
7710
|
+
private readonly hosts;
|
|
7711
|
+
private readonly remembered;
|
|
7712
|
+
private readonly bySocket;
|
|
7713
|
+
private readonly codes;
|
|
7714
|
+
private readonly phonesByToken;
|
|
7715
|
+
handleClientMessage(socket: RemoteSocket, raw: string): void;
|
|
7716
|
+
detachSocket(socket: RemoteSocket): void;
|
|
7717
|
+
private dispatch;
|
|
7718
|
+
private registerHost;
|
|
7719
|
+
private issueCode;
|
|
7720
|
+
private pairPhone;
|
|
7721
|
+
private resumePhone;
|
|
7722
|
+
private listHosts;
|
|
7723
|
+
private releasePhoneSocket;
|
|
7724
|
+
private attachPhone;
|
|
7725
|
+
private fromPhone;
|
|
7726
|
+
private fromHost;
|
|
7727
|
+
}
|
|
7728
|
+
|
|
7729
|
+
interface RemoteHostClientOptions {
|
|
7730
|
+
url: string;
|
|
7731
|
+
deviceId: string;
|
|
7732
|
+
deviceLabel: string;
|
|
7733
|
+
hostSecret: string;
|
|
7734
|
+
signal?: AbortSignal;
|
|
7735
|
+
onStatus?: (status: {
|
|
7736
|
+
connected: boolean;
|
|
7737
|
+
phoneConnected: boolean;
|
|
7738
|
+
}) => void;
|
|
7739
|
+
onPairingCode?: (code: string | null) => void;
|
|
7740
|
+
onLog?: (line: string) => void;
|
|
7741
|
+
/** Tests: override keepalive cadence. */
|
|
7742
|
+
pingIntervalMs?: number;
|
|
7743
|
+
pongTimeoutMs?: number;
|
|
7744
|
+
}
|
|
7745
|
+
interface RemoteHostHandle {
|
|
7746
|
+
requestPairingCode(): void;
|
|
7747
|
+
/** Re-register this Mac so phones see a renamed desktop without a new pairing. */
|
|
7748
|
+
updateIdentity(deviceLabel: string): void;
|
|
7749
|
+
}
|
|
7750
|
+
/**
|
|
7751
|
+
* Keep this Mac registered on the relay and run phone prompts on the
|
|
7752
|
+
* Global orchestrator. Reconnects until `signal` aborts.
|
|
7753
|
+
*/
|
|
7754
|
+
declare function runRemoteHost(opts: RemoteHostClientOptions): RemoteHostHandle;
|
|
7755
|
+
|
|
7756
|
+
/** Phone ↔ relay ↔ Mac. Message text only. The Mac runs the orchestrator. */
|
|
7757
|
+
declare const REMOTE_RELAY_PATH = "/remote";
|
|
7758
|
+
declare const BAKED_REMOTE_RELAY_URL = "wss://relay.sideboard.cloud/remote";
|
|
7759
|
+
declare function remoteRelayUrl(): string;
|
|
7760
|
+
interface RemoteAskOption {
|
|
7761
|
+
label: string;
|
|
7762
|
+
description?: string;
|
|
7763
|
+
}
|
|
7764
|
+
interface RemoteAskQuestion {
|
|
7765
|
+
question: string;
|
|
7766
|
+
options: RemoteAskOption[];
|
|
7767
|
+
}
|
|
7768
|
+
interface RemoteHostSummary {
|
|
7769
|
+
sessionToken: string;
|
|
7770
|
+
deviceId: string;
|
|
7771
|
+
deviceLabel: string;
|
|
7772
|
+
online: boolean;
|
|
7773
|
+
}
|
|
7774
|
+
/** Relay → Mac or phone */
|
|
7775
|
+
type RemoteServerMessage = {
|
|
7776
|
+
type: 'registered';
|
|
7777
|
+
deviceId: string;
|
|
7778
|
+
deviceLabel: string;
|
|
7779
|
+
} | {
|
|
7780
|
+
type: 'pairing_code';
|
|
7781
|
+
code: string;
|
|
7782
|
+
expiresAt: number;
|
|
7783
|
+
} | {
|
|
7784
|
+
type: 'phone_joined';
|
|
7785
|
+
} | {
|
|
7786
|
+
type: 'phone_left';
|
|
7787
|
+
} | {
|
|
7788
|
+
type: 'inbound';
|
|
7789
|
+
text: string;
|
|
7790
|
+
} | {
|
|
7791
|
+
type: 'stop';
|
|
7792
|
+
} | {
|
|
7793
|
+
type: 'paired';
|
|
7794
|
+
deviceId: string;
|
|
7795
|
+
deviceLabel: string;
|
|
7796
|
+
sessionToken: string;
|
|
7797
|
+
} | {
|
|
7798
|
+
type: 'assistant';
|
|
7799
|
+
text: string;
|
|
7800
|
+
} | {
|
|
7801
|
+
type: 'ask_user';
|
|
7802
|
+
text: string;
|
|
7803
|
+
questions: RemoteAskQuestion[];
|
|
7804
|
+
} | {
|
|
7805
|
+
type: 'hosts';
|
|
7806
|
+
hosts: RemoteHostSummary[];
|
|
7807
|
+
} | {
|
|
7808
|
+
type: 'host_offline';
|
|
7809
|
+
} | {
|
|
7810
|
+
type: 'error';
|
|
7811
|
+
message: string;
|
|
7812
|
+
} | {
|
|
7813
|
+
type: 'pong';
|
|
7814
|
+
};
|
|
7815
|
+
|
|
7816
|
+
declare function formatRemotePrompt(text: string): string;
|
|
7817
|
+
declare function isRemoteStopCommand(text: string): boolean;
|
|
7818
|
+
type RemoteOutbound = {
|
|
7819
|
+
type: 'assistant';
|
|
7820
|
+
text: string;
|
|
7821
|
+
} | {
|
|
7822
|
+
type: 'ask_user';
|
|
7823
|
+
text: string;
|
|
7824
|
+
questions: RemoteAskQuestion[];
|
|
7825
|
+
};
|
|
7826
|
+
/**
|
|
7827
|
+
* Phone text → Global orchestrator on this Mac → reply or ask_user buttons.
|
|
7828
|
+
* Same turn loop as Slack Listen, without Slack.
|
|
7829
|
+
*/
|
|
7830
|
+
declare function handleRemoteInbound(text: string, opts: {
|
|
7831
|
+
deviceId: string;
|
|
7832
|
+
agent?: AgentKind;
|
|
7833
|
+
onOutbound: (msg: RemoteOutbound) => void;
|
|
7834
|
+
onLog?: (line: string) => void;
|
|
7835
|
+
}): void;
|
|
7836
|
+
|
|
7557
7837
|
interface SlackAuthTest {
|
|
7558
7838
|
ok: boolean;
|
|
7559
7839
|
url?: string;
|
|
@@ -7604,6 +7884,9 @@ type SlackRelayServerMessage = {
|
|
|
7604
7884
|
message: string;
|
|
7605
7885
|
} | {
|
|
7606
7886
|
type: 'pong';
|
|
7887
|
+
} | {
|
|
7888
|
+
type: 'uninstalled';
|
|
7889
|
+
teamId: string;
|
|
7607
7890
|
};
|
|
7608
7891
|
declare function parseSlackRelayClientMessage(raw: string): SlackRelayClientMessage | null;
|
|
7609
7892
|
declare function parseSlackRelayServerMessage(raw: string): SlackRelayServerMessage | null;
|
|
@@ -7618,6 +7901,7 @@ interface SlackRelaySession {
|
|
|
7618
7901
|
userId: string;
|
|
7619
7902
|
deviceId: string;
|
|
7620
7903
|
deviceLabel: string;
|
|
7904
|
+
botToken: string;
|
|
7621
7905
|
socket: SlackRelaySocket;
|
|
7622
7906
|
connectedAt: number;
|
|
7623
7907
|
}
|
|
@@ -7636,6 +7920,8 @@ declare class SlackRelayHub {
|
|
|
7636
7920
|
private readonly sessions;
|
|
7637
7921
|
private readonly bySocket;
|
|
7638
7922
|
private readonly pendingClaims;
|
|
7923
|
+
/** Workspace bot tokens for App Home + "no Mac online" replies (in-memory). */
|
|
7924
|
+
private readonly botByTeam;
|
|
7639
7925
|
private seq;
|
|
7640
7926
|
private readonly fetchImpl?;
|
|
7641
7927
|
private readonly authTest;
|
|
@@ -7654,11 +7940,17 @@ declare class SlackRelayHub {
|
|
|
7654
7940
|
*/
|
|
7655
7941
|
routeEvent(message: SlackInboundMessage): boolean;
|
|
7656
7942
|
private handleClaim;
|
|
7943
|
+
rememberBot(teamId: string, botToken: string): void;
|
|
7944
|
+
botTokenFor(teamId: string): string | null;
|
|
7945
|
+
uninstallTeam(teamId: string): void;
|
|
7946
|
+
handleAppHomeOpened(teamId: string, userId: string): Promise<void>;
|
|
7947
|
+
private replyNoMacOnline;
|
|
7657
7948
|
private send;
|
|
7658
7949
|
}
|
|
7659
7950
|
|
|
7660
|
-
interface
|
|
7661
|
-
|
|
7951
|
+
interface RelayServerOptions {
|
|
7952
|
+
/** Required unless skipSocketMode. Phone remote does not use this token. */
|
|
7953
|
+
appToken?: string;
|
|
7662
7954
|
/** OAuth client secret — from Fly `SIDEBOARD_SLACK_CLIENT_SECRET`. Never ship in the DMG. */
|
|
7663
7955
|
clientSecret?: string;
|
|
7664
7956
|
clientId?: string;
|
|
@@ -7681,18 +7973,19 @@ interface SlackRelayServerOptions {
|
|
|
7681
7973
|
/** Canonical public site host (default `www.sideboard.cloud`). */
|
|
7682
7974
|
canonicalSiteHost?: string;
|
|
7683
7975
|
}
|
|
7684
|
-
interface
|
|
7976
|
+
interface RelayServerHandle {
|
|
7685
7977
|
port: number;
|
|
7686
7978
|
url: string;
|
|
7687
7979
|
hub: SlackRelayHub;
|
|
7688
7980
|
close: () => Promise<void>;
|
|
7689
7981
|
}
|
|
7690
7982
|
/**
|
|
7691
|
-
* Hosted
|
|
7692
|
-
*
|
|
7983
|
+
* Hosted relay. Phone and Mac use `/remote`. The marketing site and AbleTime
|
|
7984
|
+
* OAuth bounce are served here too. Slack desktops use `/slack/desktop`, and
|
|
7985
|
+
* Socket Mode runs only when an xapp- token is set.
|
|
7693
7986
|
* GET /slack/callback exchanges Slack OAuth (client secret stays here).
|
|
7694
7987
|
*/
|
|
7695
|
-
declare function
|
|
7988
|
+
declare function startRelayServer(opts: RelayServerOptions): Promise<RelayServerHandle>;
|
|
7696
7989
|
|
|
7697
7990
|
interface SlackRelayRegisterWorkspace {
|
|
7698
7991
|
teamId: string;
|
|
@@ -7711,6 +8004,8 @@ interface SlackRelayClientOptions {
|
|
|
7711
8004
|
deviceLabel?: string;
|
|
7712
8005
|
signal?: AbortSignal;
|
|
7713
8006
|
onEvent: (msg: SlackInboundMessage) => void | Promise<void>;
|
|
8007
|
+
/** Workspace removed the Slack app — drop local tokens for that team. */
|
|
8008
|
+
onUninstalled?: (teamId: string) => void;
|
|
7714
8009
|
onLog?: (line: string) => void;
|
|
7715
8010
|
WebSocketImpl?: SlackWebSocketCtor;
|
|
7716
8011
|
/** Tests: override keepalive cadence. */
|
|
@@ -7720,7 +8015,7 @@ interface SlackRelayClientOptions {
|
|
|
7720
8015
|
claimFallbackMs?: number;
|
|
7721
8016
|
}
|
|
7722
8017
|
/**
|
|
7723
|
-
*
|
|
8018
|
+
* Slack desktop client: connect to the relay, register this Mac as a
|
|
7724
8019
|
* destination for the OAuth Slack user, claim inbound events before handling.
|
|
7725
8020
|
*/
|
|
7726
8021
|
declare function runSlackRelayClient(opts: SlackRelayClientOptions): Promise<void>;
|
|
@@ -7795,4 +8090,4 @@ declare function pollSlackOutboundWatches(opts?: {
|
|
|
7795
8090
|
now?: number;
|
|
7796
8091
|
}): Promise<void>;
|
|
7797
8092
|
|
|
7798
|
-
export { ABLETIME_MCP_PATH, ABLETIME_MCP_PM_PATH, ABLETIME_OAUTH_CALLBACK_PATH, ABLETIME_OAUTH_CANCELLED, ABLETIME_OAUTH_LOCAL_CALLBACK, ABLETIME_OAUTH_PORT, ABLETIME_OAUTH_REDIRECT, ABLETIME_OAUTH_RESOURCE, ABLETIME_OAUTH_TOKEN_PREFIX, ABLETIME_ORG_KEY_PREFIX, ABLETIME_PAT_PREFIX, ABLETIME_PM_TOOL_NAMES, AGENT_DONE_CUSTOM_SOUND_EXTENSIONS, AGENT_DONE_CUSTOM_SOUND_MAX_BYTES, AGENT_DONE_SOUNDS, AGENT_GIT_ACTIONS, AGENT_RPC_NATIVE_ENV, AGENT_RPC_PROTOCOL_VERSION, AGENT_RUNNER_MAX_OLD_SPACE_MB, ATTACHMENTS_DIR, type AbleTimeAssignedIssuesResult, type AbleTimeComment, type AbleTimeCredentialKind, type AbleTimeMcpToolName, AbleTimeOAuthCancelledError, type AbleTimeOrientation, type AbleTimePmToolName, type AbleTimeProject, type AbleTimeTask, type AbleTimeTaskRelationInput, type AbleTimeViewer, type AccountProfile, type ActiveRun, type AddBoardPinInput, type AddStackLayerInput, type AdoptInput, type AdvancedAppSettings, type AgentAdapter, type AgentDoneCustomSoundPayload, type AgentDoneSound, type AgentEvent, type AgentGitAction, type AgentKind, type AgentModelCatalog, type AgentModelInfo, type AgentRpcConnect, type AgentRuntimeMetadata, type AgentSetupActionResult, type AgentSetupInfo, type AgentSetupKind, type AgentStatus, type AgentTurnInput, type AnthropicCacheControl, type AppSettings, type ApplyIntoMainResult, type AttachCommand, type Autonomy, BAKED_ABLETIME_OAUTH_CLIENT_ID, BAKED_SLACK_RELAY_URL, BASE_ALLOWED_TOOLS, BRIGHTSY_MCP_ALLOWED_TOOLS, BRIGHTSY_OAUTH_CLIENT_ID, BRIGHTSY_OAUTH_REDIRECT, BRIGHTSY_SUMMARIZE_CONTEXT_TOOL, BUNDLED_LONG_RUNNING_PATH, BUNDLED_SKILL_PREFIX, type BoardPin, type BranchInfo, type BrightsyAccount, type BrightsyChatTarget, type BrightsyChatTargets, type BrightsyCloudConnectAgent, type BrightsyHarnessSettings, type BrightsySession, BrightsySideboardApi, type BrightsyTeamTargets, CHARS_PER_CONTEXT_TOKEN, CHAT_LINK_PREFIX, CHAT_TEXT_SCALES, CHAT_TEXT_SCALE_DEFAULT, CLAUDE_CHROME_ALLOWED_TOOLS, CLAUDE_MODEL_CATALOG, CLAUDE_PRINT_BG_WAIT_CEILING_MS, CLAUDE_SUMMARY_TIMEOUT_MS, CLI_DIR, CLOUD_COORDINATOR_BUSY_REPLY, CLOUD_COORDINATOR_CANCELED_REPLY, CLOUD_COORDINATOR_INPUT_REQUIRED_REPLY, CLOUD_COORDINATOR_STOPPED_REPLY, CLOUD_COORDINATOR_TIMEOUT_REPLY, CLOUD_ORCHESTRATOR_GOAL, CONTEXT_COMPACT_CHARS, CONTEXT_KEEP_RECENT_CHARS, CONTEXT_KEEP_RECENT_MESSAGES, CONTEXT_MIN_MESSAGES, CONTEXT_REVIEW_PATH, CONVENTION_SETUP_RELPATHS, COORDINATOR_TOOL_PLAYBOOK, CURSOR_SDK_INSTALL_HINT, type CaffeinateHoldState, type ChatTextScale, type ClaudeExtraUsage, type ClaudeHarnessSettings, type ClaudePlanUsage, type ClaudeUsageWindow, type ClaudeUsageWindowId, type CleanupOrphansResult, type CliAgentKind, type CliExecutableSettings, type CloudConnectAgent, type CloudConnectOptions, type CloudConnectStatus, type CodeLineRange, type CodeRefInput, type CompactResult, type CompactThresholds, type ComposerFileBuffer, type ConductorSettings, type ConductorWorkspace, type ConnectedBrightsyTeamInfo, type ConventionSetupFile, type CowboyThreadFields, type CreateChatTabInput, type CreateGlobalChatOpts, type CreateScheduledTaskInput, type CreateStackInput, type CreateThreadInput, type CreateWorktreeResult, type CursorAgentUsageSnapshot, type CursorModelInfo, type CursorSdkStreamMessage, type CursorTurnRequest, type CursorUsageCost, type CursorWorktreesConfig, DEFAULT_ABLETIME_HOST, DEFAULT_RUN_LOG_TAIL_CHARS, DEFAULT_WORKTREE_SORT, DETACHED_JOBS_DIR, type DefaultsAppSettings, type DefaultsSettingsPatch, type DevAccessRun, type DevPreview, type DevServerHandle, type DiffCommentInput, type DiffCommentLine, type DiffCommit, type DiffFile, type DiffResult, type DiffScope, type DiffScopeStat, EMPTY_MANAGED_ACCOUNTS, type EnsuredReviewGuidelines, type ExpandResult, FAMOUS_SOCCER_TEAMS, FOLLOW_UP_BEHAVIORS, type FastForwardMainResult, type FollowUpBehavior, type ForkChatTabInput, type ForkThreadWorktreeInput, type FormatGhLandErrorOptions, GITHUB_GIT_AUTH_MODES, GITHUB_PR_BODY_MAX_CHARS, GITHUB_PR_BODY_SAFE_CHARS, GLOBAL_WORKSPACE_ID, type GetDiffOptions, type GhStackStatus, type GitHubIssue, type GitHubIssueComment, type GitHubIssueRelationInput, type GitHubStatus, type GitWorktreeStatus, type GithubGitAuthMode, HARNESS_ENV_KEYS, HISTORY_DISCARDED_TEXT, HISTORY_MAX_COUNT_DEFAULT, HISTORY_MAX_COUNT_MAX, HISTORY_MAX_COUNT_MIN, HISTORY_MAX_DAYS_DEFAULT, HISTORY_MAX_DAYS_MAX, HOME_BOARD_CACHE_TTL_MS, type HarnessId, type HistoryCleanupResult, type HistoryRetentionPlan, type HomeBoardLoaded, type HomeBoardRemoteData, IMPLIED_TICKET_RESOLVE_PROMPT, ISSUE_SOURCE_LABELS, type ImportedAgentDoneSound, type InitStackFromThreadInput, type IntegrationsSettings, type IpcApi, type IssueActivityComment, type IssueAssigneeFilter, type IssueCycleInfo, type IssueInfo, type IssueSource, LEGACY_ATTACHMENTS_DIR, LEGACY_DETACHED_JOBS_DIR, LEGACY_PLAN_FILE_REL, LEGACY_REVIEW_REQUEST_PATH, LEGACY_THREAD_LINK_PREFIX, LIGHT_RECONCILE_THROTTLE_MS, LINEAR_OAUTH_CANCELLED, LINEAR_OAUTH_PORT, LINEAR_OAUTH_REDIRECT, LINEAR_OAUTH_SCOPES, LIVE_TURN_SPAWN_GRACE_MS, LONG_RUNNING_SKILL_COMMAND, type LandPreview, type LandResult, type LinearAssignedIssuesResult, type LinearAssigneeFilter, type LinearComment, type LinearCycle, type LinearIssue, type LinearIssueAttachment, type LinearIssueComment, type LinearIssueRef, type LinearIssueRelation, type LinearIssueRelationInput, type LinearNamedRef, LinearOAuthCancelledError, type LinearProjectRef, type LinearTeam, type LinearTeamsResult, type LinearWorkflowState, type ListIssuesOptions, type ListIssuesResult, type ListPrsOptions, MAX_ANTHROPIC_CACHE_CONTROL_BLOCKS, type ManagedAccount, type ManagedAccountKind, type ManagedAccountsState, type McpServerStatus, type MessagePart, type NextManagedAccount, type NotifyOrchestratorReason, type NotifyOrchestratorResult, OPTIONAL_SERVICES, OPTIONAL_SERVICE_IDS, ORCHESTRATOR_AGENT_KINDS, type OpenPrStackLayersInput, type OpenStackLayerInput, type OpenStackLayerResult, type OptionalServiceCliStatus, type OptionalServiceId, type OptionalServiceSpec, type OrchestrationQuotaOnLimit, Orchestrator, type OrchestratorAgentKind, type OrchestratorDefaultsSettings, type OrchestratorEvent, type OrchestratorRuntime, type OrphanWorktree, type OutboundTurnCopy, type OutboundTurnSnapshot, PASTE_ATTACH_MIN_CHARS, PASTE_ATTACH_MIN_LINES, PLAN_FILE_NAME, PLAN_FILE_REL, PLAN_MODE_INSTRUCTION, PLAN_MODE_OFF_INSTRUCTION, PLAN_QUESTION_ANSWERS_PREFIX, PORT_RANGE_SIZE, PRESENT_PLAN_REQUIRES_PLAN_MODE, PRESENT_PLAN_TOOL_DESCRIPTION, PROFILE_NOTES_MAX, PR_DETAILS_JSON_FIELDS, type PathRefInput, type PendingPlanQuestions, type PlanQuestion, type PlanQuestionAnswer, type PlanQuestionOption, type PlanToolPartLike, type PortReservation, type PrActor, type PrCheckRun, type PrCommentInfo, type PrCommitInfo, type PrDetails, type PrInfo, type PrMeta, type PrReviewInfo, type PrStack, type PrStackLayer, type PresentedPlan, type ProjectProfileSettings, type PublicAppSettings, type PublicIntegrationsSettings, REPO_REVIEW_NAME, REPO_REVIEW_PATH, REVIEW_LABEL_MAX, REVIEW_REQUEST_NAME, REVIEW_REQUEST_PATH, REVIEW_REQUEST_PREFILL, REVIEW_REQUEST_TEMPLATE, REVIEW_SKILL_NAME, REVIEW_SKILL_PATH, RUN_PORTS_REL, RUN_SCRIPT_DESKTOP_ADOPT_MS, type RepoSettings, type RepoSetupInfo, type RequestReviewResult, type ReservePortRangeOpts, type ResolvedAccountProfile, type ResolvedReviewGuidelines, type ResolvedThreadDefaults, type ResolvedViewerProfile, type ReviewGuidelinesSource, type RunLogSnapshot, type RunMode, type RunScript, type RunScriptPreviewInput, type RunScriptRequest, SEED_FULL_TOOL_MESSAGES, SEED_MAX_CHARS, SESSION_RESET_OCCUPANCY_TOKENS, SIDEBOARD_FORCE_STOP, SIDEBOARD_MCP_ALLOWED_TOOLS, SIDEBOARD_MCP_PROFILE_ENV, SLACK_LISTEN_INPUT_REQUIRED_REPLY, SLACK_LISTEN_STOPPED_REPLY, SLACK_LISTEN_TIMEOUT_REPLY, SLACK_OAUTH_CANCELLED, SLACK_OAUTH_REDIRECT, SLACK_PROGRESS_DELAY_MS, SLACK_PROGRESS_EDIT_MS, SLACK_REPLY_FORMATTING, SLACK_SEEN_REACTION, STDERR_EVENT_MAX_CHARS, STDOUT_EVENT_MAX_CHARS, type ScheduleCreatedBy, type ScheduleWhen, type ScheduledTask, type ScriptHandle, type SessionSeedOptions, type SetupLogSnapshot, type SetupRunResult, type SidebarGitAction, type SideboardMcpProfile, type SkillInfo, type SlackInboundMessage, type SlackListenOptions, type SlackListenStatus, SlackOAuthCancelledError, type SlackOutboundReply, type SlackOutboundWatch, type SlackRelayClientMessage, type SlackRelayClientOptions, SlackRelayHub, type SlackRelayServerHandle, type SlackRelayServerMessage, type SlackRelayServerOptions, type SlackWorkspaceInfo, type SourceType, type SpawnTurnHandle, type SummarizeResult, THINKING_EFFORTS, THINKING_PART_MAX_CHARS, type TaskState, type TeamName, type ThinkingEffort, type Thread, type ThreadAttachment, type ThreadMessage, type ThreadOptionsPatch, type ThreadStatus, type TokenUsage, type ToolPartLike, type TranscriptToolDetail, type TurnCommand, USAGE_ON_LIMIT_VALUES, type UpdateScheduledTaskPatch, type UsageOnLimit, type UsageScope, type ViewerContextWriteResult, type ViewerProfile, WORKTREE_ABLETIME_MCP_TOOLS, WORKTREE_GITHUB_MCP_TOOLS, WORKTREE_LINEAR_MCP_TOOLS, WORKTREE_MCP_TOOLS, type Workspace, type WorkspaceInventoryEntry, type WorkspaceScriptEnvOpts, type WorktreeDirtyStat, type WorktreeListBadge, type WorktreeOpener, type WorktreeOpenerId, type WorktreeSortMode, type WorktreeStatKind, ableTimeCredentialKind, ableTimeDependencyTarget, ableTimeOAuthAuthorizeUrl, ableTimeOAuthBouncePage, ableTimeOAuthClientId, ableTimeOAuthLocalBounceUrl, ableTimeOAuthRedirectUri, ableTimeOAuthResource, ableTimeUsesRest, abletimeMcpRequest, abletimeMcpUrl, abletimeToolUsesPm, accountIdToPin, ackSlackInboundSeen, activeAccountId, activeRunPreview, addBoardPin, addManagedAccount, addPrStackLayer, addStackLayerFromThread, addWorkspace, adoptThread, agentDoneCustomSoundMime, agentDoneSound, agentDoneSoundsDir, agentGitPrompt, agentRpcConnectFromMetadata, alignQueueAttachments, allAdapters, allocatePort, allocatePortRange, allocateTeamName, allocateTeamSlug, annotateDevAccessRuns, appDataDir, appSettingsPath, appendCompactedMessages, appendIndexedGitConfig, appendMessage, appendQueuedItem, applyAgentEvent, applyAgentRunnerHeapEnv, applyAppEnvironment, applyCompaction, applyForwardOccupancy, applyGithubGitAuthEnv, applyManagedAccountEnv, applyPromptCacheTtlEnv, applySystemCaEnv, applyThreadIntoMain, applyTurnUsage, armSchedules, assertAbleTimeCredential, assertAbleTimeMcpCredential, assertOrchestratorCapableAgent, attachmentFromAbsolutePath, attachmentsFromBuffers, attachmentsFromWorktreePaths, attachmentsGitignoreBody, autoArchiveOnMergeEnabled, autoCleanupHistoryEnabled, autoCleanupOrphansEnabled, autoRenameBranchEnabled, autoRunAfterSetupEnabled, branchDisplayLabel, brightsyAccessTokenNeedsRefresh, brightsyAdapter, brightsyCloudConnectAgent, brightsyCloudConnectEnabled, brightsyConfigPath, brightsyInjectWorktreeMcpEnabled, brightsyMcpAllowedTools, brightsyMcpServerName, buildBrightsySessionSeed, buildCachedUserContent, buildClaudeStreamJsonUserMessage, buildCodeRefAttachment, buildDiffCommentAttachment, buildForkTranscriptAttachment, buildLinearIssueFilter, buildPastedTextAttachment, buildPathRefAttachment, buildReviewRequestAttachment, buildSessionSeed, buildWorkspaceScriptEnv, caffeinateHoldPath, caffeinateWhileCloudConnectEnabled, caffeinateWhileRunningEnabled, caffeinateWhileSchedulesEnabled, caffeinateWhileSlackListenEnabled, callAbleTimeTool, canReuseIdleWorktreeAgentForReview, canonicalizeRepoPath, captureLoginEnv, captureTurnBaseline, chatLinkUrl, chatTextScale, checkoutPrStackLayer, childEnvWithAppSettings, claimDesktopHost, clampGithubPrBody, clampHistoryMaxCount, clampHistoryMaxDays, classifyRunScriptPreview, classifyWorktreeColumn, classifyWorktreeListBadges, claudeAdapter, claudeChromeEnabled, claudeUsageOverLimitWindows, claudeUserSettingsPath, cleanupArchivedHistory, cleanupOrphanWorktrees, clearAgentDoneCustomSoundFile, clearBoardPins, clearHomeBoardCache, clipAgentEventForPaint, clipThinkingForStore, cloneRepoIntoSideboard, codeRefRangeLabel, codexAdapter, codexSandboxWritableRootsArgs, codexUnattendedGitConfigArgs, coerceOrchestratorAgent, collectTakenTeamSlugs, commandLooksLikeElectron, commentAbleTimeTask, commentGitHubIssue, commentLinearIssue, commitAll, compactArchiveProse, compactPartsForSummaryMessage, compactSummaryPart, computeNextRunAt, conductorBundledBinDir, conductorDbPath, confirmClaudeUsageOverLimitEnabled, confirmLand, connectBrightsyTeam, connectOptionalService, connectSlackToken, connectedOptionalServices, connectedPrSelectors, consumeComposerAttachments, contextTokens, coordinatorSystemPrompt, coordinatorTurnReminder, copyConfiguredFiles, countCacheControlBlocks, countUnpushedVsOrigin, cowboyModeEnabled, createAbleTimePkce, createAbleTimeTask, createChatTab, createEmptyThread, createExistingBranchWorktree, createGitHubIssue, createGlobalChat, createLinearIssue, createLinearPkce, createOrUpdatePr, createPrStack, createSchedule, createThread, createThreadWorktree, currentBranch, cursorAdapter, cursorSdkMessageToEvents, decodeBrightsyTarget, defaultScheduleName, deleteBranchOnPurgeEnabled, deleteSchedule, deleteThreadRecord, deriveTaskState, desktopHostPidPath, detectAgents, detectGhStack, detectLocalMergeConflicts, detectOptionalServiceClis, disconnectAbleTimeConnection, disconnectBrightsyTeam, disconnectLinear, disconnectLinearConnection, disconnectOptionalService, disconnectSlackWorkspace, discoverSkills, dropCachedPrefixOnResume, emptyPublicIntegrations, emptyRunLog, emptySetupLog, encodeBrightsyTarget, endedOnAskUser, enrichPathWithNpmGlobalBin, enrichWorkspacesWithGithub, ensureAbleTimeAccessToken, ensureAbleTimeTask, ensureAgentPath, ensureBrightsyLocalConfigFresh, ensureBrightsyOAuthClientId, ensureCloudCoordinator, ensureConnectedBrightsyTeamTokens, ensureGhPreferOrigin, ensureGlobalCoordinatorCwd, ensureManagedAccountDir, ensureReviewGuidelinesFile, ensureReviewRequestFile, ensureReviewSkillFile, ensureSlackCoordinator, ensureSlackDeviceIdentity, ensureWorkspace, estimateMessageChars, estimateOccupancyTokens, estimateThreadChars, examplePrefixedBranch, expandComposerPrompt, extractBrightsyContextSummary, extractGhErrorDetail, extractPendingPlanQuestions, extractPresentedPlan, extractiveSummary, fastForwardMainCheckoutIfSafe, fetchOriginForWorktree, fetchPrHead, finalizeParts, findAgentDoneCustomSoundPath, findConventionSetup, findInvalidCacheControlTtlOrder, findLastBrightsyContextSummary, findLiveThreadForCreate, findLiveThreadForCreateSource, findManagedAccount, findOrphanWorktrees, findProjectProfileKey, findSlackCoordinator, findThreadByRef, findThreadForStackLayer, fireSchedule, flattenTurnInput, flipLinearRelationType, foldLegacyRolesIntoNotes, followUpBehavior, forkChatTab, forkMessageSlice, forkThreadWorktree, formatAccountProfilePlaybookLine, formatArtifactDirective, formatAskUserNotifyMessage, formatBrightsyFetchError, formatClaudeExtraUsageDetail, formatClaudeUsageCompact, formatClaudeUsageFetchedAt, formatClaudeUsageOverLimitConfirm, formatClaudeUsageOverLimitWait, formatClaudeUsageReset, formatClaudeUsageResetClock, formatClaudeUsageTooltip, formatCloudTurnReply, formatDetachedJobInvoke, formatDevAccessHint, formatFetchError, formatGhLandError, formatGitAuthModeDirective, formatInjectedNoticesForTurn, formatIpcInvokeError, formatIssueToolsDirective, formatIssueToolsReminder, formatLinearDirective, formatLinearReminder, formatLongRunningDirective, formatLongRunningReminder, formatMergePrError, formatMessagesAsTranscript, formatNotifyOrchestratorPrompt, formatOptionalServicesDirective, formatOptionalServicesReminder, formatPlanQuestionAnswers, formatPlanQuestionsForChat, formatPrGateDirective, formatProcessGuideDirective, formatProjectProfilePlaybookLines, formatRateLimitResetHint, formatRenameBranchDirective, formatScheduleWhen, formatScheduledPrompt, formatSlackExternalReplyPrompt, formatSlackInboundPrompt, formatSlackRepliesForTurn, formatSlackReplyContinuePrompt, formatSlackSignedReply, formatSlackTurnReply, formatSlackWorkingText, formatTranscriptMarkdown, formatUiReminder, formatViewerContextDirective, formatViewerContextReminder, formatWorkspaceInventory, formatWorkspaceProfileSuffix, formatWorktreeDirective, formatWorktreeReminder, forwardContextUsage, forwardOccupancyTokens, fromInclusiveInputUsage, getAbleTimeAccessToken, getAbleTimeHost, getAbleTimeOrientation, getAbleTimeTask, getAdapter, getAgentRpcServer, getAgentSetupInfo, getBrightsySession, getCaffeinateHold, getClaudePlanUsage, getDefaultAgent, getDefaultEffort, getDefaultFast, getDefaultModel, getDefaultRunScript, getDiff, getDiffSummary, getGitHubIssue, getGitHubStatus, getGithubGitAuthMode, getGithubPat, getHomeBoardInputs, getIssueSource, getLinearApiKey, getLinearAuthToken, getLinearIssue, getOrchestrator, getPr, getPrChecks, getPrDetails, getPrForHeadBranch, getPrMeta, getPrStack, getRepoSetupInfo, getRunMode, getRunScript, getSchedule, getSlackWorkspace, getWorktreeDirtyStat, gh, ghHeadRef, ghPrCreateAssigneeArgs, ghRepoSelectArgs, git, gitBranchPrefixSetting, githubAgentGitEnv, githubHttpsInsteadOfEntries, githubRelationEditFlag, globalAgentCwd, groupHomeBoardWorktrees, handleSlackInbound, harnessEnvKey, hasBakedAbleTimeOAuth, hasBakedLinearOAuth, hasBakedSlackOAuth, hasConductorHook, hasConventionSetup, hasCursorWorktreeSetup, hasEnabledSchedules, hasRepoHook, hasWorkspaceHook, hasWorkspaceSettingsToml, healOrchestrationSoccerTitles, historyMaxCount, historyMaxDays, hottestClaudeWindow, httpFetch, importAgentDoneCustomSound, importConductorWorkspace, importConductorWorkspaceAsync, initPrStack, initStackFromThread, initializeGitRepository, inspectGitWorktree, installAgent, installNpmGlobalPackage, installOptionalServiceCli, interruptSlackCoordinatorForInbound, invalidateThreadListCache, invalidateThreadRecord, isAbleTimeConnected, isAbleTimeOAuthCancelled, isAbleTimeRejectedCredential, isAdoptableRunScriptRequest, isAgentDoneSound, isAskUserToolName, isBrightsyConnected, isBrightsyNdjsonLine, isChatTextScale, isCloudCoordinatorThread, isCompactToolName, isConductorBundledCli, isContextCompactDone, isContextCompactInProgress, isCowboyThread, isCursorApiKeyConfigured, isCursorAutoModel, isCursorSdkInstalled, isDefaultishSourceRef, isDesktopHostAlive, isDirty, isGhPrBodyTooLongError, isGhRateLimitError, isGlobalRepoPath, isGlobalThread, isHistoryRetentionStub, isHomeBoardThread, isImageFilePath, isInPrStack, isInboundForThisDesktop, isIncompleteTaskState, isInjectedNoticeText, isInjectedOrchMcpName, isInternalAgentStatusText, isIssueSourceConnected, isLinearConnected, isLinearNoneToken, isLinearOAuthCancelled, isManagedAccountKind, isOptionalServiceId, isOrchestratorCapableAgent, isOrchestratorThread, isOtherWorktreeListenerCwd, isPidAlive, isPlaceholderBranch, isPlanQuestionAnswersMessage, isPollWrapperToolName, isPrNotMergeableError, isPresentPlanToolName, isPrimaryCheckoutThread, isSelfWrittenRecord, isSessionQuotaLimit, isSetupLastError, isShellToolName, isSideboardScratchPath, isSkillToolName, isSlackCoordinatorThread, isSlackExternalReplyPrompt, isSlackOAuthCancelled, isStaleLastErrorDuringTurn, isSubagentToolName, isSystemStatusThinking, isTerminalTaskState, isThinkingEffort, isThisProcessDesktopHost, isThisWorktreeListenerCwd, isThreadCaffeinated, isThreadRecordFile, isUnclaimedRunScriptRequest, isUsageOnLimit, isWorkspaceScratchPath, issueAttachmentForAbleTimeTask, issueMatchesAssignee, issueSourceLabel, issueTicketFromThread, killDetachedRunTree, killListenersOnPorts, killStaleWorktreeListeners, killableListenerPids, lastAgentReply, lastAssistantMessageText, lastRequestOccupancy, latestPendingPlanQuestions, linearAuthorizationHeader, linearCycleIsActive, linearGraphql, linearOAuthAuthorizeUrl, linearOAuthCredentials, linearRelationCreateInput, linearTicketIdFromThread, linkifyChatUrls, listAbleTimeAssignedIssues, listAbleTimeProjects, listAbleTimeTasks, listAgentSetupInfo, listBoardPins, listBranchCommits, listBranches, listBrightsyAccounts, listBrightsyChatTargets, listCodexModels, listConductorWorkspaces, listConnectedBrightsyTeams, listCursorModels, listGitHubIssueCommentsSince, listGitHubIssues, listGlobalThreads, listIssues, listLinearAssignedIssues, listLinearCommentsSince, listLinearIssues, listLinearIssuesDirect, listLinearIssuesFiltered, listLinearTeamCycles, listLinearTeams, listModelsForAgent, listOpencodeModels, listPrs, listRunScripts, listSchedules, listSlackOutboundWatches, listSlackWorkspaces, listThreads, listWorkspaces, listWorktreeFiles, listWorktrees, listenerCwd, liveActivitySummary, loadAppSettings, loadBrightsyConfig, loadConductorSettings, loadHomeBoardInputs, loadRepoSettings, loadWorkspaceSettings, loadWorktreeRunPorts, localhostPreviewUrl, locksDir, loginAgent, loginEnvPrefix, loginManagedAccount, looksLikeComposerSkillExpansion, looksLikeConversationSummary, looksLikeIncompleteSkillDump, looksLikeSkillBody, lookupSoccerTeam, managedAccountConfigDir, mapAbleTimeTask, markPrReady, materializeSystemCaBundle, maxConcurrentAgents, maybeCompactContext, mcpAllowTools, mcpAllowToolsFromNames, mcpAuthWarnings, mcpStatusThinkingFromClaudeInit, mentionsPrGoal, mergeAgentGitAuthEnv, mergePr, mergePrStack, mergeSetupOutput, mergeSideboardIntoMcpServersJson, mergeUsage, messagePartParentId, messagesForCompactArchive, messagesSinceLastBrightsyContextSummary, mirrorHostConfig, moveQueuedItemToFront, needsCoordinatorAction, nextManagedAccount, nextPastedTextName, nextThinkingEffort, nonInteractiveGitProcessEnv, normalizeAbleTimeCredential, normalizeAbleTimeHost, normalizeBrightsyEndpoint, normalizeCodeSelection, normalizeLinearRelationType, normalizeManagedAccounts, normalizeParseResult, normalizeReviewLabel, normalizeServiceOrigin, normalizeThinkingEffort, normalizeThread, normalizeTurnInput, normalizeWorktreePath, notifyOrchestrator, npmGlobalNodeModules, npmGlobalPrefix, openInSystemTerminal, openPrStackLayers, openStackLayer, opencodeAdapter, optionalServiceConnected, optionalServiceSpec, orchestrationQuotaFallbackAgent, orchestrationQuotaOnLimit, orchestrationTitleNeedsSoccerNickname, orchestratorSessionPoisonedByBuiltins, originFetchBranch, originGhRepoEnv, outboundReplyFromTurn, packagedDetachedJobPath, parseAbleTimeOAuthCallbackUrl, parseChatLink, parseClaudeUsagePayload, parseCursorRunnerLine, parseDevPreview, parseDurationMs, parseForceStopMessage, parseGhStackViewJson, parseGitHubIssueNumber, parseGithubSlugFromRemoteUrl, parseMcpList, parsePlanQuestionsInput, parsePrDetailsView, parseSessionQuotaResetAt, parseSlackRelayClientMessage, parseSlackRelayServerMessage, partsToAssistantText, pastedTextStats, pendingInjectedNotices, pendingSlackExternalReplies, permissionMode, persistPendingFileAttachments, persistVaultKeyInKeychain, planFileAbs, planHistoryAgePurge, planHistoryRetention, planModeTurnInstruction, planQuestionsSignature, pnpmFilterPackage, pollSlackOutboundWatches, posixShellSingleQuote, preferredCursorCostCents, prepareTerminalCommand, prependQueuedItem, previewLand, previousCostBaseline, primaryCheckoutFromLinkedWorktree, promptMentionsBrightsy, pushBranch, readAgentDoneCustomSound, readAgentRuntimeMetadata, readExistingReviewRequestFile, readKeychainVaultKey, readPlanFile, readRunLog, readSetupLog, readSkillBody, readThread, readViewerContext, readWorktreeFile, readWorktreeFileForUpload, readWorktreeInclude, recordScheduleRun, recordSlackOutboundWatch, refreshBrightsyAccessToken, refreshGitHubAuth, registerBrightsyOAuthClient, registerPackagedUserMcpClients, releaseCaffeinateHoldForThread, releaseDesktopHost, removeBoardPin, removeManagedAccount, removeQueuedItem, removeWorkspace, removeWorktree, renameManagedAccount, repoSlug, requestOccupancy, requestReview, requireAgent, reservePort, reservePortRange, resetGhStackDetectCache, resetGithubAgentTokenMemo, resolveAbleTimeOAuthHost, resolveAccountForThread, resolveAccountProfile, resolveAccountProfileFromSettings, resolveAgentExecutable, resolveAgentGitAuthEnv, resolveClaudeExecutable, resolveCodexGitWritableRoots, resolveCommandBinarySync, resolveConductorCursorAgentId, resolveCreateFirstPrompt, resolveCursorModelId, resolveCursorSdkRoot, resolveDefaultBranch, resolveDetachedJobScript, resolveDiffBaseRef, resolveEffectiveIssueSource, resolveFilesToCopy, resolveGhAuthToken, resolveGitBranchPrefix, resolveGitDirsForLockRecovery, resolveGitHubIssueRepo, resolveGithubAgentToken, resolveGithubRepoSlug, resolveLinearCycle, resolveLinearLabel, resolveLinearProject, resolveLinearState, resolveLinearTeam, resolveLoginCommand, resolveNewOrchestratorOptions, resolveNewThreadOptions, resolveOrchChildFollowUp, resolveOrchestratorDefaults, resolvePlanMarkdown, resolvePrSelector, resolvePrSelectors, resolveProjectReviewLabel, resolveQuotaFallbackAgent, resolveRepoRoot, resolveReviewGuidelines, resolveScheduleThreadId, resolveSendFollowUp, resolveSidebarGitPrompt, resolveSlackListenMode, resolveThreadDefaults, resolveThreadEffort, resolveUsageOnLimit, resolveVaultKey, resolveViewerProfile, resolveViewerProfileForRepo, resolveWorktreeStartPoint, reviewLabelForRepo, rewriteAbleTimeError, rewriteLinearError, run, runArchiveScript, runCloudConnect, runConventionSetup, runCursorWorktreeSetup, runScriptPreview, runSetupScript, runSlackListen, runSlackRelayClient, runWorkspaceSetup, sameWorktreePath, sanitizeGitBranchPrefix, sanitizeMcpServerName, saveAbleTimeConnection, saveAppSettings, saveLinearOAuth, saveWorktreeRunPorts, scheduleNeedsCaffeinate, schedulesPath, scrubGithubTokensFromChildEnv, searchAbleTimeTasks, secureFileUnlocksWith, selectManagedAccount, setCaffeinateHold, setHttpFetchImpl, setStatus, setVaultMasterKey, settingsSourceLabel, shiftQueuedItem, shouldAttachPastedText, shouldCompactContext, shouldInjectBrightsyMcp, shouldNotifyOrchestrator, shouldRefreshReviewRequestTemplate, shouldRegisterPresentPlan, shouldRemoveWorktreeOnTeardown, shouldResetSessionForOccupancy, shouldRunHistoryCleanup, shouldRunWorktreeCleanup, shouldStampSetupLastError, showCostEnabled, sideboardHomeDir, sideboardMcpProfile, sideboardReposDir, sideboardWorkspacesDir, skillCommandFromBody, skillCommandFromInput, skillNameFromFrontmatter, slackAppLevelToken, slackArchiveUrl, slackCoordinatorSourceRef, slackListenEnabled, slackOAuthCredentials, slackOAuthResultUrl, slackRelayUrl, sliceRunLogOutput, slimMessagesForUiList, slimThreadForUiList, slugify, spawnAgentTurn, splitForCompaction, splitTurnInputForSystemPrompt, stackAgentDefaultsFrom, stackIdFrom, stackMergeReadiness, stageAbsolutePathsAsAttachments, stageBuffersAsAttachments, startAbleTimeOAuth, startAgentRpcServer, startDevServer, startLinearOAuth, startMcpServer, startOrchestration, startSlackOAuth, startSlackRelayServer, statWorktreePath, stopAgentRpcServer, stripBrightsyNdjsonNoise, stripNestedElectronEnv, submitPrStack, suggestSlug, sumUsageList, summarizeConversation, switchBrightsyAccount, switchWorktreeBranch, syncWorkspacesFromThreads, systemConfigDir, takePendingTurnAttachments, takenTeamSlugsForChatTab, takenTeamSlugsForOrchestration, taskMessageText, taskUrl, thinkingEffortBars, thinkingEffortLabel, thisProcessShouldDrainAgentQueues, threadDisplayLabel, threadFilePath, threadHasCompactedContext, threadLivePath, threadLockPath, threadMayPresentPlan, threadRequestsBrightsyMcp, threadsDir, threadsSharingWorktree, ticketSlugForBranch, toAbleTimeIssueInfo, toGitHubIssueInfo, toPublicAppSettings, toolActivityLine, toolDescription, toolDetail, toolFilePath, totalTokens, trustSystemCertificates, tryReservePort, tryReservePorts, turnCostUsdFromCursorUsage, turnCostUsdFromProviderSnapshot, updateAbleTimeTask, updateAdvancedSettings, updateAgentExecutable, updateAppEnvironment, updateBrightsySettings, updateClaudeSettings, updateCodexSettings, updateDefaultsSettings, updateGitHubIssue, updateIntegrationsSettings, updateLinearIssue, updateOpencodeSettings, updateProjectProfileSettings, updateSchedule, updateThread, usageOnLimit, userClaudeMcpConfigPath, userCursorMcpConfigPath, userMcpNamesToDisable, validateLinearApiKey, verifyAbleTimeConnection, verifyOptionalService, visibleAssistantText, visibleToolRowDetail, waitForPidExit, warmGithubAgentAuth, whichOnPath, withAddedAccount, withEventParentId, withEventsParentId, withExportedPath, withMaxOldSpaceSize, withRemovedAccount, withSelectedAccount, withThreadLock, withTurnScopedCost, workspaceSettingsSourceLabel, worktreeBoardStatus, worktreeCleanupSettings, worktreeDisplayLabel, worktreeDisplayLabelForGroup, worktreeNameFromPath, worktreeRunPortsPath, worktreeSlugForTicket, worktreesRoot, wrapReviewSkillMarkdown, writeInjectedMcpConfig, writePlanFile, writeThread, writeViewerContext, writeWorktreeFile };
|
|
8093
|
+
export { ABLETIME_MCP_PATH, ABLETIME_MCP_PM_PATH, ABLETIME_OAUTH_CALLBACK_PATH, ABLETIME_OAUTH_CANCELLED, ABLETIME_OAUTH_LOCAL_CALLBACK, ABLETIME_OAUTH_PORT, ABLETIME_OAUTH_REDIRECT, ABLETIME_OAUTH_RESOURCE, ABLETIME_OAUTH_TOKEN_PREFIX, ABLETIME_ORG_KEY_PREFIX, ABLETIME_PAT_PREFIX, ABLETIME_PM_TOOL_NAMES, AGENT_DONE_CUSTOM_SOUND_EXTENSIONS, AGENT_DONE_CUSTOM_SOUND_MAX_BYTES, AGENT_DONE_SOUNDS, AGENT_GIT_ACTIONS, AGENT_RPC_NATIVE_ENV, AGENT_RPC_PROTOCOL_VERSION, AGENT_RUNNER_MAX_OLD_SPACE_MB, ATTACHMENTS_DIR, type AbleTimeAssignedIssuesResult, type AbleTimeComment, type AbleTimeCredentialKind, type AbleTimeMcpToolName, AbleTimeOAuthCancelledError, type AbleTimeOrientation, type AbleTimePmToolName, type AbleTimeProject, type AbleTimeTask, type AbleTimeTaskRelationInput, type AbleTimeViewer, type AccountProfile, type ActiveRun, type AddBoardPinInput, type AddStackLayerInput, type AdoptInput, type AdvancedAppSettings, type AgentAdapter, type AgentDoneCustomSoundPayload, type AgentDoneSound, type AgentEvent, type AgentGitAction, type AgentKind, type AgentModelCatalog, type AgentModelInfo, type AgentRpcConnect, type AgentRuntimeMetadata, type AgentSetupActionResult, type AgentSetupInfo, type AgentSetupKind, type AgentStatus, type AgentTurnInput, type AnthropicCacheControl, type AppSettings, type ApplyIntoMainResult, type AttachCommand, type Autonomy, BAKED_ABLETIME_OAUTH_CLIENT_ID, BAKED_REMOTE_RELAY_URL, BAKED_SLACK_RELAY_URL, BASE_ALLOWED_TOOLS, BRIGHTSY_MCP_ALLOWED_TOOLS, BRIGHTSY_OAUTH_CLIENT_ID, BRIGHTSY_OAUTH_REDIRECT, BRIGHTSY_SUMMARIZE_CONTEXT_TOOL, BUNDLED_LONG_RUNNING_PATH, BUNDLED_SKILL_PREFIX, type BoardPin, type BranchInfo, type BrightsyAccount, type BrightsyChatTarget, type BrightsyChatTargets, type BrightsyCloudConnectAgent, type BrightsyHarnessSettings, type BrightsySession, BrightsySideboardApi, type BrightsyTeamTargets, CHARS_PER_CONTEXT_TOKEN, CHAT_LINK_PREFIX, CHAT_TEXT_SCALES, CHAT_TEXT_SCALE_DEFAULT, CLAUDE_CHROME_ALLOWED_TOOLS, CLAUDE_MODEL_CATALOG, CLAUDE_PRINT_BG_WAIT_CEILING_MS, CLAUDE_SUMMARY_TIMEOUT_MS, CLI_DIR, CLOUD_COORDINATOR_BUSY_REPLY, CLOUD_COORDINATOR_CANCELED_REPLY, CLOUD_COORDINATOR_INPUT_REQUIRED_REPLY, CLOUD_COORDINATOR_STOPPED_REPLY, CLOUD_COORDINATOR_TIMEOUT_REPLY, CLOUD_ORCHESTRATOR_GOAL, CONTEXT_COMPACT_CHARS, CONTEXT_KEEP_RECENT_CHARS, CONTEXT_KEEP_RECENT_MESSAGES, CONTEXT_MIN_MESSAGES, CONTEXT_REVIEW_PATH, CONVENTION_SETUP_RELPATHS, COORDINATOR_TOOL_PLAYBOOK, CURSOR_SDK_INSTALL_HINT, type CaffeinateHoldState, type ChatTextScale, type ClaudeExtraUsage, type ClaudeHarnessSettings, type ClaudePlanUsage, type ClaudeUsageWindow, type ClaudeUsageWindowId, type CleanupOrphansResult, type CliAgentKind, type CliExecutableSettings, type CloudConnectAgent, type CloudConnectOptions, type CloudConnectStatus, type CodeLineRange, type CodeRefInput, type CompactResult, type CompactThresholds, type ComposerFileBuffer, type ConductorSettings, type ConductorWorkspace, type ConnectedBrightsyTeamInfo, type ConventionSetupFile, type CowboyThreadFields, type CreateChatTabInput, type CreateGlobalChatOpts, type CreateScheduledTaskInput, type CreateStackInput, type CreateThreadInput, type CreateWorktreeResult, type CursorAgentUsageSnapshot, type CursorModelInfo, type CursorSdkStreamMessage, type CursorTurnRequest, type CursorUsageCost, type CursorWorktreesConfig, DEFAULT_ABLETIME_HOST, DEFAULT_RUN_LOG_TAIL_CHARS, DEFAULT_WORKTREE_SORT, DETACHED_JOBS_DIR, type DefaultsAppSettings, type DefaultsSettingsPatch, type DevAccessRun, type DevPreview, type DevServerHandle, type DiffCommentInput, type DiffCommentLine, type DiffCommit, type DiffFile, type DiffResult, type DiffScope, type DiffScopeStat, EMPTY_MANAGED_ACCOUNTS, type EnsuredReviewGuidelines, type ExpandResult, FAMOUS_SOCCER_TEAMS, FOLLOW_UP_BEHAVIORS, type FastForwardMainResult, type FollowUpBehavior, type ForkChatTabInput, type ForkThreadWorktreeInput, type FormatGhLandErrorOptions, GITHUB_GIT_AUTH_MODES, GITHUB_PR_BODY_MAX_CHARS, GITHUB_PR_BODY_SAFE_CHARS, GLOBAL_WORKSPACE_ID, type GetDiffOptions, type GhStackStatus, type GitHubIssue, type GitHubIssueComment, type GitHubIssueRelationInput, type GitHubStatus, type GitWorktreeStatus, type GithubGitAuthMode, HARNESS_ENV_KEYS, HISTORY_DISCARDED_TEXT, HISTORY_MAX_COUNT_DEFAULT, HISTORY_MAX_COUNT_MAX, HISTORY_MAX_COUNT_MIN, HISTORY_MAX_DAYS_DEFAULT, HISTORY_MAX_DAYS_MAX, HOME_BOARD_CACHE_TTL_MS, type HarnessId, type HistoryCleanupResult, type HistoryRetentionPlan, type HomeBoardLoaded, type HomeBoardRemoteData, IMPLIED_TICKET_RESOLVE_PROMPT, ISSUE_SOURCE_LABELS, type ImportedAgentDoneSound, type InitStackFromThreadInput, type IntegrationsSettings, type IpcApi, type IssueActivityComment, type IssueAssigneeFilter, type IssueCycleInfo, type IssueInfo, type IssueSource, LEGACY_ATTACHMENTS_DIR, LEGACY_DETACHED_JOBS_DIR, LEGACY_PLAN_FILE_REL, LEGACY_REVIEW_REQUEST_PATH, LEGACY_THREAD_LINK_PREFIX, LIGHT_RECONCILE_THROTTLE_MS, LINEAR_OAUTH_CANCELLED, LINEAR_OAUTH_PORT, LINEAR_OAUTH_REDIRECT, LINEAR_OAUTH_SCOPES, LIVE_TURN_SPAWN_GRACE_MS, LONG_RUNNING_SKILL_COMMAND, type LandPreview, type LandResult, type LinearAssignedIssuesResult, type LinearAssigneeFilter, type LinearComment, type LinearCycle, type LinearIssue, type LinearIssueAttachment, type LinearIssueComment, type LinearIssueRef, type LinearIssueRelation, type LinearIssueRelationInput, type LinearNamedRef, LinearOAuthCancelledError, type LinearProjectRef, type LinearTeam, type LinearTeamsResult, type LinearWorkflowState, type ListIssuesOptions, type ListIssuesResult, type ListPrsOptions, MAX_ANTHROPIC_CACHE_CONTROL_BLOCKS, type ManagedAccount, type ManagedAccountKind, type ManagedAccountsState, type McpServerStatus, type MessagePart, type NextManagedAccount, type NotifyOrchestratorReason, type NotifyOrchestratorResult, OPTIONAL_SERVICES, OPTIONAL_SERVICE_IDS, ORCHESTRATOR_AGENT_KINDS, type OpenPrStackLayersInput, type OpenStackLayerInput, type OpenStackLayerResult, type OptionalServiceCliStatus, type OptionalServiceId, type OptionalServiceSpec, type OrchestrationQuotaOnLimit, Orchestrator, type OrchestratorAgentKind, type OrchestratorDefaultsSettings, type OrchestratorEvent, type OrchestratorRuntime, type OrphanWorktree, type OutboundTurnCopy, type OutboundTurnSnapshot, PASTE_ATTACH_MIN_CHARS, PASTE_ATTACH_MIN_LINES, PLAN_FILE_NAME, PLAN_FILE_REL, PLAN_MODE_INSTRUCTION, PLAN_MODE_OFF_INSTRUCTION, PLAN_QUESTION_ANSWERS_PREFIX, PORT_RANGE_SIZE, PRESENT_PLAN_REQUIRES_PLAN_MODE, PRESENT_PLAN_TOOL_DESCRIPTION, PROFILE_NOTES_MAX, PR_DETAILS_JSON_FIELDS, type PathRefInput, type PendingPlanQuestions, type PlanQuestion, type PlanQuestionAnswer, type PlanQuestionOption, type PlanToolPartLike, type PortReservation, type PrActor, type PrCheckRun, type PrCommentInfo, type PrCommitInfo, type PrDetails, type PrInfo, type PrMeta, type PrReviewInfo, type PrStack, type PrStackLayer, type PresentedPlan, type ProjectProfileSettings, type PublicAppSettings, type PublicIntegrationsSettings, READ_ALOUD_RATE_DEFAULT, READ_ALOUD_RATE_MAX, READ_ALOUD_RATE_MIN, REMOTE_RELAY_PATH, REPO_REVIEW_NAME, REPO_REVIEW_PATH, REVIEW_LABEL_MAX, REVIEW_REQUEST_NAME, REVIEW_REQUEST_PATH, REVIEW_REQUEST_PREFILL, REVIEW_REQUEST_TEMPLATE, REVIEW_SKILL_NAME, REVIEW_SKILL_PATH, RUN_PORTS_REL, RUN_SCRIPT_DESKTOP_ADOPT_MS, type ReadAloudSettingsFields, type RelayServerHandle, type RelayServerOptions, type RemoteAskQuestion, type RemoteHostClientOptions, type RemoteHostHandle, type RemoteHostStatus, RemoteHub, type RemoteServerMessage, type RepoSettings, type RepoSetupInfo, type RequestReviewResult, type ReservePortRangeOpts, type ResolvedAccountProfile, type ResolvedReviewGuidelines, type ResolvedThreadDefaults, type ResolvedViewerProfile, type ReviewGuidelinesSource, type RunLogSnapshot, type RunMode, type RunScript, type RunScriptPreviewInput, type RunScriptRequest, SEED_FULL_TOOL_MESSAGES, SEED_MAX_CHARS, SESSION_RESET_OCCUPANCY_TOKENS, SIDEBOARD_FORCE_STOP, SIDEBOARD_MCP_ALLOWED_TOOLS, SIDEBOARD_MCP_PROFILE_ENV, SLACK_LISTEN_INPUT_REQUIRED_REPLY, SLACK_LISTEN_STOPPED_REPLY, SLACK_LISTEN_TIMEOUT_REPLY, SLACK_OAUTH_CANCELLED, SLACK_OAUTH_REDIRECT, SLACK_PROGRESS_DELAY_MS, SLACK_PROGRESS_EDIT_MS, SLACK_REPLY_FORMATTING, SLACK_SEEN_REACTION, STDERR_EVENT_MAX_CHARS, STDOUT_EVENT_MAX_CHARS, type ScheduleCreatedBy, type ScheduleWhen, type ScheduledTask, type ScriptHandle, type SessionSeedOptions, type SetupLogSnapshot, type SetupRunResult, type SidebarGitAction, type SideboardMcpProfile, type SkillInfo, type SlackInboundMessage, type SlackListenOptions, type SlackListenStatus, SlackOAuthCancelledError, type SlackOutboundReply, type SlackOutboundWatch, type SlackRelayClientMessage, type SlackRelayClientOptions, SlackRelayHub, type SlackRelayServerMessage, type SlackWorkspaceInfo, type SourceType, type SpawnTurnHandle, type SummarizeResult, THINKING_EFFORTS, THINKING_PART_MAX_CHARS, type TaskState, type TeamName, type ThinkingEffort, type Thread, type ThreadAttachment, type ThreadMessage, type ThreadOptionsPatch, type ThreadStatus, type TokenUsage, type ToolPartLike, type TranscriptToolDetail, type TurnCommand, USAGE_ON_LIMIT_VALUES, type UpdateScheduledTaskPatch, type UsageOnLimit, type UsageScope, type ViewerContextWriteResult, type ViewerProfile, WORKTREE_ABLETIME_MCP_TOOLS, WORKTREE_GITHUB_MCP_TOOLS, WORKTREE_LINEAR_MCP_TOOLS, WORKTREE_MCP_TOOLS, type Workspace, type WorkspaceInventoryEntry, type WorkspaceScriptEnvOpts, type WorktreeDirtyStat, type WorktreeListBadge, type WorktreeOpener, type WorktreeOpenerId, type WorktreeSortMode, type WorktreeStatKind, ableTimeCredentialKind, ableTimeDependencyTarget, ableTimeOAuthAuthorizeUrl, ableTimeOAuthBouncePage, ableTimeOAuthClientId, ableTimeOAuthLocalBounceUrl, ableTimeOAuthRedirectUri, ableTimeOAuthResource, ableTimeUsesRest, abletimeMcpRequest, abletimeMcpUrl, abletimeToolUsesPm, accountIdToPin, ackSlackInboundSeen, activeAccountId, activeRunPreview, addBoardPin, addManagedAccount, addPrStackLayer, addStackLayerFromThread, addWorkspace, adoptThread, agentDoneCustomSoundMime, agentDoneSound, agentDoneSoundsDir, agentGitPrompt, agentRpcConnectFromMetadata, alignQueueAttachments, allAdapters, allocatePort, allocatePortRange, allocateTeamName, allocateTeamSlug, annotateDevAccessRuns, appDataDir, appSettingsPath, appendCompactedMessages, appendIndexedGitConfig, appendMessage, appendQueuedItem, applyAgentEvent, applyAgentRunnerHeapEnv, applyAppEnvironment, applyCompaction, applyForwardOccupancy, applyGithubGitAuthEnv, applyManagedAccountEnv, applyPromptCacheTtlEnv, applySystemCaEnv, applyThreadIntoMain, applyTurnUsage, armSchedules, assertAbleTimeCredential, assertAbleTimeMcpCredential, assertOrchestratorCapableAgent, attachmentFromAbsolutePath, attachmentsFromBuffers, attachmentsFromWorktreePaths, attachmentsGitignoreBody, autoArchiveOnMergeEnabled, autoCleanupHistoryEnabled, autoCleanupOrphansEnabled, autoRenameBranchEnabled, autoRunAfterSetupEnabled, branchDisplayLabel, brightsyAccessTokenNeedsRefresh, brightsyAdapter, brightsyCloudConnectAgent, brightsyCloudConnectEnabled, brightsyConfigPath, brightsyInjectWorktreeMcpEnabled, brightsyMcpAllowedTools, brightsyMcpServerName, buildBrightsySessionSeed, buildCachedUserContent, buildClaudeStreamJsonUserMessage, buildCodeRefAttachment, buildDiffCommentAttachment, buildForkTranscriptAttachment, buildLinearIssueFilter, buildPastedTextAttachment, buildPathRefAttachment, buildReviewRequestAttachment, buildSessionSeed, buildWorkspaceScriptEnv, caffeinateHoldPath, caffeinateWhileCloudConnectEnabled, caffeinateWhileRunningEnabled, caffeinateWhileSchedulesEnabled, caffeinateWhileSlackListenEnabled, callAbleTimeTool, canReuseIdleWorktreeAgentForReview, canonicalizeRepoPath, captureLoginEnv, captureTurnBaseline, chatLinkUrl, chatTextScale, checkoutPrStackLayer, childEnvWithAppSettings, claimDesktopHost, clampGithubPrBody, clampHistoryMaxCount, clampHistoryMaxDays, clampReadAloudRate, classifyRunScriptPreview, classifyWorktreeColumn, classifyWorktreeListBadges, claudeAdapter, claudeChromeEnabled, claudeUsageOverLimitWindows, claudeUserSettingsPath, cleanupArchivedHistory, cleanupOrphanWorktrees, clearAgentDoneCustomSoundFile, clearBoardPins, clearHomeBoardCache, clipAgentEventForPaint, clipThinkingForStore, cloneRepoIntoSideboard, codeRefRangeLabel, codexAdapter, codexSandboxWritableRootsArgs, codexUnattendedGitConfigArgs, coerceOrchestratorAgent, collectTakenTeamSlugs, commandLooksLikeElectron, commentAbleTimeTask, commentGitHubIssue, commentLinearIssue, commitAll, compactArchiveProse, compactPartsForSummaryMessage, compactSummaryPart, computeNextRunAt, conductorBundledBinDir, conductorDbPath, confirmClaudeUsageOverLimitEnabled, confirmLand, connectBrightsyTeam, connectOptionalService, connectSlackToken, connectedOptionalServices, connectedPrSelectors, consumeComposerAttachments, contextTokens, coordinatorSystemPrompt, coordinatorTurnReminder, copyConfiguredFiles, copyReadAloudFromUnknown, countCacheControlBlocks, countUnpushedVsOrigin, cowboyModeEnabled, createAbleTimePkce, createAbleTimeTask, createChatTab, createEmptyThread, createExistingBranchWorktree, createGitHubIssue, createGlobalChat, createLinearIssue, createLinearPkce, createOrUpdatePr, createPrStack, createSchedule, createThread, createThreadWorktree, currentBranch, cursorAdapter, cursorSdkMessageToEvents, decodeBrightsyTarget, defaultScheduleName, deleteBranchOnPurgeEnabled, deleteSchedule, deleteThreadRecord, deriveTaskState, desktopHostPidPath, detectAgents, detectGhStack, detectLocalMergeConflicts, detectOptionalServiceClis, disconnectAbleTimeConnection, disconnectBrightsyTeam, disconnectLinear, disconnectLinearConnection, disconnectOptionalService, disconnectSlackWorkspace, discoverSkills, downloadAbleTimeAttachment, downloadGitHubIssueAttachment, downloadLinearAttachment, dropCachedPrefixOnResume, emptyPublicIntegrations, emptyRunLog, emptySetupLog, encodeBrightsyTarget, endedOnAskUser, enrichPathWithNpmGlobalBin, enrichWorkspacesWithGithub, ensureAbleTimeAccessToken, ensureAbleTimeTask, ensureAgentPath, ensureBrightsyLocalConfigFresh, ensureBrightsyOAuthClientId, ensureCloudCoordinator, ensureConnectedBrightsyTeamTokens, ensureGhPreferOrigin, ensureGlobalCoordinatorCwd, ensureManagedAccountDir, ensureRemoteCoordinator, ensureRemoteHostCredentials, ensureReviewGuidelinesFile, ensureReviewRequestFile, ensureReviewSkillFile, ensureSlackCoordinator, ensureSlackDeviceIdentity, ensureWorkspace, estimateMessageChars, estimateOccupancyTokens, estimateThreadChars, examplePrefixedBranch, expandComposerPrompt, extractBrightsyContextSummary, extractGhErrorDetail, extractPendingPlanQuestions, extractPresentedPlan, extractiveSummary, fastForwardMainCheckoutIfSafe, fetchOriginForWorktree, fetchPrHead, finalizeParts, findAgentDoneCustomSoundPath, findConventionSetup, findInvalidCacheControlTtlOrder, findLastBrightsyContextSummary, findLiveThreadForCreate, findLiveThreadForCreateSource, findManagedAccount, findOrphanWorktrees, findProjectProfileKey, findRemoteCoordinator, findSlackCoordinator, findThreadByRef, findThreadForStackLayer, fireSchedule, flattenTurnInput, flipLinearRelationType, foldLegacyRolesIntoNotes, followUpBehavior, forkChatTab, forkMessageSlice, forkThreadWorktree, formatAccountProfilePlaybookLine, formatArtifactDirective, formatAskUserNotifyMessage, formatBrightsyFetchError, formatClaudeExtraUsageDetail, formatClaudeUsageCompact, formatClaudeUsageFetchedAt, formatClaudeUsageOverLimitConfirm, formatClaudeUsageOverLimitWait, formatClaudeUsageReset, formatClaudeUsageResetClock, formatClaudeUsageTooltip, formatCloudTurnReply, formatDetachedJobInvoke, formatDevAccessHint, formatFetchError, formatGhLandError, formatGitAuthModeDirective, formatInjectedNoticesForTurn, formatIpcInvokeError, formatIssueToolsDirective, formatIssueToolsReminder, formatLinearDirective, formatLinearReminder, formatLongRunningDirective, formatLongRunningReminder, formatMergePrError, formatMessagesAsTranscript, formatNotifyOrchestratorPrompt, formatOptionalServicesDirective, formatOptionalServicesReminder, formatPlanQuestionAnswers, formatPlanQuestionsForChat, formatPrGateDirective, formatProcessGuideDirective, formatProjectProfilePlaybookLines, formatRateLimitResetHint, formatRemotePrompt, formatRenameBranchDirective, formatScheduleWhen, formatScheduledPrompt, formatSlackExternalReplyPrompt, formatSlackInboundPrompt, formatSlackRepliesForTurn, formatSlackReplyContinuePrompt, formatSlackSignedReply, formatSlackTurnReply, formatSlackWorkingText, formatTranscriptMarkdown, formatUiReminder, formatViewerContextDirective, formatViewerContextReminder, formatWorkspaceInventory, formatWorkspaceProfileSuffix, formatWorktreeDirective, formatWorktreeReminder, forwardContextUsage, forwardOccupancyTokens, fromInclusiveInputUsage, getAbleTimeAccessToken, getAbleTimeHost, getAbleTimeOrientation, getAbleTimeTask, getAdapter, getAgentRpcServer, getAgentSetupInfo, getBrightsySession, getCaffeinateHold, getClaudePlanUsage, getDefaultAgent, getDefaultEffort, getDefaultFast, getDefaultModel, getDefaultRunScript, getDiff, getDiffSummary, getGitHubIssue, getGitHubStatus, getGithubGitAuthMode, getGithubPat, getHomeBoardInputs, getIssueSource, getLinearApiKey, getLinearAuthToken, getLinearIssue, getOrchestrator, getPr, getPrChecks, getPrDetails, getPrForHeadBranch, getPrMeta, getPrStack, getRepoSetupInfo, getRunMode, getRunScript, getSchedule, getSlackWorkspace, getWorktreeDirtyStat, gh, ghHeadRef, ghPrCreateAssigneeArgs, ghRepoSelectArgs, git, gitBranchPrefixSetting, githubAgentGitEnv, githubHttpsInsteadOfEntries, githubRelationEditFlag, globalAgentCwd, groupHomeBoardWorktrees, handleRemoteInbound, handleSlackInbound, harnessEnvKey, hasBakedAbleTimeOAuth, hasBakedLinearOAuth, hasBakedSlackOAuth, hasConductorHook, hasConventionSetup, hasCursorWorktreeSetup, hasEnabledSchedules, hasRepoHook, hasWorkspaceHook, hasWorkspaceSettingsToml, healOrchestrationSoccerTitles, historyMaxCount, historyMaxDays, hottestClaudeWindow, httpFetch, importAgentDoneCustomSound, importConductorWorkspace, importConductorWorkspaceAsync, initPrStack, initStackFromThread, initializeGitRepository, inspectGitWorktree, installAgent, installNpmGlobalPackage, installOptionalServiceCli, interruptSlackCoordinatorForInbound, invalidateThreadListCache, invalidateThreadRecord, isAbleTimeConnected, isAbleTimeOAuthCancelled, isAbleTimeRejectedCredential, isAdoptableRunScriptRequest, isAgentDoneSound, isAskUserToolName, isBrightsyConnected, isBrightsyNdjsonLine, isChatTextScale, isCloudCoordinatorThread, isCompactToolName, isConductorBundledCli, isContextCompactDone, isContextCompactInProgress, isCowboyThread, isCursorApiKeyConfigured, isCursorAutoModel, isCursorSdkInstalled, isDefaultishSourceRef, isDesktopHostAlive, isDirty, isGhPrBodyTooLongError, isGhRateLimitError, isGlobalRepoPath, isGlobalThread, isHistoryRetentionStub, isHomeBoardThread, isImageFilePath, isInPrStack, isInboundForThisDesktop, isIncompleteTaskState, isInjectedNoticeText, isInjectedOrchMcpName, isInternalAgentStatusText, isIssueSourceConnected, isLinearConnected, isLinearNoneToken, isLinearOAuthCancelled, isManagedAccountKind, isOptionalServiceId, isOrchestratorCapableAgent, isOrchestratorThread, isOtherWorktreeListenerCwd, isPidAlive, isPlaceholderBranch, isPlanQuestionAnswersMessage, isPollWrapperToolName, isPrNotMergeableError, isPresentPlanToolName, isPrimaryCheckoutThread, isRemoteStopCommand, isSelfWrittenRecord, isSessionQuotaLimit, isSetupLastError, isShellToolName, isSideboardScratchPath, isSkillToolName, isSlackCoordinatorThread, isSlackExternalReplyPrompt, isSlackOAuthCancelled, isStaleLastErrorDuringTurn, isSubagentToolName, isSystemStatusThinking, isTerminalTaskState, isThinkingEffort, isThisProcessDesktopHost, isThisWorktreeListenerCwd, isThreadCaffeinated, isThreadRecordFile, isUnclaimedRunScriptRequest, isUsageOnLimit, isWorkspaceScratchPath, issueAttachmentForAbleTimeTask, issueMatchesAssignee, issueSourceLabel, issueTicketFromThread, killDetachedRunTree, killListenersOnPorts, killStaleWorktreeListeners, killableListenerPids, lastAgentReply, lastAssistantMessageText, lastRequestOccupancy, latestPendingPlanQuestions, linearAuthorizationHeader, linearCycleIsActive, linearGraphql, linearOAuthAuthorizeUrl, linearOAuthCredentials, linearRelationCreateInput, linearTicketIdFromThread, linkifyChatUrls, listAbleTimeAssignedIssues, listAbleTimeProjects, listAbleTimeTasks, listAgentSetupInfo, listBoardPins, listBranchCommits, listBranches, listBrightsyAccounts, listBrightsyChatTargets, listCodexModels, listConductorWorkspaces, listConnectedBrightsyTeams, listCursorModels, listGitHubIssueCommentsSince, listGitHubIssues, listGlobalThreads, listIssues, listLinearAssignedIssues, listLinearCommentsSince, listLinearIssues, listLinearIssuesDirect, listLinearIssuesFiltered, listLinearTeamCycles, listLinearTeams, listModelsForAgent, listOpencodeModels, listPrs, listRunScripts, listSchedules, listSlackOutboundWatches, listSlackWorkspaces, listThreads, listWorkspaces, listWorktreeFiles, listWorktrees, listenerCwd, liveActivitySummary, loadAppSettings, loadBrightsyConfig, loadConductorSettings, loadHomeBoardInputs, loadRepoSettings, loadWorkspaceSettings, loadWorktreeRunPorts, localhostPreviewUrl, locksDir, loginAgent, loginEnvPrefix, loginManagedAccount, looksLikeComposerSkillExpansion, looksLikeConversationSummary, looksLikeIncompleteSkillDump, looksLikeSkillBody, lookupSoccerTeam, managedAccountConfigDir, mapAbleTimeTask, markPrReady, materializeSystemCaBundle, maxConcurrentAgents, maybeCompactContext, mcpAllowTools, mcpAllowToolsFromNames, mcpAuthWarnings, mcpStatusThinkingFromClaudeInit, mentionsPrGoal, mergeAgentGitAuthEnv, mergePr, mergePrStack, mergeSetupOutput, mergeSideboardIntoMcpServersJson, mergeUsage, messagePartParentId, messagesForCompactArchive, messagesSinceLastBrightsyContextSummary, mirrorHostConfig, moveQueuedItemToFront, needsCoordinatorAction, nextManagedAccount, nextPastedTextName, nextThinkingEffort, nonInteractiveGitProcessEnv, normalizeAbleTimeCredential, normalizeAbleTimeHost, normalizeBrightsyEndpoint, normalizeCodeSelection, normalizeLinearRelationType, normalizeManagedAccounts, normalizeParseResult, normalizeReviewLabel, normalizeServiceOrigin, normalizeThinkingEffort, normalizeThread, normalizeTurnInput, normalizeWorktreePath, notifyOrchestrator, npmGlobalNodeModules, npmGlobalPrefix, openInSystemTerminal, openPrStackLayers, openStackLayer, opencodeAdapter, optionalServiceConnected, optionalServiceSpec, orchestrationQuotaFallbackAgent, orchestrationQuotaOnLimit, orchestrationTitleNeedsSoccerNickname, orchestratorSessionPoisonedByBuiltins, originFetchBranch, originGhRepoEnv, outboundReplyFromTurn, packagedDetachedJobPath, parseAbleTimeOAuthCallbackUrl, parseChatLink, parseClaudeUsagePayload, parseCursorRunnerLine, parseDevPreview, parseDurationMs, parseForceStopMessage, parseGhStackViewJson, parseGitHubIssueNumber, parseGithubSlugFromRemoteUrl, parseMcpList, parsePlanQuestionsInput, parsePrDetailsView, parseSessionQuotaResetAt, parseSlackRelayClientMessage, parseSlackRelayServerMessage, partsToAssistantText, pastedTextStats, patchReadAloudSettings, pendingInjectedNotices, pendingSlackExternalReplies, permissionMode, persistPendingFileAttachments, persistVaultKeyInKeychain, planFileAbs, planHistoryAgePurge, planHistoryRetention, planModeTurnInstruction, planQuestionsSignature, pnpmFilterPackage, pollSlackOutboundWatches, posixShellSingleQuote, preferredCursorCostCents, prepareTerminalCommand, prependQueuedItem, previewLand, previousCostBaseline, primaryCheckoutFromLinkedWorktree, promptMentionsBrightsy, pushBranch, readAgentDoneCustomSound, readAgentRuntimeMetadata, readExistingReviewRequestFile, readKeychainVaultKey, readPlanFile, readRunLog, readSetupLog, readSkillBody, readThread, readViewerContext, readWorktreeFile, readWorktreeFileForUpload, readWorktreeInclude, recordScheduleRun, recordSlackOutboundWatch, refreshBrightsyAccessToken, refreshGitHubAuth, registerBrightsyOAuthClient, registerPackagedUserMcpClients, releaseCaffeinateHoldForThread, releaseDesktopHost, remoteCoordinatorSourceRef, remoteRelayUrl, removeBoardPin, removeManagedAccount, removeQueuedItem, removeWorkspace, removeWorktree, renameManagedAccount, repoSlug, requestOccupancy, requestReview, requireAgent, reservePort, reservePortRange, resetGhStackDetectCache, resetGithubAgentTokenMemo, resolveAbleTimeOAuthHost, resolveAccountForThread, resolveAccountProfile, resolveAccountProfileFromSettings, resolveAgentExecutable, resolveAgentGitAuthEnv, resolveClaudeExecutable, resolveCodexGitWritableRoots, resolveCommandBinarySync, resolveConductorCursorAgentId, resolveCreateFirstPrompt, resolveCursorModelId, resolveCursorSdkRoot, resolveDefaultBranch, resolveDetachedJobScript, resolveDiffBaseRef, resolveEffectiveIssueSource, resolveFilesToCopy, resolveGhAuthToken, resolveGitBranchPrefix, resolveGitDirsForLockRecovery, resolveGitHubIssueRepo, resolveGithubAgentToken, resolveGithubRepoSlug, resolveLinearCycle, resolveLinearLabel, resolveLinearProject, resolveLinearState, resolveLinearTeam, resolveLoginCommand, resolveNewOrchestratorOptions, resolveNewThreadOptions, resolveOrchChildFollowUp, resolveOrchestratorDefaults, resolvePlanMarkdown, resolvePrSelector, resolvePrSelectors, resolveProjectReviewLabel, resolveQuotaFallbackAgent, resolveRepoRoot, resolveReviewGuidelines, resolveScheduleThreadId, resolveSendFollowUp, resolveSidebarGitPrompt, resolveSlackListenMode, resolveThreadDefaults, resolveThreadEffort, resolveUsageOnLimit, resolveVaultKey, resolveViewerProfile, resolveViewerProfileForRepo, resolveWorktreeStartPoint, reviewLabelForRepo, rewriteAbleTimeError, rewriteLinearError, run, runArchiveScript, runCloudConnect, runConventionSetup, runCursorWorktreeSetup, runRemoteHost, runScriptPreview, runSetupScript, runSlackListen, runSlackRelayClient, runWorkspaceSetup, sameWorktreePath, sanitizeGitBranchPrefix, sanitizeMcpServerName, sanitizeReadAloudVoiceURI, saveAbleTimeConnection, saveAppSettings, saveLinearOAuth, saveWorktreeRunPorts, scheduleNeedsCaffeinate, schedulesPath, scrubGithubTokensFromChildEnv, searchAbleTimeTasks, secureFileUnlocksWith, selectManagedAccount, setCaffeinateHold, setHttpFetchImpl, setStatus, setVaultMasterKey, settingsSourceLabel, shiftQueuedItem, shouldAttachPastedText, shouldCompactContext, shouldInjectBrightsyMcp, shouldNotifyOrchestrator, shouldRefreshReviewRequestTemplate, shouldRegisterPresentPlan, shouldRemoveWorktreeOnTeardown, shouldResetSessionForOccupancy, shouldRunHistoryCleanup, shouldRunWorktreeCleanup, shouldStampSetupLastError, showCostEnabled, sideboardHomeDir, sideboardMcpProfile, sideboardReposDir, sideboardWorkspacesDir, skillCommandFromBody, skillCommandFromInput, skillNameFromFrontmatter, slackAppLevelToken, slackArchiveUrl, slackCoordinatorSourceRef, slackListenEnabled, slackOAuthCredentials, slackOAuthResultUrl, slackRelayUrl, sliceRunLogOutput, slimMessagesForUiList, slimThreadForUiList, slugify, spawnAgentTurn, splitForCompaction, splitTurnInputForSystemPrompt, stackAgentDefaultsFrom, stackIdFrom, stackMergeReadiness, stageAbsolutePathsAsAttachments, stageBuffersAsAttachments, startAbleTimeOAuth, startAgentRpcServer, startDevServer, startLinearOAuth, startMcpServer, startOrchestration, startRelayServer, startSlackOAuth, statWorktreePath, stopAgentRpcServer, stripBrightsyNdjsonNoise, stripNestedElectronEnv, submitPrStack, suggestSlug, sumUsageList, summarizeConversation, switchBrightsyAccount, switchWorktreeBranch, syncWorkspacesFromThreads, systemConfigDir, takePendingTurnAttachments, takenTeamSlugsForChatTab, takenTeamSlugsForOrchestration, taskMessageText, taskUrl, thinkingEffortBars, thinkingEffortLabel, thisProcessShouldDrainAgentQueues, threadDisplayLabel, threadFilePath, threadHasCompactedContext, threadLivePath, threadLockPath, threadMayPresentPlan, threadRequestsBrightsyMcp, threadsDir, threadsSharingWorktree, ticketSlugForBranch, toAbleTimeIssueInfo, toGitHubIssueInfo, toPublicAppSettings, toolActivityLine, toolDescription, toolDetail, toolFilePath, totalTokens, trustSystemCertificates, tryReservePort, tryReservePorts, turnCostUsdFromCursorUsage, turnCostUsdFromProviderSnapshot, updateAbleTimeTask, updateAdvancedSettings, updateAgentExecutable, updateAppEnvironment, updateBrightsySettings, updateClaudeSettings, updateCodexSettings, updateDefaultsSettings, updateGitHubIssue, updateIntegrationsSettings, updateLinearIssue, updateOpencodeSettings, updateProjectProfileSettings, updateSchedule, updateThread, usageOnLimit, userClaudeMcpConfigPath, userCursorMcpConfigPath, userMcpNamesToDisable, validateLinearApiKey, verifyAbleTimeConnection, verifyOptionalService, visibleAssistantText, visibleToolRowDetail, waitForPidExit, warmGithubAgentAuth, whichOnPath, withAddedAccount, withEventParentId, withEventsParentId, withExportedPath, withMaxOldSpaceSize, withRemovedAccount, withSelectedAccount, withThreadLock, withTurnScopedCost, workspaceSettingsSourceLabel, worktreeBoardStatus, worktreeCleanupSettings, worktreeDisplayLabel, worktreeDisplayLabelForGroup, worktreeNameFromPath, worktreeRunPortsPath, worktreeSlugForTicket, worktreesRoot, wrapReviewSkillMarkdown, writeInjectedMcpConfig, writePlanFile, writeThread, writeViewerContext, writeWorktreeFile };
|