@sideboard-ai/core 0.1.314 → 0.1.315
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-SJUVZVRU.js → abletime-QK3KMRQD.js} +4 -4
- package/dist/{abletime-T5YSJLNZ.js → abletime-QQZWYJXC.js} +4 -4
- package/dist/{abletime-oauth-73TFJME4.js → abletime-oauth-CAHTMB4V.js} +3 -3
- package/dist/{abletime-oauth-2TOOZ2FN.js → abletime-oauth-I2RRPVKT.js} +3 -3
- package/dist/{abletime-rest-PNUGH2FS.js → abletime-rest-5V4KGMSY.js} +3 -3
- package/dist/{abletime-rest-5TDRIFEV.js → abletime-rest-W5TLQK7C.js} +3 -3
- package/dist/{agents-KIC6CNXF.js → agents-5XJ7EHGU.js} +6 -6
- package/dist/{agents-S7VBS5JL.js → agents-Y3M3EKLY.js} +6 -6
- package/dist/{app-settings-CC65VPBL.js → app-settings-CZVFMOI5.js} +3 -1
- package/dist/{app-settings-DZ5AY7N5.js → app-settings-RQAFJZCD.js} +3 -1
- package/dist/{chunk-EGTCXNQM.js → chunk-53OCOGND.js} +2 -2
- package/dist/{chunk-DLGGLV2M.js → chunk-5CTG5W7S.js} +2 -2
- package/dist/{chunk-JARCAPKL.js → chunk-72OWKHFJ.js} +3 -3
- package/dist/{chunk-CW4FIIDE.js → chunk-7J2KOIYD.js} +3 -3
- package/dist/{chunk-6EGQPMSR.js → chunk-BMORGDYI.js} +46 -26
- package/dist/{chunk-BIPXOHZI.js → chunk-BPBDGJ43.js} +2 -2
- package/dist/{chunk-HG25AYBV.js → chunk-CHUPIJP7.js} +14 -0
- package/dist/{chunk-YK77HB3W.js → chunk-CYPFOIUK.js} +45 -25
- package/dist/{chunk-JWW66PO3.js → chunk-DV6ID6CK.js} +5 -5
- package/dist/{chunk-A45QMSVB.js → chunk-FVTR54LY.js} +5 -5
- package/dist/{chunk-PHMFAU35.js → chunk-GCHSJCCX.js} +96 -64
- package/dist/{chunk-ZSVKUOFH.js → chunk-GFM63DTU.js} +8 -5
- package/dist/{chunk-7UP4D5XI.js → chunk-IODJCVMN.js} +5 -5
- package/dist/{chunk-CFTOKVQN.js → chunk-JRZTJ4F7.js} +5 -5
- package/dist/{chunk-TO5UL7VN.js → chunk-MBYGWNLQ.js} +1 -1
- package/dist/{chunk-OLSLE3LO.js → chunk-MKGSMPWB.js} +3 -3
- package/dist/{chunk-7DBL5AF4.js → chunk-NKVNHBDB.js} +4 -4
- package/dist/{chunk-U4WACWBC.js → chunk-NXNNYY3Q.js} +2 -2
- package/dist/{chunk-SZ3XS2WM.js → chunk-NZVD5EVX.js} +2 -2
- package/dist/{chunk-NMPQ7GIS.js → chunk-OLYNM52B.js} +2 -2
- package/dist/{chunk-S3KYDK6W.js → chunk-PN32Z4JL.js} +8 -5
- package/dist/{chunk-ZQLZ2A3I.js → chunk-S3U4HR5F.js} +2 -2
- package/dist/{chunk-3UDRWMIM.js → chunk-U35AHE2P.js} +14 -0
- package/dist/{chunk-A2YXQC65.js → chunk-U7PNCYNX.js} +96 -64
- package/dist/{chunk-6424BACS.js → chunk-Y4WARKPW.js} +2 -2
- package/dist/{chunk-5QYCCXXQ.js → chunk-YR7NZYUT.js} +5 -5
- package/dist/{conductor-IIDQ2U24.js → conductor-DKWTQADV.js} +5 -5
- package/dist/{conductor-G6TKCMIW.js → conductor-IMKNYQWZ.js} +5 -5
- package/dist/{coordinator-prompt-EXJSULAR.js → coordinator-prompt-HUZC4DZ2.js} +4 -4
- package/dist/{coordinator-prompt-5USNNCG6.js → coordinator-prompt-SPOYUZG5.js} +4 -4
- package/dist/{global-workspace-ZGPIGJ6J.js → global-workspace-3NNDDTFD.js} +4 -4
- package/dist/{global-workspace-UDRTONQE.js → global-workspace-SK4JQBPN.js} +4 -4
- package/dist/index.cjs +155 -65
- package/dist/index.d.cts +71 -51
- package/dist/index.d.ts +71 -51
- package/dist/index.js +25 -21
- package/dist/mcp/run-stdio.cjs +150 -63
- package/dist/mcp/run-stdio.js +15 -14
- package/dist/{optional-cli-MLZSE6KW.js → optional-cli-EMSZBYDE.js} +3 -3
- package/dist/{optional-cli-SI4BCPRH.js → optional-cli-LMSRZNH4.js} +4 -4
- package/dist/{orchestrator-V6NLIPLH.js → orchestrator-4XFRK57E.js} +9 -9
- package/dist/{orchestrator-AM7VT2BD.js → orchestrator-ZRMZ4TCL.js} +9 -9
- package/dist/{thread-store-HY22M5A7.js → thread-store-5OF6M6VZ.js} +1 -1
- package/dist/{thread-store-XMUQDO5O.js → thread-store-GOVVXQV2.js} +1 -1
- package/dist/{workspaces-3TTODHKN.js → workspaces-52L6NZ3P.js} +4 -4
- package/dist/{workspaces-TATO466L.js → workspaces-EYNZDL45.js} +4 -4
- package/dist/{worktree-C5VI46RZ.js → worktree-BP5ICYQ2.js} +3 -3
- package/dist/{worktree-FMK57ULT.js → worktree-UCOSAI7J.js} +3 -3
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
import {
|
|
7
7
|
getAbleTimeHost,
|
|
8
8
|
isAbleTimeConnected
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-GCHSJCCX.js";
|
|
10
10
|
|
|
11
11
|
// src/integrations/abletime-mcp.ts
|
|
12
12
|
var DEFAULT_ABLETIME_HOST = "https://track.abletime.com";
|
|
@@ -155,7 +155,7 @@ function textsFromUnknown(value) {
|
|
|
155
155
|
return "";
|
|
156
156
|
}
|
|
157
157
|
async function abletimeMcpRequest(method, params, opts) {
|
|
158
|
-
const rawToken = opts?.token ?? await import("./abletime-oauth-
|
|
158
|
+
const rawToken = opts?.token ?? await import("./abletime-oauth-I2RRPVKT.js").then((m) => m.ensureAbleTimeAccessToken());
|
|
159
159
|
if (!rawToken?.trim()) {
|
|
160
160
|
throw new Error("AbleTime is not connected \u2014 paste a personal access token in Account settings");
|
|
161
161
|
}
|
|
@@ -226,9 +226,9 @@ async function callAbleTimeTool(name, args = {}, opts) {
|
|
|
226
226
|
if (!opts?.token && !isAbleTimeConnected()) {
|
|
227
227
|
throw new Error("AbleTime is not connected \u2014 paste a personal access token in Account settings");
|
|
228
228
|
}
|
|
229
|
-
const rawToken = opts?.token ?? await import("./abletime-oauth-
|
|
229
|
+
const rawToken = opts?.token ?? await import("./abletime-oauth-I2RRPVKT.js").then((m) => m.ensureAbleTimeAccessToken());
|
|
230
230
|
if (rawToken && ableTimeUsesRest(rawToken)) {
|
|
231
|
-
const { callAbleTimeRestTool } = await import("./abletime-rest-
|
|
231
|
+
const { callAbleTimeRestTool } = await import("./abletime-rest-W5TLQK7C.js");
|
|
232
232
|
return callAbleTimeRestTool(name, args, { ...opts, token: rawToken });
|
|
233
233
|
}
|
|
234
234
|
const requestOpts = { ...opts, pm: opts?.pm ?? abletimeToolUsesPm(name) };
|
|
@@ -244,7 +244,7 @@ async function callAbleTimeTool(name, args = {}, opts) {
|
|
|
244
244
|
return await call();
|
|
245
245
|
}
|
|
246
246
|
if (rawToken && ableTimeUsesRest(rawToken) && isAbleTimeRejectedCredential(message)) {
|
|
247
|
-
const { callAbleTimeRestTool } = await import("./abletime-rest-
|
|
247
|
+
const { callAbleTimeRestTool } = await import("./abletime-rest-W5TLQK7C.js");
|
|
248
248
|
return callAbleTimeRestTool(name, args, { ...opts, token: rawToken });
|
|
249
249
|
}
|
|
250
250
|
throw err instanceof Error ? new Error(rewriteAbleTimeError(err.message)) : err;
|
|
@@ -125,7 +125,7 @@ async function connectedCliPresence(integrations) {
|
|
|
125
125
|
const ids = connectedOptionalServices(integrations).filter((spec) => spec.cli).map((spec) => spec.id);
|
|
126
126
|
if (ids.length === 0) return void 0;
|
|
127
127
|
try {
|
|
128
|
-
const { optionalCliPresence } = await import("./optional-cli-
|
|
128
|
+
const { optionalCliPresence } = await import("./optional-cli-EMSZBYDE.js");
|
|
129
129
|
return await optionalCliPresence(ids);
|
|
130
130
|
} catch {
|
|
131
131
|
return void 0;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
abletimeRestUrl,
|
|
3
3
|
textFromAbleTimeDoc
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-NZVD5EVX.js";
|
|
5
5
|
import {
|
|
6
6
|
assertAbleTimeCredential,
|
|
7
7
|
callAbleTimeTool,
|
|
8
8
|
normalizeAbleTimeHost,
|
|
9
9
|
rewriteAbleTimeError
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-DV6ID6CK.js";
|
|
11
11
|
import {
|
|
12
12
|
httpFetch
|
|
13
13
|
} from "./chunk-JAT3JFOS.js";
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
getAbleTimeHost,
|
|
21
21
|
isAbleTimeConnected,
|
|
22
22
|
saveAbleTimeConnection
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-U7PNCYNX.js";
|
|
24
24
|
|
|
25
25
|
// src/integrations/issue-attachments.ts
|
|
26
26
|
import { existsSync, mkdirSync, writeFileSync } from "fs";
|
|
@@ -12,13 +12,13 @@ import {
|
|
|
12
12
|
} from "./chunk-7Q327QF2.js";
|
|
13
13
|
import {
|
|
14
14
|
isOrchestratorThread
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-GFM63DTU.js";
|
|
16
16
|
import {
|
|
17
17
|
codexUnattendedGitConfigArgs,
|
|
18
18
|
mergeAgentGitAuthEnv,
|
|
19
19
|
resolveAgentGitAuthEnv,
|
|
20
20
|
resolveCodexGitWritableRoots
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-BPBDGJ43.js";
|
|
22
22
|
import {
|
|
23
23
|
loadBrightsyConfig
|
|
24
24
|
} from "./chunk-RSA47QYR.js";
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
loadAppSettings,
|
|
77
77
|
resolveAgentExecutable,
|
|
78
78
|
resolveClaudeExecutable
|
|
79
|
-
} from "./chunk-
|
|
79
|
+
} from "./chunk-U7PNCYNX.js";
|
|
80
80
|
import {
|
|
81
81
|
isElectronLikeCommand,
|
|
82
82
|
unwrapStrippedElectronLaunch
|
|
@@ -2609,7 +2609,7 @@ var claudeAdapter = {
|
|
|
2609
2609
|
);
|
|
2610
2610
|
}
|
|
2611
2611
|
const mode = permissionMode(thread);
|
|
2612
|
-
const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-
|
|
2612
|
+
const { isOrchestratorThread: isOrchestratorThread2 } = await import("./global-workspace-3NNDDTFD.js");
|
|
2613
2613
|
const isOrchestrator = isOrchestratorThread2(thread);
|
|
2614
2614
|
const rpc = worktreeAgentRpc(isOrchestrator);
|
|
2615
2615
|
const injectedServers = await buildInjectedMcpServers({
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
} from "./chunk-QVN2WOKJ.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveAgentExecutable
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-U7PNCYNX.js";
|
|
11
11
|
|
|
12
12
|
// src/agents/install.ts
|
|
13
13
|
import { existsSync } from "fs";
|
|
@@ -265,7 +265,7 @@ async function loginAgent(agent) {
|
|
|
265
265
|
};
|
|
266
266
|
}
|
|
267
267
|
async function loginManagedAccount(accountId) {
|
|
268
|
-
const { loadAppSettings } = await import("./app-settings-
|
|
268
|
+
const { loadAppSettings } = await import("./app-settings-RQAFJZCD.js");
|
|
269
269
|
const { loginEnvPrefix } = await import("./managed-accounts-JJTAKHMG.js");
|
|
270
270
|
const account = loadAppSettings().accounts.accounts.find((a) => a.id === accountId);
|
|
271
271
|
if (!account) {
|
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
normalizeAbleTimeCredential,
|
|
5
5
|
normalizeAbleTimeHost,
|
|
6
6
|
rewriteAbleTimeError
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-DV6ID6CK.js";
|
|
8
8
|
import {
|
|
9
9
|
httpFetch
|
|
10
10
|
} from "./chunk-JAT3JFOS.js";
|
|
11
11
|
import {
|
|
12
12
|
getAbleTimeAccessToken,
|
|
13
13
|
getAbleTimeHost
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-U7PNCYNX.js";
|
|
15
15
|
|
|
16
16
|
// src/integrations/abletime-rest.ts
|
|
17
17
|
var ABLETIME_REST_PREFIX = "/api/public/v2";
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
loadAppSettings,
|
|
6
6
|
saveAppSettings
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-U7PNCYNX.js";
|
|
8
8
|
|
|
9
9
|
// src/integrations/optional-services.ts
|
|
10
10
|
var OPTIONAL_SERVICE_IDS = ["vercel", "supabase", "posthog", "sentry"];
|
|
@@ -273,7 +273,7 @@ async function connectedCliPresence(integrations) {
|
|
|
273
273
|
const ids = connectedOptionalServices(integrations).filter((spec) => spec.cli).map((spec) => spec.id);
|
|
274
274
|
if (ids.length === 0) return void 0;
|
|
275
275
|
try {
|
|
276
|
-
const { optionalCliPresence } = await import("./optional-cli-
|
|
276
|
+
const { optionalCliPresence } = await import("./optional-cli-LMSRZNH4.js");
|
|
277
277
|
return await optionalCliPresence(ids);
|
|
278
278
|
} catch {
|
|
279
279
|
return void 0;
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
ensureGhPreferOrigin,
|
|
6
6
|
resolveGithubRepoSlug,
|
|
7
7
|
resolveRepoRoot
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-5CTG5W7S.js";
|
|
9
9
|
import {
|
|
10
10
|
ATTACHMENTS_DIR,
|
|
11
11
|
attachmentsGitignoreBody
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
resolveThreadDefaults,
|
|
23
23
|
resolveViewerProfile,
|
|
24
24
|
resolveViewerProfileForRepo
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-GCHSJCCX.js";
|
|
26
26
|
import {
|
|
27
27
|
allocateTeamName,
|
|
28
28
|
createEmptyThread,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
teamSlugFromName,
|
|
32
32
|
updateThread,
|
|
33
33
|
writeThread
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-U35AHE2P.js";
|
|
35
35
|
import {
|
|
36
36
|
appDataDir,
|
|
37
37
|
globalAgentCwd,
|
|
@@ -618,7 +618,8 @@ function createGlobalChat(opts) {
|
|
|
618
618
|
agent: opts.agent,
|
|
619
619
|
model: opts.model,
|
|
620
620
|
effort: opts.effort,
|
|
621
|
-
fast: opts.fast
|
|
621
|
+
fast: opts.fast,
|
|
622
|
+
autonomy: opts.autonomy
|
|
622
623
|
});
|
|
623
624
|
const agent = assertOrchestratorCapableAgent(resolved.agent);
|
|
624
625
|
const worktreePath = globalAgentCwd();
|
|
@@ -632,7 +633,7 @@ function createGlobalChat(opts) {
|
|
|
632
633
|
worktreePath,
|
|
633
634
|
repoPath: GLOBAL_WORKSPACE_ID,
|
|
634
635
|
agent,
|
|
635
|
-
autonomy:
|
|
636
|
+
autonomy: resolved.autonomy,
|
|
636
637
|
model: resolved.model,
|
|
637
638
|
effort: resolved.effort,
|
|
638
639
|
fast: resolved.fast,
|
|
@@ -709,6 +710,7 @@ function ensureSlackCoordinator(teamId, userId, agent, opts) {
|
|
|
709
710
|
if (existing.model !== defaults.model) patch.model = defaults.model;
|
|
710
711
|
if (existing.effort !== defaults.effort) patch.effort = defaults.effort;
|
|
711
712
|
if (existing.fast !== defaults.fast) patch.fast = defaults.fast;
|
|
713
|
+
if (existing.autonomy !== defaults.autonomy) patch.autonomy = defaults.autonomy;
|
|
712
714
|
}
|
|
713
715
|
if (Object.keys(patch).length > 0) {
|
|
714
716
|
return updateThread(existing.id, patch);
|
|
@@ -767,6 +769,7 @@ function ensureCloudCoordinator(agent) {
|
|
|
767
769
|
if (existing.model !== defaults.model) patch.model = defaults.model;
|
|
768
770
|
if (existing.effort !== defaults.effort) patch.effort = defaults.effort;
|
|
769
771
|
if (existing.fast !== defaults.fast) patch.fast = defaults.fast;
|
|
772
|
+
if (existing.autonomy !== defaults.autonomy) patch.autonomy = defaults.autonomy;
|
|
770
773
|
}
|
|
771
774
|
if (Object.keys(patch).length > 0) {
|
|
772
775
|
return updateThread(existing.id, patch);
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
OPTIONAL_SERVICES,
|
|
3
3
|
isOptionalServiceId,
|
|
4
4
|
optionalServiceSpec
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-OLYNM52B.js";
|
|
6
6
|
import {
|
|
7
7
|
installNpmGlobalPackage,
|
|
8
8
|
whichOnPath
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-NXNNYY3Q.js";
|
|
10
10
|
import {
|
|
11
11
|
enrichPathWithNpmGlobalBin
|
|
12
12
|
} from "./chunk-QVN2WOKJ.js";
|
|
@@ -1029,6 +1029,19 @@ function normalizeRunScriptRequest(raw) {
|
|
|
1029
1029
|
error: req.error ?? null
|
|
1030
1030
|
};
|
|
1031
1031
|
}
|
|
1032
|
+
function sanitizeIssueBlockedBy(value) {
|
|
1033
|
+
if (!Array.isArray(value)) return void 0;
|
|
1034
|
+
const out = [];
|
|
1035
|
+
const seen = /* @__PURE__ */ new Set();
|
|
1036
|
+
for (const item of value) {
|
|
1037
|
+
const id = String(item ?? "").trim();
|
|
1038
|
+
const key = id.toLowerCase();
|
|
1039
|
+
if (!id || seen.has(key)) continue;
|
|
1040
|
+
seen.add(key);
|
|
1041
|
+
out.push(id);
|
|
1042
|
+
}
|
|
1043
|
+
return out;
|
|
1044
|
+
}
|
|
1032
1045
|
function normalizeThread(raw) {
|
|
1033
1046
|
return {
|
|
1034
1047
|
...raw,
|
|
@@ -1053,6 +1066,7 @@ function normalizeThread(raw) {
|
|
|
1053
1066
|
prIsInMergeQueue: Boolean(raw.prIsInMergeQueue),
|
|
1054
1067
|
prLabels: Array.isArray(raw.prLabels) ? raw.prLabels : [],
|
|
1055
1068
|
prChecksFailed: typeof raw.prChecksFailed === "boolean" ? raw.prChecksFailed : void 0,
|
|
1069
|
+
issueBlockedBy: sanitizeIssueBlockedBy(raw.issueBlockedBy),
|
|
1056
1070
|
skipAutoArchiveOnMerge: Boolean(raw.skipAutoArchiveOnMerge),
|
|
1057
1071
|
cowboy: Boolean(raw.cowboy),
|
|
1058
1072
|
stackId: raw.stackId ?? null,
|
|
@@ -53,6 +53,73 @@ function coerceOrchestratorAgent(agent, fallback = "claude") {
|
|
|
53
53
|
return isOrchestratorCapableAgent(agent) ? agent : fallback;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
+
// src/store/thread-option-defaults.ts
|
|
57
|
+
function normalizeAutonomy(value) {
|
|
58
|
+
return value === "default" || value === "full" ? value : void 0;
|
|
59
|
+
}
|
|
60
|
+
function getDefaultAgent(settings = loadAppSettings()) {
|
|
61
|
+
return settings.defaults.agent ?? "claude";
|
|
62
|
+
}
|
|
63
|
+
function getDefaultModel(settings = loadAppSettings()) {
|
|
64
|
+
const model = settings.defaults.model?.trim();
|
|
65
|
+
return model || null;
|
|
66
|
+
}
|
|
67
|
+
function getDefaultEffort(settings = loadAppSettings()) {
|
|
68
|
+
return normalizeThinkingEffort(settings.defaults.effort) ?? "high";
|
|
69
|
+
}
|
|
70
|
+
function getDefaultFast(settings = loadAppSettings()) {
|
|
71
|
+
return settings.defaults.fast === true;
|
|
72
|
+
}
|
|
73
|
+
function getDefaultAutonomy(settings = loadAppSettings()) {
|
|
74
|
+
return settings.defaults.autonomy === "default" ? "default" : "full";
|
|
75
|
+
}
|
|
76
|
+
function resolveThreadDefaults(settings = loadAppSettings()) {
|
|
77
|
+
return {
|
|
78
|
+
agent: getDefaultAgent(settings),
|
|
79
|
+
model: getDefaultModel(settings),
|
|
80
|
+
effort: getDefaultEffort(settings),
|
|
81
|
+
fast: getDefaultFast(settings),
|
|
82
|
+
autonomy: getDefaultAutonomy(settings)
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
function resolveOrchestratorDefaults(settings = loadAppSettings()) {
|
|
86
|
+
const account = resolveThreadDefaults(settings);
|
|
87
|
+
const orch = settings.defaults.orchestrator;
|
|
88
|
+
const agent = coerceOrchestratorAgent(orch?.agent ?? account.agent);
|
|
89
|
+
let model = orch ? orch.model?.trim() || null : account.model;
|
|
90
|
+
if (model && agent !== "cursor" && /^(default|auto)$/i.test(model.trim())) {
|
|
91
|
+
model = null;
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
agent,
|
|
95
|
+
model,
|
|
96
|
+
effort: orch?.effort ?? account.effort,
|
|
97
|
+
fast: orch?.fast ?? account.fast,
|
|
98
|
+
autonomy: orch?.autonomy ?? account.autonomy
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
function mergeThreadOptionOverrides(defaults, overrides) {
|
|
102
|
+
const effort = overrides.effort === void 0 || overrides.effort === null ? defaults.effort : normalizeThinkingEffort(overrides.effort) ?? defaults.effort;
|
|
103
|
+
const agent = overrides.agent ?? defaults.agent;
|
|
104
|
+
let model = overrides.model === void 0 ? defaults.model : overrides.model?.trim() || null;
|
|
105
|
+
if (model && agent !== "cursor" && /^(default|auto)$/i.test(model.trim())) {
|
|
106
|
+
model = null;
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
agent,
|
|
110
|
+
model,
|
|
111
|
+
effort,
|
|
112
|
+
fast: overrides.fast === void 0 || overrides.fast === null ? defaults.fast : Boolean(overrides.fast),
|
|
113
|
+
autonomy: overrides.autonomy == null ? defaults.autonomy : normalizeAutonomy(overrides.autonomy) ?? defaults.autonomy
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
function resolveNewThreadOptions(overrides = {}, settings = loadAppSettings()) {
|
|
117
|
+
return mergeThreadOptionOverrides(resolveThreadDefaults(settings), overrides);
|
|
118
|
+
}
|
|
119
|
+
function resolveNewOrchestratorOptions(overrides = {}, settings = loadAppSettings()) {
|
|
120
|
+
return mergeThreadOptionOverrides(resolveOrchestratorDefaults(settings), overrides);
|
|
121
|
+
}
|
|
122
|
+
|
|
56
123
|
// src/store/account-profile.ts
|
|
57
124
|
var PROFILE_NOTES_MAX = 2e3;
|
|
58
125
|
var LEGACY_ROLE_LABELS = {
|
|
@@ -1239,6 +1306,8 @@ function normalizeOrchestratorDefaults(raw) {
|
|
|
1239
1306
|
if (typeof source.fast === "boolean") {
|
|
1240
1307
|
out.fast = source.fast;
|
|
1241
1308
|
}
|
|
1309
|
+
const autonomy = normalizeAutonomy(source.autonomy);
|
|
1310
|
+
if (autonomy) out.autonomy = autonomy;
|
|
1242
1311
|
return Object.keys(out).length > 0 ? out : void 0;
|
|
1243
1312
|
}
|
|
1244
1313
|
function normalizeDefaults(raw) {
|
|
@@ -1258,6 +1327,8 @@ function normalizeDefaults(raw) {
|
|
|
1258
1327
|
if (typeof source.fast === "boolean") {
|
|
1259
1328
|
out.fast = source.fast;
|
|
1260
1329
|
}
|
|
1330
|
+
const autonomy = normalizeAutonomy(source.autonomy);
|
|
1331
|
+
if (autonomy) out.autonomy = autonomy;
|
|
1261
1332
|
const notes = foldLegacyRolesIntoNotes(source.roles, source.role, source.notes);
|
|
1262
1333
|
if (notes) out.notes = notes;
|
|
1263
1334
|
const orchestrator = normalizeOrchestratorDefaults(source.orchestrator);
|
|
@@ -1923,6 +1994,14 @@ function applyOrchestratorDefaultsPatch(current, patch) {
|
|
|
1923
1994
|
next.fast = Boolean(patch.fast);
|
|
1924
1995
|
}
|
|
1925
1996
|
}
|
|
1997
|
+
if ("autonomy" in patch) {
|
|
1998
|
+
if (patch.autonomy == null) {
|
|
1999
|
+
delete next.autonomy;
|
|
2000
|
+
} else {
|
|
2001
|
+
const autonomy = normalizeAutonomy(patch.autonomy);
|
|
2002
|
+
if (autonomy) next.autonomy = autonomy;
|
|
2003
|
+
}
|
|
2004
|
+
}
|
|
1926
2005
|
return Object.keys(next).length > 0 ? next : void 0;
|
|
1927
2006
|
}
|
|
1928
2007
|
function updateDefaultsSettings(patch) {
|
|
@@ -1957,6 +2036,14 @@ function updateDefaultsSettings(patch) {
|
|
|
1957
2036
|
defaults.fast = Boolean(patch.fast);
|
|
1958
2037
|
}
|
|
1959
2038
|
}
|
|
2039
|
+
if ("autonomy" in patch) {
|
|
2040
|
+
if (patch.autonomy == null) {
|
|
2041
|
+
delete defaults.autonomy;
|
|
2042
|
+
} else {
|
|
2043
|
+
const autonomy = normalizeAutonomy(patch.autonomy);
|
|
2044
|
+
if (autonomy) defaults.autonomy = autonomy;
|
|
2045
|
+
}
|
|
2046
|
+
}
|
|
1960
2047
|
if ("notes" in patch) {
|
|
1961
2048
|
const notes = normalizeProfileNotes(patch.notes);
|
|
1962
2049
|
if (!notes) delete defaults.notes;
|
|
@@ -2006,19 +2093,6 @@ function resolveProjectReviewLabel(settings, repoPath) {
|
|
|
2006
2093
|
if (!key) return "";
|
|
2007
2094
|
return settings.projects[key]?.reviewLabel?.trim() || "";
|
|
2008
2095
|
}
|
|
2009
|
-
function getDefaultAgent(settings = loadAppSettings()) {
|
|
2010
|
-
return settings.defaults.agent ?? "claude";
|
|
2011
|
-
}
|
|
2012
|
-
function getDefaultModel(settings = loadAppSettings()) {
|
|
2013
|
-
const model = settings.defaults.model?.trim();
|
|
2014
|
-
return model || null;
|
|
2015
|
-
}
|
|
2016
|
-
function getDefaultEffort(settings = loadAppSettings()) {
|
|
2017
|
-
return normalizeThinkingEffort(settings.defaults.effort) ?? "high";
|
|
2018
|
-
}
|
|
2019
|
-
function getDefaultFast(settings = loadAppSettings()) {
|
|
2020
|
-
return settings.defaults.fast === true;
|
|
2021
|
-
}
|
|
2022
2096
|
function resolveAccountProfileFromSettings(settings = loadAppSettings()) {
|
|
2023
2097
|
return resolveViewerProfile(settings.defaults);
|
|
2024
2098
|
}
|
|
@@ -2083,49 +2157,6 @@ function writeViewerContext(input) {
|
|
|
2083
2157
|
updateDefaultsSettings({ notes: proposed || null });
|
|
2084
2158
|
return { ok: true, scope: "account", context: proposed };
|
|
2085
2159
|
}
|
|
2086
|
-
function resolveThreadDefaults(settings = loadAppSettings()) {
|
|
2087
|
-
return {
|
|
2088
|
-
agent: getDefaultAgent(settings),
|
|
2089
|
-
model: getDefaultModel(settings),
|
|
2090
|
-
effort: getDefaultEffort(settings),
|
|
2091
|
-
fast: getDefaultFast(settings)
|
|
2092
|
-
};
|
|
2093
|
-
}
|
|
2094
|
-
function resolveOrchestratorDefaults(settings = loadAppSettings()) {
|
|
2095
|
-
const account = resolveThreadDefaults(settings);
|
|
2096
|
-
const orch = settings.defaults.orchestrator;
|
|
2097
|
-
const agent = coerceOrchestratorAgent(orch?.agent ?? account.agent);
|
|
2098
|
-
let model = orch ? orch.model?.trim() || null : account.model;
|
|
2099
|
-
if (model && agent !== "cursor" && /^(default|auto)$/i.test(model.trim())) {
|
|
2100
|
-
model = null;
|
|
2101
|
-
}
|
|
2102
|
-
return {
|
|
2103
|
-
agent,
|
|
2104
|
-
model,
|
|
2105
|
-
effort: orch?.effort ?? account.effort,
|
|
2106
|
-
fast: orch?.fast ?? account.fast
|
|
2107
|
-
};
|
|
2108
|
-
}
|
|
2109
|
-
function mergeThreadOptionOverrides(defaults, overrides) {
|
|
2110
|
-
const effort = overrides.effort === void 0 || overrides.effort === null ? defaults.effort : normalizeThinkingEffort(overrides.effort) ?? defaults.effort;
|
|
2111
|
-
const agent = overrides.agent ?? defaults.agent;
|
|
2112
|
-
let model = overrides.model === void 0 ? defaults.model : overrides.model?.trim() || null;
|
|
2113
|
-
if (model && agent !== "cursor" && /^(default|auto)$/i.test(model.trim())) {
|
|
2114
|
-
model = null;
|
|
2115
|
-
}
|
|
2116
|
-
return {
|
|
2117
|
-
agent,
|
|
2118
|
-
model,
|
|
2119
|
-
effort,
|
|
2120
|
-
fast: overrides.fast === void 0 || overrides.fast === null ? defaults.fast : Boolean(overrides.fast)
|
|
2121
|
-
};
|
|
2122
|
-
}
|
|
2123
|
-
function resolveNewThreadOptions(overrides = {}, settings = loadAppSettings()) {
|
|
2124
|
-
return mergeThreadOptionOverrides(resolveThreadDefaults(settings), overrides);
|
|
2125
|
-
}
|
|
2126
|
-
function resolveNewOrchestratorOptions(overrides = {}, settings = loadAppSettings()) {
|
|
2127
|
-
return mergeThreadOptionOverrides(resolveOrchestratorDefaults(settings), overrides);
|
|
2128
|
-
}
|
|
2129
2160
|
function isLinearConnected(settings = loadAppSettings()) {
|
|
2130
2161
|
return hasLinearCredentials(settings.integrations);
|
|
2131
2162
|
}
|
|
@@ -2533,6 +2564,15 @@ export {
|
|
|
2533
2564
|
isOrchestratorCapableAgent,
|
|
2534
2565
|
assertOrchestratorCapableAgent,
|
|
2535
2566
|
coerceOrchestratorAgent,
|
|
2567
|
+
getDefaultAgent,
|
|
2568
|
+
getDefaultModel,
|
|
2569
|
+
getDefaultEffort,
|
|
2570
|
+
getDefaultFast,
|
|
2571
|
+
getDefaultAutonomy,
|
|
2572
|
+
resolveThreadDefaults,
|
|
2573
|
+
resolveOrchestratorDefaults,
|
|
2574
|
+
resolveNewThreadOptions,
|
|
2575
|
+
resolveNewOrchestratorOptions,
|
|
2536
2576
|
PROFILE_NOTES_MAX,
|
|
2537
2577
|
foldLegacyRolesIntoNotes,
|
|
2538
2578
|
resolveAccountProfile,
|
|
@@ -2625,18 +2665,10 @@ export {
|
|
|
2625
2665
|
updateDefaultsSettings,
|
|
2626
2666
|
updateProjectProfileSettings,
|
|
2627
2667
|
resolveProjectReviewLabel,
|
|
2628
|
-
getDefaultAgent,
|
|
2629
|
-
getDefaultModel,
|
|
2630
|
-
getDefaultEffort,
|
|
2631
|
-
getDefaultFast,
|
|
2632
2668
|
resolveAccountProfileFromSettings,
|
|
2633
2669
|
resolveViewerProfileForRepo,
|
|
2634
2670
|
readViewerContext,
|
|
2635
2671
|
writeViewerContext,
|
|
2636
|
-
resolveThreadDefaults,
|
|
2637
|
-
resolveOrchestratorDefaults,
|
|
2638
|
-
resolveNewThreadOptions,
|
|
2639
|
-
resolveNewOrchestratorOptions,
|
|
2640
2672
|
isLinearConnected,
|
|
2641
2673
|
saveLinearOAuth,
|
|
2642
2674
|
disconnectLinearConnection,
|
|
@@ -6,14 +6,14 @@ import {
|
|
|
6
6
|
normalizeAbleTimeCredential,
|
|
7
7
|
normalizeAbleTimeHost,
|
|
8
8
|
rewriteAbleTimeError
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-JRZTJ4F7.js";
|
|
10
10
|
import {
|
|
11
11
|
httpFetch
|
|
12
12
|
} from "./chunk-2GPQZZLY.js";
|
|
13
13
|
import {
|
|
14
14
|
getAbleTimeAccessToken,
|
|
15
15
|
getAbleTimeHost
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-GCHSJCCX.js";
|
|
17
17
|
|
|
18
18
|
// src/integrations/abletime-rest.ts
|
|
19
19
|
var ABLETIME_REST_PREFIX = "/api/public/v2";
|
|
@@ -11,11 +11,11 @@ import {
|
|
|
11
11
|
isGlobalThread,
|
|
12
12
|
isOrchestratorThread,
|
|
13
13
|
isSlackCoordinatorThread
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-PN32Z4JL.js";
|
|
15
15
|
import {
|
|
16
16
|
mergeAgentGitAuthEnv,
|
|
17
17
|
resolveAgentGitAuthEnv
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-5CTG5W7S.js";
|
|
19
19
|
import {
|
|
20
20
|
ATTACHMENTS_DIR,
|
|
21
21
|
DETACHED_JOBS_DIR,
|
|
@@ -32,7 +32,7 @@ import {
|
|
|
32
32
|
import {
|
|
33
33
|
assertOrchestratorCapableAgent,
|
|
34
34
|
contextTokens
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-GCHSJCCX.js";
|
|
36
36
|
import {
|
|
37
37
|
stripNestedElectronEnv
|
|
38
38
|
} from "./chunk-WWUABK6B.js";
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
updateThread,
|
|
47
47
|
worktreeNameFromPath,
|
|
48
48
|
writeThread
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-U35AHE2P.js";
|
|
50
50
|
import {
|
|
51
51
|
findConventionSetup,
|
|
52
52
|
loadRepoSettings,
|
|
@@ -1702,7 +1702,7 @@ var PORT_RANGE_SIZE = 10;
|
|
|
1702
1702
|
var RECLAIM_RETRY_DELAY_MS = 40;
|
|
1703
1703
|
var RECLAIM_TRIES = 8;
|
|
1704
1704
|
async function killReclaimable(ports, worktreePath, signal) {
|
|
1705
|
-
const { killListenersOnPorts: killListenersOnPorts2, killStaleWorktreeListeners: killStaleWorktreeListeners2 } = await import("./conductor-
|
|
1705
|
+
const { killListenersOnPorts: killListenersOnPorts2, killStaleWorktreeListeners: killStaleWorktreeListeners2 } = await import("./conductor-IMKNYQWZ.js");
|
|
1706
1706
|
if (worktreePath) killStaleWorktreeListeners2(ports, worktreePath, signal);
|
|
1707
1707
|
else killListenersOnPorts2(ports);
|
|
1708
1708
|
}
|
|
@@ -32,18 +32,18 @@ import {
|
|
|
32
32
|
tryReservePort,
|
|
33
33
|
tryReservePorts,
|
|
34
34
|
worktreeRunPortsPath
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-IODJCVMN.js";
|
|
36
36
|
import "./chunk-7Q327QF2.js";
|
|
37
|
-
import "./chunk-
|
|
38
|
-
import "./chunk-
|
|
39
|
-
import "./chunk-
|
|
37
|
+
import "./chunk-GFM63DTU.js";
|
|
38
|
+
import "./chunk-BPBDGJ43.js";
|
|
39
|
+
import "./chunk-CHUPIJP7.js";
|
|
40
40
|
import "./chunk-2P4XKWV2.js";
|
|
41
41
|
import "./chunk-F2PVRF3B.js";
|
|
42
42
|
import "./chunk-5XNT6BCG.js";
|
|
43
43
|
import "./chunk-6K64FJDD.js";
|
|
44
44
|
import "./chunk-LG6RJBIY.js";
|
|
45
45
|
import "./chunk-QVN2WOKJ.js";
|
|
46
|
-
import "./chunk-
|
|
46
|
+
import "./chunk-U7PNCYNX.js";
|
|
47
47
|
import "./chunk-77WWLBCI.js";
|
|
48
48
|
import {
|
|
49
49
|
stripNestedElectronEnv
|
|
@@ -34,21 +34,21 @@ import {
|
|
|
34
34
|
tryReservePort,
|
|
35
35
|
tryReservePorts,
|
|
36
36
|
worktreeRunPortsPath
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-YR7NZYUT.js";
|
|
38
38
|
import "./chunk-I5TESHDN.js";
|
|
39
|
-
import "./chunk-
|
|
40
|
-
import "./chunk-
|
|
39
|
+
import "./chunk-PN32Z4JL.js";
|
|
40
|
+
import "./chunk-5CTG5W7S.js";
|
|
41
41
|
import "./chunk-N2WW62LF.js";
|
|
42
42
|
import "./chunk-DD67JWTN.js";
|
|
43
43
|
import "./chunk-2UG25RMK.js";
|
|
44
|
-
import "./chunk-
|
|
44
|
+
import "./chunk-GCHSJCCX.js";
|
|
45
45
|
import "./chunk-NSTQ6QKD.js";
|
|
46
46
|
import {
|
|
47
47
|
stripNestedElectronEnv
|
|
48
48
|
} from "./chunk-WWUABK6B.js";
|
|
49
49
|
import "./chunk-FJZWM2ON.js";
|
|
50
50
|
import "./chunk-J2LNLI4S.js";
|
|
51
|
-
import "./chunk-
|
|
51
|
+
import "./chunk-U35AHE2P.js";
|
|
52
52
|
import "./chunk-WMZIANPV.js";
|
|
53
53
|
import "./chunk-KGZBYWZ3.js";
|
|
54
54
|
import {
|
|
@@ -9,17 +9,17 @@ import {
|
|
|
9
9
|
enrichWorkspacesWithGithub,
|
|
10
10
|
ensureGlobalCoordinatorCwd,
|
|
11
11
|
formatWorkspaceInventory
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-PN32Z4JL.js";
|
|
13
|
+
import "./chunk-5CTG5W7S.js";
|
|
14
14
|
import "./chunk-N2WW62LF.js";
|
|
15
15
|
import "./chunk-DD67JWTN.js";
|
|
16
16
|
import "./chunk-2UG25RMK.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-GCHSJCCX.js";
|
|
18
18
|
import "./chunk-NSTQ6QKD.js";
|
|
19
19
|
import "./chunk-WWUABK6B.js";
|
|
20
20
|
import "./chunk-FJZWM2ON.js";
|
|
21
21
|
import "./chunk-J2LNLI4S.js";
|
|
22
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-U35AHE2P.js";
|
|
23
23
|
import "./chunk-WMZIANPV.js";
|
|
24
24
|
import "./chunk-KGZBYWZ3.js";
|
|
25
25
|
import "./chunk-WOU343SI.js";
|
|
@@ -7,15 +7,15 @@ import {
|
|
|
7
7
|
enrichWorkspacesWithGithub,
|
|
8
8
|
ensureGlobalCoordinatorCwd,
|
|
9
9
|
formatWorkspaceInventory
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-GFM63DTU.js";
|
|
11
|
+
import "./chunk-BPBDGJ43.js";
|
|
12
|
+
import "./chunk-CHUPIJP7.js";
|
|
13
13
|
import "./chunk-2P4XKWV2.js";
|
|
14
14
|
import "./chunk-F2PVRF3B.js";
|
|
15
15
|
import "./chunk-6K64FJDD.js";
|
|
16
16
|
import "./chunk-LG6RJBIY.js";
|
|
17
17
|
import "./chunk-QVN2WOKJ.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-U7PNCYNX.js";
|
|
19
19
|
import "./chunk-77WWLBCI.js";
|
|
20
20
|
import "./chunk-4TR3HZFT.js";
|
|
21
21
|
import "./chunk-WDRMZKVB.js";
|
|
@@ -18,15 +18,15 @@ import {
|
|
|
18
18
|
remoteCoordinatorSourceRef,
|
|
19
19
|
slackCoordinatorSourceRef,
|
|
20
20
|
takenTeamSlugsForOrchestration
|
|
21
|
-
} from "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
21
|
+
} from "./chunk-GFM63DTU.js";
|
|
22
|
+
import "./chunk-BPBDGJ43.js";
|
|
23
|
+
import "./chunk-CHUPIJP7.js";
|
|
24
24
|
import "./chunk-2P4XKWV2.js";
|
|
25
25
|
import "./chunk-F2PVRF3B.js";
|
|
26
26
|
import "./chunk-6K64FJDD.js";
|
|
27
27
|
import "./chunk-LG6RJBIY.js";
|
|
28
28
|
import "./chunk-QVN2WOKJ.js";
|
|
29
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-U7PNCYNX.js";
|
|
30
30
|
import "./chunk-77WWLBCI.js";
|
|
31
31
|
import "./chunk-4TR3HZFT.js";
|
|
32
32
|
import "./chunk-WDRMZKVB.js";
|